├── .babelrc ├── .eslintrc ├── .gitignore ├── README.md ├── config.js ├── font-awesome ├── HELP-US-OUT.txt ├── css │ ├── font-awesome.css │ └── font-awesome.min.css ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ └── fontawesome-webfont.woff2 ├── less │ ├── animated.less │ ├── bordered-pulled.less │ ├── core.less │ ├── fixed-width.less │ ├── font-awesome.less │ ├── icons.less │ ├── larger.less │ ├── list.less │ ├── mixins.less │ ├── path.less │ ├── rotated-flipped.less │ ├── screen-reader.less │ ├── stacked.less │ └── variables.less └── scss │ ├── _animated.scss │ ├── _bordered-pulled.scss │ ├── _core.scss │ ├── _fixed-width.scss │ ├── _icons.scss │ ├── _larger.scss │ ├── _list.scss │ ├── _mixins.scss │ ├── _path.scss │ ├── _rotated-flipped.scss │ ├── _screen-reader.scss │ ├── _stacked.scss │ ├── _variables.scss │ └── font-awesome.scss ├── images ├── default-picture.png ├── hanyelemary.jpg └── tw-logo.png ├── package.json ├── semantic.json ├── semantic └── src │ ├── semantic.less │ ├── theme.config │ ├── theme.less │ └── themes │ ├── amazon │ ├── elements │ │ ├── button.overrides │ │ └── button.variables │ └── globals │ │ └── site.variables │ ├── basic │ ├── assets │ │ └── fonts │ │ │ ├── icons.eot │ │ │ ├── icons.svg │ │ │ ├── icons.ttf │ │ │ └── icons.woff │ ├── collections │ │ ├── table.overrides │ │ └── table.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── icon.overrides │ │ ├── icon.variables │ │ ├── step.overrides │ │ └── step.variables │ ├── globals │ │ ├── reset.overrides │ │ └── reset.variables │ ├── modules │ │ ├── progress.overrides │ │ └── progress.variables │ └── views │ │ ├── card.overrides │ │ └── card.variables │ ├── bookish │ └── elements │ │ ├── header.overrides │ │ └── header.variables │ ├── bootstrap3 │ └── elements │ │ ├── button.overrides │ │ └── button.variables │ ├── chubby │ ├── collections │ │ ├── form.overrides │ │ ├── form.variables │ │ ├── menu.overrides │ │ └── menu.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── header.overrides │ │ └── header.variables │ ├── modules │ │ ├── accordion.overrides │ │ └── accordion.variables │ └── views │ │ ├── comment.overrides │ │ └── comment.variables │ ├── classic │ ├── collections │ │ ├── table.overrides │ │ └── table.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── header.overrides │ │ └── header.variables │ ├── modules │ │ ├── progress.overrides │ │ └── progress.variables │ └── views │ │ ├── card.overrides │ │ └── card.variables │ ├── colored │ └── modules │ │ ├── checkbox.overrides │ │ └── checkbox.variables │ ├── default │ ├── assets │ │ ├── fonts │ │ │ ├── icons.eot │ │ │ ├── icons.svg │ │ │ ├── icons.ttf │ │ │ ├── icons.woff │ │ │ └── icons.woff2 │ │ └── images │ │ │ └── flags.png │ ├── collections │ │ ├── breadcrumb.overrides │ │ ├── breadcrumb.variables │ │ ├── form.overrides │ │ ├── form.variables │ │ ├── grid.overrides │ │ ├── grid.variables │ │ ├── menu.overrides │ │ ├── menu.variables │ │ ├── message.overrides │ │ ├── message.variables │ │ ├── table.overrides │ │ └── table.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── container.overrides │ │ ├── container.variables │ │ ├── divider.overrides │ │ ├── divider.variables │ │ ├── flag.overrides │ │ ├── flag.variables │ │ ├── header.overrides │ │ ├── header.variables │ │ ├── icon.overrides │ │ ├── icon.variables │ │ ├── image.overrides │ │ ├── image.variables │ │ ├── input.overrides │ │ ├── input.variables │ │ ├── label.overrides │ │ ├── label.variables │ │ ├── list.overrides │ │ ├── list.variables │ │ ├── loader.overrides │ │ ├── loader.variables │ │ ├── rail.overrides │ │ ├── rail.variables │ │ ├── reveal.overrides │ │ ├── reveal.variables │ │ ├── segment.overrides │ │ ├── segment.variables │ │ ├── step.overrides │ │ └── step.variables │ ├── globals │ │ ├── reset.overrides │ │ ├── reset.variables │ │ ├── site.overrides │ │ └── site.variables │ ├── modules │ │ ├── accordion.overrides │ │ ├── accordion.variables │ │ ├── chatroom.overrides │ │ ├── chatroom.variables │ │ ├── checkbox.overrides │ │ ├── checkbox.variables │ │ ├── dimmer.overrides │ │ ├── dimmer.variables │ │ ├── dropdown.overrides │ │ ├── dropdown.variables │ │ ├── embed.overrides │ │ ├── embed.variables │ │ ├── modal.overrides │ │ ├── modal.variables │ │ ├── nag.overrides │ │ ├── nag.variables │ │ ├── popup.overrides │ │ ├── popup.variables │ │ ├── progress.overrides │ │ ├── progress.variables │ │ ├── rating.overrides │ │ ├── rating.variables │ │ ├── search.overrides │ │ ├── search.variables │ │ ├── shape.overrides │ │ ├── shape.variables │ │ ├── sidebar.overrides │ │ ├── sidebar.variables │ │ ├── sticky.overrides │ │ ├── sticky.variables │ │ ├── tab.overrides │ │ ├── tab.variables │ │ ├── transition.overrides │ │ └── transition.variables │ └── views │ │ ├── ad.overrides │ │ ├── ad.variables │ │ ├── card.overrides │ │ ├── card.variables │ │ ├── comment.overrides │ │ ├── comment.variables │ │ ├── feed.overrides │ │ ├── feed.variables │ │ ├── item.overrides │ │ ├── item.variables │ │ ├── statistic.overrides │ │ └── statistic.variables │ ├── duo │ └── elements │ │ ├── loader.overrides │ │ └── loader.variables │ ├── fixed-width │ ├── collections │ │ ├── grid.overrides │ │ └── grid.variables │ └── modules │ │ ├── modal.overrides │ │ └── modal.variables │ ├── flat │ ├── collections │ │ ├── form.overrides │ │ └── form.variables │ └── globals │ │ ├── site.overrides │ │ └── site.variables │ ├── github │ ├── assets │ │ └── fonts │ │ │ ├── octicons-local.ttf │ │ │ ├── octicons.svg │ │ │ ├── octicons.ttf │ │ │ └── octicons.woff │ ├── collections │ │ ├── breadcrumb.variables │ │ ├── form.overrides │ │ ├── form.variables │ │ ├── grid.variables │ │ ├── menu.overrides │ │ ├── menu.variables │ │ ├── message.overrides │ │ ├── message.variables │ │ └── table.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── header.variables │ │ ├── icon.overrides │ │ ├── icon.variables │ │ ├── image.variables │ │ ├── input.overrides │ │ ├── input.variables │ │ ├── label.overrides │ │ ├── label.variables │ │ ├── segment.overrides │ │ ├── segment.variables │ │ ├── step.overrides │ │ └── step.variables │ ├── globals │ │ └── site.variables │ └── modules │ │ ├── dropdown.overrides │ │ ├── dropdown.variables │ │ └── popup.variables │ ├── gmail │ └── collections │ │ ├── message.overrides │ │ └── message.variables │ ├── instagram │ └── views │ │ ├── card.overrides │ │ └── card.variables │ ├── material │ ├── collections │ │ ├── menu.overrides │ │ └── menu.variables │ ├── elements │ │ ├── button.overrides │ │ ├── button.variables │ │ ├── header.overrides │ │ └── header.variables │ ├── globals │ │ ├── site.overrides │ │ └── site.variables │ └── modules │ │ ├── dropdown.overrides │ │ ├── dropdown.variables │ │ ├── modal.overrides │ │ └── modal.variables │ ├── pulsar │ └── elements │ │ ├── loader.overrides │ │ └── loader.variables │ ├── raised │ └── elements │ │ ├── button.overrides │ │ └── button.variables │ ├── resetcss │ └── globals │ │ ├── reset.overrides │ │ └── reset.variables │ ├── round │ └── elements │ │ ├── button.overrides │ │ └── button.variables │ ├── rtl │ └── globals │ │ ├── site.overrides │ │ └── site.variables │ ├── striped │ └── modules │ │ ├── progress.overrides │ │ └── progress.variables │ ├── timeline │ └── views │ │ ├── feed.overrides │ │ └── feed.variables │ └── twitter │ └── elements │ ├── button.overrides │ └── button.variables ├── src ├── App.jsx ├── App.less ├── api │ ├── search-route.js │ ├── search-service.js │ └── search.js ├── client.js ├── config.js ├── header │ ├── actions │ │ └── search-actions.js │ ├── components │ │ ├── AutocompleteResult.jsx │ │ ├── AutocompleteResultsFooter.jsx │ │ ├── AutocompleteResultsList.jsx │ │ ├── Banner.jsx │ │ ├── Button.jsx │ │ ├── Navigation.jsx │ │ ├── PageHeader.jsx │ │ ├── SearchBar.jsx │ │ └── SearchBarContainer.jsx │ ├── css │ │ ├── PageHeader.less │ │ └── Search.less │ ├── reducers │ │ ├── autocomplete-reducer.js │ │ └── page-header-reducer.js │ ├── sagas │ │ └── autocomplete-saga.js │ └── tests │ │ ├── Button_spec.js │ │ └── SearchBar_spec.js ├── main.less ├── mocks │ ├── autosuggest │ │ ├── autosuggest.ejs │ │ ├── data.js │ │ └── response.js │ ├── imposters.ejs │ └── profiles │ │ ├── hanyelemary.ejs │ │ └── response.js ├── pages │ └── search-results-page │ │ ├── components │ │ ├── NoSearchResults.jsx │ │ ├── SearchResult.jsx │ │ ├── SearchResults.jsx │ │ ├── SearchResultsPage.jsx │ │ ├── SearchResultsPageContainer.jsx │ │ └── Spinner.jsx │ │ ├── css │ │ └── SearchResults.less │ │ ├── reducers │ │ └── search-results-reducer.js │ │ ├── sagas │ │ └── search-results-saga.js │ │ └── tests │ │ └── SearchResultsPage_spec.js ├── reducers.js ├── routes.js ├── sagas.js ├── server.js └── store.js ├── test ├── mocha.opts └── utils │ └── dom.js └── webpack ├── dev ├── webpack.config.js └── webpack.server.config.js └── prod ├── webpack.config.js └── webpack.server.config.js /.babelrc: -------------------------------------------------------------------------------- 1 | /*these are dependencies that allow us to write React and es6*/ 2 | { 3 | "presets" : ["es2015", "react", "stage-0"], 4 | "plugins": [ 5 | "transform-object-rest-spread", 6 | "transform-flow-strip-types", 7 | "transform-async-to-generator" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "parser": "babel-eslint", 3 | # specifies global predefined variables 4 | "env": { 5 | "browser": true, 6 | "node": true, 7 | "es6": true, 8 | "mocha": true, 9 | "jquery": true 10 | }, 11 | # extends the .eslintrc file from airbnb 12 | "extends": "eslint-config-airbnb", 13 | # in the rules section you overide the settings from the parent configuration 14 | # for more info on rule configuration: http://eslint.org/docs/user-guide/configuring#configuring-rules 15 | # list of eslint rules http://eslint.org/docs/rules/ 16 | "rules": { 17 | "comma-dangle": ["error", "never"], 18 | "max-len": ["error", 120], 19 | "react/prefer-stateless-function": "off", 20 | "react/jsx-filename-extension": "off", 21 | "no-underscore-dangle": "off", 22 | "no-console": ["error", { "allow": ["warn", "error"] }], 23 | "new-cap": ["error", { "capIsNewExceptions": ["Map", "Set", "List", "Seq", "Router"] }], 24 | "complexity": ["error", { "max": 4 }], 25 | "max-statements": ["error", {"max": 8}], 26 | "max-params": ["error", 3], 27 | "arrow-body-style": 0, 28 | "no-magic-numbers": "off", 29 | "no-unused-vars": "error" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | .DS_Store 4 | npm-debug.log 5 | semantic/dist 6 | semantic/src/definitions 7 | semantic/src/site 8 | semantic/tasks 9 | semantic/gulpfile.js 10 | server.bundle.js 11 | mochawesome-reports 12 | coverage 13 | .env 14 | .npmrc 15 | .vscode/ 16 | *.log* 17 | *.pid -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [tdd-react-redux-isomorphic](http://www.informit.com/store/test-driven-development-for-react-redux-in-an-isomorphic-9780134698403?platform=hootsuite) 2 | Sample Redux Isomorphic App. 3 | 4 | A step-by-step video tutorial on building this application is available on [Informit](http://www.informit.com/store/test-driven-development-for-react-redux-in-an-isomorphic-9780134698403?platform=hootsuite). 5 | 6 | ## Tech stack 7 | * NodeJS 8 | * Gulp 9 | * [SemanticUI](https://semantic-ui.com/introduction/getting-started.html) is used as the UI library 10 | * Express 11 | * React / Redux 12 | * Redux Sagas - for asyncronous operations 13 | * Mountebank - for our fake service (over the wire) 14 | 15 | ## Project setup 16 | Since SemanticUI uses gulp to build themed versions of the library, you must install gulp globally as a pre-requisite: 17 | ``` 18 | npm install -g gulp 19 | ``` 20 | 21 | Now you need to fetch all the required dependencies in the package.json file by running this command within the project directory: 22 | ```npm install``` 23 | 24 | In a different shell, run this command to start up the service: ```npm run mountebank``` 25 | 26 | ## Building SemanticUI 27 | Run this command to build semantic's assets (JavaScript and CSS): 28 | ```npm run build:semantic``` 29 | 30 | ## Running the project 31 | Run this command to start up the app while watching for changes: 32 | ```npm run dev``` 33 | 34 | Now you can go to [http://localhost:8080/](http://localhost:8080/) 35 | -------------------------------------------------------------------------------- /config.js: -------------------------------------------------------------------------------- 1 | const DEFAULT_PORT = 8080; 2 | 3 | module.exports = { 4 | port: process.env.PORT || DEFAULT_PORT, 5 | searchServiceUrl: process.env.searchUrl || 'http://localhost:8081/' 6 | }; 7 | -------------------------------------------------------------------------------- /font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /font-awesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | .fa-icon-rotate(@degrees, @rotation) { 15 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})"; 16 | -webkit-transform: rotate(@degrees); 17 | -ms-transform: rotate(@degrees); 18 | transform: rotate(@degrees); 19 | } 20 | 21 | .fa-icon-flip(@horiz, @vert, @rotation) { 22 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)"; 23 | -webkit-transform: scale(@horiz, @vert); 24 | -ms-transform: scale(@horiz, @vert); 25 | transform: scale(@horiz, @vert); 26 | } 27 | 28 | 29 | // Only display content to screen readers. A la Bootstrap 4. 30 | // 31 | // See: http://a11yproject.com/posts/how-to-hide-content/ 32 | 33 | .sr-only() { 34 | position: absolute; 35 | width: 1px; 36 | height: 1px; 37 | padding: 0; 38 | margin: -1px; 39 | overflow: hidden; 40 | clip: rect(0,0,0,0); 41 | border: 0; 42 | } 43 | 44 | // Use in conjunction with .sr-only to only display content when it's focused. 45 | // 46 | // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 47 | // 48 | // Credit: HTML5 Boilerplate 49 | 50 | .sr-only-focusable() { 51 | &:active, 52 | &:focus { 53 | position: static; 54 | width: auto; 55 | height: auto; 56 | margin: 0; 57 | overflow: visible; 58 | clip: auto; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /font-awesome/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /font-awesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | @mixin fa-icon-rotate($degrees, $rotation) { 15 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; 16 | -webkit-transform: rotate($degrees); 17 | -ms-transform: rotate($degrees); 18 | transform: rotate($degrees); 19 | } 20 | 21 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 22 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)"; 23 | -webkit-transform: scale($horiz, $vert); 24 | -ms-transform: scale($horiz, $vert); 25 | transform: scale($horiz, $vert); 26 | } 27 | 28 | 29 | // Only display content to screen readers. A la Bootstrap 4. 30 | // 31 | // See: http://a11yproject.com/posts/how-to-hide-content/ 32 | 33 | @mixin sr-only { 34 | position: absolute; 35 | width: 1px; 36 | height: 1px; 37 | padding: 0; 38 | margin: -1px; 39 | overflow: hidden; 40 | clip: rect(0,0,0,0); 41 | border: 0; 42 | } 43 | 44 | // Use in conjunction with .sr-only to only display content when it's focused. 45 | // 46 | // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 47 | // 48 | // Credit: HTML5 Boilerplate 49 | 50 | @mixin sr-only-focusable { 51 | &:active, 52 | &:focus { 53 | position: static; 54 | width: auto; 55 | height: auto; 56 | margin: 0; 57 | overflow: visible; 58 | clip: auto; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /font-awesome/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /images/default-picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/images/default-picture.png -------------------------------------------------------------------------------- /images/hanyelemary.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/images/hanyelemary.jpg -------------------------------------------------------------------------------- /images/tw-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/images/tw-logo.png -------------------------------------------------------------------------------- /semantic.json: -------------------------------------------------------------------------------- 1 | { 2 | "base": "semantic/", 3 | "paths": { 4 | "source": { 5 | "config": "src/theme.config", 6 | "definitions": "src/definitions/", 7 | "site": "src/site/", 8 | "themes": "src/themes/" 9 | }, 10 | "output": { 11 | "packaged": "dist/", 12 | "uncompressed": "dist/components/", 13 | "compressed": "dist/components/", 14 | "themes": "dist/themes/" 15 | }, 16 | "clean": "dist/" 17 | }, 18 | "permission": false, 19 | "rtl": false, 20 | "version": "2.1.8" 21 | } -------------------------------------------------------------------------------- /semantic/src/semantic.less: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | ███████╗███████╗███╗ ███╗ █████╗ ███╗ ██╗████████╗██╗ ██████╗ ██╗ ██╗██╗ 4 | ██╔════╝██╔════╝████╗ ████║██╔══██╗████╗ ██║╚══██╔══╝██║██╔════╝ ██║ ██║██║ 5 | ███████╗█████╗ ██╔████╔██║███████║██╔██╗ ██║ ██║ ██║██║ ██║ ██║██║ 6 | ╚════██║██╔══╝ ██║╚██╔╝██║██╔══██║██║╚██╗██║ ██║ ██║██║ ██║ ██║██║ 7 | ███████║███████╗██║ ╚═╝ ██║██║ ██║██║ ╚████║ ██║ ██║╚██████╗ ╚██████╔╝██║ 8 | ╚══════╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ 9 | 10 | Import this file into your LESS project to use Semantic UI without build tools 11 | */ 12 | 13 | /* Global */ 14 | & { @import "definitions/globals/reset"; } 15 | & { @import "definitions/globals/site"; } 16 | 17 | /* Elements */ 18 | & { @import "definitions/elements/button"; } 19 | & { @import "definitions/elements/container"; } 20 | & { @import "definitions/elements/divider"; } 21 | & { @import "definitions/elements/flag"; } 22 | & { @import "definitions/elements/header"; } 23 | & { @import "definitions/elements/icon"; } 24 | & { @import "definitions/elements/image"; } 25 | & { @import "definitions/elements/input"; } 26 | & { @import "definitions/elements/label"; } 27 | & { @import "definitions/elements/list"; } 28 | & { @import "definitions/elements/loader"; } 29 | & { @import "definitions/elements/rail"; } 30 | & { @import "definitions/elements/reveal"; } 31 | & { @import "definitions/elements/segment"; } 32 | & { @import "definitions/elements/step"; } 33 | 34 | /* Collections */ 35 | & { @import "definitions/collections/breadcrumb"; } 36 | & { @import "definitions/collections/form"; } 37 | & { @import "definitions/collections/grid"; } 38 | & { @import "definitions/collections/menu"; } 39 | & { @import "definitions/collections/message"; } 40 | & { @import "definitions/collections/table"; } 41 | 42 | /* Views */ 43 | & { @import "definitions/views/ad"; } 44 | & { @import "definitions/views/card"; } 45 | & { @import "definitions/views/comment"; } 46 | & { @import "definitions/views/feed"; } 47 | & { @import "definitions/views/item"; } 48 | & { @import "definitions/views/statistic"; } 49 | 50 | /* Modules */ 51 | & { @import "definitions/modules/accordion"; } 52 | & { @import "definitions/modules/checkbox"; } 53 | & { @import "definitions/modules/dimmer"; } 54 | & { @import "definitions/modules/dropdown"; } 55 | & { @import "definitions/modules/embed"; } 56 | & { @import "definitions/modules/modal"; } 57 | & { @import "definitions/modules/nag"; } 58 | & { @import "definitions/modules/popup"; } 59 | & { @import "definitions/modules/progress"; } 60 | & { @import "definitions/modules/rating"; } 61 | & { @import "definitions/modules/search"; } 62 | & { @import "definitions/modules/shape"; } 63 | & { @import "definitions/modules/sidebar"; } 64 | & { @import "definitions/modules/sticky"; } 65 | & { @import "definitions/modules/tab"; } 66 | & { @import "definitions/modules/transition"; } 67 | -------------------------------------------------------------------------------- /semantic/src/theme.config: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | ████████╗██╗ ██╗███████╗███╗ ███╗███████╗███████╗ 4 | ╚══██╔══╝██║ ██║██╔════╝████╗ ████║██╔════╝██╔════╝ 5 | ██║ ███████║█████╗ ██╔████╔██║█████╗ ███████╗ 6 | ██║ ██╔══██║██╔══╝ ██║╚██╔╝██║██╔══╝ ╚════██║ 7 | ██║ ██║ ██║███████╗██║ ╚═╝ ██║███████╗███████║ 8 | ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝ 9 | 10 | */ 11 | 12 | /******************************* 13 | Theme Selection 14 | *******************************/ 15 | 16 | /* To override a theme for an individual element 17 | specify theme name below 18 | */ 19 | 20 | /* Global */ 21 | @site : 'default'; 22 | @reset : 'default'; 23 | 24 | /* Elements */ 25 | @button : 'default'; 26 | @container : 'default'; 27 | @divider : 'default'; 28 | @flag : 'default'; 29 | @header : 'default'; 30 | @icon : 'default'; 31 | @image : 'default'; 32 | @input : 'default'; 33 | @label : 'default'; 34 | @list : 'default'; 35 | @loader : 'default'; 36 | @rail : 'default'; 37 | @reveal : 'default'; 38 | @segment : 'default'; 39 | @step : 'default'; 40 | 41 | /* Collections */ 42 | @breadcrumb : 'default'; 43 | @form : 'default'; 44 | @grid : 'default'; 45 | @menu : 'default'; 46 | @message : 'default'; 47 | @table : 'default'; 48 | 49 | /* Modules */ 50 | @accordion : 'default'; 51 | @checkbox : 'default'; 52 | @dimmer : 'default'; 53 | @dropdown : 'default'; 54 | @embed : 'default'; 55 | @modal : 'default'; 56 | @nag : 'default'; 57 | @popup : 'default'; 58 | @progress : 'default'; 59 | @rating : 'default'; 60 | @search : 'default'; 61 | @shape : 'default'; 62 | @sidebar : 'default'; 63 | @sticky : 'default'; 64 | @tab : 'default'; 65 | @transition : 'default'; 66 | 67 | /* Views */ 68 | @ad : 'default'; 69 | @card : 'default'; 70 | @comment : 'default'; 71 | @feed : 'default'; 72 | @item : 'default'; 73 | @statistic : 'default'; 74 | 75 | /******************************* 76 | Folders 77 | *******************************/ 78 | 79 | /* Path to theme packages */ 80 | @themesFolder : 'themes'; 81 | 82 | /* Path to site override folder */ 83 | @siteFolder : 'site/'; 84 | 85 | 86 | /******************************* 87 | Import Theme 88 | *******************************/ 89 | 90 | @import "theme.less"; 91 | 92 | /* End Config */ -------------------------------------------------------------------------------- /semantic/src/theme.less: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Import Directives 3 | *******************************/ 4 | 5 | /*------------------ 6 | Theme 7 | -------------------*/ 8 | 9 | @theme: @@element; 10 | 11 | /*-------------------- 12 | Site Variables 13 | ---------------------*/ 14 | 15 | /* Default site.variables */ 16 | @import "@{themesFolder}/default/globals/site.variables"; 17 | 18 | /* Packaged site.variables */ 19 | @import "@{themesFolder}/@{site}/globals/site.variables"; 20 | 21 | /* Component's site.variables */ 22 | @import (optional) "@{themesFolder}/@{theme}/globals/site.variables"; 23 | 24 | /* Site theme site.variables */ 25 | @import (optional) "@{siteFolder}/globals/site.variables"; 26 | 27 | 28 | /*------------------- 29 | Component Variables 30 | ---------------------*/ 31 | 32 | /* Default */ 33 | @import "@{themesFolder}/default/@{type}s/@{element}.variables"; 34 | 35 | /* Packaged Theme */ 36 | @import (optional) "@{themesFolder}/@{theme}/@{type}s/@{element}.variables"; 37 | 38 | /* Site Theme */ 39 | @import (optional) "@{siteFolder}/@{type}s/@{element}.variables"; 40 | 41 | 42 | /******************************* 43 | Mix-ins 44 | *******************************/ 45 | 46 | /*------------------ 47 | Fonts 48 | -------------------*/ 49 | 50 | .loadFonts() when (@importGoogleFonts) { 51 | @import url('@{googleProtocol}fonts.googleapis.com/css?family=@{googleFontRequest}'); 52 | } 53 | 54 | /*------------------ 55 | Overrides 56 | -------------------*/ 57 | 58 | .loadUIOverrides() { 59 | @import (optional) "@{themesFolder}/@{theme}/@{type}s/@{element}.overrides"; 60 | @import (optional) "@{siteFolder}/@{type}s/@{element}.overrides"; 61 | } 62 | -------------------------------------------------------------------------------- /semantic/src/themes/amazon/elements/button.overrides: -------------------------------------------------------------------------------- 1 | .ui.button { 2 | background-image: linear-gradient(center top , #F7F8FA, #E7E9EC) repeat scroll 0 0 rgba(0, 0, 0, 0); 3 | } 4 | 5 | .ui.primary.button { 6 | color: #111111; 7 | border: 1px solid; 8 | border-color: #C59F43 #AA8326 #957321; 9 | } 10 | .ui.primary.button:hover { 11 | border-color: #C59F43 #AA8326 #957321; 12 | color: #111111; 13 | } 14 | 15 | .ui.secondary.button { 16 | border: 1px solid; 17 | border-color: #3D444C #2F353B #2C3137; 18 | } 19 | .ui.secondary.button:hover { 20 | border-color: #32373E #24282D #212429; 21 | } 22 | 23 | 24 | .ui.labeled.icon.buttons .button > .icon, 25 | .ui.labeled.icon.button > .icon { 26 | padding-bottom: 0.48em; 27 | padding-top: 0.48em; 28 | position: absolute; 29 | text-align: center; 30 | width: 2em; 31 | height: 2em; 32 | top: 0.35em; 33 | left: 0.4em; 34 | border-radius: 3px; 35 | } 36 | .ui.right.labeled.icon.buttons .button > .icon, 37 | .ui.right.labeled.icon.button > .icon { 38 | left: auto; 39 | right: 0.4em; 40 | border-radius: 3px; 41 | } 42 | 43 | .ui.basic.labeled.icon.buttons .button > .icon, 44 | .ui.basic.labeled.icon.button > .icon { 45 | padding-top: 0.4em !important; 46 | } -------------------------------------------------------------------------------- /semantic/src/themes/amazon/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Button Variables 3 | --------------------*/ 4 | 5 | /* Button Variables */ 6 | @pageFont: Helvetica Neue, Helvetica, Arial, sans-serif; 7 | @textTransform: none; 8 | @textColor: #111111; 9 | @fontWeight: normal; 10 | @transition: 11 | opacity @defaultDuration @defaultEasing, 12 | background-color @defaultDuration @defaultEasing, 13 | color @defaultDuration @defaultEasing, 14 | background @defaultDuration @defaultEasing 15 | ; 16 | 17 | @hoverBackgroundColor: #E0E0E0; 18 | 19 | @borderRadius: 3px; 20 | @verticalPadding: 0.8em; 21 | @horizontalPadding: 1.75em; 22 | 23 | @backgroundColor: #F7F8FA; 24 | @backgroundImage: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1)); 25 | @boxShadow: 26 | 0 1px 0 1px rgba(255, 255, 255, 0.3) inset, 27 | 0 0 0 1px #ADB2BB inset 28 | ; 29 | 30 | @coloredBackgroundImage: linear-gradient(rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0.2)); 31 | @coloredBoxShadow: 32 | 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset 33 | ; 34 | 35 | @downBoxShadow: 36 | 0 0 0 1px #ADB2BB inset, 37 | 0 1px 3px rgba(0, 0, 0, 0.2) inset 38 | ; 39 | 40 | @labeledIconBackgroundColor: #313A43; 41 | @labeledIconColor: #FFFFFF; 42 | @labeledIconBorder: transparent; 43 | 44 | @black: #444C55; 45 | @orange: #F4CC67; 46 | 47 | @coloredBackgroundImage: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); 48 | @primaryColor: @orange; 49 | @secondaryColor: @black; 50 | 51 | @mini: 10px; 52 | @tiny: 11px; 53 | @small: 12px; 54 | @medium: 13px; 55 | @large: 14px; 56 | @big: 16px; 57 | @huge: 18px; 58 | @massive: 22px; 59 | -------------------------------------------------------------------------------- /semantic/src/themes/amazon/globals/site.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Global Variables 3 | *******************************/ 4 | 5 | @pageMinWidth : 1049px; 6 | @pageOverflowX : visible; 7 | 8 | @emSize: 13px; 9 | @fontSize : 13px; 10 | @fontName : 'Arial'; 11 | @importGoogleFonts : false; 12 | 13 | @h1: 2.25em; 14 | 15 | @defaultBorderRadius: 0.30769em; /* 4px @ 13em */ 16 | 17 | @disabledOpacity: 0.3; 18 | 19 | @black: #444C55; 20 | @orange: #FDE07B; 21 | 22 | @linkColor: #0066C0; 23 | @linkHoverColor: #C45500; 24 | @linkHoverUnderline: underline; 25 | 26 | @borderColor: rgba(0, 0, 0, 0.13); 27 | @solidBorderColor: #DDDDDD; 28 | @internalBorderColor: rgba(0, 0, 0, 0.06); 29 | @selectedBorderColor: #51A7E8; 30 | 31 | /* Breakpoints */ 32 | @largeMonitorBreakpoint: 1049px; 33 | @computerBreakpoint: @largeMonitorBreakpoint; 34 | @tabletBreakpoint: @largeMonitorBreakpoint; 35 | 36 | /* Colors */ 37 | @blue: #80A6CD; 38 | @green: #60B044; 39 | @orange: #D26911; 40 | 41 | 42 | @infoBackgroundColor: #E6F1F6; 43 | @infoTextColor: #4E575B; -------------------------------------------------------------------------------- /semantic/src/themes/basic/assets/fonts/icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/basic/assets/fonts/icons.eot -------------------------------------------------------------------------------- /semantic/src/themes/basic/assets/fonts/icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/basic/assets/fonts/icons.ttf -------------------------------------------------------------------------------- /semantic/src/themes/basic/assets/fonts/icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/basic/assets/fonts/icons.woff -------------------------------------------------------------------------------- /semantic/src/themes/basic/collections/table.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/collections/table.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Table Variables 3 | --------------------*/ 4 | 5 | @headerBackground: @white; 6 | @footerBackground: @white; 7 | 8 | @cellVerticalPadding: 1em; 9 | @cellHorizontalPadding: 1em; 10 | 11 | @stateMarkerWidth: 1px; -------------------------------------------------------------------------------- /semantic/src/themes/basic/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Button Variables 3 | --------------------*/ 4 | 5 | /* Button Variables */ 6 | @textTransform: none; 7 | @fontWeight: normal; 8 | @textColor: #333333; 9 | 10 | @primaryColor: #333333; 11 | 12 | @borderRadius: 0.25em; 13 | 14 | @backgroundColor: #EEEEEE; 15 | @backgroundImage: none; 16 | @boxShadow: none; 17 | 18 | @hoverBackgroundColor: #DDDDDD; 19 | @hoverBackgroundImage: none; 20 | @hoverBoxShadow: none; 21 | 22 | @downBackgroundColor: #D0D0D0; 23 | @downBackgroundImage: none; 24 | @downBoxShadow: none; 25 | 26 | @activeBackgroundColor: #CCCCCC; 27 | @activeBackgroundImage: none; 28 | @activeBoxShadow: none; 29 | 30 | @verticalBoxShadow: none; 31 | 32 | @loadingBackgroundColor: #F0F0F0; 33 | 34 | @labeledIconLeftShadow: none; 35 | @labeledIconRightShadow: none; 36 | 37 | @mini: 0.6rem; 38 | @tiny: 0.7rem; 39 | @small: 0.85rem; 40 | @medium: 0.92rem; 41 | @large: 1rem; 42 | @big: 1.125rem; 43 | @huge: 1.25rem; 44 | @massive: 1.3rem; 45 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/elements/icon.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Icon Variables 3 | --------------------*/ 4 | 5 | @fontPath : "../../themes/basic/assets/fonts"; 6 | 7 | @src: 8 | url("@{fontPath}/@{fontName}.eot?#iefix") format('embedded-opentype'), 9 | url("@{fontPath}/@{fontName}.woff") format('woff'), 10 | url("@{fontPath}/@{fontName}.ttf") format('truetype'), 11 | url("@{fontPath}/@{fontName}.svg#icons") format('svg') 12 | ; -------------------------------------------------------------------------------- /semantic/src/themes/basic/elements/step.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.steps .step:after { 6 | display: none !important; 7 | } 8 | .ui.steps .step { 9 | border-radius: 500px !important; 10 | } -------------------------------------------------------------------------------- /semantic/src/themes/basic/elements/step.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Step Variables 3 | --------------------*/ 4 | 5 | /* Stepss */ 6 | @stepsBorder: none; 7 | @stepsBorderRadius: @circularRadius; 8 | 9 | /* Step */ 10 | @border: none; 11 | @divider: none; 12 | @background: transparent; 13 | @borderRadius: @circularRadius; 14 | @iconDistance: 0.8em; 15 | @arrowDisplay: none; 16 | 17 | @activeBackground: @midWhite; 18 | @activeArrowDisplay: none; 19 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/globals/reset.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | /* No Additonal Resets */ -------------------------------------------------------------------------------- /semantic/src/themes/basic/globals/reset.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Reset 3 | *******************************/ -------------------------------------------------------------------------------- /semantic/src/themes/basic/modules/progress.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/modules/progress.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | 5 | @background: transparent; 6 | @border: none; 7 | @padding: 0em; 8 | 9 | @progressLeft: 0em; 10 | @progressWidth: 100%; 11 | @progressTextAlign: center; 12 | 13 | @labelFontWeight: normal; 14 | @labelTextAlign: left; 15 | @labelHeight: 1.5em; -------------------------------------------------------------------------------- /semantic/src/themes/basic/views/card.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/basic/views/card.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Card 3 | *******************************/ 4 | 5 | /*------------------- 6 | View 7 | --------------------*/ 8 | 9 | @width: 250px; 10 | @background: transparent; 11 | @border: none; 12 | @boxShadow: none; 13 | 14 | @contentPadding: 1em 0em; 15 | 16 | @rowSpacing: 1.5em; 17 | @groupCardMargin: 0em @horizontalSpacing @rowSpacing; 18 | 19 | @extraBackground: transparent; 20 | @extraDivider: none; 21 | @extraBoxShadow: none; 22 | @extraPadding: 0.5em 0em; 23 | 24 | @extraLinkColor: @textColor; 25 | @extraLinkHoverColor: @linkHoverColor; 26 | 27 | @headerFontSize: @relativeLarge; 28 | @headerLinkColor: @textColor; 29 | @headerLinkHoverColor: @linkHoverColor; 30 | 31 | @imageBorderRadius: @borderRadius; 32 | @imageBorder: 1px solid @borderColor; 33 | 34 | @linkHoverBackground: transparent; 35 | @linkHoverBoxShadow: none; -------------------------------------------------------------------------------- /semantic/src/themes/bookish/elements/header.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | @import url(http://fonts.googleapis.com/css?family=Karma); 6 | 7 | h1.ui.header, 8 | .ui.huge.header { 9 | font-weight: bold; 10 | } 11 | 12 | h2.ui.header, 13 | .ui.large.header { 14 | font-weight: bold; 15 | } -------------------------------------------------------------------------------- /semantic/src/themes/bookish/elements/header.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Header 3 | --------------------*/ 4 | 5 | @headerFont : 'Karma', 'Times New Roman', serif; 6 | @fontWeight: normal; 7 | 8 | @iconSize: 1.5em; 9 | @iconOffset: 0.2em; 10 | @iconAlignment: top; 11 | 12 | @subHeaderFontSize: 0.85rem; 13 | 14 | @dividedBorder: 1px dotted rgba(0, 0, 0, 0.2); 15 | 16 | /* Block Header */ 17 | @blockVerticalPadding: 1.3em; 18 | @blockHorizontalPadding: 1em; 19 | 20 | /* Attached */ 21 | @attachedBackground: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.03)) repeat scroll 0 0 #F8F8F8; 22 | @attachedVerticalPadding: 1.3; 23 | @attachedHorizontalPadding: 1em; 24 | 25 | /* HTML Headings */ 26 | @h1: 1.75rem; 27 | @h2: 1.33rem; 28 | @h3: 1.33rem; 29 | @h4: 1rem; 30 | @h5: 0.9rem; 31 | 32 | /* Sizing */ 33 | @hugeFontSize: 1.75em; 34 | @largeFontSize: 1.33em; 35 | @mediumFontSize: 1.33em; 36 | @smallFontSize: 1em; 37 | @tinyFontSize: 0.9em; -------------------------------------------------------------------------------- /semantic/src/themes/bootstrap3/elements/button.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/bootstrap3/elements/button.overrides -------------------------------------------------------------------------------- /semantic/src/themes/bootstrap3/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Button Variables 3 | --------------------*/ 4 | 5 | /* Button Variables */ 6 | @pageFont: Helvetica Neue, Helvetica, Arial, sans-serif; 7 | @textTransform: none; 8 | @fontWeight: normal; 9 | @textColor: rgba(51, 51, 51, 1); 10 | 11 | @borderRadius: @4px; 12 | 13 | @lineHeight: 1.42857; 14 | @verticalPadding: 0.8571em; 15 | @horizontalPadding: 0.8571em; 16 | 17 | @backgroundColor: @white; 18 | @backgroundImage: none; 19 | 20 | 21 | @borderBoxShadowColor: rgba(0, 0, 0, 0.14); 22 | 23 | @green: #5CB85C; 24 | @red: #D9534F; 25 | @blue: #337AB7; 26 | @green: #60B044; 27 | @orange: #F0AD4E; 28 | 29 | @primaryColor: @blue; 30 | @secondaryColor: @green; 31 | 32 | @labeledIconBackgroundColor: transparent; 33 | 34 | @basicBorderSize: 0px; 35 | @basicColoredBorderSize: 0px; 36 | @invertedBorderSize: 0px; 37 | 38 | @basicActiveBackground: transparent; 39 | @basicHoverBackground: transparent; 40 | @basicDownBoxShadow: 41 | 0px 0px 0px 1px #ADADAD inset, 42 | 0 3px 5px rgba(0, 0, 0, 0.125) inset 43 | ; 44 | 45 | @groupButtonOffset: 0px 0px 0px -1px; 46 | @verticalGroupOffset: 0px 0px -1px 0px; 47 | 48 | /* States */ 49 | 50 | @hoverBackgroundColor: #E6E6E6; 51 | @hoverBoxShadow: 52 | 0px 0px 0px 1px #ADADAD inset 53 | ; 54 | 55 | @downBackgroundColor: #E6E6E6; 56 | @downBoxShadow: 57 | 0px 0px 0px 1px #ADADAD inset, 58 | 0 3px 5px rgba(0, 0, 0, 0.125) inset 59 | ; 60 | 61 | @activeBackgroundColor: #E6E6E6; 62 | 63 | @disabledOpacity: 0.65; -------------------------------------------------------------------------------- /semantic/src/themes/chubby/collections/form.overrides: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Form Variables 3 | --------------------*/ 4 | 5 | .ui.form .selection.dropdown { 6 | padding: 1.1em 1.2em; 7 | border-width: 2px; 8 | } 9 | .ui.form .selection.dropdown .menu { 10 | min-width: calc(100% + 4px); 11 | margin: 0 -2px; 12 | border-width: 2px; 13 | } 14 | .ui.form .selection.dropdown input { 15 | padding: inherit; 16 | } -------------------------------------------------------------------------------- /semantic/src/themes/chubby/collections/form.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Form Variables 3 | --------------------*/ 4 | 5 | @labelTextTransform: uppercase; 6 | @labelFontSize: 0.8em; 7 | 8 | @inputPadding: 1em 1.2em; 9 | @inputBorder: 2px solid @borderColor; -------------------------------------------------------------------------------- /semantic/src/themes/chubby/collections/menu.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/chubby/collections/menu.overrides -------------------------------------------------------------------------------- /semantic/src/themes/chubby/collections/menu.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Menu 3 | *******************************/ 4 | 5 | @background: @darkWhite; 6 | @boxShadow: none; 7 | @dividerSize: 0px; 8 | 9 | @verticalBoxShadow: 0px 0px 0px 2px @borderColor inset; 10 | @verticalActiveBoxShadow: none; 11 | 12 | @itemVerticalPadding: 1.25em; 13 | @itemHorizontalPadding: 2em; 14 | @itemFontWeight: bold; 15 | 16 | @activeItemBackground: @primaryColor; 17 | @activeItemTextColor: @white; 18 | @activeHoverItemBackground: @primaryColorHover; 19 | @activeHoverItemColor: @white; 20 | 21 | @secondaryItemPadding: @relativeSmall @relativeMedium; 22 | 23 | @secondaryActiveItemBackground: @primaryColor; 24 | @secondaryActiveItemColor: @white; 25 | @secondaryActiveHoverItemBackground: @primaryColorHover; 26 | @secondaryActiveHoverItemColor: @white; 27 | 28 | @secondaryPointingBorderWidth: 4px; 29 | @secondaryPointingActiveBorderColor: @primaryColor; 30 | @secondaryPointingActiveTextColor: @primaryColor; 31 | 32 | @arrowSize: 1em; 33 | @arrowActiveColor: @primaryColor; 34 | @arrowActiveHoverColor: @primaryColorHover; 35 | @arrowBorder: transparent; 36 | 37 | @paginationActiveBackground: @lightGrey; 38 | 39 | @borderColor: @darkWhite; 40 | @tabularBorderWidth: 2px; -------------------------------------------------------------------------------- /semantic/src/themes/chubby/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | @import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro); 6 | 7 | .ui.labeled.icon.buttons > .button > .icon, 8 | .ui.labeled.icon.button > .icon { 9 | box-shadow: 10 | -1px 0px 0px 0px rgba(255, 255, 255, 0.2) inset, 11 | -1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset 12 | ; 13 | } 14 | 15 | .ui.right.labeled.icon.buttons .button .icon, 16 | .ui.right.labeled.icon.button .icon { 17 | box-shadow: 18 | 1px 0px 0px 0px rgba(255, 255, 255, 0.2) inset, 19 | 1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset 20 | ; 21 | } -------------------------------------------------------------------------------- /semantic/src/themes/chubby/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Button Variables 3 | --------------------*/ 4 | 5 | /* Button Variables */ 6 | @pageFont: 'Source Sans Pro', Arial, sans-serif; 7 | 8 | @textTransform: none; 9 | @fontWeight: normal; 10 | @textColor: #333333; 11 | 12 | @verticalPadding: 1.1em; 13 | @horizontalPadding: 2.5em; 14 | @invertedBorderSize: 3px; 15 | 16 | @basicBorderRadius: 0.4em; 17 | @basicFontWeight: bold; 18 | @basicTextTransform: uppercase; 19 | 20 | @blue: #4A88CB; 21 | @primaryColor: @blue; 22 | 23 | @borderRadius: 0.25em; 24 | 25 | @backgroundColor: #E6EAED; 26 | @backgroundImage: none; 27 | @boxShadow: none; 28 | 29 | @hoverBackgroundColor: #DDDDDD; 30 | @hoverBackgroundImage: none; 31 | @hoverBoxShadow: none; 32 | 33 | @downBackgroundColor: #D0D0D0; 34 | @downBackgroundImage: none; 35 | @downBoxShadow: none; 36 | 37 | @activeBackgroundColor: #CCCCCC; 38 | @activeBackgroundImage: none; 39 | @activeBoxShadow: none; 40 | 41 | @verticalBoxShadow: none; 42 | 43 | @loadingBackgroundColor: #F0F0F0; 44 | 45 | @compactVerticalPadding: (@verticalPadding * 0.5); 46 | @compactHorizontalPadding: (@horizontalPadding * 0.5); 47 | 48 | @labeledIconBackgroundColor: transparent; 49 | 50 | @mini: 0.7rem; 51 | @tiny: 0.75rem; 52 | @small: 0.8rem; 53 | @medium: 0.92rem; 54 | @large: 1rem; 55 | @big: 1.125rem; 56 | @huge: 1.2rem; 57 | @massive: 1.3rem; 58 | -------------------------------------------------------------------------------- /semantic/src/themes/chubby/elements/header.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | @import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro); 6 | -------------------------------------------------------------------------------- /semantic/src/themes/chubby/elements/header.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Header 3 | --------------------*/ 4 | 5 | @headerFont : 'Source Sans Pro', Helvetica Neue, Helvetica, Arial, sans-serif; 6 | @fontWeight: bold; 7 | @textTransform: none; 8 | 9 | /* HTML Headings */ 10 | @h1: 1.33rem; 11 | @h2: 1.2rem; 12 | @h3: 1rem; 13 | @h4: 0.9rem; 14 | @h5: 0.8rem; 15 | 16 | /* Sizing */ 17 | @hugeFontSize: 1.33em; 18 | @largeFontSize: 1.2em; 19 | @mediumFontSize: 1em; 20 | @smallFontSize: 0.9em; 21 | @tinyFontSize: 0.8em; -------------------------------------------------------------------------------- /semantic/src/themes/chubby/modules/accordion.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.styled.accordion .accordion .active.title { 6 | border-bottom: 1px solid rgba(0, 0, 0, 0.1); 7 | } -------------------------------------------------------------------------------- /semantic/src/themes/chubby/modules/accordion.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Accordion Variables 3 | --------------------*/ 4 | 5 | @iconMargin: 0em 0.5em 0em 0em; 6 | 7 | @styledActiveTitleBackground: @subtleGradient; 8 | @styledActiveTitleColor: @primaryColor; 9 | 10 | @styledActiveChildTitleBackground: transparent; 11 | 12 | @styledTitlePadding: 1.25em; 13 | @styledTitleFontWeight: bold; 14 | @styledContentPadding: 1.5em 3.25em; 15 | @styledChildContentPadding: @styledContentPadding; -------------------------------------------------------------------------------- /semantic/src/themes/chubby/views/comment.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.comments .comment { 6 | border-radius: 0.5em; 7 | box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.1); 8 | } 9 | .ui.comments .comment .comments .comment { 10 | border: 1px solid rgba(0, 0, 0, 0.1); 11 | box-shadow: none; 12 | } -------------------------------------------------------------------------------- /semantic/src/themes/chubby/views/comment.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Comments 3 | *******************************/ 4 | 5 | /*------------------- 6 | Elements 7 | --------------------*/ 8 | 9 | /* Comment */ 10 | @commentBackground: #FFFFFF; 11 | @commentMargin: 1em 0em 0em; 12 | @commentPadding: 1em 1.5em; 13 | @commentBorder: 1px solid rgba(0, 0, 0, 0.1); 14 | @commentDivider: 1px solid rgba(0, 0, 0, 0.1); 15 | @firstCommentMargin: 1em; 16 | @firstCommentPadding: 1em; 17 | 18 | /* Nested Comment */ 19 | @nestedCommentsMargin: 0em 0em 0.5em 0.5em; 20 | @nestedCommentsPadding: 1em 0em 0em 1em; 21 | @nestedCommentBackground: #F0F0F0; 22 | 23 | /* Avatar */ 24 | @avatarWidth: 3.5em; 25 | @avatarSpacing: 1.5em; 26 | @avatarBorderRadius: @circularRadius; 27 | 28 | /* Content */ 29 | @contentMargin: @avatarWidth + @avatarSpacing; 30 | 31 | /* Author */ 32 | @authorFontSize: 1em; 33 | @authorColor: @primaryColor; 34 | @authorHoverColor: @primaryColorHover; 35 | @authorFontWeight: bold; 36 | 37 | @metadataDisplay: block; 38 | @metadataSpacing: 0em; 39 | @metadataColor: @textColor; 40 | 41 | /*------------------- 42 | Variations 43 | --------------------*/ 44 | 45 | /* Threaded */ 46 | @threadedCommentMargin: -1.5em 0 -1em (@avatarWidth / 2); 47 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/collections/table.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/collections/table.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Table 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @boxShadow: @subtleGradient; 10 | 11 | @headerBackground: @subtleGradient; 12 | @headerBoxShadow: @subtleShadow; 13 | @footerBoxShadow: 0px -1px 1px 0px rgba(0, 0, 0, 0.05); 14 | @footerBackground: rgba(0, 0, 0, 0.05); 15 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/elements/button.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Button 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | /* Shadow */ 10 | @shadowDistance: 0em; 11 | @shadowOffset: (@shadowDistance / 2); 12 | @shadowBoxShadow: 0px -@shadowDistance 0px 0px @borderColor inset; 13 | @backgroundColor: #FAFAFA; 14 | @backgroundImage: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.09)); 15 | @boxShadow: 16 | 0px 0px 0px 1px @borderColor inset, 17 | @shadowBoxShadow 18 | ; 19 | 20 | /* Padding */ 21 | @verticalPadding: 0.8em; 22 | @horizontalPadding: 1.5em; 23 | 24 | 25 | /*------------------- 26 | Group 27 | --------------------*/ 28 | 29 | @groupBoxShadow: none; 30 | @groupButtonBoxShadow: 31 | 0px 0px 0px 1px @borderColor inset, 32 | @shadowBoxShadow 33 | ; 34 | @verticalBoxShadow: 0px 0px 0px 1px @borderColor inset; 35 | @groupButtonOffset: 0px 0px 0px -1px; 36 | @verticalGroupOffset: 0px 0px -1px 0px; 37 | 38 | /*------------------- 39 | States 40 | --------------------*/ 41 | 42 | /* Hovered */ 43 | @hoverBackgroundColor: ''; 44 | @hoverBackgroundImage: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.13)); 45 | @hoverBoxShadow: ''; 46 | @hoverColor: @hoveredTextColor; 47 | @iconHoverOpacity: 0.85; 48 | 49 | /* Focused */ 50 | @focusBackgroundColor: ''; 51 | @focusBackgroundImage: ''; 52 | @focusBoxShadow: 53 | 0px 0px 1px rgba(81, 167, 232, 0.8) inset, 54 | 0px 0px 3px 2px rgba(81, 167, 232, 0.8) 55 | ; 56 | @focusColor: @hoveredTextColor; 57 | @iconFocusOpacity: 0.85; 58 | 59 | /* Pressed Down */ 60 | @downBackgroundColor: #F1F1F1; 61 | @downBackgroundImage: ''; 62 | @downBoxShadow: 63 | 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset, 64 | 0px 1px 4px 0px rgba(0, 0, 0, 0.1) inset !important 65 | ; 66 | @downColor: @pressedTextColor; 67 | 68 | /* Active */ 69 | @activeBackgroundColor: #DADADA; 70 | @activeBackgroundImage: none; 71 | @activeColor: @selectedTextColor; 72 | @activeBoxShadow: 73 | 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset, 74 | 0px 1px 4px 0px rgba(0, 0, 0, 0.1) inset !important 75 | ; 76 | 77 | /* Active + Hovered */ 78 | @activeHoverBackgroundColor: #DADADA; 79 | @activeHoverBackgroundImage: none; 80 | @activeHoverBoxShadow: 81 | 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset, 82 | 0px 1px 4px 0px rgba(0, 0, 0, 0.1) inset !important 83 | ; 84 | @activeHoverColor: @selectedTextColor; 85 | 86 | /* Loading */ 87 | @loadingBackgroundColor: #FFFFFF; 88 | 89 | /*------------------- 90 | Types 91 | --------------------*/ 92 | 93 | /* Labeled Icon */ 94 | @labeledIconBackgroundColor: rgba(0, 0, 0, 0.05); 95 | @labeledIconLeftShadow: -1px 0px 0px 0px @labeledIconBorder inset; 96 | @labeledIconRightShadow: 1px 0px 0px 0px @labeledIconBorder inset; 97 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/elements/header.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/elements/header.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Button 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @headerFont: 'Open Sans', Arial, sans-serif; 10 | 11 | @blockBackground: @offWhite @subtleGradient; 12 | @blockBoxShadow: @subtleShadow; -------------------------------------------------------------------------------- /semantic/src/themes/classic/modules/progress.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/classic/modules/progress.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | 5 | @background: rgba(0, 0, 0, 0.05); 6 | @boxShadow: 0px 0px 4px rgba(0, 0, 0, 0.1) inset; 7 | @barBackground: @subtleGradient #888888; 8 | @border: 1px solid @borderColor; 9 | @padding: @relative3px; -------------------------------------------------------------------------------- /semantic/src/themes/classic/views/card.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Item 3 | *******************************/ 4 | /*------------------- 5 | View 6 | --------------------*/ 7 | 8 | /* Item */ 9 | @background: #FFFFFF; 10 | @borderRadius: 0.325rem; 11 | @display: block; 12 | @float: left; 13 | @margin: 0em @horizontalSpacing @rowSpacing; 14 | @minHeight: 0px; 15 | @padding: 0em; 16 | @width: 300px; 17 | @boxShadow: 18 | 0px 0px 0px 1px @borderColor, 19 | 0px 3px 0px 0px @borderColor 20 | ; 21 | @border: none; 22 | @zIndex: ''; 23 | 24 | /* Item Group */ 25 | @horizontalSpacing: 0.5em; 26 | @rowSpacing: 2.5em; 27 | @groupMargin: 1em -@horizontalSpacing; 28 | 29 | /*------------------- 30 | Content 31 | --------------------*/ 32 | 33 | /* Image */ 34 | @imageBackground: @transparentBlack; 35 | @imagePadding: 0em; 36 | @imageBorderRadius: @borderRadius @borderRadius 0em 0em; 37 | @imageBoxShadow: none; 38 | @imageBorder: none; 39 | 40 | /* Content */ 41 | @contentMargin: 0em; 42 | @contentPadding: 0.75em 1em; 43 | @contentFontSize: 1em; 44 | @contentBorder: none; 45 | @contentBorderRadius: 0em; 46 | @contentBoxShadow: none; 47 | 48 | /* Title */ 49 | @titleMargin: 0em; 50 | @titleFont: @headerFont; 51 | @titleFontWeight: bold; 52 | @titleFontSize: 1.25em; 53 | @titleColor: @darkTextColor; 54 | 55 | /* Metadata */ 56 | @metaColor: @lightTextColor; 57 | 58 | /* Description */ 59 | @descriptionDistance: 0.75em; 60 | @descriptionColor: @lightTextColor; 61 | 62 | /* Image */ 63 | @imageSpacing: 0.25em; 64 | @contentImageWidth: 2em; 65 | @contentImageVerticalAlign: middle; 66 | 67 | /* Paragraph */ 68 | @paragraphDistance: 0.1em; 69 | 70 | /* Additional Content */ 71 | @extraDisplay: absolute; 72 | @extraTop: 100%; 73 | @extraLeft: 0em; 74 | @extraWidth: 100%; 75 | 76 | @extraPadding: 0.5em 0.75em; 77 | @extraColor: @lightTextColor; 78 | @extraTransition: color @defaultDuration @defaultEasing; 79 | 80 | /*------------------- 81 | States 82 | --------------------*/ 83 | 84 | @hoverCursor: pointer; 85 | @hoverZIndex: 5; 86 | @hoverBorder: none; 87 | @hoverBoxShadow: 88 | 0px 0px 0px 1px @selectedBorderColor, 89 | 0px 3px 0px 0px @selectedBorderColor 90 | ; 91 | 92 | 93 | /*------------------- 94 | Variations 95 | --------------------*/ 96 | 97 | /* Sizes */ 98 | @medium: 1em; -------------------------------------------------------------------------------- /semantic/src/themes/classic/views/card.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Card 3 | *******************************/ 4 | 5 | /*------------------- 6 | View 7 | --------------------*/ 8 | 9 | /* Shadow */ 10 | @shadowDistance: 0em; 11 | @padding: 0em; 12 | 13 | /*------------------- 14 | Content 15 | --------------------*/ 16 | 17 | /* Additional Content */ 18 | @extraDivider: 1px solid rgba(0, 0, 0, 0.05); 19 | @extraBackground: #FAFAFA @subtleGradient; 20 | @extraPadding: 0.75em 1em; 21 | @extraBoxShadow: 0 1px 1px rgba(0, 0, 0, 0.15); 22 | @extraColor: @lightTextColor; 23 | -------------------------------------------------------------------------------- /semantic/src/themes/colored/modules/checkbox.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/colored/modules/checkbox.overrides -------------------------------------------------------------------------------- /semantic/src/themes/colored/modules/checkbox.variables: -------------------------------------------------------------------------------- 1 | /* Checkbox */ 2 | @checkboxActiveBackground: @primaryColor; 3 | @checkboxActiveBorderColor: @primaryColor; 4 | @checkboxActiveCheckColor: @white; 5 | 6 | @checkboxActiveFocusBackground: @primaryColorFocus; 7 | @checkboxActiveFocusBorderColor: @primaryColorFocus; 8 | @checkboxActiveFocusCheckColor: @white; 9 | 10 | @checkboxTransition: none; 11 | 12 | /* Radio */ 13 | @radioActiveBackground: @white; 14 | @radioActiveBorderColor: @primaryColor; 15 | @radioActiveBulletColor: @primaryColor; 16 | 17 | @radioActiveFocusBackground: @white; 18 | @radioActiveFocusBorderColor: @primaryColorFocus; 19 | @radioActiveFocusBulletColor: @primaryColorFocus; 20 | 21 | /* Slider */ 22 | @sliderOnLineColor: @primaryColor; 23 | @sliderOnFocusLineColor: @primaryColorFocus; 24 | 25 | /* Handle */ 26 | @handleBackground: @white @subtleGradient; 27 | @handleBoxShadow: 28 | 0px 0px 0px 1px @selectedBorderColor inset 29 | ; 30 | -------------------------------------------------------------------------------- /semantic/src/themes/default/assets/fonts/icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/assets/fonts/icons.eot -------------------------------------------------------------------------------- /semantic/src/themes/default/assets/fonts/icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/assets/fonts/icons.ttf -------------------------------------------------------------------------------- /semantic/src/themes/default/assets/fonts/icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/assets/fonts/icons.woff -------------------------------------------------------------------------------- /semantic/src/themes/default/assets/fonts/icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/assets/fonts/icons.woff2 -------------------------------------------------------------------------------- /semantic/src/themes/default/assets/images/flags.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/assets/images/flags.png -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/breadcrumb.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/breadcrumb.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Breadcrumb 3 | *******************************/ 4 | 5 | /*------------------- 6 | Breadcrumb 7 | --------------------*/ 8 | 9 | @verticalMargin: 0em; 10 | @display: inline-block; 11 | @verticalAlign: middle; 12 | 13 | @dividerSpacing: @3px; 14 | @dividerOpacity: 0.7; 15 | @dividerColor: @lightTextColor; 16 | 17 | @dividerSize: @relativeSmall; 18 | @dividerVerticalAlign: baseline; 19 | 20 | @iconDividerSize: @relativeTiny; 21 | @iconDividerVerticalAlign: baseline; 22 | 23 | @sectionMargin: 0em; 24 | @sectionPadding: 0em; 25 | 26 | /* Coupling */ 27 | @segmentPadding: @relativeMini @relativeMedium; 28 | 29 | /*------------------- 30 | States 31 | --------------------*/ 32 | 33 | @activeFontWeight: bold; -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/form.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/grid.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/grid.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Grid 3 | *******************************/ 4 | 5 | /* Inherited From Site */ 6 | 7 | // @mobileBreakpoint 8 | // @tabletBreakpoint 9 | // @computerBreakpoint 10 | // @largeMonitorBreakpoint 11 | // @widescreenMonitorBreakpoint 12 | 13 | /******************************* 14 | Grid 15 | *******************************/ 16 | 17 | @minWidth: 320px; 18 | 19 | @gutterWidth: 2rem; 20 | @rowSpacing: 2rem; 21 | 22 | @tableWidth: ~"calc(100% + "@gutterWidth~")"; 23 | @columnMaxImageWidth: 100%; 24 | 25 | @consecutiveGridDistance: (@rowSpacing / 2); 26 | 27 | /******************************* 28 | Variations 29 | *******************************/ 30 | 31 | /*-------------- 32 | Relaxed 33 | ---------------*/ 34 | 35 | @relaxedGutterWidth: 3rem; 36 | @veryRelaxedGutterWidth: 5rem; 37 | 38 | /*-------------- 39 | Divided 40 | ---------------*/ 41 | 42 | @dividedBorder: -1px 0px 0px 0px @borderColor; 43 | @verticallyDividedBorder: 0px -1px 0px 0px @borderColor; 44 | 45 | @dividedInvertedBorder: -1px 0px 0px 0px @whiteBorderColor; 46 | @verticallyDividedInvertedBorder: 0px -1px 0px 0px @whiteBorderColor; 47 | 48 | /*-------------- 49 | Celled 50 | ---------------*/ 51 | 52 | @celledMargin: 1em 0em; 53 | @celledWidth: 1px; 54 | @celledBorderColor: @solidBorderColor; 55 | 56 | @celledPadding: 1em; 57 | @celledRelaxedPadding: 1.5em; 58 | @celledVeryRelaxedPadding: 2em; 59 | 60 | @celledGridDivider: 0px 0px 0px @celledWidth @celledBorderColor; 61 | @celledRowDivider: 0px (-@celledWidth) 0px 0px @celledBorderColor; 62 | @celledColumnDivider: (-@celledWidth) 0px 0px 0px @celledBorderColor; 63 | 64 | 65 | /*-------------- 66 | Stackable 67 | ---------------*/ 68 | 69 | @stackableRowSpacing: @rowSpacing; 70 | @stackableGutter: @gutterWidth; 71 | @stackableMobileBorder: 1px solid @borderColor; 72 | @stackableInvertedMobileBorder: 1px solid @whiteBorderColor; 73 | 74 | 75 | /******************************* 76 | Legacy 77 | *******************************/ 78 | 79 | /*-------------- 80 | Page 81 | ---------------*/ 82 | 83 | /* Legacy (DO NOT USE) 84 | */ 85 | @mobileWidth: auto; 86 | @mobileMargin: 0em; 87 | @mobileGutter: 0em; 88 | 89 | @tabletWidth: auto; 90 | @tabletMargin: 0em; 91 | @tabletGutter: 2em; 92 | 93 | @computerWidth: auto; 94 | @computerMargin: 0em; 95 | @computerGutter: 3%; 96 | 97 | @largeMonitorWidth: auto; 98 | @largeMonitorMargin: 0em; 99 | @largeMonitorGutter: 15%; 100 | 101 | @widescreenMonitorWidth: auto; 102 | @widescreenMargin: 0em; 103 | @widescreenMonitorGutter: 23%; -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/menu.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/message.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/message.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Message 3 | *******************************/ 4 | 5 | // @textColor 6 | 7 | /*------------------- 8 | Elements 9 | --------------------*/ 10 | 11 | @verticalMargin: 1em; 12 | @verticalPadding: 1em; 13 | @horizontalPadding: 1.5em; 14 | @background: #F8F8F9; 15 | @lineHeightOffset: ((@lineHeight - 1em) / 2); 16 | 17 | @borderRadius: @defaultBorderRadius; 18 | @borderWidth: 1px; 19 | @borderShadow: 0px 0px 0px @borderWidth @strongBorderColor inset; 20 | @shadowShadow: 0px 0px 0px 0px rgba(0, 0, 0, 0); 21 | @boxShadow: 22 | @borderShadow, 23 | @shadowShadow 24 | ; 25 | 26 | @transition: 27 | opacity @defaultDuration @defaultEasing, 28 | color @defaultDuration @defaultEasing, 29 | background @defaultDuration @defaultEasing, 30 | box-shadow @defaultDuration @defaultEasing 31 | ; 32 | 33 | /* Header */ 34 | @headerFontSize: @relativeLarge; 35 | @headerFontWeight: bold; 36 | @headerDisplay: block; 37 | @headerDistance: 0rem; 38 | @headerMargin: -@headerLineHeightOffset 0em @headerDistance 0em; 39 | @headerParagraphDistance: 0.25em; 40 | 41 | /* Paragraph */ 42 | @messageTextOpacity: 0.85; 43 | @messageParagraphMargin: 0.75em; 44 | 45 | /* List */ 46 | @listOpacity: 0.85; 47 | @listStylePosition: inside; 48 | @listMargin: 0.5em; 49 | @listItemIndent: 1em; 50 | @listItemMargin: 0.3em; 51 | 52 | /* Icon */ 53 | @iconDistance: 0.6em; 54 | 55 | /* Close Icon */ 56 | @closeTopDistance: @verticalPadding - @lineHeightOffset; 57 | @closeRightDistance: 0.5em; 58 | @closeOpacity: 0.7; 59 | @closeTransition: opacity @defaultDuration @defaultEasing; 60 | 61 | 62 | /*------------------- 63 | Types 64 | --------------------*/ 65 | 66 | /* Icon Message */ 67 | @iconSize: 3em; 68 | @iconOpacity: 0.8; 69 | @iconContentDistance: 0rem; 70 | @iconVerticalAlign: middle; 71 | 72 | /* Attached */ 73 | @attachedXOffset: -1px; 74 | @attachedYOffset: -1px; 75 | @attachedBoxShadow: 0em 0em 0em @borderWidth @borderColor inset; 76 | @attachedBottomBoxShadow: 77 | @attachedBoxShadow, 78 | @subtleShadow 79 | ; 80 | 81 | /* Floating */ 82 | @floatingBoxShadow: 83 | @borderShadow, 84 | @floatingShadow 85 | ; 86 | 87 | /* Warning / Positive / Negative / Info */ 88 | @positiveBoxShadow: 89 | 0px 0px 0px @borderWidth @positiveBorderColor inset, 90 | @shadowShadow 91 | ; 92 | @negativeBoxShadow: 93 | 0px 0px 0px @borderWidth @negativeBorderColor inset, 94 | @shadowShadow 95 | ; 96 | @infoBoxShadow: 97 | 0px 0px 0px @borderWidth @infoBorderColor inset, 98 | @shadowShadow 99 | ; 100 | @warningBoxShadow: 101 | 0px 0px 0px @borderWidth @warningBorderColor inset, 102 | @shadowShadow 103 | ; 104 | @errorBoxShadow: 105 | 0px 0px 0px @borderWidth @errorBorderColor inset, 106 | @shadowShadow 107 | ; 108 | @successBoxShadow: 109 | 0px 0px 0px @borderWidth @successBorderColor inset, 110 | @shadowShadow 111 | ; -------------------------------------------------------------------------------- /semantic/src/themes/default/collections/table.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/default/collections/table.overrides -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | .ui.icon.button > img { 6 | width: 20px; 7 | } 8 | 9 | .ui.icon.button.blue { 10 | background-color: rgb(1, 151, 236); 11 | } 12 | 13 | .ui.icon.button.half-width { 14 | width: 50%; 15 | } 16 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/container.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/container.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Container 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | /* Minimum Gutter is used to determine the maximum container width for a given device */ 10 | 11 | @maxWidth: 100%; 12 | 13 | /* Devices */ 14 | @mobileMinimumGutter: 0em; 15 | @mobileWidth: auto; 16 | @mobileGutter: 1em; 17 | 18 | @tabletMinimumGutter: (@emSize * 1); 19 | @tabletWidth: @tabletBreakpoint - (@tabletMinimumGutter * 2) - @scrollbarWidth; 20 | @tabletGutter: auto; 21 | 22 | @computerMinimumGutter: (@emSize * 1.5); 23 | @computerWidth: @computerBreakpoint - (@computerMinimumGutter * 2) - @scrollbarWidth; 24 | @computerGutter: auto; 25 | 26 | @largeMonitorMinimumGutter: (@emSize * 2); 27 | @largeMonitorWidth: @largeMonitorBreakpoint - (@largeMonitorMinimumGutter * 2) - @scrollbarWidth; 28 | @largeMonitorGutter: auto; 29 | 30 | /* Coupling (Add Negative Margin to container size) */ 31 | @gridGutterWidth: 2rem; 32 | @relaxedGridGutterWidth: 3rem; 33 | @veryRelaxedGridGutterWidth: 5rem; 34 | 35 | @mobileGridWidth: @mobileWidth; 36 | @tabletGridWidth: ~"calc("@tabletWidth~" + "@gridGutterWidth~")"; 37 | @computerGridWidth: ~"calc("@computerWidth~" + "@gridGutterWidth~")"; 38 | @largeMonitorGridWidth: ~"calc("@largeMonitorWidth~" + "@gridGutterWidth~")"; 39 | 40 | @mobileRelaxedGridWidth: @mobileWidth; 41 | @tabletRelaxedGridWidth: ~"calc("@tabletWidth~" + "@relaxedGridGutterWidth~")"; 42 | @computerRelaxedGridWidth: ~"calc("@computerWidth~" + "@relaxedGridGutterWidth~")"; 43 | @largeMonitorRelaxedGridWidth: ~"calc("@largeMonitorWidth~" + "@relaxedGridGutterWidth~")"; 44 | 45 | @mobileVeryRelaxedGridWidth: @mobileWidth; 46 | @tabletVeryRelaxedGridWidth: ~"calc("@tabletWidth~" + "@veryRelaxedGridGutterWidth~")"; 47 | @computerVeryRelaxedGridWidth: ~"calc("@computerWidth~" + "@veryRelaxedGridGutterWidth~")"; 48 | @largeMonitorVeryRelaxedGridWidth: ~"calc("@largeMonitorWidth~" + "@veryRelaxedGridGutterWidth~")"; 49 | 50 | /*------------------- 51 | Types 52 | --------------------*/ 53 | 54 | /* Text */ 55 | @textWidth: 700px; 56 | @textFontFamily: @pageFont; 57 | @textLineHeight: 1.5; 58 | @textSize: @large; -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/divider.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | 6 | .ui.horizontal.divider:before, 7 | .ui.horizontal.divider:after { 8 | background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC'); 9 | } 10 | 11 | @media only screen and (max-width : (@tabletBreakpoint - 1px)) { 12 | .ui.stackable.grid .ui.vertical.divider:before, 13 | .ui.grid .stackable.row .ui.vertical.divider:before, 14 | .ui.stackable.grid .ui.vertical.divider:after, 15 | .ui.grid .stackable.row .ui.vertical.divider:after { 16 | background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC'); 17 | } 18 | } -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/divider.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Divider 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @margin: 1rem 0rem; 10 | 11 | @highlightWidth: 1px; 12 | @highlightColor: @whiteBorderColor; 13 | 14 | @shadowWidth: 1px; 15 | @shadowColor: @borderColor; 16 | 17 | /* Text */ 18 | @letterSpacing: 0.05em; 19 | @fontWeight: bold; 20 | @color: @darkTextColor; 21 | @textTransform: uppercase; 22 | 23 | /*------------------- 24 | Coupling 25 | --------------------*/ 26 | 27 | /* Icon */ 28 | @dividerIconSize: 1rem; 29 | @dividerIconMargin: 0rem; 30 | 31 | 32 | /******************************* 33 | Variations 34 | *******************************/ 35 | 36 | /* Horizontal / Vertical */ 37 | @horizontalMargin: ''; 38 | @horizontalDividerMargin: 1em; 39 | @horizontalRulerOffset: ~"calc(-50% - "(@horizontalDividerMargin)~")"; 40 | 41 | @verticalDividerMargin: 1rem; 42 | @verticalDividerHeight: ~"calc(100% - "(@verticalDividerMargin)~")"; 43 | 44 | /* Inverted */ 45 | @invertedTextColor: @white; 46 | @invertedHighlightColor: rgba(255, 255, 255, 0.15); 47 | @invertedShadowColor: @borderColor; 48 | 49 | /* Section */ 50 | @sectionMargin: 2rem; 51 | 52 | /* Sizes */ 53 | @medium: 1rem; -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/flag.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Flag 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @spritePath: "@{imagePath}/flags.png"; 10 | @width: 16px; 11 | @height: 11px; 12 | @verticalAlign: baseline; 13 | @margin: 0.5em; -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/header.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/icon.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Icon 3 | *******************************/ 4 | 5 | /*------------------- 6 | Icon Variables 7 | --------------------*/ 8 | 9 | @fontName: 'icons'; 10 | @fallbackSRC: url("@{fontPath}/@{fontName}.eot"); 11 | @src: 12 | url("@{fontPath}/@{fontName}.eot?#iefix") format('embedded-opentype'), 13 | url("@{fontPath}/@{fontName}.woff2") format('woff2'), 14 | url("@{fontPath}/@{fontName}.woff") format('woff'), 15 | url("@{fontPath}/@{fontName}.ttf") format('truetype'), 16 | url("@{fontPath}/@{fontName}.svg#icons") format('svg') 17 | ; 18 | 19 | @opacity: 1; 20 | @width: @iconWidth; 21 | @height: 1em; 22 | @distanceFromText: 0.25rem; 23 | 24 | 25 | /* Variations */ 26 | 27 | @linkOpacity: 0.8; 28 | @linkDuration: 0.3s; 29 | @loadingDuration: 2s; 30 | 31 | @circularSize: 2em; 32 | @circularPadding: 0.5em 0.5em; 33 | @circularShadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; 34 | 35 | @borderedSize: 2em; 36 | @borderedVerticalPadding: ((@borderedSize - @height) / 2); 37 | @borderedHorizontalPadding: ((@borderedSize - @width) / 2); 38 | @borderedShadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; 39 | 40 | @cornerIconSize: 0.45em; 41 | @cornerIconStroke: 1px; 42 | @cornerIconShadow: 43 | -@cornerIconStroke -@cornerIconStroke 0 @white, 44 | @cornerIconStroke -@cornerIconStroke 0 @white, 45 | -@cornerIconStroke @cornerIconStroke 0 @white, 46 | @cornerIconStroke @cornerIconStroke 0 @white 47 | ; 48 | @cornerIconInvertedShadow: 49 | -@cornerIconStroke -@cornerIconStroke 0 @black, 50 | @cornerIconStroke -@cornerIconStroke 0 @black, 51 | -@cornerIconStroke @cornerIconStroke 0 @black, 52 | @cornerIconStroke @cornerIconStroke 0 @black 53 | ; 54 | 55 | @small: @relativeSmall; 56 | @medium: 1em; 57 | @large: 1.5em; 58 | @big: 2em; 59 | @huge: 4em; 60 | @massive: 8em; 61 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/image.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/image.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Image 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @placeholderColor: transparent; 10 | @roundedBorderRadius: 0.3125em; 11 | 12 | @imageHorizontalMargin: 0.25rem; 13 | @imageVerticalMargin: 0.5rem; 14 | @imageBorder: 1px solid rgba(0, 0, 0, 0.1); 15 | 16 | /*------------------- 17 | Types 18 | --------------------*/ 19 | 20 | /* Avatar */ 21 | @avatarSize: 2em; 22 | @avatarMargin: 0.25em; 23 | 24 | 25 | /*------------------- 26 | Variations 27 | --------------------*/ 28 | 29 | /* Spaced */ 30 | @spacedDistance: 0.5em; 31 | 32 | /* Floated */ 33 | @floatedHorizontalMargin: 1em; 34 | @floatedVerticalMargin: 1em; 35 | 36 | /* Size */ 37 | @miniWidth: 35px; 38 | @tinyWidth: 80px; 39 | @smallWidth: 150px; 40 | @mediumWidth: 300px; 41 | @largeWidth: 450px; 42 | @bigWidth: 600px; 43 | @hugeWidth: 800px; 44 | @massiveWidth: 960px; 45 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/input.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/input.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Input 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @inputFont: @pageFont; 10 | @verticalPadding: @inputVerticalPadding; 11 | @horizontalPadding: @inputHorizontalPadding; 12 | 13 | @lineHeight: @inputLineHeight; 14 | @lineHeightOffset: ((@lineHeight - 1em) / 2); 15 | 16 | @padding: (@verticalPadding - @lineHeightOffset) @horizontalPadding; 17 | 18 | @textAlign: left; 19 | @background: @inputBackground; 20 | @borderWidth: 1px; 21 | @border: @borderWidth solid @borderColor; 22 | @boxShadow: none; 23 | 24 | @borderRadius: @defaultBorderRadius; 25 | @transition: 26 | box-shadow @defaultDuration @defaultEasing, 27 | border-color @defaultDuration @defaultEasing 28 | ; 29 | 30 | @inputColor: @textColor; 31 | 32 | /*------------------- 33 | Types 34 | --------------------*/ 35 | 36 | /* Icon Input */ 37 | @iconWidth: (@verticalPadding * 2) + @glyphWidth; 38 | @iconOpacity: 0.5; 39 | @iconFocusOpacity: 1; 40 | @iconOffset: -0.5em; 41 | 42 | @iconDistance: 0em; 43 | @iconMargin: @iconWidth + @iconDistance; 44 | @iconTransition: opacity 0.3s @defaultEasing; 45 | 46 | @transparentIconWidth: @glyphWidth; 47 | @transparentIconMargin: 2em; 48 | 49 | /* Circular Icon Input */ 50 | @circularIconVerticalOffset: 0.35em; 51 | @circularIconHorizontalOffset: 0.5em; 52 | 53 | /* Labeled Input */ 54 | @labelCornerTop: @borderWidth; 55 | @labelCornerRight: @borderWidth; 56 | @labelCornerSize: @relative9px; 57 | @labelSize: 1em; 58 | @labelVerticalPadding: (@verticalPadding - @lineHeightOffset); 59 | 60 | @labeledMargin: 2.5em; 61 | @labeledIconInputMargin: 3.25em; 62 | @labeledIconMargin: 1.25em; 63 | 64 | /*------------------- 65 | States 66 | --------------------*/ 67 | 68 | /* Placeholder */ 69 | @placeholderColor: @unselectedTextColor; 70 | @placeholderFocusColor: @textColor; 71 | 72 | /* Down */ 73 | @downBorderColor: rgba(0, 0, 0, 0.3); 74 | @downBackground: #FAFAFA; 75 | @downColor: @textColor; 76 | @downBoxShadow: none; 77 | 78 | /* Focus */ 79 | @focusBorderColor: @focusedFormBorderColor; 80 | @focusBackground: @background; 81 | @focusColor: @hoveredTextColor; 82 | @focusBoxShadow: none; 83 | 84 | /* Error */ 85 | @errorBackground: @negativeBackgroundColor; 86 | @errorColor: @negativeTextColor; 87 | @errorBorder: @negativeBorderColor; 88 | @errorBoxShadow: none; 89 | 90 | @placeholderErrorColor: lighten(@errorColor, 40); 91 | @placeholderErrorFocusColor: lighten(@errorColor, 30); 92 | 93 | /* Loader */ 94 | @invertedLoaderFillColor: rgba(0, 0, 0, 0.15); 95 | 96 | /*------------------- 97 | Variations 98 | --------------------*/ 99 | 100 | /* Inverted */ 101 | @transparentInvertedPlaceholderColor: @invertedUnselectedTextColor; 102 | @transparentInvertedColor: @white; 103 | 104 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/label.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/list.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/loader.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/loader.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Loader 3 | *******************************/ 4 | 5 | /* Some global loader styles defined in site.variables */ 6 | // @loaderSpeed 7 | // @loaderLineWidth 8 | // @loaderFillColor 9 | // @loaderLineColor 10 | // @invertedLoaderFillColor 11 | // @invertedLoaderLineColor 12 | 13 | /*------------------- 14 | Standard 15 | --------------------*/ 16 | 17 | @loaderTopOffset: 50%; 18 | @loaderLeftOffset: 50%; 19 | 20 | @shapeBorderColor: @loaderLineColor transparent transparent; 21 | @invertedShapeBorderColor: @invertedLoaderLineColor transparent transparent; 22 | 23 | /*------------------- 24 | Types 25 | --------------------*/ 26 | 27 | /* Text */ 28 | @textDistance: @relativeMini; 29 | @loaderTextColor: @textColor; 30 | @invertedLoaderTextColor: @invertedTextColor; 31 | 32 | /*------------------- 33 | States 34 | --------------------*/ 35 | 36 | @indeterminateDirection: reverse; 37 | @indeterminateSpeed: (2 * @loaderSpeed); 38 | 39 | /*------------------- 40 | Variations 41 | --------------------*/ 42 | 43 | @inlineVerticalAlign: middle; 44 | @inlineMargin: 0em; 45 | 46 | /* Exact Sizes (Avoids Rounding Errors) */ 47 | @mini: 1.2857em; /* 18px */ 48 | @small: 1.7142em; /* 24px */ 49 | @medium: 2.2585em; /* 32px */ 50 | @large: 4.5714em; /* 64px */ 51 | 52 | @miniOffset: 0em 0em 0em -(@mini / 2); 53 | @smallOffset: 0em 0em 0em -(@small / 2); 54 | @mediumOffset: 0em 0em 0em -(@medium / 2); 55 | @largeOffset: 0em 0em 0em -(@large / 2); 56 | 57 | @miniFontSize: @relativeMini; 58 | @smallFontSize: @relativeSmall; 59 | @mediumFontSize: @relativeMedium; 60 | @largeFontSize: @relativeLarge; -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/rail.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/rail.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Rail 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @width: 300px; 10 | @height: 100%; 11 | 12 | @distance: 4rem; 13 | @splitDistance: (@distance / 2); 14 | 15 | /*------------------- 16 | Variations 17 | --------------------*/ 18 | 19 | /* Close */ 20 | @closeDistance: 2em; 21 | @veryCloseDistance: 1em; 22 | 23 | @splitCloseDistance: (@closeDistance / 2); 24 | @splitVeryCloseDistance: (@veryCloseDistance / 2); 25 | 26 | @closeWidth: @width + @splitCloseDistance; 27 | @veryCloseWidth: @width + @splitVeryCloseDistance; 28 | 29 | /* Dividing */ 30 | @dividingBorder: 1px solid @borderColor; 31 | @dividingDistance: 5rem; 32 | @splitDividingDistance: (@dividingDistance / 2); 33 | @dividingWidth: @width + @splitDividingDistance; 34 | 35 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/reveal.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/reveal.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Reveal 3 | *******************************/ 4 | 5 | @transitionDelay: 0.1s; 6 | @transitionDuration: 0.5s; 7 | @transitionEasing: cubic-bezier(0.175, 0.885, 0.320, 1); 8 | @transition: all @transitionDuration @defaultEasing @transitionDelay; 9 | 10 | @bottomZIndex: 2; 11 | @topZIndex: 3; 12 | @activeZIndex: 4; 13 | 14 | /* Types */ 15 | @rotateDegrees: 110deg; 16 | @moveTransition: transform @transitionDuration @transitionEasing @transitionDelay; 17 | @slideTransition: transform @transitionDuration @defaultEasing @transitionDelay; -------------------------------------------------------------------------------- /semantic/src/themes/default/elements/segment.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/globals/reset.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Reset 3 | *******************************/ -------------------------------------------------------------------------------- /semantic/src/themes/default/globals/site.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Global Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/accordion.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Accordion 3 | *******************************/ 4 | 5 | @boxShadow: none; 6 | 7 | /* Title */ 8 | @titleFont: @headerFont; 9 | @titlePadding: 0.5em 0em; 10 | @titleFontSize: 1em; 11 | @titleColor: @textColor; 12 | 13 | /* Icon */ 14 | @iconOpacity: 1; 15 | @iconFontSize: 1em; 16 | @iconFloat: none; 17 | @iconWidth: 1.25em; 18 | @iconHeight: 1em; 19 | @iconDisplay: inline-block; 20 | @iconMargin: 0em 0.25rem 0em 0rem; 21 | @iconPadding: 0em; 22 | @iconTransition: 23 | transform @defaultDuration @defaultEasing, 24 | opacity @defaultDuration @defaultEasing 25 | ; 26 | @iconVerticalAlign: baseline; 27 | @iconTransform: none; 28 | 29 | /* Child Accordion */ 30 | @childAccordionMargin: 1em 0em 0em; 31 | @childAccordionPadding: 0em; 32 | 33 | /* Content */ 34 | @contentMargin: ''; 35 | @contentPadding: 0.5em 0em 1em; 36 | 37 | /*------------------- 38 | Coupling 39 | --------------------*/ 40 | 41 | @menuTitlePadding: 0em; 42 | @menuIconFloat: right; 43 | @menuIconMargin: @lineHeightOffset 0em 0em 1em; 44 | @menuIconTransform: rotate(180deg); 45 | 46 | 47 | /*------------------- 48 | States 49 | --------------------*/ 50 | 51 | @activeIconTransform: rotate(90deg); 52 | 53 | /*------------------- 54 | Variations 55 | --------------------*/ 56 | 57 | /* Styled */ 58 | @styledWidth: 600px; 59 | @styledBackground: @white; 60 | @styledBorderRadius: @defaultBorderRadius; 61 | @styledBoxShadow: 62 | @subtleShadow, 63 | 0px 0px 0px 1px @borderColor 64 | ; 65 | 66 | /* Content */ 67 | @styledContentMargin: 0em; 68 | @styledContentPadding: 0.5em 1em 1.5em; 69 | 70 | /* Child Content */ 71 | @styledChildContentMargin: 0em; 72 | @styledChildContentPadding: @styledContentPadding; 73 | 74 | /* Styled Title */ 75 | @styledTitleMargin: 0em; 76 | @styledTitlePadding: 0.75em 1em; 77 | @styledTitleFontWeight: bold; 78 | @styledTitleColor: @unselectedTextColor; 79 | @styledTitleTransition: background-color @defaultDuration @defaultEasing; 80 | @styledTitleBorder: 1px solid @borderColor; 81 | @styledTitleTransition: 82 | background @defaultDuration @defaultEasing, 83 | color @defaultDuration @defaultEasing 84 | ; 85 | 86 | /* Styled Title States */ 87 | @styledTitleHoverBackground: transparent; 88 | @styledTitleHoverColor: @textColor; 89 | @styledActiveTitleBackground: transparent; 90 | @styledActiveTitleColor: @selectedTextColor; 91 | 92 | /* Styled Child Title States */ 93 | @styledHoverChildTitleBackground: @styledTitleHoverBackground; 94 | @styledHoverChildTitleColor: @styledTitleHoverColor; 95 | @styledActiveChildTitleBackground: @styledActiveTitleBackground; 96 | @styledActiveChildTitleColor: @styledActiveTitleColor; 97 | 98 | /* Inverted */ 99 | @invertedTitleColor: @invertedTextColor; 100 | 101 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/chatroom.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/chatroom.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Chatroom 3 | *******************************/ -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/checkbox.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | @font-face { 6 | font-family: 'Checkbox'; 7 | src: 8 | url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBD8AAAC8AAAAYGNtYXAYVtCJAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5Zn4huwUAAAF4AAABYGhlYWQGPe1ZAAAC2AAAADZoaGVhB30DyAAAAxAAAAAkaG10eBBKAEUAAAM0AAAAHGxvY2EAmgESAAADUAAAABBtYXhwAAkALwAAA2AAAAAgbmFtZSC8IugAAAOAAAABknBvc3QAAwAAAAAFFAAAACAAAwMTAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADoAgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6AL//f//AAAAAAAg6AD//f//AAH/4xgEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAEUAUQO7AvgAGgAAARQHAQYjIicBJjU0PwE2MzIfAQE2MzIfARYVA7sQ/hQQFhcQ/uMQEE4QFxcQqAF2EBcXEE4QAnMWEP4UEBABHRAXFhBOEBCoAXcQEE4QFwAAAAABAAABbgMlAkkAFAAAARUUBwYjISInJj0BNDc2MyEyFxYVAyUQEBf9SRcQEBAQFwK3FxAQAhJtFxAQEBAXbRcQEBAQFwAAAAABAAAASQMlA24ALAAAARUUBwYrARUUBwYrASInJj0BIyInJj0BNDc2OwE1NDc2OwEyFxYdATMyFxYVAyUQEBfuEBAXbhYQEO4XEBAQEBfuEBAWbhcQEO4XEBACEm0XEBDuFxAQEBAX7hAQF20XEBDuFxAQEBAX7hAQFwAAAQAAAAIAAHRSzT9fDzz1AAsEAAAAAADRsdR3AAAAANGx1HcAAAAAA7sDbgAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAADuwABAAAAAAAAAAAAAAAAAAAABwQAAAAAAAAAAAAAAAIAAAAEAABFAyUAAAMlAAAAAAAAAAoAFAAeAE4AcgCwAAEAAAAHAC0AAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAIAAAAAQAAAAAAAgAHAGkAAQAAAAAAAwAIADkAAQAAAAAABAAIAH4AAQAAAAAABQALABgAAQAAAAAABgAIAFEAAQAAAAAACgAaAJYAAwABBAkAAQAQAAgAAwABBAkAAgAOAHAAAwABBAkAAwAQAEEAAwABBAkABAAQAIYAAwABBAkABQAWACMAAwABBAkABgAQAFkAAwABBAkACgA0ALBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhWZXJzaW9uIDIuMABWAGUAcgBzAGkAbwBuACAAMgAuADBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhDaGVja2JveABDAGgAZQBjAGsAYgBvAHhSZWd1bGFyAFIAZQBnAHUAbABhAHJDaGVja2JveABDAGgAZQBjAGsAYgBvAHhGb250IGdlbmVyYXRlZCBieSBJY29Nb29uLgBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype') 9 | ; 10 | } 11 | 12 | /* Checkmark */ 13 | .ui.checkbox label:after, 14 | .ui.checkbox .box:after { 15 | font-family: 'Checkbox'; 16 | } 17 | 18 | /* Checked */ 19 | .ui.checkbox input:checked ~ .box:after, 20 | .ui.checkbox input:checked ~ label:after { 21 | content: '\e800'; 22 | } 23 | 24 | /* Indeterminate */ 25 | .ui.checkbox input:indeterminate ~ .box:after, 26 | .ui.checkbox input:indeterminate ~ label:after { 27 | font-size: 12px; 28 | content: '\e801'; 29 | } 30 | 31 | 32 | /* UTF Reference 33 | .check:before { content: '\e800'; } 34 | .dash:before { content: '\e801'; } 35 | .plus:before { content: '\e802'; } 36 | */ 37 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/dimmer.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/dimmer.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Dimmer 3 | *******************************/ 4 | 5 | @dimmablePosition: relative; 6 | @dimmerPosition: absolute; 7 | 8 | @backgroundColor: rgba(0, 0, 0 , 0.85); 9 | @lineHeight: 1; 10 | @perspective: 2000px; 11 | 12 | @duration: 0.5s; 13 | @transition: 14 | background-color @duration linear 15 | ; 16 | @zIndex: 1000; 17 | @textAlign: center; 18 | @verticalAlign: middle; 19 | @textColor: @white; 20 | @overflow: hidden; 21 | 22 | @blurredStartFilter: ~"blur(0px) grayscale(0)"; 23 | @blurredEndFilter: ~"blur(5px) grayscale(0.7)"; 24 | @blurredTransition: 800ms filter @defaultEasing; 25 | 26 | @blurredBackgroundColor: rgba(0, 0, 0, 0.6); 27 | @blurredInvertedBackgroundColor: rgba(255, 255, 255, 0.6); 28 | 29 | /* Hidden (Default) */ 30 | @hiddenOpacity: 0; 31 | 32 | /* Content */ 33 | @contentDisplay: table; 34 | @contentChildDisplay: table-cell; 35 | 36 | /* Visible */ 37 | @visibleOpacity: 1; 38 | 39 | /*------------------- 40 | Types 41 | --------------------*/ 42 | 43 | /* Page Dimmer*/ 44 | @transformStyle: ''; 45 | @pageDimmerPosition: fixed; 46 | 47 | 48 | /*------------------- 49 | Variations 50 | --------------------*/ 51 | 52 | /* Inverted */ 53 | @invertedBackgroundColor: rgba(255, 255, 255, 0.85); 54 | @invertedTextColor: @textColor; 55 | 56 | /* Simple */ 57 | @simpleZIndex: 1; 58 | @simpleStartBackgroundColor: rgba(0, 0, 0, 0); 59 | @simpleEndBackgroundColor: @backgroundColor; 60 | @simpleInvertedStartBackgroundColor: rgba(255, 255, 255, 0); 61 | @simpleInvertedEndBackgroundColor: @invertedBackgroundColor; -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/embed.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Video Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/embed.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Video 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | /* Simple */ 10 | @background: @lightGrey; 11 | @transitionDuration: 0.5s; 12 | @transitionEasing: @defaultEasing; 13 | 14 | /* Placeholder */ 15 | @placeholderUnderlay: @background; 16 | 17 | /* Placeholder Overlayed Background */ 18 | @placeholderBackground: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3)); 19 | @placeholderBackgroundOpacity: 0.5; 20 | @placeholderBackgroundTransition: opacity @transitionDuration @transitionEasing; 21 | 22 | /* Icon */ 23 | @iconBackground: @veryStrongTransparentBlack; 24 | @iconSize: 6rem; 25 | @iconTransition: 26 | opacity @transitionDuration @transitionEasing, 27 | color @transitionDuration @transitionEasing 28 | ; 29 | @iconColor: @white; 30 | @iconShadow: 31 | 0px 2px 10px rgba(34, 36, 38, 0.2) 32 | ; 33 | @iconZIndex: 10; 34 | 35 | /*------------------- 36 | States 37 | --------------------*/ 38 | 39 | /* Hover */ 40 | @hoverPlaceholderBackground: @placeholderBackground; 41 | @hoverPlaceholderBackgroundOpacity: 1; 42 | @hoverIconColor: @white; 43 | 44 | 45 | /*------------------- 46 | Variations 47 | --------------------*/ 48 | 49 | /* Aspect Ratios */ 50 | @squareRatio: (1/1) * 100%; 51 | @widescreenRatio: (9/16) * 100%; 52 | @ultraWidescreenRatio: (9/21) * 100%; 53 | @standardRatio: (3/4) * 100%; -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/modal.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/nag.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/nag.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Nag 3 | *******************************/ 4 | 5 | /*-------------- 6 | Collection 7 | ---------------*/ 8 | 9 | @position: relative; 10 | @width: 100%; 11 | @zIndex: 999; 12 | @margin: 0em; 13 | 14 | @background: #555555; 15 | @opacity: 0.95; 16 | @minHeight: 0em; 17 | @padding: 0.75em 1em; 18 | @lineHeight: 1em; 19 | @boxShadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2); 20 | 21 | @fontSize: 1rem; 22 | @textAlign: center; 23 | @color: @textColor; 24 | 25 | @transition: 0.2s background ease; 26 | 27 | 28 | /*-------------- 29 | Elements 30 | ---------------*/ 31 | 32 | /* Title */ 33 | @titleColor: @white; 34 | @titleMargin: 0em 0.5em; 35 | 36 | @closeSize: 1em; 37 | @closeMargin: (-@closeSize / 2) 0em 0em; 38 | @closeTop: 50%; 39 | @closeRight: 1em; 40 | @closeColor: @white; 41 | @closeTransition: opacity 0.2s ease; 42 | @closeOpacity: 0.4; 43 | 44 | 45 | /*-------------- 46 | States 47 | ---------------*/ 48 | 49 | /* Hover */ 50 | @nagHoverBackground: @background; 51 | @nagHoverOpacity: 1; 52 | 53 | @closeHoverOpacity: 1; 54 | 55 | /*-------------- 56 | Variations 57 | ---------------*/ 58 | 59 | /* Top / Bottom */ 60 | @top: 0em; 61 | @bottom: 0em; 62 | @borderRadius: @defaultBorderRadius; 63 | @topBorderRadius: 0em 0em @borderRadius @borderRadius; 64 | @bottomBorderRadius: @borderRadius @borderRadius 0em 0em; 65 | 66 | /* Inverted */ 67 | @invertedBackground: @darkWhite; 68 | 69 | /*-------------- 70 | Plural 71 | ---------------*/ 72 | 73 | @groupedBorderRadius: 0em; 74 | 75 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/popup.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/popup.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Popup 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @zIndex: 1900; 10 | @background: @white; 11 | 12 | @maxWidth: 250px; 13 | @borderColor: @solidBorderColor; 14 | @borderWidth: 1px; 15 | @boxShadow: @floatingShadow; 16 | @color: @textColor; 17 | 18 | @verticalPadding: 0.833em; 19 | @horizontalPadding: 1em; 20 | @fontWeight: normal; 21 | @fontStyle: normal; 22 | @borderRadius: @defaultBorderRadius; 23 | 24 | /*------------------- 25 | Parts 26 | --------------------*/ 27 | 28 | /* Placement */ 29 | @arrowSize: 0.75em; 30 | @arrowWidth: 1em; 31 | @arrowDistanceFromEdge: 1em; 32 | @boxArrowOffset: 0em; 33 | @popupDistanceAway: @arrowSize; 34 | 35 | 36 | /* Header */ 37 | @headerFontFamily: @headerFont; 38 | @headerFontSize: 1.125em; 39 | @headerDistance: 0.5em; 40 | @headerLineHeight: 1.2; 41 | 42 | /* Content Border */ 43 | @border: @borderWidth solid @borderColor; 44 | 45 | /* Arrow */ 46 | @arrowBackground: @white; 47 | @arrowZIndex: 2; 48 | @arrowJitter: 0.05em; 49 | @arrowOffset: -(@arrowSize / 2) + @arrowJitter; 50 | 51 | @arrowStroke: @borderWidth; 52 | @arrowColor: darken(@borderColor, 10); 53 | 54 | /* Arrow color by position */ 55 | @arrowTopBackground: @arrowBackground; 56 | @arrowCenterBackground: @arrowBackground; 57 | @arrowBottomBackground: @arrowBackground; 58 | 59 | @arrowBoxShadow: @arrowStroke @arrowStroke 0px 0px @arrowColor; 60 | @leftArrowBoxShadow: @arrowStroke -@arrowStroke 0px 0px @arrowColor; 61 | @rightArrowBoxShadow: -@arrowStroke @arrowStroke 0px 0px @arrowColor; 62 | @bottomArrowBoxShadow: -@arrowStroke -@arrowStroke 0px 0px @arrowColor; 63 | 64 | /*------------------- 65 | Coupling 66 | --------------------*/ 67 | 68 | /* Grid Inside Popup */ 69 | @nestedGridMargin: -0.7rem -0.875rem; /* (padding * @medium) */ 70 | @nestedGridWidth: ~"calc(100% + 1.75rem)"; 71 | 72 | /*------------------- 73 | States 74 | --------------------*/ 75 | 76 | @loadingZIndex: -1; 77 | 78 | /*------------------- 79 | Variations 80 | --------------------*/ 81 | 82 | /* Wide */ 83 | @wideWidth: 350px; 84 | @veryWideWidth: 550px; 85 | 86 | /* Inverted */ 87 | @invertedBackground: @black; 88 | @invertedColor: @white; 89 | @invertedBorder: none; 90 | @invertedBoxShadow: none; 91 | 92 | @invertedHeaderBackground: none; 93 | @invertedHeaderColor: @white; 94 | @invertedArrowColor: @invertedBackground; 95 | 96 | /* Arrow color by position */ 97 | @invertedArrowTopBackground: @invertedBackground; 98 | @invertedArrowCenterBackground: @invertedBackground; 99 | @invertedArrowBottomBackground: @invertedBackground; 100 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/progress.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/search.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/shape.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/shape.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Shape 3 | *******************************/ 4 | 5 | @display: inline-block; 6 | 7 | /* Animating */ 8 | @perspective: 2000px; 9 | 10 | @duration: 0.6s; 11 | @easing: ease-in-out; 12 | 13 | @hiddenSideOpacity: 0.6; 14 | @animatingZIndex: 100; 15 | 16 | @transition: 17 | transform @duration @easing, 18 | left @duration @easing, 19 | width @duration @easing, 20 | height @duration @easing 21 | ; 22 | @sideTransition: opacity @duration @easing; 23 | @backfaceVisibility: hidden; 24 | 25 | /* Side */ 26 | @sideMargin: 0em; 27 | 28 | /*-------------- 29 | Types 30 | ---------------*/ 31 | 32 | /* Cube */ 33 | @cubeSize: 15em; 34 | @cubeBackground: #E6E6E6; 35 | @cubePadding: 2em; 36 | @cubeTextColor: @textColor; 37 | @cubeBoxShadow: 0px 0px 2px rgba(0, 0, 0, 0.3); 38 | 39 | @cubeTextAlign: center; 40 | @cubeFontSize: 2em; 41 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/sidebar.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/sidebar.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Sidebar 3 | *******************************/ 4 | 5 | /*------------------- 6 | Content 7 | --------------------*/ 8 | 9 | /* Animation */ 10 | @perspective: 1500px; 11 | @duration: 500ms; 12 | @easing: @defaultEasing; 13 | 14 | /* Dimmer */ 15 | @dimmerColor: rgba(0, 0, 0, 0.4); 16 | @dimmerTransition: opacity @duration; 17 | 18 | /* Color below page */ 19 | @canvasBackground: @lightBlack; 20 | 21 | /* Shadow */ 22 | @boxShadow: 0px 0px 20px @borderColor; 23 | @horizontalBoxShadow: @boxShadow; 24 | @verticalBoxShadow: @boxShadow; 25 | 26 | /* Layering */ 27 | @bottomLayer: 1; 28 | @middleLayer: 2; 29 | @fixedLayer: 101; 30 | @topLayer: 102; 31 | @dimmerLayer: 1000; 32 | 33 | /*------------------- 34 | Variations 35 | --------------------*/ 36 | 37 | /* Width */ 38 | @veryThinWidth: 60px; 39 | @thinWidth: 150px; 40 | @width: 260px; 41 | @wideWidth: 350px; 42 | @veryWideWidth: 475px; 43 | 44 | /* Height */ 45 | @height: 36px; 46 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/sticky.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/sticky.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Sticky 3 | *******************************/ 4 | 5 | @transsssitionDuration: @defaultDuration; 6 | @transition: none; 7 | @zIndex: 800; -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/tab.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Tab Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/tab.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Tab 3 | *******************************/ 4 | 5 | /* Loading */ 6 | @loadingMinHeight: 250px; 7 | @loadingContentPosition: relative; 8 | @loadingContentOffset: -10000px; 9 | 10 | @loaderDistanceFromTop: 100px; 11 | @loaderSize: 2.5em; -------------------------------------------------------------------------------- /semantic/src/themes/default/modules/transition.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Transition 3 | *******************************/ 4 | 5 | @transitionDefaultEasing: @defaultEasing; 6 | @transitionDefaultFill: both; 7 | @transitionDefaultDuration: 300ms; 8 | 9 | @use3DAcceleration: translateZ(0); 10 | @backfaceVisibility: hidden; -------------------------------------------------------------------------------- /semantic/src/themes/default/views/ad.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/ad.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Advertisement 3 | *******************************/ 4 | 5 | @margin: 1em 0em; 6 | @overflow: hidden; 7 | 8 | @testBackground: @lightBlack; 9 | @testColor: @white; 10 | @testFontWeight: bold; 11 | @testText: 'Ad'; 12 | @testFontSize: @relativeMedium; 13 | @testMobileFontSize: @relativeTiny; -------------------------------------------------------------------------------- /semantic/src/themes/default/views/card.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/comment.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/comment.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Comments 3 | *******************************/ 4 | 5 | 6 | /*------------------- 7 | View 8 | --------------------*/ 9 | 10 | @maxWidth: 650px; 11 | @margin: 1.5em 0em; 12 | 13 | /*------------------- 14 | Elements 15 | --------------------*/ 16 | 17 | /* Comment */ 18 | @commentBackground: none; 19 | @commentMargin: 0.5em 0em 0em; 20 | @commentPadding: 0.5em 0em 0em; 21 | @commentDivider: none; 22 | @commentBorder: none; 23 | @commentLineHeight: 1.2; 24 | @firstCommentMargin: 0em; 25 | @firstCommentPadding: 0em; 26 | 27 | /* Nested Comment */ 28 | @nestedCommentsMargin: 0em 0em 0.5em 0.5em; 29 | @nestedCommentsPadding: 1em 0em 1em 1em; 30 | 31 | @nestedCommentDivider: none; 32 | @nestedCommentBorder: none; 33 | @nestedCommentBackground: none; 34 | 35 | /* Avatar */ 36 | @avatarDisplay: block; 37 | @avatarFloat: left; 38 | @avatarWidth: 2.5em; 39 | @avatarHeight: auto; 40 | @avatarSpacing: 1em; 41 | @avatarMargin: (@commentLineHeight - 1em) 0em 0em; 42 | @avatarBorderRadius: 0.25rem; 43 | 44 | /* Content */ 45 | @contentMargin: @avatarWidth + @avatarSpacing; 46 | 47 | /* Author */ 48 | @authorFontSize: 1em; 49 | @authorColor: @textColor; 50 | @authorHoverColor: @linkHoverColor; 51 | @authorFontWeight: bold; 52 | 53 | /* Metadata */ 54 | @metadataDisplay: inline-block; 55 | @metadataFontSize: 0.875em; 56 | @metadataSpacing: 0.5em; 57 | @metadataContentSpacing: 0.5em; 58 | @metadataColor: @lightTextColor; 59 | 60 | /* Text */ 61 | @textFontSize: 1em; 62 | @textMargin: 0.25em 0em 0.5em; 63 | @textWordWrap: break-word; 64 | @textLineHeight: 1.3; 65 | 66 | /* Actions */ 67 | @actionFontSize: 0.875em; 68 | @actionContentDistance: 0.75em; 69 | @actionLinkColor: @unselectedTextColor; 70 | @actionLinkHoverColor: @hoveredTextColor; 71 | 72 | /* Reply */ 73 | @replyDistance: 1em; 74 | @replyHeight: 12em; 75 | @replyFontSize: 1em; 76 | 77 | @commentReplyDistance: @replyDistance; 78 | 79 | /*------------------- 80 | Variations 81 | --------------------*/ 82 | 83 | /* Threaded */ 84 | @threadedCommentMargin: -1.5em 0 -1em (@avatarWidth / 2); 85 | @threadedCommentPadding: 3em 0em 2em 2.25em; 86 | @threadedCommentBoxShadow: -1px 0px 0px @borderColor; 87 | 88 | 89 | /* Minimal */ 90 | @minimalActionPosition: absolute; 91 | @minimalActionTop: 0px; 92 | @minimalActionRight: 0px; 93 | @minimalActionLeft: auto; 94 | 95 | @minimalTransitionDelay: 0.1s; 96 | @minimalEasing: @defaultEasing; 97 | @minimalDuration: 0.2s; 98 | @minimalTransition: opacity @minimalDuration @minimalEasing; 99 | 100 | /* Sizes */ 101 | @small: 0.9em; 102 | @medium: 1em; 103 | @large: 1.1em; 104 | @huge: 1.2em; -------------------------------------------------------------------------------- /semantic/src/themes/default/views/feed.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/item.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/statistic.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/default/views/statistic.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Statistic 3 | *******************************/ 4 | 5 | /*------------------- 6 | View 7 | --------------------*/ 8 | 9 | @margin: 1em 0em; 10 | @textAlign: center; 11 | @maxWidth: auto; 12 | 13 | /* Group */ 14 | @horizontalSpacing: 1.5em; 15 | @rowSpacing: 2em; 16 | @groupMargin: 1em -@horizontalSpacing -@rowSpacing; 17 | 18 | /* Group Element */ 19 | @elementMargin: 0em @horizontalSpacing @rowSpacing; 20 | @elementMaxWidth: @maxWidth; 21 | 22 | /*------------------- 23 | Content 24 | --------------------*/ 25 | 26 | /* Value */ 27 | @valueFont: @pageFont; 28 | @valueFontWeight: normal; 29 | @valueLineHeight: 1em; 30 | @valueColor: @black; 31 | @valueTextTransform: uppercase; 32 | 33 | /* Label */ 34 | @labelSize: @relativeMedium; 35 | @topLabelDistance: 0rem; 36 | @bottomLabelDistance: 0rem; 37 | @labelFont: @headerFont; 38 | @labelFontWeight: bold; 39 | @labelColor: @textColor; 40 | @labelLineHeight: @relativeLarge; 41 | @labelTextTransform: uppercase; 42 | 43 | /* Text */ 44 | @textValueLineHeight: 1em; 45 | @textValueMinHeight: 2em; 46 | @textValueFontWeight: bold; 47 | 48 | /* Label Image */ 49 | @imageHeight: 3rem; 50 | @imageVerticalAlign: baseline; 51 | 52 | /*------------------- 53 | Types 54 | --------------------*/ 55 | 56 | @horizontalGroupElementMargin: 1em 0em; 57 | @horizontalLabelDistance: 0.75em; 58 | 59 | /*------------------- 60 | Variations 61 | --------------------*/ 62 | 63 | /* Floated */ 64 | @leftFloatedMargin: 0em 2em 1em 0em; 65 | @rightFloatedMargin: 0em 0em 1em 2em; 66 | 67 | /* Inverted */ 68 | @invertedValueColor: @white; 69 | @invertedLabelColor: @invertedTextColor; 70 | 71 | /* Item Width */ 72 | @itemGroupMargin: 0em 0em -@rowSpacing; 73 | @itemMargin: 0em 0em @rowSpacing; 74 | 75 | /* Size */ 76 | @miniTextValueSize: 1rem; 77 | @miniValueSize: 1.5rem; 78 | @miniHorizontalValueSize: 1.5rem; 79 | 80 | @tinyTextValueSize: 1rem; 81 | @tinyValueSize: 2rem; 82 | @tinyHorizontalValueSize: 2rem; 83 | 84 | @smallTextValueSize: 1rem; 85 | @smallValueSize: 3rem; 86 | @smallHorizontalValueSize: 2rem; 87 | 88 | @textValueSize: 2rem; 89 | @valueSize: 4rem; 90 | @horizontalValueSize: 3rem; 91 | 92 | @largeTextValueSize: 2.5rem; 93 | @largeValueSize: 5rem; 94 | @largeHorizontalValueSize: 4rem; 95 | 96 | @hugeTextValueSize: 2.5rem; 97 | @hugeValueSize: 6rem; 98 | @hugeHorizontalValueSize: 5rem; -------------------------------------------------------------------------------- /semantic/src/themes/duo/elements/loader.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/duo/elements/loader.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Loader 3 | *******************************/ 4 | 5 | @shapeBorderColor: @primaryColor @primaryColor @secondaryColor @secondaryColor; 6 | @invertedShapeBorderColor: @lightPrimaryColor @lightPrimaryColor @lightSecondaryColor @lightSecondaryColor; -------------------------------------------------------------------------------- /semantic/src/themes/fixed-width/collections/grid.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/fixed-width/collections/grid.variables: -------------------------------------------------------------------------------- 1 | /* Fixed Page Grid */ 2 | 3 | @mobileWidth: auto; 4 | @mobileMargin: 0em; 5 | @mobileGutter: 0em; 6 | 7 | @tabletWidth: auto; 8 | @tabletMargin: 0em; 9 | @tabletGutter: 8%; 10 | 11 | @computerWidth: 960px; 12 | @computerMargin: auto; 13 | @computerGutter: 0; 14 | 15 | @largeMonitorWidth: 1180px; 16 | @largeMonitorMargin: auto; 17 | @largeMonitorGutter: 0; 18 | 19 | @widescreenMonitorWidth: 1300px; 20 | @widescreenMargin: auto; 21 | @widescreenMonitorGutter: 0; 22 | 23 | @tableWidth: ''; -------------------------------------------------------------------------------- /semantic/src/themes/fixed-width/modules/modal.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/fixed-width/modules/modal.variables: -------------------------------------------------------------------------------- 1 | 2 | /* Responsive Widths */ 3 | @modalComputerWidth: 700px; 4 | @modalLargeMonitorWidth: 800px; 5 | @modalWidescreenMonitorWidth: 850px; 6 | 7 | @modalComputerMargin: 0em 0em 0em -(@modalComputerWidth / 2); 8 | @modalLargeMonitorMargin: 0em 0em 0em -(@modalLargeMonitorWidth / 2); 9 | @modalWidescreenMonitorMargin: 0em 0em 0em -(@modalWidescreenMonitorWidth / 2); 10 | 11 | 12 | /*------------------- 13 | Variations 14 | --------------------*/ 15 | 16 | /* Sizes */ 17 | @modalSmallRatio: 0.6; 18 | @modalLargeRatio: 1.2; 19 | 20 | /* Derived Responsive Sizes */ 21 | @modalSmallHeaderSize: 1.3em; 22 | @modalSmallComputerWidth: (@modalComputerWidth * @modalSmallRatio); 23 | @modalSmallLargeMonitorWidth: (@modalLargeMonitorWidth * @modalSmallRatio); 24 | @modalSmallWidescreenMonitorWidth: (@modalWidescreenMonitorWidth * @modalSmallRatio); 25 | 26 | @modalSmallComputerMargin: 0em 0em 0em -(@modalSmallComputerWidth / 2); 27 | @modalSmallLargeMonitorMargin: 0em 0em 0em -(@modalSmallLargeMonitorWidth / 2); 28 | @modalSmallWidescreenMonitorMargin: 0em 0em 0em -(@modalSmallWidescreenMonitorWidth / 2); 29 | 30 | @modalLargeHeaderSize: 1.3em; 31 | @modalLargeComputerWidth: (@modalComputerWidth * @modalLargeRatio); 32 | @modalLargeLargeMonitorWidth: (@modalLargeMonitorWidth * @modalLargeRatio); 33 | @modalLargeWidescreenMonitorWidth: (@modalWidescreenMonitorWidth * @modalLargeRatio); 34 | 35 | @modalLargeComputerMargin: 0em 0em 0em -(@modalLargeComputerWidth / 2); 36 | @modalLargeLargeMonitorMargin: 0em 0em 0em -(@modalLargeLargeMonitorWidth / 2); 37 | @modalLargeWidescreenMonitorMargin: 0em 0em 0em -(@modalLargeWidescreenMonitorWidth / 2); -------------------------------------------------------------------------------- /semantic/src/themes/flat/collections/form.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.form input[type="text"], 6 | .ui.form input[type="email"], 7 | .ui.form input[type="date"], 8 | .ui.form input[type="password"], 9 | .ui.form input[type="number"], 10 | .ui.form input[type="url"], 11 | .ui.form input[type="tel"] { 12 | border-bottom: 1px solid #DDDDDD; 13 | } 14 | 15 | .ui.form .selection.dropdown { 16 | border: none; 17 | box-shadow: none !important; 18 | border-bottom: 1px solid #DDDDDD; 19 | border-radius: 0em !important; 20 | } 21 | .ui.form .selection.dropdown > .menu { 22 | border-top-width: 1px !important; 23 | border-radius: @defaultBorderRadius !important; 24 | } 25 | 26 | .ui.form .ui.icon.input > .icon { 27 | width: 1em; 28 | } -------------------------------------------------------------------------------- /semantic/src/themes/flat/collections/form.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Form 3 | *******************************/ 4 | 5 | /*------------------- 6 | Elements 7 | --------------------*/ 8 | 9 | 10 | /* Text */ 11 | @paragraphMargin: 1em 0em; 12 | 13 | /* Field */ 14 | @fieldMargin: 0em 0em 1em; 15 | 16 | /* Form Label */ 17 | @labelFontSize: @relative11px; 18 | @labelTextTransform: uppercase; 19 | 20 | @groupedLabelTextTransform: none; 21 | 22 | /* Input */ 23 | @inputHorizontalPadding: 0.5em; 24 | @inputBackground: transparent; 25 | @inputBorder: none; 26 | @inputBorderRadius: 0em; 27 | @inputBoxShadow: none; 28 | 29 | @textAreaPadding: 1em; 30 | @textAreaBackground: transparent; 31 | @textAreaFocusBackground: #EEEEEE; 32 | @textAreaBorder: 1px solid #DDDDDD; 33 | 34 | /* Divider */ 35 | @dividerMargin: 1em 0em; 36 | 37 | /* Validation Prompt */ 38 | @validationMargin: 0em 0em 0em 1em; 39 | @validationArrowOffset: -0.3em; 40 | 41 | /*------------------- 42 | States 43 | --------------------*/ 44 | 45 | /* Disabled */ 46 | 47 | /* Focus */ 48 | @inputFocusPointerSize: 0px; 49 | @inputErrorPointerSize: 0px; 50 | 51 | /* Dropdown Error */ 52 | @dropdownErrorHoverBackground: #FFF2F2; 53 | @dropdownErrorActiveBackground: #FDCFCF; 54 | 55 | /* Focused Error */ 56 | @inputErrorFocusBackground: @negativeBackgroundColor; 57 | @inputErrorFocusColor: @negativeColorHover; 58 | @inputErrorFocusBorder: @negativeBorderColor; 59 | @inputErrorFocusBoxShadow: @inputErrorPointerSize 0em 0em 0em @negativeColorHover inset; 60 | 61 | /* Placeholder */ 62 | @inputPlaceholderColor: lighten(@inputColor, 55); 63 | @inputPlaceholderFocusColor: lighten(@inputColor, 35); 64 | @inputErrorPlaceholderColor: lighten(@formErrorColor, 10); 65 | @inputErrorPlaceholderFocusColor: lighten(@formErrorColor, 5); 66 | 67 | /* Loading */ 68 | @formLoaderDimmerColor: rgba(255, 255, 255, 0.6); 69 | @formLoaderPath: "@{imagePath}/loader-large.gif"; 70 | @formLoaderPosition: 50% 50%; 71 | 72 | /* (x) Wide Field */ 73 | @gutterWidth: 1.5em; 74 | -------------------------------------------------------------------------------- /semantic/src/themes/flat/globals/site.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/github/assets/fonts/octicons-local.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/github/assets/fonts/octicons-local.ttf -------------------------------------------------------------------------------- /semantic/src/themes/github/assets/fonts/octicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/github/assets/fonts/octicons.ttf -------------------------------------------------------------------------------- /semantic/src/themes/github/assets/fonts/octicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/github/assets/fonts/octicons.woff -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/breadcrumb.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Site Overrides 3 | *******************************/ 4 | 5 | @dividerOpacity: 1; 6 | @dividerSpacing: 0; 7 | @dividerSize: @big; 8 | @dividerColor: inherit; 9 | 10 | @huge: 1.5384em; 11 | 12 | -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/form.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.selection.dropdown { 6 | background-color: #FAFAFA; 7 | box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset; 8 | border-color: #CCCCCC; 9 | } 10 | 11 | .ui.selection.dropdown:focus { 12 | box-shadow: 13 | 0px 1px 2px rgba(0, 0, 0, 0.075) inset, 14 | 0px 0px 5px rgba(81, 167, 232, 0.5) 15 | ; 16 | } -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/form.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Form 3 | *******************************/ 4 | 5 | /*------------------- 6 | Elements 7 | --------------------*/ 8 | 9 | @inputBackground: #FAFAFA; 10 | @inputBorder: 1px solid #CCCCCC; 11 | @inputBoxShadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset; 12 | @inputBorderRadius: 3px; 13 | 14 | @labelFontWeight: bold; 15 | @labelDistance: 6px; 16 | 17 | /*------------------- 18 | States 19 | --------------------*/ 20 | 21 | @inputFocusBackground: #FFFFFF; 22 | @inputFocusBoxShadow: 23 | 0px 1px 2px rgba(0, 0, 0, 0.075) inset, 24 | 0px 0px 5px rgba(81, 167, 232, 0.5) 25 | ; 26 | @inputFocusBorderColor: #51A7E8; 27 | @inputFocusBorderRadius: @inputBorderRadius; 28 | 29 | /*------------------- 30 | Types 31 | --------------------*/ 32 | 33 | 34 | /*------------------- 35 | Variations 36 | --------------------*/ 37 | 38 | /*------------------- 39 | Groups 40 | --------------------*/ 41 | -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/grid.variables: -------------------------------------------------------------------------------- 1 | 2 | @gutterWidth: 1.538rem; -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/menu.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.menu .item > .label { 6 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; 7 | } -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/menu.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Collection 3 | --------------------*/ 4 | 5 | @itemVerticalPadding: 1em; 6 | @itemHorizontalPadding: 1.25em; 7 | 8 | @background: #FFFFFF linear-gradient(rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.05)); 9 | @fontWeight: normal; 10 | 11 | @activeBorderSize: 0em; 12 | 13 | @hoverBackground: rgba(0, 0, 0, 0.02); 14 | @downBackground: rgba(0, 0, 0, 0.06); 15 | 16 | @activeBackground: rgba(0, 0, 0, 0.04); 17 | @activeHoverBackground: rgba(0, 0, 0, 0.04); 18 | 19 | 20 | @headerBackground: rgba(0, 0, 0, 0.08); 21 | 22 | @subMenuMargin: 0.5em -0.6em 0; 23 | @subMenuHorizontalPadding: 0.7em; 24 | 25 | @arrowHoverColor: #EEEEEE; 26 | @arrowActiveColor: #EEEEEE; 27 | @arrowVerticalHoverColor: #F4F4F4; 28 | @arrowVerticalActiveColor: #F4F4F4; 29 | 30 | @dividerBackground: #E8E8E8; 31 | @verticalDividerBackground: #E8E8E8; 32 | 33 | /*------------------- 34 | Elements 35 | --------------------*/ 36 | 37 | @buttonOffset: -0.15em; 38 | @buttonVerticalPadding: 0.75em; 39 | 40 | /*------------------- 41 | Types 42 | --------------------*/ 43 | 44 | @paginationMinWidth: 3.5em; 45 | 46 | @tieredActiveItemBackground: #F5F5F5; 47 | @tieredActiveMenuBackground: #F5F5F5; 48 | 49 | /*------------------- 50 | Variations 51 | --------------------*/ 52 | 53 | @verticalBackground: #FFFFFF; 54 | @verticalItemBackground: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.02)); 55 | 56 | @invertedBackground: @black linear-gradient(rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.0)); 57 | @invertedBoxShadow : 58 | 0px 1px 2px 0px rgba(0, 0, 0, 0.15), 59 | 0px 0px 0px 1px rgba(255, 255, 255, 0.15) 60 | ; 61 | @secondaryVerticalPadding: 0.75em; -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/message.overrides: -------------------------------------------------------------------------------- 1 | .ui.info.message { 2 | background: linear-gradient(#D8EBF8, #D0E3EF); 3 | } 4 | .ui.error.message { 5 | background: linear-gradient(#F8D8D8, #EFD0D0); 6 | } 7 | .ui.warning.message { 8 | background: linear-gradient(#FFE3C8, #F5DAC0); 9 | } 10 | .ui.success.message { 11 | } 12 | -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/message.variables: -------------------------------------------------------------------------------- 1 | @background: linear-gradient(rgba(255, 255, 255, 0.1), rgba(0, 0, 0, 0.05)) #FEFEFE; 2 | @boxShadow: 3 | 0px 0px 0px 1px rgba(255, 255, 255, 0.3) inset, 4 | 0px 0px 0px 1px rgba(0, 0, 0, 0.2) inset 5 | ; 6 | @verticalPadding: 15px; 7 | @horizontalPadding: 15px; 8 | 9 | @headerFontSize: 1.15em; 10 | 11 | @infoTextColor: #264C72; 12 | @warningTextColor: #613A00; 13 | @errorTextColor: #991111; 14 | 15 | @floatingBoxShadow: 16 | 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset, 17 | 0px 2px 3px 0px rgba(0, 0, 0, 0.1), 18 | 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset 19 | ; 20 | 21 | @infoBorderColor: #97C1DA; 22 | @errorBorderColor: #DA9797; 23 | @warningBorderColor: #DCA874; 24 | 25 | @small: 12px; 26 | @medium: 13px; 27 | @large: 14px; 28 | @huge: 16px; 29 | @massive: 18px; 30 | -------------------------------------------------------------------------------- /semantic/src/themes/github/collections/table.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Variable Overrides 3 | *******************************/ 4 | 5 | @background: #F8F8F8; 6 | 7 | @cellVerticalPadding: @relative6px; 8 | @cellHorizontalPadding: @relative8px; -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Button Variables 3 | --------------------*/ 4 | 5 | /* Button Variables */ 6 | @pageFont: Helvetica Neue, Helvetica, Arial, sans-serif; 7 | @textTransform: none; 8 | @fontWeight: bold; 9 | @textColor: #333333; 10 | 11 | @textShadow: 0px 1px 0px rgba(255, 255, 255, 0.9); 12 | @invertedTextShadow: 0px -1px 0px rgba(0, 0, 0, 0.25); 13 | 14 | @borderRadius: @relativeBorderRadius; 15 | 16 | @verticalPadding: 0.75em; 17 | @horizontalPadding: 1.15em; 18 | 19 | @backgroundColor: #FAFAFA; 20 | @backgroundImage: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); 21 | @boxShadow: 22 | 0 -1px 0 0 rgba(0, 0, 0, 0.05) inset, 23 | 0 0 0 1px rgba(0, 0, 0, 0.13) inset, 24 | 0 1px 3px rgba(0, 0, 0, 0.05) 25 | ; 26 | 27 | @coloredBackgroundImage: linear-gradient(rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0.2)); 28 | @coloredBoxShadow: 29 | 0 -1px 0 0 rgba(0, 0, 0, 0.05) inset, 30 | 0 0 0 1px rgba(0, 0, 0, 0.1) inset, 31 | 0 1px 3px rgba(0, 0, 0, 0.05) 32 | ; 33 | 34 | @hoverBackgroundColor: #E0E0E0; 35 | @hoverBackgroundImage: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.08)); 36 | @hoverBoxShadow: @boxShadow; 37 | 38 | @downBackgroundColor: ''; 39 | @downBackgroundImage: ''; 40 | @downBoxShadow: 41 | 0 -1px 0 0 rgba(0, 0, 0, 0.05) inset, 42 | 0 0 0 1px rgba(0, 0, 0, 0.13) inset, 43 | 0 3px 5px rgba(0, 0, 0, 0.15) inset !important 44 | ; 45 | @activeBackgroundColor: #DFDFDF; 46 | @activeBackgroundImage: none; 47 | @activeBoxShadow: 48 | 0 -1px 0 0 rgba(0, 0, 0, 0.05) inset, 49 | 0 0 0 1px rgba(0, 0, 0, 0.13) inset, 50 | 0 3px 5px rgba(0, 0, 0, 0.1) inset !important 51 | ; 52 | 53 | @labeledIconBackgroundColor: transparent; 54 | @labeledIconBorder: transparent; 55 | @labeledIconPadding: (@horizontalPadding + 2.25em); 56 | 57 | @basicFontWeight: bold; 58 | @basicTextColor: @linkColor; 59 | @basicHoverTextColor: @linkHoverColor; 60 | 61 | @basicHoverBackground: #E0E0E0; 62 | 63 | @blue: #3072B3; 64 | @green: #60B044; 65 | @black: #5D5D5D; 66 | 67 | @primaryColor: @blue; 68 | @secondaryColor: @black; 69 | 70 | @mini: 0.6rem; 71 | @tiny: 0.7rem; 72 | @small: 0.85rem; 73 | @medium: 0.92rem; 74 | @large: 1rem; 75 | @big: 1.125rem; 76 | @huge: 1.25rem; 77 | @massive: 1.3rem; 78 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/header.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Header 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @iconMargin: @4px; 10 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/icon.variables: -------------------------------------------------------------------------------- 1 | @fontPath: '../../themes/github/assets/fonts'; 2 | @fontName: 'octicons'; 3 | @fallbackSRC: ''; 4 | 5 | @width: 1em; 6 | @height: 1em; 7 | 8 | @small: 13px; 9 | @medium: 16px; 10 | @large: 18px; 11 | @big : 20px; 12 | @huge: 28px; 13 | @massive: 32px; -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/image.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Variable Overrides 3 | *******************************/ 4 | 5 | @miniWidth: 20px; -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/input.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Input 3 | *******************************/ 4 | 5 | /* Labeled Input has padding */ 6 | .ui.labeled.input { 7 | background-color: @white; 8 | border: @borderWidth solid @borderColor; 9 | border-radius: @borderRadius !important; 10 | } 11 | .ui.labeled.input input { 12 | box-shadow: none !important; 13 | border: none !important; 14 | } 15 | .ui.labeled.input .label { 16 | font-weight: normal; 17 | align-self: center; 18 | font-size: 12px; 19 | margin: @2px; 20 | border-radius: @borderRadius !important; 21 | padding: @relative5px @relative8px !important; 22 | } 23 | 24 | /* GitHub Uses Focus Group with class name added */ 25 | .ui.labeled.input.focused { 26 | border-color: @focusBorderColor; 27 | box-shadow: @focusBoxShadow; 28 | } 29 | .ui.labeled.input.focused .label { 30 | background-color: #E1EAF5; 31 | color: #4078C0; 32 | } -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/input.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Input 3 | *******************************/ 4 | 5 | @boxShadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset; 6 | 7 | @verticalPadding: @relative7px; 8 | @horizontalPadding: @relative8px; 9 | 10 | @borderColor: #CCCCCC; 11 | 12 | @focusBorderColor: #51A7E8; 13 | @focusBoxShadow: 14 | 0 1px 2px rgba(0, 0, 0, 0.075) inset, 15 | 0 0 5px rgba(81, 167, 232, 0.5) 16 | ; -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/label.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Site Overrides 3 | *******************************/ 4 | 5 | /* Notification Label on GitHub */ 6 | .ui.floating.blue.label { 7 | border: 2px solid #f3f3f3 !important; 8 | background-image: linear-gradient(#7aa1d3, #4078c0) !important; 9 | } -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/label.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Variable Overrides 3 | *******************************/ 4 | 5 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/segment.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/segment.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Standard 3 | *******************************/ 4 | 5 | /*------------------- 6 | Segment 7 | --------------------*/ 8 | 9 | @segmentBorderWidth: 1px; 10 | @border: 1px solid #D8DEE2; 11 | @boxShadow: 0px 1px 3px rgba(0, 0, 0, 0.075); 12 | 13 | @verticalPadding: 20px; 14 | @horizontalPadding: 20px; 15 | 16 | @borderRadius: 4px; 17 | 18 | /******************************* 19 | Variations 20 | *******************************/ 21 | 22 | 23 | /* Raised */ 24 | @raisedBoxShadow: 0px 1px 3px rgba(0, 0, 0, 0.075); 25 | 26 | /* Colors */ 27 | @coloredBorderSize: 0.5em; 28 | 29 | /* Ordinality */ 30 | @secondaryBackground: #F9F9F9; 31 | @secondaryColor: @textColor; 32 | 33 | @tertiaryBackground: #F0F0F0; 34 | @tertiaryColor: @textColor; 35 | 36 | @secondaryInvertedBackground: #555555; 37 | @secondaryInvertedColor: @textColor; 38 | 39 | @tertiaryInvertedBackground: #333333; 40 | @tertiaryInvertedColor: @textColor; 41 | -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/step.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.steps .step:after { 6 | display: none; 7 | } 8 | .ui.steps .completed.step:before { 9 | opacity: 0.5; 10 | } 11 | 12 | .ui.steps .step.active:after { 13 | display: block; 14 | border: none; 15 | border-bottom: 1px solid rgba(0, 0, 0, 0.2); 16 | border-left: 1px solid rgba(0, 0, 0, 0.2); 17 | } 18 | .ui.vertical.steps .step.active:after { 19 | display: block; 20 | border: none; 21 | top: 50%; 22 | right: 0%; 23 | border-left: none; 24 | border-bottom: 1px solid rgba(0, 0, 0, 0.2); 25 | border-right: 1px solid rgba(0, 0, 0, 0.2); 26 | } -------------------------------------------------------------------------------- /semantic/src/themes/github/elements/step.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Step Variables 3 | --------------------*/ 4 | 5 | /* Step */ 6 | @background: transparent linear-gradient(transparent, rgba(0, 0, 0, 0.07)); 7 | @verticalPadding: 1em; 8 | 9 | @arrowDisplay: none; 10 | @lastArrowDisplay: none; 11 | @activeArrowDisplay: block; 12 | @activeLastArrowDisplay: block; 13 | 14 | /* Group */ 15 | @stepsBackground: #FFFFFF; 16 | @stepsBoxShadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.15); 17 | 18 | /* States */ 19 | @activeBackground: #FFFFFF; 20 | @activeIconColor: @darkTextColor; 21 | 22 | /* Arrow */ 23 | @arrowTopOffset: 100%; 24 | @arrowRightOffset: 50%; 25 | @arrowBorderColor: rgba(0, 0, 0, 0.2); 26 | @arrowBorderWidth: 0px 0px @borderWidth @borderWidth; 27 | -------------------------------------------------------------------------------- /semantic/src/themes/github/globals/site.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Global Variables 3 | *******************************/ 4 | 5 | @pageMinWidth : 1049px; 6 | @pageOverflowX : visible; 7 | 8 | @emSize: 13px; 9 | @fontSize : 13px; 10 | @fontName : 'Arial'; 11 | @importGoogleFonts : false; 12 | 13 | @h1: 2.25em; 14 | 15 | @defaultBorderRadius: 0.2307em; 16 | 17 | @disabledOpacity: 0.3; 18 | 19 | /* Colors */ 20 | @blue: #80A6CD; 21 | @green: #78CB5B; 22 | @orange: #D26911; 23 | @black: #333333; 24 | @primaryColor: @green; 25 | @secondaryColor: @black; 26 | 27 | /* Links */ 28 | @linkColor: #4078C0; 29 | @linkHoverColor: @linkColor; 30 | @linkHoverUnderline: underline; 31 | 32 | /* Borders */ 33 | @borderColor: rgba(0, 0, 0, 0.13); 34 | @solidBorderColor: #DDDDDD; 35 | @internalBorderColor: rgba(0, 0, 0, 0.06); 36 | @selectedBorderColor: #51A7E8; 37 | 38 | /* Breakpoints */ 39 | @largeMonitorBreakpoint: 1049px; 40 | @computerBreakpoint: @largeMonitorBreakpoint; 41 | @tabletBreakpoint: @largeMonitorBreakpoint; 42 | 43 | @infoBackgroundColor: #E6F1F6; 44 | 45 | @infoTextColor: #4E575B; 46 | @warningTextColor: #613A00; 47 | @errorTextColor: #991111; -------------------------------------------------------------------------------- /semantic/src/themes/github/modules/dropdown.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Variable Overrides 3 | *******************************/ 4 | 5 | @transition: 6 | width @defaultDuration @defaultEasing 7 | ; 8 | 9 | @menuPadding: 0px; 10 | 11 | @itemVerticalPadding: @relative8px; 12 | @itemHorizontalPadding: @relative14px; 13 | 14 | @dropdownIconMargin: 0em 0em 0em 2px; 15 | 16 | @raisedBoxShadow: 0px 3px 12px rgba(0, 0, 0, 0.15); 17 | 18 | @menuPadding: @relative5px 0px; 19 | 20 | @menuHeaderMargin: 0em; 21 | @menuHeaderPadding: @relative6px @itemHorizontalPadding; 22 | @menuHeaderFontSize: @relative12px; 23 | @menuHeaderTextTransform: none; 24 | @menuHeaderFontWeight: normal; 25 | @menuHeaderColor: #767676; 26 | 27 | @menuDividerMargin: @relative8px 0em; 28 | 29 | @disabledOpacity: 0.6; 30 | 31 | /* States */ 32 | @hoveredItemBackground: #4078C0; 33 | @hoveredItemColor: @white; 34 | 35 | @pointingArrowSize: @relative9px; 36 | -------------------------------------------------------------------------------- /semantic/src/themes/github/modules/popup.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Popup 3 | *******************************/ 4 | 5 | 6 | @small: @relative10px; 7 | @medium: @relative11px; 8 | @large: @relative13px; 9 | 10 | @verticalPadding: @relative7px; 11 | @horizontalPadding: @relative11px; 12 | 13 | -------------------------------------------------------------------------------- /semantic/src/themes/gmail/collections/message.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/gmail/collections/message.overrides -------------------------------------------------------------------------------- /semantic/src/themes/gmail/collections/message.variables: -------------------------------------------------------------------------------- 1 | @background: #F3F3F3; 2 | 3 | @boxShadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; 4 | @borderRadius: 4px; 5 | @verticalPadding: 7px; 6 | @horizontalPadding: 15px; 7 | 8 | @headerFontSize: 1em; 9 | 10 | @floatingBoxShadow: 0px 2px 4px rgba(0, 0, 0, 0.2); 11 | 12 | @iconSize: 1.5em; 13 | @iconDistance: 1em; 14 | 15 | @warningBackgroundColor: #F9EDBE; 16 | -------------------------------------------------------------------------------- /semantic/src/themes/instagram/views/card.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | 6 | @import url(http://fonts.googleapis.com/css?family=Montserrat:700,400); 7 | 8 | .ui.cards > .card, 9 | .ui.card { 10 | font-family: 'Montserrat'; 11 | font-size-adjust: 0.5; 12 | } -------------------------------------------------------------------------------- /semantic/src/themes/instagram/views/card.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Card 3 | *******************************/ 4 | 5 | /*------------------- 6 | View 7 | --------------------*/ 8 | 9 | @borderBoxShadow: none; 10 | @shadowBoxShadow: none; 11 | @boxShadow: none; 12 | 13 | 14 | @internalBorderColor: #EDEDEE; 15 | @border: 1px solid #EDEDEE; 16 | 17 | @contentPadding: 14px 20px; 18 | 19 | @metaColor: #A5A7AA; 20 | 21 | @linkHoverRaiseDistance: 0px; 22 | @linkHoverBoxShadow: none; 23 | @linkHoverBorder: 1px solid #D0D0D8; -------------------------------------------------------------------------------- /semantic/src/themes/material/collections/menu.overrides: -------------------------------------------------------------------------------- 1 | @import url(http://fonts.googleapis.com/css?family=Roboto); 2 | -------------------------------------------------------------------------------- /semantic/src/themes/material/collections/menu.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Menu 3 | *******************************/ 4 | 5 | @fontFamily: 'Roboto', Arial, sans-serif; 6 | @boxShadow: 0px 1px 6px rgba(0, 0, 0, 0.2); 7 | @dividerSize: 0px; 8 | 9 | @itemVerticalPadding: @relativeLarge; 10 | @itemHorizontaPadding: @relativeLarge; -------------------------------------------------------------------------------- /semantic/src/themes/material/elements/button.overrides: -------------------------------------------------------------------------------- 1 | @import url(http://fonts.googleapis.com/css?family=Roboto); 2 | 3 | .ui.primary.button:hover { 4 | box-shadow: 5 | 0px 0px 0px 1px rgba(0, 0, 0, 0.3) inset, 6 | 0px 2px 3px 0px rgba(0, 0, 0, 0.35) !important 7 | ; 8 | } 9 | 10 | .ui.secondary.button:hover { 11 | box-shadow: 12 | 0px 0px 0px 1px rgba(0, 0, 0, 0.2) inset, 13 | 0px 2px 3px 0px rgba(0, 0, 0, 0.3) !important 14 | ; 15 | } -------------------------------------------------------------------------------- /semantic/src/themes/material/elements/button.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Button 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @googleFontName : 'Roboto'; 10 | @pageFont : 'Roboto', Arial, sans-serif; 11 | 12 | @medium: 13px; 13 | 14 | @verticalPadding : 0.8em; 15 | @horizontalPadding : 0.8em; 16 | @borderRadius : @relative3px; 17 | @color : #222222; 18 | @fontWeight : normal; 19 | @textTransform : none; 20 | 21 | @backgroundColor : @white; 22 | @backgroundImage : linear-gradient(transparent, rgba(0, 0, 0, 0.02)); 23 | 24 | @solidBorderColor: #DDDDDD; 25 | 26 | @borderBoxShadowColor: @solidBorderColor; 27 | @borderBoxShadow: 0px 0px 0px 1px @solidBorderColor inset; 28 | @shadowBoxShadow: 0px 0px 0px 0px transparent; 29 | 30 | @transition: 31 | opacity 0.3s @defaultEasing, 32 | background-color 0.3s @defaultEasing, 33 | color 0.3s @defaultEasing, 34 | box-shadow 0.3s @defaultEasing, 35 | background 0.3s @defaultEasing 36 | ; 37 | /*------------------- 38 | State 39 | --------------------*/ 40 | 41 | @hoverBackgroundColor: @white; 42 | @hoverBoxShadow: 43 | @borderBoxShadow, 44 | 0px 2px 3px 0px rgba(0, 0, 0, 0.2) !important 45 | ; 46 | 47 | @downBackgroundColor: @white; 48 | @downBackgroundImage: linear-gradient(rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.04)); 49 | @downTextColor: #222222; 50 | @downBoxShadow: @borderBoxShadow; 51 | 52 | @activeBackgroundColor: #F0F0F0; 53 | @activeBoxShadow: 0px 0px 0px 1px #DDDDDD; 54 | 55 | /*------------------- 56 | Variations 57 | --------------------*/ 58 | 59 | /* Basic */ 60 | @basicBorderSize: 0px; 61 | @basicBorderRadius: 4px; 62 | @basicColoredBorderSize: 1px; 63 | @basicHoverBackground: @white; 64 | @basicHoverBoxShadow: @hoverBoxShadow; 65 | @basicDownBackground: @white; 66 | @basicDownBoxShadow: @downBoxShadow; 67 | 68 | @basicActiveBackground: #FFFFFF; 69 | @basicActiveBoxShadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2); 70 | 71 | /* Labeled */ 72 | @labeledIconBackgroundColor: transparent; 73 | @labeledIconWidth: 2em; 74 | 75 | @labeledLabelBorderOffset: 0px; 76 | 77 | /* Colored */ 78 | @coloredBackgroundImage : @subtleGradient; 79 | @coloredBoxShadow : 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; 80 | 81 | /* Primary */ 82 | @primaryColor : #4184F3; 83 | @primaryBoxShadow : 0px 0px 0px 1px #0157E4 inset; 84 | 85 | /* Secondary */ 86 | @secondaryColor : #EEEEEE; 87 | @secondaryBackgroundImage : @backgroundImage; 88 | @secondaryTextColor : @textColor; 89 | @secondaryBoxShadow : @borderBoxShadow; 90 | 91 | /* Emotive */ 92 | @positiveColor: #3D9400; 93 | @negativeColor: #D34836; 94 | 95 | /* Inverted */ 96 | @invertedBorderSize: 1px; 97 | 98 | -------------------------------------------------------------------------------- /semantic/src/themes/material/elements/header.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | @import url(http://fonts.googleapis.com/css?family=Roboto); 6 | 7 | h1.ui.header, 8 | .ui.huge.header { 9 | font-weight: normal; 10 | } 11 | 12 | h2.ui.header, 13 | .ui.large.header { 14 | font-weight: normal; 15 | } -------------------------------------------------------------------------------- /semantic/src/themes/material/elements/header.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Header 3 | --------------------*/ 4 | 5 | @headerFont : 'Roboto', Arial, sans-serif; 6 | @fontWeight: normal; 7 | 8 | @iconSize: 2em; 9 | @iconOffset: 0.2em; 10 | @iconAlignment: top; 11 | 12 | @subHeaderFontSize: 1rem; 13 | 14 | 15 | /* HTML Headings */ 16 | @h1 : 2.25rem; 17 | @h2 : 2rem; 18 | @h3 : 1.75rem; 19 | @h4 : 1.5rem; 20 | @h5 : 1.25rem; 21 | 22 | -------------------------------------------------------------------------------- /semantic/src/themes/material/globals/site.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/material/globals/site.overrides -------------------------------------------------------------------------------- /semantic/src/themes/material/modules/dropdown.overrides: -------------------------------------------------------------------------------- 1 | @import url(http://fonts.googleapis.com/css?family=Roboto:400,700); 2 | 3 | .ui.dropdown { 4 | font-family: 'Roboto'; 5 | } -------------------------------------------------------------------------------- /semantic/src/themes/material/modules/dropdown.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Menu 3 | *******************************/ 4 | 5 | @menuBorderRadius: @borderRadius; 6 | @menuBorderColor: #DADADA; 7 | @menuBoxShadow: 0px 2px 4px rgba(0, 0, 0, 0.2); 8 | 9 | @menuPadding: @relative8px 0em; 10 | @itemVerticalPadding: 1em; 11 | @itemHorizontalPadding: 1.5em; 12 | 13 | @menuHeaderFontSize: @small; 14 | @menuHeaderFontWeight: bold; 15 | @menuHeaderTextTransform: none; 16 | 17 | @selectionBorderEmWidth: 0em; 18 | @selectionItemDivider: none; 19 | 20 | @labelBoxShadow: none; -------------------------------------------------------------------------------- /semantic/src/themes/material/modules/modal.overrides: -------------------------------------------------------------------------------- 1 | @import url(http://fonts.googleapis.com/css?family=Roboto); 2 | 3 | .ui.modal .header { 4 | font-family: "Roboto", Arial, Sans-serif !important; 5 | font-weight: 400 !important; 6 | } -------------------------------------------------------------------------------- /semantic/src/themes/material/modules/modal.variables: -------------------------------------------------------------------------------- 1 | @boxShadow: 0px 10px 18px rgba(0, 0, 0, 0.22); 2 | @borderRadius: 0em; 3 | 4 | 5 | @headerBackground: @white; 6 | @headerVerticalPadding: 1.7142rem; 7 | @headerHorizontalPadding: 1.7142rem; 8 | @headerFontWeight: 400; 9 | @headerFontFamily: 'Roboto', "Helvetica Neue", Arial, sans-serif; 10 | @headerBorder: none; 11 | 12 | @contentPadding: 1rem 2rem 2rem; 13 | 14 | @actionBorder: none; 15 | @actionBackground: @white; -------------------------------------------------------------------------------- /semantic/src/themes/pulsar/elements/loader.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Theme Overrides 3 | *******************************/ 4 | 5 | .ui.loader:after { 6 | -webkit-animation: loader-pulsar 2s infinite linear; 7 | animation: loader-pulsar 2s infinite linear; 8 | } 9 | 10 | @-webkit-keyframes loader-pulsar { 11 | 0% { 12 | -webkit-transform: rotate(0deg); 13 | transform: rotate(0deg); 14 | opacity: 0; 15 | } 16 | 20% { 17 | -webkit-transform: rotate(360deg); 18 | transform: rotate(360deg); 19 | } 20 | 40% { 21 | -webkit-transform: rotate(740deg); 22 | transform: rotate(740deg); 23 | opacity: 1; 24 | } 25 | 60% { 26 | -webkit-transform: rotate(1120deg); 27 | transform: rotate(1120deg); 28 | opacity: 1; 29 | } 30 | 80% { 31 | -webkit-transform: rotate(1440deg); 32 | transform: rotate(1440deg); 33 | } 34 | 100% { 35 | -webkit-transform: rotate(1800deg); 36 | transform: rotate(1800deg); 37 | opacity: 0; 38 | } 39 | } 40 | 41 | @keyframes loader-pulsar { 42 | 0% { 43 | -webkit-transform: rotate(0deg); 44 | transform: rotate(0deg); 45 | opacity: 0; 46 | } 47 | 20% { 48 | -webkit-transform: rotate(360deg); 49 | transform: rotate(360deg); 50 | } 51 | 40% { 52 | -webkit-transform: rotate(740deg); 53 | transform: rotate(740deg); 54 | opacity: 1; 55 | } 56 | 60% { 57 | -webkit-transform: rotate(1120deg); 58 | transform: rotate(1120deg); 59 | opacity: 1; 60 | } 61 | 80% { 62 | -webkit-transform: rotate(1440deg); 63 | transform: rotate(1440deg); 64 | } 65 | 100% { 66 | -webkit-transform: rotate(1800deg); 67 | transform: rotate(1800deg); 68 | opacity: 0; 69 | } 70 | } -------------------------------------------------------------------------------- /semantic/src/themes/pulsar/elements/loader.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Loader 3 | *******************************/ 4 | 5 | @loaderSpeed: 2s; 6 | @loaderLineColor: @primaryColor; 7 | @invertedLoaderLineColor: @lightPrimaryColor; 8 | -------------------------------------------------------------------------------- /semantic/src/themes/raised/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/raised/elements/button.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Button 3 | *******************************/ 4 | 5 | /*------------------- 6 | Element 7 | --------------------*/ 8 | 9 | @backgroundColor: #F8F8F8; 10 | @backgroundImage: linear-gradient(transparent, rgba(0, 0, 0, 0.05)); 11 | @verticalAlign: middle; 12 | @borderRadius: 0.4em; 13 | @borderBoxShadowColor: @borderColor; 14 | 15 | /* Shadow */ 16 | @shadowDistance: 0.3em; 17 | @verticalPadding: 1em; 18 | @horizontalPadding: 2em; 19 | 20 | /* transition box shadow as well */ 21 | @transition: 22 | opacity @defaultDuration @defaultEasing, 23 | background-color @defaultDuration @defaultEasing, 24 | box-shadow @defaultDuration @defaultEasing, 25 | color @defaultDuration @defaultEasing, 26 | background @defaultDuration @defaultEasing 27 | ; -------------------------------------------------------------------------------- /semantic/src/themes/resetcss/globals/reset.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | /** 6 | * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/) 7 | * http://cssreset.com 8 | */ 9 | 10 | html, body, div, span, applet, object, iframe, 11 | h1, h2, h3, h4, h5, h6, p, blockquote, pre, 12 | a, abbr, acronym, address, big, cite, code, 13 | del, dfn, em, img, ins, kbd, q, s, samp, 14 | small, strike, strong, sub, sup, tt, var, 15 | b, u, i, center, 16 | dl, dt, dd, ol, ul, li, 17 | fieldset, form, label, legend, 18 | table, caption, tbody, tfoot, thead, tr, th, td, 19 | article, aside, canvas, details, embed, 20 | figure, figcaption, footer, header, hgroup, 21 | menu, nav, output, ruby, section, summary, 22 | time, mark, audio, video { 23 | margin: 0; 24 | padding: 0; 25 | border: 0; 26 | font-size: 100%; 27 | font: inherit; 28 | vertical-align: baseline; 29 | } 30 | /* HTML5 display-role reset for older browsers */ 31 | article, aside, details, figcaption, figure, 32 | footer, header, hgroup, menu, nav, section { 33 | display: block; 34 | } 35 | body { 36 | line-height: 1; 37 | } 38 | ol, ul { 39 | list-style: none; 40 | } 41 | blockquote, q { 42 | quotes: none; 43 | } 44 | blockquote:before, blockquote:after, 45 | q:before, q:after { 46 | content: ''; 47 | content: none; 48 | } 49 | table { 50 | border-collapse: collapse; 51 | border-spacing: 0; 52 | } -------------------------------------------------------------------------------- /semantic/src/themes/resetcss/globals/reset.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Reset 3 | *******************************/ -------------------------------------------------------------------------------- /semantic/src/themes/round/elements/button.overrides: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanyelemary/tdd-react-redux-isomorphic/033dd2975f33e5931f5a0724b9002c75b52cf86f/semantic/src/themes/round/elements/button.overrides -------------------------------------------------------------------------------- /semantic/src/themes/rtl/globals/site.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Global Overrides 3 | *******************************/ 4 | 5 | /* Import Droid Arabic Kufi */ 6 | @import 'http://fonts.googleapis.com/earlyaccess/droidarabickufi.css'; 7 | -------------------------------------------------------------------------------- /semantic/src/themes/rtl/globals/site.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Site Settings 3 | *******************************/ 4 | 5 | /*------------------- 6 | Fonts 7 | --------------------*/ 8 | 9 | @googleFontName : 'Droid Sans'; 10 | 11 | /* Kufi imported in site.overrides */ 12 | @headerFont : 'Droid Arabic Kufi', 'Droid Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif; 13 | @pageFont : 'Droid Arabic Kufi', 'Droid Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif; 14 | 15 | -------------------------------------------------------------------------------- /semantic/src/themes/striped/modules/progress.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | 5 | .ui.progress .bar { 6 | background-size: 30px 30px; 7 | background-image: 8 | linear-gradient( 9 | 135deg, rgba(255, 255, 255, 0.08) 25%, transparent 25%, 10 | transparent 50%, rgba(255, 255, 255, 0.08) 50%, rgba(255, 255, 255, 0.08) 75%, 11 | transparent 75%, transparent 12 | ) 13 | ; 14 | } 15 | 16 | .ui.progress.active .bar:after { 17 | animation: none; 18 | } 19 | .ui.progress.active .bar { 20 | animation: progress-striped 3s linear infinite; 21 | } 22 | @keyframes progress-striped { 23 | 0% { 24 | background-position: 0px 0; 25 | } 26 | 100% { 27 | background-position: 60px 0; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /semantic/src/themes/striped/modules/progress.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Progress 3 | *******************************/ 4 | -------------------------------------------------------------------------------- /semantic/src/themes/timeline/views/feed.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | User Variable Overrides 3 | *******************************/ 4 | 5 | .ui.feed > .event .label { 6 | border-left: 3px solid #DDDDDD; 7 | } 8 | .ui.feed > .event:last-child .label { 9 | border-left-color: transparent; 10 | } 11 | 12 | .ui.feed > .event > .label { 13 | margin-left: 1.6em; 14 | } 15 | 16 | .ui.feed > .event > .label > img, 17 | .ui.feed > .event > .label > .icon { 18 | background-color: #009FDA; 19 | border-radius: 500rem; 20 | color: #FFFFFF; 21 | width: 3rem; 22 | height: 3rem; 23 | line-height: 1.5; 24 | left: -1.6rem; 25 | opacity: 1; 26 | position: relative; 27 | } 28 | -------------------------------------------------------------------------------- /semantic/src/themes/timeline/views/feed.variables: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Feed 3 | *******************************/ 4 | 5 | /*------------------- 6 | Elements 7 | --------------------*/ 8 | 9 | @eventMargin: 0em; 10 | @eventDivider: none; 11 | @eventPadding: 0em; 12 | 13 | /* Event Label */ 14 | @labelWidth: 3em; 15 | @labelHeight: auto; 16 | 17 | @labeledContentMargin: 0.75em 0em 2em 0.75em; 18 | 19 | /* Icon */ 20 | @iconLabelBackground: @primaryColor; 21 | @iconLabelBorderRadius: @circularRadius; 22 | @iconLabelColor: @white; 23 | 24 | /* Metadata Group */ 25 | @metadataDisplay: inline-block; 26 | @metadataMargin: 1em 0em 0em; 27 | @metadataBackground: @white @subtleGradient; 28 | @metadataBorder: 1px solid @solidBorderColor; 29 | @metadataBorderRadius: 0.25em; 30 | @metadataBoxShadow: 0 1px 1px rgba(0, 0, 0, 0.05); 31 | @metadataPadding: 0.5em 1em; 32 | @metadataColor: rgba(0, 0, 0, 0.6); 33 | 34 | /*------------------- 35 | Variations 36 | --------------------*/ 37 | -------------------------------------------------------------------------------- /semantic/src/themes/twitter/elements/button.overrides: -------------------------------------------------------------------------------- 1 | /******************************* 2 | Overrides 3 | *******************************/ 4 | 5 | .ui.primary.button { 6 | box-shadow: 7 | 0px 0px 0px 1px #3B88C3 inset, 8 | 0 2px 0 rgba(255, 255, 255, 0.15) inset 9 | ; 10 | } 11 | .ui.primary.button > .icon { 12 | color: #FFFFFF; 13 | } 14 | -------------------------------------------------------------------------------- /semantic/src/themes/twitter/elements/button.variables: -------------------------------------------------------------------------------- 1 | /*------------------- 2 | Global Variables 3 | --------------------*/ 4 | 5 | @pageFont: Helvetica Neue, Helvetica, Arial, sans-serif; 6 | @textColor: #66757F; 7 | @blue: #55ACEE; 8 | 9 | /*------------------- 10 | Button Variables 11 | --------------------*/ 12 | 13 | @backgroundColor: #F5F8FA; 14 | @backgroundImage: linear-gradient(@white, @backgroundColor); 15 | @color: #66757F; 16 | @borderBoxShadowColor: #E1E8ED; 17 | 18 | @textTransform: none; 19 | @fontWeight: bold; 20 | @textColor: #333333; 21 | 22 | @horizontalPadding: 1.284em; 23 | @verticalPadding: 0.8571em; 24 | 25 | @activeBackgroundColor: rgba(0, 0, 0, 0.1); 26 | 27 | @primaryColor: @blue; 28 | @coloredBackgroundImage: @subtleGradient; 29 | 30 | 31 | /*------------------- 32 | States 33 | --------------------*/ 34 | 35 | @hoverBackgroundColor: #E1E8ED; 36 | @hoverBackgroundImage: linear-gradient(@white, @hoverBackgroundColor); 37 | @hoverColor: #292F33; 38 | 39 | @downBackgroundColor: #E1E8ED; 40 | @downColor: #292F33; 41 | @downPressedShadow: 0px 1px 4px rgba(0, 0, 0, 0.2) inset; 42 | 43 | @labeledIconBackgroundColor: rgba(85, 172, 238, 0.05); 44 | @labeledIconBorder: rgba(0, 0, 0, 0.1); 45 | -------------------------------------------------------------------------------- /src/App.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import Banner from './header/components/Banner'; 3 | 4 | const App = ({ children }) => { 5 | return ( 6 |