mirror of
https://github.com/embarklabs/embark.git
synced 2025-01-25 21:18:51 +00:00
7a93e4b6a7
TL;DR ===== `yarn install` in a fresh clone of the repo. `yarn reboot` when switching branches. When pulling in these changes, there may be untracked files at the root in all/some of: ``` .embark/ .nyc_output/ coverage/ dist/ embark-ui/ test_apps/ ``` They can be safely deleted since those paths are no longer in use at the root. Many of the scripts in the top-level `package.json` support Lerna's [filter options]. For example: `yarn build --scope embark` build only `packages/embark`. `yarn build --ignore embark-ui` build everything except `packages/embark-ui`. Scoping scripts will be more useful when there are more packages in the monorepo and, for example, `yarn start` doesn't need to be invoked for all of them while working on just a few of them simultaneously, e.g `embark` and `embarkjs`. It's also possible to `cd` into a particular package and run its scripts directly: ``` cd packages/embark && yarn watch ``` Hot Topics & Questions ====================== What should be done about the [README][embark-readme] for `packages/embark`? Should the top-level README be duplicated in that package? Lerna is setup to use [Fixed/Locked mode][fixed-locked], and accordingly `packages/embark-ui` is set to `4.0.0-beta.0`. The same will be true when adding embarkjs, swarm-api, etc. to the monorepo. Is this acceptable or do we want to use [Independent mode][independent]? Scripts ======= If a package doesn't have a matching script, `lerna run` skips it automatically. For example, `packages/embark-ui` doesn't have a `typecheck` script. `yarn build` ------------ Runs babel, webpack, etc. according to a package's `build` script. `yarn build:no-ui` is a shortcut for `yarn build --ignore embark-ui`. `yarn ci` --------- Runs a series of scripts relevant in a CI context according to a package's `ci` script. For `packages/embark` that's `lint typecheck build test package`. Also runs the `ci` script of the embedded `test_dapps` monorepo. `yarn clean` ------------ Runs rimraf, etc. according to a package's `clean` script. `yarn globalize` ---------------- Makes the development embark available on the global PATH, either via symlink (Linux, macOS) or a shim script (Windows). `yarn lint` ----------- Runs eslint, etc. according to a package's `lint` script. `yarn package` -------------- Invokes `npm pack` according to a package's `package` script. `yarn qa` --------- Very similar to `ci`, runs a series of scripts according to a package's `qa` script. The big difference between `ci` and `qa` is that at the top-level `qa` first kicks off `reboot:full`. There is a `preqa` script ([invoked automatically][npm-scripts]), which is a bit of a wart. It makes sure that `embark reset` can be run successfully in `packages/embark/templates/*` when the `reboot` script invokes the `reset` script. The `qa` script is invoked by `yarn release` before the latter proceeds to invoke `lerna publish`. `yarn reboot` ------------- Invokes the `reset` script and then does `yarn install`. The `reboot:full` variant invokes `reset:full` and then does `yarn install`. `yarn release` -------------- Works in concert with [lerna publish], which will prompt to verify the version before proceeding. Use `n` to cancel instead of `ctrl-c` as `lerna publish` has been seen to occasionally misbehave when not exited cleanly (e.g. creating a tag when it shouldn't have). ``` yarn release [bump] [--options] ``` * `[bump]` see [`publish` positionals][pub-pos] and [`version` positionals][ver-pos]; an exact version can also be specified. * `--preid` prerelease identifier, e.g. `beta`; when doing a prerelease bump will default to whatever identifier is currently in use. * `--dist-tag` registry distribution tag, defaults to `latest`. * `--message` commit message format, defaults to `chore(release): %v`. * `--sign` indicates that the git commit and tag should be signed; not signed by default. * `--release-branch` default is `master`; must match the current branch. * `--git-remote` default is `origin`. * `--registry` default is `https://registry.npmjs.org/` per the top-level [`lerna.json`][lerna-json]. To release `4.0.0-beta.1` as `embark@next` (assuming version is currently at `4.0.0-beta.0`) could do: ``` yarn release prerelease --dist-tag next ``` For *test releases* (there is no longer a `--dry-run` option) [verdaccio] and a filesystem git remote can be used. Condensend instructions: ``` mkdir -p ~/temp/clones && cd ~/temp/clones git clone git@github.com:embark-framework/embark.git cd ~/repos/embark git remote add FAKEembark ~/temp/clones/embark ``` in another terminal: ``` npm i -g verdaccio && verdaccio ``` in the first terminal: ``` yarn release --git-remote FAKEembark --registry http://localhost:4873/ ``` `yarn reset` ------------ Invokes cleaning and resetting steps according to a package's `reset` script. The big difference between `clean` and `reset` is that `reset` is intended to delete a package's `node_modules`. The `reset:full` variant deletes the monorepo's top-level `node_modules` at the end. That shouldn't be necessary too often, e.g. in day-to-day work when switching branches, which is why there is `reboot` / `reset` vs. `reboot:full` / `reset:full`. Errors may be seen related to invocation of `embark reset` if embark is not built, but `reset` will still complete successfully. `yarn start` ------------ Runs babel, webpack, tsc, etc. (in parallel, in watch mode) according to a package's `start` script. `yarn test` ----------- Run mocha, etc. according to a package's `test` script. The `test:full` variant runs a series of scripts: `lint typecheck test test_dapps`. `yarn test_dapps` ----------------- Runs the `test` script of the embedded `test_dapps` monorepo. The `test_dapps:ci` and `test_dapps:qa` variants run the `ci` and `qa` scripts of the embedded `test_dapps` monorepo, respectively. `yarn typecheck` ---------------- Runs tsc, etc. according to a package's `typecheck` script. Notes ===== `npx` is used in some of the top-level and package scripts to ensure the scripts can run even if `node_modules` is missing. [`"nohoist"`][nohoist] specifies a couple of embark packages because [`restrictPath`][restrictpath] is interfering with access to modules that are located in a higher-up `node_modules`. All dependencies in `packages/embark-ui` have been made `devDependencies` since its production build is self-contained. `packages/embark`'s existing CHANGELOG's formatting has been slightly adjusted to match the formatting that Lerna will use going forward (entries in the log haven't been modified). Lerna will generate a CHANGELOG at the top-level and in each package. Since we're transitioning to a monorepo, things may look a little wonky with respect to old entries in `packages/embark/CHANGELOG.md` and going forward we need to consider how scoping our commits corresponds to member-packages of the monorepo. In `packages/embark`, `test` invokes `scripts/test`, which starts a child process wherein `process.env.DAPP_PATH` is a temporary path that has all of `packages/embark/dist/test` copied into it, so that paths to test helpers/fixtures don't need to be prefixed with `dist/test/` and so that a `.embark` directory doesn't get written into `packages/embark`. The `"engines"` specified in top-level and packages' `package.json` reflect a node and npm pair that match (a source of confusion in the past). The pair was chosen according to the first post v5 npm that's bundled with node. A `"runtime"` key/object has been introduced in `packages/embark/package.json` which is used as the basis for specifying the minimum version of node that can be used to run embark, and that's what is checked by `bin/embark`. Some changes have been introduced, e.g. in `lib/core/config` and `lib/utils/solidity/remapImports` so that it's *not* implicitly assumed that `process.env.DAPP_PATH` / `fs.dappPath()` are the same as `process.cwd()`. There are probably several++ places where that assumption is still in effect, and we should work to identify and correct them. `embark reset` now deletes `embarkArtifacts/` within a dapp root, and `embarkArtifacts/` is git-ignored. `lib/core/env` adds all `node_modules` relative to `process.env.EMBARK_PATH` to `NODE_PATH` so that embark's modules can be resolved as expected whether embark's `node_modules` have been deduped or are installed in npm's flat "global style". `checkDependencies` has been inlined (see `lib/utils/checkDependencies`) and slightly modified to support dependencies that have been hoisted into a higher-up `node_modules`, e.g. as part of a yarn workspace. eslint has been disabled for that script to avoid more involved changes to it. `test_apps` is not in `packages/embark`; rather, there is `test_dapps` at the top-level of the monorepo. `test_dapps` is an embedded monorepo, and its `ci` / `qa` scripts `npm install` embark from freshly built tarballs of the packages in the outer monorepo and then use that installation to run `embark test` in the dapps. This should allow us to rapidly detect breakage related to auto-bumps in transitive dependencies. [filter options]: https://github.com/lerna/lerna/tree/master/core/filter-options [embark-readme]: https://github.com/embark-framework/embark/blob/build/lerna/packages/embark/README.md [fixed-locked]: https://github.com/lerna/lerna#fixedlocked-mode-default [independent]: https://github.com/lerna/lerna#independent-mode [npm-scripts]: https://docs.npmjs.com/misc/scripts [lerna publish]: https://github.com/lerna/lerna/tree/master/commands/publish [pub-pos]: https://github.com/lerna/lerna/tree/master/commands/publish#positionals [ver-pos]: https://github.com/lerna/lerna/tree/master/commands/version#positionals [lerna-json]: https://github.com/embark-framework/embark/blob/build/lerna/lerna.json#L11 [verdaccio]: https://www.npmjs.com/package/verdaccio [nohoist]: https://github.com/embark-framework/embark/blob/build/lerna/package.json#L52-L55 [restrictpath]: https://github.com/embark-framework/embark/blob/build/lerna/packages/embark/src/lib/core/fs.js#L9
588 lines
26 KiB
CSS
588 lines
26 KiB
CSS
/*!
|
|
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
|
* Copyright 2011-2015 Twitter, Inc.
|
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
*/
|
|
.btn-default,
|
|
.btn-primary,
|
|
.btn-success,
|
|
.btn-info,
|
|
.btn-warning,
|
|
.btn-danger {
|
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
|
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
|
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
|
|
}
|
|
.btn-default:active,
|
|
.btn-primary:active,
|
|
.btn-success:active,
|
|
.btn-info:active,
|
|
.btn-warning:active,
|
|
.btn-danger:active,
|
|
.btn-default.active,
|
|
.btn-primary.active,
|
|
.btn-success.active,
|
|
.btn-info.active,
|
|
.btn-warning.active,
|
|
.btn-danger.active {
|
|
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
|
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
|
}
|
|
.btn-default.disabled,
|
|
.btn-primary.disabled,
|
|
.btn-success.disabled,
|
|
.btn-info.disabled,
|
|
.btn-warning.disabled,
|
|
.btn-danger.disabled,
|
|
.btn-default[disabled],
|
|
.btn-primary[disabled],
|
|
.btn-success[disabled],
|
|
.btn-info[disabled],
|
|
.btn-warning[disabled],
|
|
.btn-danger[disabled],
|
|
fieldset[disabled] .btn-default,
|
|
fieldset[disabled] .btn-primary,
|
|
fieldset[disabled] .btn-success,
|
|
fieldset[disabled] .btn-info,
|
|
fieldset[disabled] .btn-warning,
|
|
fieldset[disabled] .btn-danger {
|
|
-webkit-box-shadow: none;
|
|
box-shadow: none;
|
|
}
|
|
.btn-default .badge,
|
|
.btn-primary .badge,
|
|
.btn-success .badge,
|
|
.btn-info .badge,
|
|
.btn-warning .badge,
|
|
.btn-danger .badge {
|
|
text-shadow: none;
|
|
}
|
|
.btn:active,
|
|
.btn.active {
|
|
background-image: none;
|
|
}
|
|
.btn-default {
|
|
text-shadow: 0 1px 0 #fff;
|
|
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
|
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
|
|
background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #dbdbdb;
|
|
border-color: #ccc;
|
|
}
|
|
.btn-default:hover,
|
|
.btn-default:focus {
|
|
background-color: #e0e0e0;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-default:active,
|
|
.btn-default.active {
|
|
background-color: #e0e0e0;
|
|
border-color: #dbdbdb;
|
|
}
|
|
.btn-default.disabled,
|
|
.btn-default[disabled],
|
|
fieldset[disabled] .btn-default,
|
|
.btn-default.disabled:hover,
|
|
.btn-default[disabled]:hover,
|
|
fieldset[disabled] .btn-default:hover,
|
|
.btn-default.disabled:focus,
|
|
.btn-default[disabled]:focus,
|
|
fieldset[disabled] .btn-default:focus,
|
|
.btn-default.disabled.focus,
|
|
.btn-default[disabled].focus,
|
|
fieldset[disabled] .btn-default.focus,
|
|
.btn-default.disabled:active,
|
|
.btn-default[disabled]:active,
|
|
fieldset[disabled] .btn-default:active,
|
|
.btn-default.disabled.active,
|
|
.btn-default[disabled].active,
|
|
fieldset[disabled] .btn-default.active {
|
|
background-color: #e0e0e0;
|
|
background-image: none;
|
|
}
|
|
.btn-primary {
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #245580;
|
|
}
|
|
.btn-primary:hover,
|
|
.btn-primary:focus {
|
|
background-color: #265a88;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-primary:active,
|
|
.btn-primary.active {
|
|
background-color: #265a88;
|
|
border-color: #245580;
|
|
}
|
|
.btn-primary.disabled,
|
|
.btn-primary[disabled],
|
|
fieldset[disabled] .btn-primary,
|
|
.btn-primary.disabled:hover,
|
|
.btn-primary[disabled]:hover,
|
|
fieldset[disabled] .btn-primary:hover,
|
|
.btn-primary.disabled:focus,
|
|
.btn-primary[disabled]:focus,
|
|
fieldset[disabled] .btn-primary:focus,
|
|
.btn-primary.disabled.focus,
|
|
.btn-primary[disabled].focus,
|
|
fieldset[disabled] .btn-primary.focus,
|
|
.btn-primary.disabled:active,
|
|
.btn-primary[disabled]:active,
|
|
fieldset[disabled] .btn-primary:active,
|
|
.btn-primary.disabled.active,
|
|
.btn-primary[disabled].active,
|
|
fieldset[disabled] .btn-primary.active {
|
|
background-color: #265a88;
|
|
background-image: none;
|
|
}
|
|
.btn-success {
|
|
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
|
|
background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
|
|
background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #3e8f3e;
|
|
}
|
|
.btn-success:hover,
|
|
.btn-success:focus {
|
|
background-color: #419641;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-success:active,
|
|
.btn-success.active {
|
|
background-color: #419641;
|
|
border-color: #3e8f3e;
|
|
}
|
|
.btn-success.disabled,
|
|
.btn-success[disabled],
|
|
fieldset[disabled] .btn-success,
|
|
.btn-success.disabled:hover,
|
|
.btn-success[disabled]:hover,
|
|
fieldset[disabled] .btn-success:hover,
|
|
.btn-success.disabled:focus,
|
|
.btn-success[disabled]:focus,
|
|
fieldset[disabled] .btn-success:focus,
|
|
.btn-success.disabled.focus,
|
|
.btn-success[disabled].focus,
|
|
fieldset[disabled] .btn-success.focus,
|
|
.btn-success.disabled:active,
|
|
.btn-success[disabled]:active,
|
|
fieldset[disabled] .btn-success:active,
|
|
.btn-success.disabled.active,
|
|
.btn-success[disabled].active,
|
|
fieldset[disabled] .btn-success.active {
|
|
background-color: #419641;
|
|
background-image: none;
|
|
}
|
|
.btn-info {
|
|
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
|
|
background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
|
|
background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #28a4c9;
|
|
}
|
|
.btn-info:hover,
|
|
.btn-info:focus {
|
|
background-color: #2aabd2;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-info:active,
|
|
.btn-info.active {
|
|
background-color: #2aabd2;
|
|
border-color: #28a4c9;
|
|
}
|
|
.btn-info.disabled,
|
|
.btn-info[disabled],
|
|
fieldset[disabled] .btn-info,
|
|
.btn-info.disabled:hover,
|
|
.btn-info[disabled]:hover,
|
|
fieldset[disabled] .btn-info:hover,
|
|
.btn-info.disabled:focus,
|
|
.btn-info[disabled]:focus,
|
|
fieldset[disabled] .btn-info:focus,
|
|
.btn-info.disabled.focus,
|
|
.btn-info[disabled].focus,
|
|
fieldset[disabled] .btn-info.focus,
|
|
.btn-info.disabled:active,
|
|
.btn-info[disabled]:active,
|
|
fieldset[disabled] .btn-info:active,
|
|
.btn-info.disabled.active,
|
|
.btn-info[disabled].active,
|
|
fieldset[disabled] .btn-info.active {
|
|
background-color: #2aabd2;
|
|
background-image: none;
|
|
}
|
|
.btn-warning {
|
|
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
|
|
background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
|
|
background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #e38d13;
|
|
}
|
|
.btn-warning:hover,
|
|
.btn-warning:focus {
|
|
background-color: #eb9316;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-warning:active,
|
|
.btn-warning.active {
|
|
background-color: #eb9316;
|
|
border-color: #e38d13;
|
|
}
|
|
.btn-warning.disabled,
|
|
.btn-warning[disabled],
|
|
fieldset[disabled] .btn-warning,
|
|
.btn-warning.disabled:hover,
|
|
.btn-warning[disabled]:hover,
|
|
fieldset[disabled] .btn-warning:hover,
|
|
.btn-warning.disabled:focus,
|
|
.btn-warning[disabled]:focus,
|
|
fieldset[disabled] .btn-warning:focus,
|
|
.btn-warning.disabled.focus,
|
|
.btn-warning[disabled].focus,
|
|
fieldset[disabled] .btn-warning.focus,
|
|
.btn-warning.disabled:active,
|
|
.btn-warning[disabled]:active,
|
|
fieldset[disabled] .btn-warning:active,
|
|
.btn-warning.disabled.active,
|
|
.btn-warning[disabled].active,
|
|
fieldset[disabled] .btn-warning.active {
|
|
background-color: #eb9316;
|
|
background-image: none;
|
|
}
|
|
.btn-danger {
|
|
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
|
|
background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
|
|
background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-color: #b92c28;
|
|
}
|
|
.btn-danger:hover,
|
|
.btn-danger:focus {
|
|
background-color: #c12e2a;
|
|
background-position: 0 -15px;
|
|
}
|
|
.btn-danger:active,
|
|
.btn-danger.active {
|
|
background-color: #c12e2a;
|
|
border-color: #b92c28;
|
|
}
|
|
.btn-danger.disabled,
|
|
.btn-danger[disabled],
|
|
fieldset[disabled] .btn-danger,
|
|
.btn-danger.disabled:hover,
|
|
.btn-danger[disabled]:hover,
|
|
fieldset[disabled] .btn-danger:hover,
|
|
.btn-danger.disabled:focus,
|
|
.btn-danger[disabled]:focus,
|
|
fieldset[disabled] .btn-danger:focus,
|
|
.btn-danger.disabled.focus,
|
|
.btn-danger[disabled].focus,
|
|
fieldset[disabled] .btn-danger.focus,
|
|
.btn-danger.disabled:active,
|
|
.btn-danger[disabled]:active,
|
|
fieldset[disabled] .btn-danger:active,
|
|
.btn-danger.disabled.active,
|
|
.btn-danger[disabled].active,
|
|
fieldset[disabled] .btn-danger.active {
|
|
background-color: #c12e2a;
|
|
background-image: none;
|
|
}
|
|
.thumbnail,
|
|
.img-thumbnail {
|
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
|
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
|
}
|
|
.dropdown-menu > li > a:hover,
|
|
.dropdown-menu > li > a:focus {
|
|
background-color: #e8e8e8;
|
|
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
|
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
|
|
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.dropdown-menu > .active > a,
|
|
.dropdown-menu > .active > a:hover,
|
|
.dropdown-menu > .active > a:focus {
|
|
background-color: #2e6da4;
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.navbar-default {
|
|
background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%);
|
|
background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8));
|
|
background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-radius: 4px;
|
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
|
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
|
|
}
|
|
.navbar-default .navbar-nav > .open > a,
|
|
.navbar-default .navbar-nav > .active > a {
|
|
background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
|
|
background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2));
|
|
background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
|
|
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);
|
|
}
|
|
.navbar-inverse {
|
|
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
|
|
background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
|
|
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
background-repeat: repeat-x;
|
|
border-radius: 4px;
|
|
}
|
|
.navbar-inverse .navbar-nav > .open > a,
|
|
.navbar-inverse .navbar-nav > .active > a {
|
|
background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);
|
|
background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f));
|
|
background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
|
|
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
|
|
}
|
|
.navbar-inverse .navbar-brand,
|
|
.navbar-inverse .navbar-nav > li > a {
|
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
|
|
}
|
|
.navbar-static-top,
|
|
.navbar-fixed-top,
|
|
.navbar-fixed-bottom {
|
|
border-radius: 0;
|
|
}
|
|
@media (max-width: 767px) {
|
|
.navbar .navbar-nav .open .dropdown-menu > .active > a,
|
|
.navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
|
|
.navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
|
|
color: #fff;
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
}
|
|
.alert {
|
|
text-shadow: 0 1px 0 rgba(255, 255, 255, .2);
|
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
|
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
|
|
}
|
|
.alert-success {
|
|
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
|
|
background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
|
|
background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #b2dba1;
|
|
}
|
|
.alert-info {
|
|
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
|
|
background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));
|
|
background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #9acfea;
|
|
}
|
|
.alert-warning {
|
|
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
|
|
background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));
|
|
background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #f5e79e;
|
|
}
|
|
.alert-danger {
|
|
background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
|
|
background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
|
|
background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #dca7a7;
|
|
}
|
|
.progress {
|
|
background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
|
|
background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
|
|
background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar {
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar-success {
|
|
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
|
|
background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
|
|
background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar-info {
|
|
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
|
|
background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
|
|
background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar-warning {
|
|
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
|
|
background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
|
|
background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar-danger {
|
|
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
|
|
background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
|
|
background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.progress-bar-striped {
|
|
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
|
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
|
background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
|
}
|
|
.list-group {
|
|
border-radius: 4px;
|
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
|
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 #286090;
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #2b669a;
|
|
}
|
|
.list-group-item.active .badge,
|
|
.list-group-item.active:hover .badge,
|
|
.list-group-item.active:focus .badge {
|
|
text-shadow: none;
|
|
}
|
|
.panel {
|
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
|
|
box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
|
|
}
|
|
.panel-default > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
|
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
|
|
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.panel-primary > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
|
|
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.panel-success > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
|
|
background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
|
|
background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.panel-info > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
|
|
background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
|
|
background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.panel-warning > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
|
|
background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
|
|
background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.panel-danger > .panel-heading {
|
|
background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
|
|
background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
|
|
background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
}
|
|
.well {
|
|
background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
|
|
background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
|
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
|
|
background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
|
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
|
|
background-repeat: repeat-x;
|
|
border-color: #dcdcdc;
|
|
-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
|
|
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
|
|
}
|
|
/*# sourceMappingURL=bootstrap-theme.css.map */
|