├── .babelrc
├── .editorconfig
├── .eslintrc
├── .gitignore
├── .make
├── build.make
└── index.make
├── LICENSE
├── README.md
├── app
├── actions
│ ├── AppActions.js
│ └── LiveWinAppActions.js
├── api
│ └── .gitkeep
├── app.css
├── app.html
├── app.icns
├── components
│ ├── .gitkeep
│ ├── GLDisplayUintBuf.jsx
│ ├── GLSurfaceCanvas.jsx
│ ├── colorChooser.jsx
│ ├── icon.jsx
│ ├── languageChooser.jsx
│ ├── loader.jsx
│ ├── message.jsx
│ ├── popup.jsx
│ ├── previewWindow.jsx
│ ├── systemWindowList.jsx
│ ├── systemWindowListItem.jsx
│ ├── time.jsx
│ ├── timeChooser.jsx
│ └── windowCaptureGLReact.jsx
├── containers
│ ├── AppContainer.jsx
│ ├── LiveWinContainer.jsx
│ └── PreviewContainer.jsx
├── dispatcher
│ └── AppDispatcher.js
├── hot-dev-app.html
├── hot-dev-liveWin.html
├── liveWin.html
├── liveWinApp.js
├── mainApp.jsx
├── routes
│ ├── async.js
│ ├── router.js
│ └── routes.jsx
├── stores
│ ├── AppStore.js
│ └── LiveWinAppStore.js
├── styles
│ ├── Layout.js
│ └── blink.less
└── utils
│ ├── alt.js
│ ├── appWinIPC.js
│ ├── config.js
│ ├── debug.js
│ ├── i18n.js
│ ├── liveWinIPC.js
│ └── native-sgrab-helper.js
├── assets
├── TeasyIcon.icns
└── TeasyIcon.sketch
├── binding.gyp
├── build.make
├── cpp
├── .dir-locals.el
├── CF++
│ ├── Info.plist
│ ├── PrefixHeader.pch
│ ├── include
│ │ ├── CF++.h
│ │ └── CF++
│ │ │ ├── CFPP-Array.h
│ │ │ ├── CFPP-AutoPointer.h
│ │ │ ├── CFPP-Boolean.h
│ │ │ ├── CFPP-Data.h
│ │ │ ├── CFPP-Date.h
│ │ │ ├── CFPP-Dictionary.h
│ │ │ ├── CFPP-Error.h
│ │ │ ├── CFPP-Number.h
│ │ │ ├── CFPP-Pair.h
│ │ │ ├── CFPP-PropertyListType-Definition.h
│ │ │ ├── CFPP-PropertyListType.h
│ │ │ ├── CFPP-ReadStream.h
│ │ │ ├── CFPP-String.h
│ │ │ ├── CFPP-Type.h
│ │ │ ├── CFPP-URL.h
│ │ │ ├── CFPP-UUID.h
│ │ │ └── CFPP-WriteStream.h
│ └── source
│ │ ├── CFPP-Array.cpp
│ │ ├── CFPP-AutoPointer.cpp
│ │ ├── CFPP-Boolean.cpp
│ │ ├── CFPP-Data.cpp
│ │ ├── CFPP-Date.cpp
│ │ ├── CFPP-Dictionary.cpp
│ │ ├── CFPP-Error.cpp
│ │ ├── CFPP-Number.cpp
│ │ ├── CFPP-Pair.cpp
│ │ ├── CFPP-ReadStream.cpp
│ │ ├── CFPP-String.cpp
│ │ ├── CFPP-Type.cpp
│ │ ├── CFPP-URL.cpp
│ │ ├── CFPP-UUID.cpp
│ │ └── CFPP-WriteStream.cpp
├── CoreGraphicsHelpers.cpp
├── CoreGraphicsHelpers.hpp
├── OpenCVHelpers.cpp
├── OpenCVHelpers.hpp
├── configure.js
├── cppformat
│ ├── .gitignore
│ ├── .gitmodules
│ ├── .travis.yml
│ ├── CMakeLists.txt
│ ├── README.rst
│ ├── appveyor.yml
│ ├── cmake
│ │ ├── FindSetEnv.cmake
│ │ └── run-cmake.bat
│ ├── doc
│ │ ├── CMakeLists.txt
│ │ ├── Doxyfile
│ │ ├── LICENSE.python
│ │ ├── _static
│ │ │ ├── breathe.css
│ │ │ └── cppformat.css
│ │ ├── _templates
│ │ │ └── layout.html
│ │ ├── index.rst
│ │ ├── reference.rst
│ │ ├── syntax.rst
│ │ └── usage.rst
│ ├── format.cc
│ ├── format.h
│ ├── gmock
│ │ ├── gmock-gtest-all.cc
│ │ ├── gmock
│ │ │ └── gmock.h
│ │ └── gtest
│ │ │ ├── gtest-spi.h
│ │ │ └── gtest.h
│ ├── posix.cc
│ ├── posix.h
│ └── test
│ │ ├── CMakeLists.txt
│ │ ├── compile-test
│ │ └── CMakeLists.txt
│ │ ├── format-impl-test.cc
│ │ ├── format-test.cc
│ │ ├── gtest-extra-test.cc
│ │ ├── gtest-extra.cc
│ │ ├── gtest-extra.h
│ │ ├── macro-test.cc
│ │ ├── mock-allocator.h
│ │ ├── posix-test.cc
│ │ ├── posix-test.h
│ │ ├── printf-test.cc
│ │ ├── test-main.cc
│ │ ├── util-test.cc
│ │ ├── util.cc
│ │ └── util.h
├── debug.hxx
├── exportedFunctions.cc
├── exportedFunctions.h
├── json11
│ ├── .gitignore
│ ├── LICENSE.txt
│ ├── Makefile
│ ├── README.md
│ ├── json11.cpp
│ └── json11.hpp
├── makefile
├── memoryTestXcode
│ └── Test
│ │ └── Test.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── Test.xccheckout
│ │ └── xcuserdata
│ │ │ └── zaccaria.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ └── zaccaria.xcuserdatad
│ │ └── xcschemes
│ │ ├── Test.xcscheme
│ │ └── xcschememanagement.plist
├── nativeSgrabHelper.cpp
├── package.json
├── test.cpp
└── yarn.lock
├── index.make
├── main.js
├── makefile
├── package.js
├── package.json
├── semantic
├── gulpfile.js
├── src
│ ├── definitions
│ │ ├── behaviors
│ │ │ ├── api.js
│ │ │ ├── colorize.js
│ │ │ ├── form.js
│ │ │ ├── state.js
│ │ │ ├── visibility.js
│ │ │ └── visit.js
│ │ ├── collections
│ │ │ ├── breadcrumb.less
│ │ │ ├── form.less
│ │ │ ├── grid.less
│ │ │ ├── menu.less
│ │ │ ├── message.less
│ │ │ └── table.less
│ │ ├── elements
│ │ │ ├── button.less
│ │ │ ├── container.less
│ │ │ ├── divider.less
│ │ │ ├── flag.less
│ │ │ ├── header.less
│ │ │ ├── icon.less
│ │ │ ├── image.less
│ │ │ ├── input.less
│ │ │ ├── label.less
│ │ │ ├── list.less
│ │ │ ├── loader.less
│ │ │ ├── rail.less
│ │ │ ├── reveal.less
│ │ │ ├── segment.less
│ │ │ └── step.less
│ │ ├── globals
│ │ │ ├── reset.less
│ │ │ ├── site.js
│ │ │ └── site.less
│ │ ├── modules
│ │ │ ├── accordion.js
│ │ │ ├── accordion.less
│ │ │ ├── checkbox.js
│ │ │ ├── checkbox.less
│ │ │ ├── dimmer.js
│ │ │ ├── dimmer.less
│ │ │ ├── dropdown.js
│ │ │ ├── dropdown.less
│ │ │ ├── embed.js
│ │ │ ├── embed.less
│ │ │ ├── modal.js
│ │ │ ├── modal.less
│ │ │ ├── nag.js
│ │ │ ├── nag.less
│ │ │ ├── popup.js
│ │ │ ├── popup.less
│ │ │ ├── progress.js
│ │ │ ├── progress.less
│ │ │ ├── rating.js
│ │ │ ├── rating.less
│ │ │ ├── search.js
│ │ │ ├── search.less
│ │ │ ├── shape.js
│ │ │ ├── shape.less
│ │ │ ├── sidebar.js
│ │ │ ├── sidebar.less
│ │ │ ├── sticky.js
│ │ │ ├── sticky.less
│ │ │ ├── tab.js
│ │ │ ├── tab.less
│ │ │ ├── transition.js
│ │ │ └── transition.less
│ │ └── views
│ │ │ ├── ad.less
│ │ │ ├── card.less
│ │ │ ├── comment.less
│ │ │ ├── feed.less
│ │ │ ├── item.less
│ │ │ └── statistic.less
│ ├── semantic.less
│ ├── site
│ │ ├── 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
│ ├── 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
└── tasks
│ ├── README.md
│ ├── admin
│ ├── components
│ │ ├── create.js
│ │ ├── init.js
│ │ └── update.js
│ ├── distributions
│ │ ├── create.js
│ │ ├── init.js
│ │ └── update.js
│ ├── publish.js
│ ├── register.js
│ └── release.js
│ ├── build.js
│ ├── check-install.js
│ ├── clean.js
│ ├── collections
│ ├── README.md
│ ├── admin.js
│ ├── build.js
│ ├── internal.js
│ └── rtl.js
│ ├── config
│ ├── admin
│ │ ├── github.js
│ │ ├── oauth.example.js
│ │ ├── release.js
│ │ └── templates
│ │ │ ├── README.md
│ │ │ ├── bower.json
│ │ │ ├── component-package.js
│ │ │ ├── composer.json
│ │ │ ├── css-package.js
│ │ │ ├── less-package.js
│ │ │ └── package.json
│ ├── defaults.js
│ ├── docs.js
│ ├── npm
│ │ └── gulpfile.js
│ ├── project
│ │ ├── config.js
│ │ ├── install.js
│ │ └── release.js
│ ├── tasks.js
│ └── user.js
│ ├── docs
│ ├── build.js
│ ├── metadata.js
│ └── serve.js
│ ├── install.js
│ ├── rtl
│ ├── build.js
│ └── watch.js
│ ├── version.js
│ └── watch.js
├── test
└── example.js
├── webpack
├── make-webpack-config.js
├── webpack-dev-server.config.js
├── webpack-hot-dev-server.config.js
├── webpack.config.js
└── webpack.config.production.js
└── yarn.lock
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "stage": 0
3 | }
4 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = tab
5 | end_of_line = lf
6 | charset = utf-8
7 | trim_trailing_whitespace = true
8 | insert_final_newline = true
9 |
10 | [*.{json,js,jsx,html,css}]
11 | indent_style = space
12 | indent_size = 2
13 |
14 | [.eslintrc]
15 | indent_style = space
16 | indent_size = 2
17 |
18 | [*.md]
19 | trim_trailing_whitespace = false
20 |
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "ecmaFeatures": { "modules": true, "jsx": true },
3 | "env": {
4 | "es6": true,
5 | "node": true,
6 | "shelljs": true,
7 | "browser": true
8 | },
9 | "extends": "eslint:recommended",
10 | "rules": {
11 | "no-console": 0
12 | }
13 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 |
5 | # Runtime data
6 | pids
7 | *.pid
8 | *.seed
9 |
10 | # Directory for instrumented libs generated by jscoverage/JSCover
11 | lib-cov
12 |
13 | # Coverage directory used by tools like istanbul
14 | coverage
15 |
16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
17 | .grunt
18 |
19 | # node-waf configuration
20 | .lock-wscript
21 |
22 | # Compiled binary addons (http://nodejs.org/api/addons.html)
23 | build/Release
24 |
25 | # Dependency directory
26 | # https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
27 | node_modules
28 |
29 | # OSX
30 | .DS_Store
31 |
32 | # App packaged
33 | release
34 | dist-old
35 | dist
36 | /npm-debug.log.4395bb813771e5310d5e45b316bd60d6
37 | npm-debug.log.1624182a45daa89560d521473ca74c3f
38 | npm-debug.log.22b90196a03d7a53130327d59301bd07
39 | landing
40 | GITHUBTOKEN
41 |
--------------------------------------------------------------------------------
/.make/build.make:
--------------------------------------------------------------------------------
1 | $(BUILDIR)/%.xelatex.pdf: %.xelatex.tex $(BUILDIR)/.f
2 | xelatex $<
3 | xelatex $<
4 | mv $*.xelatex.pdf $(BUILDIR)
5 | rm -f $*.xelatex.aux $*.xelatex.log
6 |
--------------------------------------------------------------------------------
/.make/index.make:
--------------------------------------------------------------------------------
1 | # Use this makefile with: make -I(THISDIRECTORY)
2 |
3 | BUILDIR ?= dist
4 | PROCREGEXP ?=
5 | WATCHOBJECT ?=
6 | WATCHTARGET ?=
7 |
8 | #.SILENT:
9 | #.IGNORE:
10 |
11 |
12 | .DEFAULT_GOAL := all
13 |
14 | # Used to create a directory as a prerequisite of a file
15 | .SECONDEXPANSION:
16 |
17 | mirrorinto = $(patsubst %, $1/%, $2)
18 | collapseinto = $(patsubst %, $1/%, $(notdir $2))
19 |
20 | # Used to create a directory as a prerequisite of a file
21 | %/.f:
22 | mkdir -p $(dir $@)
23 | touch $@
24 |
25 | clean:
26 | rm -rf $(BUILDIR)
27 |
28 |
29 | .phony: watch
30 | watch:
31 | watchman $(WATCHOBJECT) "make $(WATCHTARGET)" &
32 |
33 |
34 | .PHONY: show-procs
35 | show-procs:
36 | @echo 'Processes in PROCREGEXP = $(PROCREGEXP), WATCHOBJECT = $(WATCHOBJECT)'
37 | @echo ' '
38 | $(if $(PROCREGEXP), pgrep -l -f $(PROCREGEXP), @echo "PROCREGEXP not set")
39 | $(if $(WATCHOBJECT), pgrep -l -f ".*watchman.*$(WATCHOBJECT)", @echo "WATCHOBJECT not set")
40 |
41 | .PHONY: kill-procs
42 | kill-procs:
43 | @make show-procs
44 | $(if $(PROCREGEXP), pkill -9 -f $(PROCREGEXP), @echo "PROCREGEXP not set")
45 | $(if $(WATCHOBJECT), pkill -9 -f ".*watchman.*$(WATCHOBJECT)", @echo "WATCHOBJECT not set")
46 |
47 | show: show-procs
48 |
49 | stop: kill-procs
50 |
51 | include ./.make/build.make
52 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Teasy: Copyright (c) 2015 V. Zaccaria
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/app/actions/AppActions.js:
--------------------------------------------------------------------------------
1 | var alt = require('../utils/alt');
2 |
3 | import _debug from 'debug';
4 | const debug = _debug('app:actions/AppActions');
5 |
6 | debug('loaded')
7 |
8 | class AppActions {
9 | constructor() {
10 | this.generateActions(
11 | /* Easier - comma separated list of methods.. */
12 | 'updateWindowSize', /* Use commas to add actions */
13 | 'updateCurrentSystemWindows',
14 | 'updateLiveViewTime',
15 | 'setBreakTime',
16 | 'clearBreakTime',
17 | 'changeLanguage',
18 | 'toggleShowTopBar',
19 | 'updatePointerSettings',
20 | 'updateMouseCoordinates',
21 | 'toggleColorPicker'
22 | )
23 | }
24 |
25 | updateCurrentLiveWindow(wid) {
26 | this.dispatch(wid);
27 | }
28 | }
29 |
30 | module.exports = window.$a = (alt.createActions(AppActions));
31 |
--------------------------------------------------------------------------------
/app/actions/LiveWinAppActions.js:
--------------------------------------------------------------------------------
1 | var alt = require('../utils/alt');
2 |
3 | import _debug from 'debug';
4 | const debug = _debug('app:actions/LiveWinAppActions');
5 |
6 | debug('loaded')
7 |
8 | class LiveWinAppActions {
9 | constructor() {
10 | this.generateActions(
11 | 'updateWindowSize', /* Use commas to add actions */
12 | 'updateRemoteState'
13 | )
14 | }
15 | }
16 |
17 | module.exports = window.$a = alt.createActions(LiveWinAppActions);
18 |
--------------------------------------------------------------------------------
/app/api/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/app/api/.gitkeep
--------------------------------------------------------------------------------
/app/app.css:
--------------------------------------------------------------------------------
1 | body {
2 | color: black;
3 | background-color: #ffe773;
4 | }
5 |
6 | h2 {
7 | font-size: 50px;
8 | }
9 |
10 | p {
11 | font-size: 24px;
12 | }
13 |
--------------------------------------------------------------------------------
/app/app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Teasy 2.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/app.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/app/app.icns
--------------------------------------------------------------------------------
/app/components/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/app/components/.gitkeep
--------------------------------------------------------------------------------
/app/components/GLDisplayUintBuf.jsx:
--------------------------------------------------------------------------------
1 | const GL = require("gl-react");
2 | const React = GL.React;
3 |
4 | const shaders = GL.Shaders.create({
5 | justDisplay: {
6 | frag: `
7 | precision highp float;
8 | varying vec2 uv;
9 | uniform sampler2D image;
10 | uniform sampler2D tex;
11 | void main () {
12 |
13 | vec4 c = texture2D(image, uv);
14 | vec4 o = texture2D(tex, uv);
15 | c.r = mix(c.r , o.r , o.a);
16 | c.g = mix(c.g , o.g , o.a);
17 | c.b = mix(c.b , o.b , o.a);
18 | gl_FragColor = c;
19 | }
20 | `
21 | }
22 | });
23 |
24 |
25 | let GLDisplayUintBuf = GL.createComponent(
26 | ({ width, height, image, children: tex, className }) => {
27 | width = parseInt(width);
28 | height = parseInt(height);
29 | return (
30 |
34 |
35 | );
36 | },
37 | { displayName: "GLDisplayUintBuf"}
38 | );
39 |
40 | module.exports = { GLDisplayUintBuf }
41 |
--------------------------------------------------------------------------------
/app/components/GLSurfaceCanvas.jsx:
--------------------------------------------------------------------------------
1 | const GL = require("gl-react");
2 | const React = require("react");
3 |
4 | import $ from 'jquery'
5 |
6 | import ndarray from 'ndarray';
7 | import _ from 'lodash'
8 | import { GLDisplayUintBuf } from './GLDisplayUintBuf';
9 | const { Surface } = require("gl-react-dom");
10 |
11 |
12 | let GLSurfaceCanvas = React.createClass({
13 |
14 | shouldComponentUpdate: function(np, ns) {
15 | if(this.props.framenumber !== np.framenumber) {
16 | return true
17 | } else {
18 | return false
19 | }
20 | },
21 |
22 | render: function() {
23 | let thisWindowSize = {
24 | width: parseInt(this.props.width),
25 | height: parseInt(this.props.height)
26 | }
27 | return (
28 |
29 |
30 |
31 | );
32 | }
33 |
34 | });
35 |
36 |
37 | module.exports = { GLSurfaceCanvas }
38 |
--------------------------------------------------------------------------------
/app/components/icon.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import _ from 'lodash'
3 |
4 |
5 | let Icon = React.createClass({
6 | render: function() {
7 | return (
8 |
9 |
10 | );
11 | }
12 | });
13 |
14 |
15 |
16 |
17 | module.exports = { Icon };
18 |
--------------------------------------------------------------------------------
/app/components/languageChooser.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import _ from 'lodash'
3 |
4 | import { changeLanguage } from '../actions/AppActions'
5 |
6 | let languageChoices = [
7 | { key: 'us', value: 'en', display: 'English' },
8 | { key: 'it', value: 'it', display: 'Italiano' }
9 | ];
10 |
11 | function renderItem(it) {
12 | let style = {cursor: 'pointer', marginTop: '0.5rem', marginBottom: '0.5rem'} ;
13 | return (
14 | changeLanguage(it.value)}>
15 | {it.display}
16 |
);
17 | }
18 |
19 | class LanguageChooser extends React.Component {
20 |
21 |
22 | render() {
23 | return (
24 |
25 | {_.map(languageChoices, renderItem)}
26 |
);
27 |
28 | }
29 | }
30 |
31 | function getLanguageFlag(language) {
32 | return _.head(_.filter(languageChoices, (i) => i.value === language)).key;
33 | }
34 |
35 | module.exports = { LanguageChooser, getLanguageFlag }
36 |
--------------------------------------------------------------------------------
/app/components/loader.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import _ from 'lodash'
3 |
4 |
5 | function isInverted(props) {
6 | return !_.isUndefined(props.inverted) && _.isEqual(props.inverted, "1");
7 | }
8 |
9 | export default class Loader extends React.Component {
10 |
11 | render() {
12 | let cn = "ui active dimmer"
13 | if(isInverted(this.props)) {
14 | cn = "ui active dimmer inverted";
15 | }
16 | return (
17 |
18 |
19 | {this.props.message}
20 |
21 |
22 | )
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/app/components/message.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | module.exports = React.createClass({
4 | render: function() {
5 |
6 | let cstyle = {
7 | width: this.props.width,
8 | height: this.props.height,
9 | paddingTop: this.props.height/3
10 | };
11 |
12 | return (
13 |
14 |
15 |
16 |
{this.props.title}
17 |
{this.props.message}
18 |
19 |
20 |
);
21 | }
22 | })
23 |
--------------------------------------------------------------------------------
/app/components/popup.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import _ from 'lodash'
3 |
4 | import '../../semantic/src/definitions/modules/popup'
5 | import '../../semantic/src/definitions/modules/transition'
6 |
7 | import $ from 'jquery'
8 |
9 |
10 | function asPopup(iconName, popup) {
11 |
12 | let IconPopup = React.createClass({
13 | componentDidMount: function() {
14 | let element = $('.popact');
15 | element.popup({
16 | inline : true,
17 | hoverable: true,
18 | position : 'bottom left',
19 | delay: {
20 | show: 100
21 | }}
22 | )
23 | },
24 | render: function() {
25 | if(_.isUndefined(this.props.className)) {
26 | return (
27 |
28 | );
29 | } else {
30 | return (
31 |
32 | );
33 |
34 | }
35 | }
36 | });
37 | let IconPopupContent = React.createClass({
38 | render: function() {
39 | return (
40 |
41 | {popup}
42 |
);
43 | }
44 | });
45 | return { IconPopup, IconPopupContent }
46 | }
47 |
48 |
49 | module.exports = { asPopup }
50 |
--------------------------------------------------------------------------------
/app/components/time.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import moment from 'moment'
3 | import _ from 'lodash'
4 |
5 | export default class Time extends React.Component {
6 |
7 | render() {
8 | let curtime = moment();
9 |
10 | let showBreakTime = _.get(this.props, "state.liveView.time.breakTime", false);
11 | let __ = _.get(this.props, "state.__", () => "");
12 | let message = __(curtime, {short: true });
13 | if(showBreakTime !== false) {
14 | let diff = moment(showBreakTime, "HH:mm").diff(curtime);
15 | let duration = moment.duration(diff);
16 | if(diff > 0) {
17 | message = `${message} - ${__(duration, {duration: true})}`;
18 | } else {
19 | message = `${message} - ${__('timeFinished')}`;
20 | }
21 | }
22 |
23 | if(_.get(this.props, 'asDimmer', false)) {
24 | let cn = "ui active dimmer";
25 |
26 | return (
27 |
28 |
29 | {message}
30 |
31 |
32 | )
33 | } else {
34 | let cstyle = {
35 | fontSize: 40,
36 | width: this.props.width,
37 | height: this.props.height,
38 | paddingTop: this.props.height/3,
39 | background: "black",
40 | color: "white"
41 | };
42 | return (
43 |
44 |
45 |
46 | {message}
47 |
48 |
49 |
);
50 |
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/app/components/timeChooser.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import moment from 'moment'
3 | import _ from 'lodash'
4 |
5 | import { setBreakTime } from '../actions/AppActions'
6 |
7 | let timeChoices = [
8 | { key: '5m', value: 5, display: '5 minutes' },
9 | { key: '10m', value: 10, display: '10 minutes' },
10 | { key: '20m', value: 20, display: '20 minutes' }
11 | ];
12 |
13 | function renderItem(it) {
14 |
15 | let handler = () => {
16 | setBreakTime({minutesFromNow: it.value})
17 | }
18 |
19 | let style = {width: '8rem', cursor: 'pointer', marginTop: '0.5rem', marginBottom: '0.5rem'} ;
20 | return (
21 |
22 | {it.display}
23 |
);
24 | }
25 | export default class TimeChooser extends React.Component {
26 |
27 |
28 | render() {
29 | return (
30 |
31 | {_.map(timeChoices, renderItem)}
32 |
);
33 |
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/app/dispatcher/AppDispatcher.js:
--------------------------------------------------------------------------------
1 | import {Dispatcher} from 'flux';
2 | import assign from 'object-assign';
3 | import PayloadSources from '../constants/PayloadSources';
4 | import debug from '../utils/debug';
5 |
6 | var dd = debug('AppDispatcher');
7 |
8 |
9 | export default assign(new Dispatcher(), {
10 |
11 | handleServerAction(action) {
12 | dd('server action', action);
13 |
14 | if (!action.type) {
15 | throw new Error('Empty action.type: you likely mistyped the action.');
16 | }
17 |
18 | var payload = {
19 | source: PayloadSources.SERVER_ACTION,
20 | action: action
21 | };
22 |
23 | this.dispatch(payload);
24 | },
25 |
26 | handleViewAction(action) {
27 | dd('view action', action);
28 |
29 | if (!action.type) {
30 | throw new Error('Empty action.type: you likely mistyped the action.');
31 | }
32 |
33 | var payload = {
34 | source: PayloadSources.VIEW_ACTION,
35 | action: action
36 | };
37 |
38 | this.dispatch(payload);
39 | }
40 | });
41 |
--------------------------------------------------------------------------------
/app/hot-dev-app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Teasy 2.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/hot-dev-liveWin.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Teasy 2.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/liveWin.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Teasy 2.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/liveWinApp.js:
--------------------------------------------------------------------------------
1 | import __ from "gl-react"
2 | import React from 'react';
3 | import ReactDOM from 'react-dom';
4 | import LiveWinContainer from './containers/LiveWinContainer';
5 | import { updateWindowSize } from './actions/LiveWinAppActions';
6 | import { listenToStateChange } from './utils/liveWinIPC';
7 | import _debug from 'debug';
8 | import '../semantic/src/semantic.less';
9 | import './styles/blink.less';
10 |
11 |
12 | const debug = _debug('app:liveWinApp');
13 | debug('Live w. started');
14 | debug(listenToStateChange)
15 |
16 | window.$mine = { }
17 | window.$mine.enableDebugAll = () => { _debug.enable('app:*') }
18 | window.$mine.disableDebugAll = () => { _debug.disable('app:*') }
19 | window.$mine.enableDebugAll()
20 |
21 | function registerListeners() {
22 | debug('registering listener..')
23 | listenToStateChange();
24 | window.addEventListener('resize', function() {
25 | updateWindowSize({width: window.innerWidth, height: window.innerHeight})
26 | }, true)
27 | }
28 |
29 |
30 | ReactDOM.render(, document.getElementById('react-live-win-root'));
31 |
32 | registerListeners()
33 |
--------------------------------------------------------------------------------
/app/mainApp.jsx:
--------------------------------------------------------------------------------
1 | import __ from "gl-react"
2 | import React from 'react';
3 | import ReactDOM from 'react-dom'
4 | import AppContainer from './containers/AppContainer';
5 | import { updateWindowSize, updateMouseCoordinates } from './actions/AppActions';
6 | var ipc = require('electron').ipcRenderer;
7 |
8 | function listenToMouseCoordinatesChange() {
9 | ipc.on('update-coordinates', function(sender, coordinates) {
10 | updateMouseCoordinates(coordinates);
11 | });
12 | }
13 |
14 | // debug(`Received updated coordinates ${coordinates}`)
15 |
16 | import '../semantic/src/semantic.less';
17 | import './styles/blink.less';
18 |
19 | import _debug from 'debug';
20 | const debug = _debug('app:mainApp');
21 |
22 | window.$mine = { }
23 | window.$mine.enableDebugAll = () => { _debug.enable('app:*') }
24 | window.$mine.disableDebugAll = () => { _debug.disable('app:*') }
25 |
26 | //window.$mine.enableDebugAll()
27 | window.$mine.disableDebugAll()
28 |
29 | function attachListeners() {
30 | listenToMouseCoordinatesChange();
31 | window.addEventListener('resize', function() {
32 | debug("resize invoked");
33 | updateWindowSize({width: window.innerWidth, height: window.innerHeight})
34 | }, true);
35 |
36 | window.addEventListener('load', function() {
37 | debug("load invoked");
38 | updateWindowSize({width: window.innerWidth, height: window.innerHeight})
39 | }, true);
40 | }
41 |
42 |
43 |
44 | ReactDOM.render(, document.getElementById('react-root'));
45 |
46 | attachListeners()
47 |
--------------------------------------------------------------------------------
/app/routes/async.js:
--------------------------------------------------------------------------------
1 | module.exports = [ 'SomePage', 'ReadmePage' ];
2 |
--------------------------------------------------------------------------------
/app/routes/router.js:
--------------------------------------------------------------------------------
1 | import routes from './routes';
2 | import Router from 'react-router';
3 |
4 |
5 | // we can create a router before 'running' it
6 | export default Router.create({
7 | routes: routes,
8 | location: Router.HashLocation
9 | });
10 |
--------------------------------------------------------------------------------
/app/routes/routes.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Route, DefaultRoute } from 'react-router';
3 | import AppContainer from '../containers/AppContainer';
4 | import HomePageContainer from '../containers/HomePageContainer';
5 | import AboutPageContainer from '../containers/AboutPageContainer';
6 | import PreviewContainer from '../containers/PreviewContainer';
7 |
8 |
9 | export default (
10 |
11 |
12 |
13 |
14 |
15 | );
16 |
--------------------------------------------------------------------------------
/app/stores/LiveWinAppStore.js:
--------------------------------------------------------------------------------
1 | var alt = require('../utils/alt');
2 | var LiveWinAppActions = require('../actions/LiveWinAppActions');
3 | import i18n from '../utils/i18n'
4 |
5 | import _ from 'lodash'
6 |
7 | import _debug from 'debug';
8 | const debug = _debug('app:stores/LiveWinAppStore.jsx');
9 |
10 | debug('loaded');
11 |
12 | class LiveWinAppStore {
13 | constructor() {
14 | /* `this` is the state */
15 | this.remoteState = {}
16 | this.window = {
17 | size: {
18 | width: window.innerWidth,
19 | height: window.innerHeight
20 | }
21 | }
22 | /* Bind the actions in LiveWinAppActions */
23 | this.bindActions(LiveWinAppActions)
24 | }
25 |
26 |
27 | updateRemoteState(state) {
28 | debug(state)
29 | this.remoteState = state
30 | this.remoteState.__ = i18n(this.remoteState.currentLanguage)
31 | }
32 |
33 | updateWindowSize(size) {
34 | this.window.size = size
35 | }
36 | }
37 |
38 | module.exports = window.$s = alt.createStore(LiveWinAppStore, 'LiveWinAppStore');
39 |
--------------------------------------------------------------------------------
/app/styles/Layout.js:
--------------------------------------------------------------------------------
1 | import color from 'color'
2 |
3 | const listWidth = 350;
4 | const previewWidth = listWidth;
5 | const previewHeight = 300;
6 | const topBarSize = 40;
7 |
8 | const getAppWindowStyle = () => {
9 | return {
10 | width: listWidth,
11 | height: 800
12 | }
13 | }
14 |
15 |
16 | const dividerGray = color('#FFFFFF').darken(0.1).hexString()
17 |
18 | const WindowListStyle = (window) => {
19 | return {
20 | boxSizing: 'border-box',
21 | width: listWidth,
22 | position: 'fixed',
23 | top: topBarSize + previewHeight,
24 | height: window.size.height - topBarSize - previewHeight,
25 | overflowY: 'auto',
26 | borderRight: `1px solid ${dividerGray}`,
27 | cursor: 'pointer',
28 | background: color('#FFFFFF').darken(0.05).hslString()
29 | }
30 | }
31 |
32 |
33 |
34 | const getPreviewSize = (window) => {
35 | return {
36 | width: previewWidth,
37 | height: previewHeight
38 | }
39 | }
40 |
41 | const PreviewStyle = {
42 | bxSizing: 'border-box',
43 | position: 'fixed',
44 | width: previewWidth,
45 | top: topBarSize,
46 | height: previewHeight
47 | }
48 |
49 | const MenuStyle = {
50 |
51 | }
52 |
53 | module.exports = {
54 | WindowListStyle, PreviewStyle, getPreviewSize, MenuStyle, dividerGray, getAppWindowStyle
55 | }
56 |
--------------------------------------------------------------------------------
/app/styles/blink.less:
--------------------------------------------------------------------------------
1 | .blink {
2 | animation: blink-animation 1s steps(5, start) infinite;
3 | -webkit-animation: blink-animation 1s steps(5, start) infinite;
4 | }
5 | @keyframes blink-animation {
6 | to {
7 | visibility: hidden;
8 | }
9 | }
10 | @-webkit-keyframes blink-animation {
11 | to {
12 | visibility: hidden;
13 | }
14 | }
--------------------------------------------------------------------------------
/app/utils/alt.js:
--------------------------------------------------------------------------------
1 | var Alt = require('alt');
2 | var alt = new Alt();
3 |
4 | module.exports = alt;
5 |
--------------------------------------------------------------------------------
/app/utils/appWinIPC.js:
--------------------------------------------------------------------------------
1 | import _debug from 'debug';
2 | const debug = _debug(__filename)
3 | debug('loading ipc renderer')
4 |
5 | var ipc = require('electron').ipcRenderer;
6 |
7 |
8 | function sendStateChange(state) {
9 | ipc.send('update-state', { state });
10 | }
11 |
12 | module.exports = {
13 | sendStateChange
14 | }
15 |
16 | debug('loaded!')
17 |
--------------------------------------------------------------------------------
/app/utils/config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |
3 | maxImageRefreshTime: 1000, // refresh is throttled with this parameter (safe == 1000)
4 |
5 | // Video refresh rates (used for setInterval)
6 | refreshRates: {
7 | live: 300, // Safe == 1000
8 | preview: 5000,
9 | screenshot: 10000
10 | },
11 |
12 | // Just the window list
13 | updateWindowListTime: 1000, // ms
14 |
15 | // Mouse
16 | mouseRefreshTime: 100 // ms
17 | }
18 |
--------------------------------------------------------------------------------
/app/utils/debug.js:
--------------------------------------------------------------------------------
1 | import debug from 'debug';
2 |
3 | global.dd = debug;
4 |
5 | export default debug;
6 |
--------------------------------------------------------------------------------
/app/utils/i18n.js:
--------------------------------------------------------------------------------
1 | let _ = require('lodash')
2 | let Polyglot = require('node-polyglot')
3 | let moment = require('moment')
4 |
5 | let _phrases = {
6 | it: {
7 | waitingForConnection: "In attesa del contenuto",
8 | noWindowSelected: "Nessuna finestra scelta",
9 | chooseAWindowFromTheLeft: "Scegli una finestra qui sotto",
10 | timeFinished: "tempo scaduto",
11 | initializing: "Inizializzazione",
12 | longTimeFormat: "D/M/YY - HH:mm:ss",
13 | showingTopWindow: "Mostra sempre finestra top"
14 | },
15 |
16 | en: {
17 | waitingForConnection: "Waiting for connection",
18 | chooseAWindowFromTheLeft: "Please, choose a window below",
19 | noWindowSelected: "No window selected!",
20 | timeFinished: "time is up",
21 | initializing: "Initializing",
22 | longTimeFormat: "M/D/YY h:mm:ss a",
23 | showingTopWindow: "Showing top window"
24 | }
25 | }
26 |
27 | function entry(language) {
28 |
29 | if (_.isUndefined(_phrases[language])) {
30 | language = 'en';
31 | }
32 | let phrases = _phrases[language]
33 | let _poly = new Polyglot({
34 | phrases
35 | })
36 | moment.locale(language);
37 |
38 | return function(datum, props) {
39 | if (_.isString(datum)) {
40 | return _poly.t.apply(_poly, arguments)
41 | } else {
42 | let isDuration = _.get(props, 'duration', false);
43 | if (moment.isMoment(datum) || isDuration) {
44 | let isShort = _.get(props, 'short', false);
45 | if (isDuration) {
46 | return datum.humanize();
47 | } else {
48 | if (isShort) {
49 | return datum.format("HH:mm");
50 | } else {
51 | return datum.format(_phrases[language].longTimeFormat);
52 | }
53 | }
54 | }
55 | }
56 | }
57 | }
58 |
59 | module.exports = entry
60 |
--------------------------------------------------------------------------------
/app/utils/liveWinIPC.js:
--------------------------------------------------------------------------------
1 | import _debug from 'debug';
2 | const debug = _debug(__filename)
3 | debug('loading ipc renderer')
4 |
5 | var ipc = require('electron').ipcRenderer;
6 |
7 | var { updateRemoteState } = require('../actions/LiveWinAppActions');
8 |
9 |
10 | function listenToStateChange() {
11 | debug('registering to statechange')
12 | ipc.on('update-state', function(sender, state) {
13 | state = state.state
14 | debug('received updated state')
15 | debug(state)
16 | updateRemoteState(state);
17 | });
18 | }
19 |
20 | module.exports = {
21 | listenToStateChange
22 | }
23 |
24 | debug('loaded!')
25 |
--------------------------------------------------------------------------------
/app/utils/native-sgrab-helper.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var nativeSgrabHelper = require("bindings")("nativeSgrabHelper");
4 | var _ = require("lodash");
5 |
6 | function windowListAsJson() {
7 | return JSON.parse(nativeSgrabHelper.windowList());
8 | }
9 |
10 | function getForefrontWindow() {
11 | var list = windowListAsJson();
12 | return _.first(_.filter(list, function (it) {
13 | return it.layer == 0;
14 | }));
15 | }
16 |
17 | function getForefrontWindowBuffer() {
18 | return nativeSgrabHelper.getImageBuffer(getForefrontWindow().wid);
19 | }
20 |
21 | module.exports = {
22 | nativeSgrabHelper: nativeSgrabHelper, windowListAsJson: windowListAsJson, getForefrontWindow: getForefrontWindow, getForefrontWindowBuffer: getForefrontWindowBuffer
23 | };
24 |
--------------------------------------------------------------------------------
/assets/TeasyIcon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/assets/TeasyIcon.icns
--------------------------------------------------------------------------------
/assets/TeasyIcon.sketch:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/assets/TeasyIcon.sketch
--------------------------------------------------------------------------------
/build.make:
--------------------------------------------------------------------------------
1 | $(BUILDIR)/%.xelatex.pdf: %.xelatex.tex $(BUILDIR)/.f
2 | xelatex $<
3 | xelatex $<
4 | mv $*.xelatex.pdf $(BUILDIR)
5 | rm -f $*.xelatex.aux $*.xelatex.log
6 |
--------------------------------------------------------------------------------
/cpp/.dir-locals.el:
--------------------------------------------------------------------------------
1 | (
2 | (c++-mode .
3 | (
4 | (flycheck-clang-include-path . (
5 | "/Users/zaccaria/development/github/native-sgrab-helper/src/cpp"
6 | "/Users/zaccaria/development/github/native-sgrab-helper/node_modules/nan"
7 | "/Users/zaccaria/.node-gyp/0.12.5/include/node"
8 | "/Users/zaccaria/.node-gyp/0.12.5/src"
9 | "/Users/zaccaria/.node-gyp/0.12.5/deps/uv/include"
10 | "/Users/zaccaria/.node-gyp/0.12.5/deps/v8/include"
11 | "/Users/zaccaria/development/github/native-sgrab-helper/src/cpp/CF++/include"
12 | )
13 | )
14 | (flycheck-clang-language-standard . "c++11")
15 | )
16 | )
17 | )
18 |
--------------------------------------------------------------------------------
/cpp/CF++/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | ${PRODUCT_NAME}
17 | CFBundlePackageType
18 | FMWK
19 | CFBundleShortVersionString
20 | 1.0
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 1
25 | NSHumanReadableCopyright
26 | Copyright © 2014 XS-Labs. All rights reserved.
27 | NSPrincipalClass
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/cpp/CoreGraphicsHelpers.hpp:
--------------------------------------------------------------------------------
1 | #include "CF++.h"
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include "OpenCVHelpers.hpp"
10 |
11 | typedef std::pair CGWindowInfo;
12 | typedef std::vector CGWindowInfoList;
13 |
14 | typedef struct {
15 | const char *pointer;
16 | unsigned long size;
17 | unsigned long rows;
18 | unsigned long cols;
19 | CGWindowResizeInfo resizeInfo;
20 | } CGWindowBuffer;
21 |
22 |
23 | #define _wbuf(p, i, m) { p, i, m }
24 | #define _wbuf_getPointer(x) (x.pointer)
25 | #define _wbuf_getSize(x) (x.size)
26 |
27 | std::string getWindowListAsJsonString();
28 |
29 | CGWindowID getWindowID(std::string wname);
30 | CGImageRef getWindowImage(CGWindowID windowId);
31 | CGWindowBuffer getImageAsBufferResized(CGWindowID windowId, unsigned int, unsigned int);
32 | CGWindowBuffer convertImageRefToRGBA(CGImageRef imageRef);
33 |
--------------------------------------------------------------------------------
/cpp/OpenCVHelpers.hpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include "debug.hxx"
5 | #include "cppformat/format.h"
6 |
7 | #ifndef __OPENCV_HELPERS__
8 | #define __OPENCV_HELPERS__
9 |
10 | typedef struct {
11 | unsigned long borderSizeLeft;
12 | unsigned long borderSizeTop;
13 | unsigned long borderSizeRight;
14 | unsigned long borderSizeBottom;
15 | unsigned long innerWidth;
16 | unsigned long innerHeight;
17 | } CGWindowResizeInfo;
18 |
19 | #define white CV_RGB(255,255,255)
20 | #define black CV_RGB(0,0,0)
21 |
22 | #define debugMat(name) debugm(fmt::format("{} ({}x{})", #name, name.cols, name.rows))
23 | #define debugVal(name) debugm(fmt::format("temporary ({})", name))
24 | #define debugShouldEqual(v1,v2) { debugm(fmt::format("{} ~ {}", v1, v2)) ; assert(v1 == v2); }
25 | #define debugShouldGEQ(v1,v2) { printf(fmt::format("{} >= {}", v1, v2)) ; assert(v1 >= v2); }
26 |
27 | extern std::pair pad(cv::Mat & m, float padding);
28 | extern CGWindowResizeInfo resizeKeepAspectRatio(cv::Mat & in, cv::Mat & out);
29 |
30 | #endif
31 |
--------------------------------------------------------------------------------
/cpp/configure.js:
--------------------------------------------------------------------------------
1 | var generateProject = require("diy-build").generateProject;
2 | var uid = require("uid");
3 |
4 | var copts = `\\
5 | -std=c++11 \\
6 | -ICF++/include \\
7 | -I/usr/local/include`;
8 |
9 | var lopts = `\\
10 | -framework AVFoundation \\
11 | -framework CoreServices \\
12 | -framework CoreFoundation \\
13 | -framework CoreGraphics \\
14 | -framework ImageIO \\
15 | -L/usr/local/lib \\
16 | -L/usr/local/Cellar/opencv/2.4.13.2/lib -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_nonfree -lopencv_objdetect -lopencv_ocl -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab`;
17 |
18 | generateProject(function(_) {
19 | "use strict";
20 | _.clang = (src, ...deps) => {
21 | var command = _ => `clang++ -g ${copts} -c ${_.source} -o ${_.product}`;
22 | var product = _ => `${_.source.replace(/\..*/, ".o")}`;
23 | _.compileFiles(...[command, product, src].concat(deps));
24 | };
25 |
26 | _.clangExe = body => {
27 | var command = _ =>
28 | `clang++ -g ${lopts} ${_.sources.join(" ")} -o ${_.product}`;
29 | var product = () => `clang-${uid(4)}.x`;
30 | _.reduceFiles(command, product, body);
31 | };
32 |
33 | _.collect("run", function(_) {
34 | _.cmd("./test.x");
35 | });
36 |
37 | _.collectSeq("all", function(_) {
38 | _.toFile("test.x", _ => {
39 | _.clangExe(_ => {
40 | _.clang("CoreGraphicsHelpers.cpp", "**/*.hpp");
41 | _.clang("OpenCVHelpers.cpp", "**/*.hpp");
42 | _.clang("test.cpp", "**/*.hpp");
43 | _.clang("CF++/**/*.cpp", "**/*.hpp");
44 | _.clang("json11/**/*.cpp", "**/*.hpp");
45 | _.clang("cppformat/**/format.cc", "**/*.h");
46 | });
47 | });
48 | _.cmd("chmod +x test.x");
49 | });
50 | });
51 |
--------------------------------------------------------------------------------
/cpp/cppformat/.gitignore:
--------------------------------------------------------------------------------
1 | /_CPack_Packages
2 | /doc/conf.py
3 | /doc/doxyxml
4 | /doc/html
5 | /Testing
6 | /*-test
7 | /install_manifest.txt
8 | /tinyformat_speed_test
9 | *~
10 | *.a
11 | *.zip
12 | cmake_install.cmake
13 | CPack*Config.cmake
14 | CTestTestfile.cmake
15 | CMakeCache.txt
16 | CMakeFiles
17 | Makefile
18 |
--------------------------------------------------------------------------------
/cpp/cppformat/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "breathe"]
2 | path = breathe
3 | url = git://github.com/vitaut/breathe.git
4 | [submodule "doc/sphinx-bootstrap-theme"]
5 | path = doc/sphinx-bootstrap-theme
6 | url = https://github.com/cppformat/sphinx-bootstrap-theme.git
7 |
--------------------------------------------------------------------------------
/cpp/cppformat/.travis.yml:
--------------------------------------------------------------------------------
1 | language: cpp
2 |
3 | os:
4 | - linux
5 | - osx
6 |
7 | before_install:
8 | - if [ $TRAVIS_OS_NAME == osx ]; then curl http://www.cmake.org/files/v2.8/cmake-2.8.12.2-Darwin64-universal.tar.gz -o cmake.tar.gz; fi
9 | - if [ $TRAVIS_OS_NAME == osx ]; then tar xzf cmake.tar.gz; fi
10 | - if [ $TRAVIS_OS_NAME == osx ]; then export PATH=$PATH:"cmake-2.8.12.2-Darwin64-universal/CMake 2.8-12.app/Contents/bin"; fi
11 | - git submodule update --init
12 |
13 | env:
14 | - BUILD_TYPE=Debug
15 | - BUILD_TYPE=Release
16 |
17 | script:
18 | - cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DFMT_EXTRA_TESTS=ON .
19 | - make -j4
20 | - CTEST_OUTPUT_ON_FAILURE=1 make test
21 |
22 | after_failure:
23 | - cat Testing/Temporary/LastTest.log
24 |
--------------------------------------------------------------------------------
/cpp/cppformat/appveyor.yml:
--------------------------------------------------------------------------------
1 | environment:
2 | CTEST_OUTPUT_ON_FAILURE: 1
3 | matrix:
4 | - Build: msvc
5 | Config: Debug
6 | - Build: msvc
7 | Config: Release
8 | - Build: mingw
9 | Config: Debug
10 | - Build: mingw
11 | Config: Release
12 |
13 | install:
14 | - ps: |
15 | if ($env:Build -eq "mingw") {
16 | # Install MinGW.
17 | $url = "http://sourceforge.net/projects/mingw-w64/files/"
18 | $url += "Toolchains%20targetting%20Win64/Personal%20Builds/"
19 | $url += "mingw-builds/4.9.0/threads-win32/seh/"
20 | $url += "x86_64-4.9.0-release-win32-seh-rt_v3-rev2.7z/download"
21 | Invoke-WebRequest -UserAgent wget -Uri $url -OutFile mingw.7z
22 | &7z x -oC:\ mingw.7z > $null
23 | }
24 | - set PATH=C:\Program Files (x86)\MSBuild\12.0\bin\;%PATH%;C:\mingw64\bin
25 |
26 | before_build:
27 | - ps: |
28 | if ($env:Build -eq "mingw") {
29 | # Remove path to Git bin directory from PATH because it breaks MinGW config.
30 | $env:PATH = $env:PATH -replace "C:\\Program Files \(x86\)\\Git\\bin",""
31 | $generator = "-GMinGW Makefiles"
32 | }
33 | echo "-DCMAKE_BUILD_TYPE=$env:Config"
34 | cmake -DFMT_EXTRA_TESTS=ON "-DCMAKE_BUILD_TYPE=$env:Config" "$generator" .
35 |
36 | build_script:
37 | - ps: |
38 | if ($env:Build -eq "mingw") {
39 | mingw32-make -j4
40 | } else {
41 | msbuild /m:4 /p:Config=$env:Config FORMAT.sln
42 | }
43 |
44 | test_script:
45 | - ps: |
46 | if ($env:Build -eq "mingw") {
47 | mingw32-make test
48 | } else {
49 | msbuild RUN_TESTS.vcxproj
50 | }
51 |
52 | on_failure:
53 | - appveyor PushArtifact Testing/Temporary/LastTest.log
54 | - appveyor AddTest test
55 |
--------------------------------------------------------------------------------
/cpp/cppformat/cmake/FindSetEnv.cmake:
--------------------------------------------------------------------------------
1 | # A CMake script to find SetEnv.cmd.
2 |
3 | find_program(WINSDK_SETENV NAMES SetEnv.cmd
4 | PATHS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows;CurrentInstallFolder]/bin")
5 | if (WINSDK_SETENV AND PRINT_PATH)
6 | execute_process(COMMAND ${CMAKE_COMMAND} -E echo "${WINSDK_SETENV}")
7 | endif ()
8 |
--------------------------------------------------------------------------------
/cpp/cppformat/cmake/run-cmake.bat:
--------------------------------------------------------------------------------
1 | @echo on
2 | rem This scripts configures build environment and runs CMake.
3 | rem Use it instead of running CMake directly when building with
4 | rem the Microsoft SDK toolchain rather than Visual Studio.
5 | rem It is used in the same way as cmake, for example:
6 | rem
7 | rem run-cmake -G "Visual Studio 10 Win64" .
8 |
9 | for /F "delims=" %%i IN ('cmake "-DPRINT_PATH=1" -P %~dp0/FindSetEnv.cmake') DO set setenv=%%i
10 | if NOT "%setenv%" == "" call "%setenv%"
11 | cmake %*
12 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | add_custom_command(OUTPUT html/index.html
2 | COMMAND doxygen
3 | COMMAND rm -rf html
4 | COMMAND sphinx-build -b html . html
5 | DEPENDS ../CMakeLists.txt ../format.h Doxyfile
6 | conf.py index.rst _templates/layout.html)
7 | add_custom_target(doc DEPENDS html/index.html)
8 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/Doxyfile:
--------------------------------------------------------------------------------
1 | PROJECT_NAME = C++ Format
2 | GENERATE_LATEX = NO
3 | GENERATE_MAN = NO
4 | GENERATE_RTF = NO
5 | CASE_SENSE_NAMES = NO
6 | INPUT = ../format.h
7 | QUIET = YES
8 | JAVADOC_AUTOBRIEF = YES
9 | AUTOLINK_SUPPORT = NO
10 | GENERATE_HTML = NO
11 | GENERATE_XML = YES
12 | XML_OUTPUT = doxyxml
13 | ALIASES = "rst=\verbatim embed:rst"
14 | ALIASES += "endrst=\endverbatim"
15 | PREDEFINED = _WIN32=1 \
16 | FMT_NO_DEPRECATED=1 \
17 | FMT_USE_VARIADIC_TEMPLATES=1 \
18 | FMT_USE_RVALUE_REFERENCES=1
19 | EXCLUDE_SYMBOLS = fmt::internal::* BasicArg FormatParser StringValue \
20 | write_str
21 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/_static/breathe.css:
--------------------------------------------------------------------------------
1 |
2 | /* -- breathe specific styles ----------------------------------------------- */
3 |
4 | /* So enum value descriptions are displayed inline to the item */
5 | .breatheenumvalues li tt + p {
6 | display: inline;
7 | }
8 |
9 | /* So parameter descriptions are displayed inline to the item */
10 | .breatheparameterlist li tt + p {
11 | display: inline;
12 | }
13 |
14 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/_static/cppformat.css:
--------------------------------------------------------------------------------
1 | .class dd, .define dd, .function dd {
2 | margin-left: 30px;
3 | }
4 |
5 | .public-func dd {
6 | margin-left: 0px;
7 | }
8 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/_templates/layout.html:
--------------------------------------------------------------------------------
1 | {% extends "!layout.html" %}
2 |
3 | {% block footer %}
4 | {{ super() }}
5 |
6 |
14 | {% endblock %}
15 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/index.rst:
--------------------------------------------------------------------------------
1 | ##########
2 | C++ Format
3 | ##########
4 |
5 | .. toctree::
6 | :maxdepth: 2
7 |
8 | usage
9 | reference
10 | syntax
11 |
--------------------------------------------------------------------------------
/cpp/cppformat/doc/usage.rst:
--------------------------------------------------------------------------------
1 | .. highlight:: c++
2 |
3 | *****
4 | Usage
5 | *****
6 |
7 | To use the C++ Format library, add ``format.h`` and ``format.cc`` from
8 | a `release archive `_
9 | or the `Git repository `_ to your project.
10 |
11 | If you are using Visual C++ with precompiled headers, you might need to add
12 | the line
13 |
14 | ::
15 |
16 | #include "stdafx.h"
17 |
18 | before other includes in ``format.cc``.
19 |
--------------------------------------------------------------------------------
/cpp/cppformat/test/compile-test/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | # Test if compile errors are produced where necessary.
2 |
3 | cmake_minimum_required(VERSION 2.8)
4 |
5 | include(CheckCXXSourceCompiles)
6 | set(CMAKE_REQUIRED_INCLUDES ${CMAKE_CURRENT_SOURCE_DIR}/../..)
7 |
8 | function (expect_compile_error code)
9 | check_cxx_source_compiles("
10 | #include \"format.cc\"
11 | #include \"posix.h\"
12 | int main() {
13 | ${code}
14 | }
15 | " compiles)
16 | set (does_compile ${compiles})
17 | # Unset the CMake cache variable compiles. Otherwise the compile test will
18 | # just use cached information next time it runs.
19 | unset(compiles CACHE)
20 | if (does_compile)
21 | message(FATAL_ERROR "No compile error for: ${code}")
22 | endif ()
23 | endfunction ()
24 |
25 | # MakeArg doesn't accept [const] volatile char *.
26 | expect_compile_error("volatile char s[] = \"test\"; (fmt::internal::MakeArg)(s);")
27 | expect_compile_error("const volatile char s[] = \"test\"; (fmt::internal::MakeArg)(s);")
28 |
29 | # MakeArg doesn't accept wchar_t.
30 | expect_compile_error("fmt::internal::MakeArg(L'a');")
31 | expect_compile_error("fmt::internal::MakeArg(L\"test\");")
32 |
33 | # Writing a wide character to a character stream Writer is forbidden.
34 | expect_compile_error("fmt::Writer() << L'a';")
35 | expect_compile_error("fmt::Writer() << fmt::pad(\"abc\", 5, L' ');")
36 | expect_compile_error("fmt::Writer() << fmt::pad(42, 5, L' ');")
37 |
38 | # Formatting a wide character with a narrow format string is forbidden.
39 | expect_compile_error("fmt::format(\"{}\", L'a';")
40 |
41 | expect_compile_error("FMT_STATIC_ASSERT(0 > 1, \"oops\");")
42 |
--------------------------------------------------------------------------------
/cpp/exportedFunctions.cc:
--------------------------------------------------------------------------------
1 | #include "exportedFunctions.h"
2 | #include "CoreGraphicsHelpers.hpp"
3 |
4 |
5 | #define _c(x) ((x).ToLocalChecked())
6 | #define __js_new(obj) v8::Local obj = Nan::New()
7 | #define __js_sets(obj, name, value) obj->Set(name, value)
8 | #define __js_setn(obj, name, value) obj->Set(name, value)
9 |
10 | #define __js_argAsInt(i) (info[i]->IntegerValue())
11 |
12 |
13 | #define __js_string(o) (Nan::New(o))
14 | #define __js_uint(o) (Nan::New((uint32_t) o))
15 | #define __js_return(x) (info.GetReturnValue().Set((x)))
16 | #define _s(o) __js_string(string(o))
17 | #define _i(o) __js_uint(o)
18 | #define _b(pointer, size) (Nan::CopyBuffer(pointer, size))
19 |
20 | NAN_METHOD(windowList) {
21 | auto ss = _c(__js_string(getWindowListAsJsonString()));
22 | __js_return(ss);
23 | }
24 |
25 | using namespace std;
26 |
27 | NAN_METHOD(getImageBufferResized) {
28 | /* Get parameter */
29 | auto wid = __js_argAsInt(0);
30 | auto width = __js_argAsInt(1);
31 | auto height = __js_argAsInt(2);
32 | auto wb = getImageAsBufferResized(wid, width, height);
33 | __js_new(x);
34 | __js_sets(x, _c(_s("cols")), _i(wb.cols));
35 | __js_sets(x, _c(_s("rows")), _i(wb.rows));
36 | __js_sets(x, _c(_s("buf")), _c(_b(wb.pointer, wb.size)));
37 |
38 | __js_new(d);
39 |
40 | __js_sets(d, _c(_s("borderSizeLeft")), _i(wb.resizeInfo.borderSizeLeft));
41 | __js_sets(d, _c(_s("borderSizeTop")), _i(wb.resizeInfo.borderSizeTop));
42 | __js_sets(d, _c(_s("borderSizeRight")), _i(wb.resizeInfo.borderSizeRight));
43 | __js_sets(d, _c(_s("borderSizeBottom")), _i(wb.resizeInfo.borderSizeBottom));
44 | __js_sets(d, _c(_s("innerWidth")), _i(wb.resizeInfo.innerWidth));
45 | __js_sets(d, _c(_s("innerHeight")), _i(wb.resizeInfo.innerHeight));
46 |
47 | __js_sets(x, _c(_s("resizeInfo")), d);
48 |
49 | __js_return(x);
50 | }
51 |
--------------------------------------------------------------------------------
/cpp/exportedFunctions.h:
--------------------------------------------------------------------------------
1 | #ifndef NATIVE_EXTENSION_GRAB_H
2 | #define NATIVE_EXTENSION_GRAB_H
3 |
4 | #include
5 |
6 | // Example top-level functions. These functions demonstrate how to return various js types.
7 | // Implementations are in functions.cc
8 |
9 | NAN_METHOD(windowList);
10 | NAN_METHOD(getImageBufferResized);
11 |
12 | #endif
13 |
--------------------------------------------------------------------------------
/cpp/json11/.gitignore:
--------------------------------------------------------------------------------
1 | test
2 |
--------------------------------------------------------------------------------
/cpp/json11/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2013 Dropbox, Inc.
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/cpp/json11/Makefile:
--------------------------------------------------------------------------------
1 | test: json11.cpp json11.hpp test.cpp
2 | clang++ -O -std=c++11 -stdlib=libc++ json11.cpp test.cpp -o test -fno-rtti -fno-exceptions
3 |
--------------------------------------------------------------------------------
/cpp/json11/README.md:
--------------------------------------------------------------------------------
1 | json11
2 | ------
3 |
4 | json11 is a tiny JSON library for C++11, providing JSON parsing and serialization.
5 |
6 | The core object provided by the library is json11::Json. A Json object represents any JSON
7 | value: null, bool, number (int or double), string (std::string), array (std::vector), or
8 | object (std::map).
9 |
10 | Json objects act like values. They can be assigned, copied, moved, compared for equality or
11 | order, and so on. There are also helper methods Json::dump, to serialize a Json to a string, and
12 | Json::parse (static) to parse a std::string as a Json object.
13 |
14 | It's easy to make a JSON object with C++11's new initializer syntax:
15 |
16 | Json my_json = Json::object {
17 | { "key1", "value1" },
18 | { "key2", false },
19 | { "key3", Json::array { 1, 2, 3 } },
20 | };
21 | std::string json_str = my_json.dump();
22 |
23 | There are also implicit constructors that allow standard and user-defined types to be
24 | automatically converted to JSON. For example:
25 |
26 | class Point {
27 | public:
28 | int x;
29 | int y;
30 | Point (int x, int y) : x(x), y(y) {}
31 | Json to_json() const { return Json::array { x, y }; }
32 | };
33 |
34 | std::vector points = { { 1, 2 }, { 10, 20 }, { 100, 200 } };
35 | std::string points_json = Json(points).dump();
36 |
37 | JSON values can have their values queried and inspected:
38 |
39 | Json json = Json::array { Json::object { { "k", "v" } } };
40 | std::string str = json[0]["k"].string_value();
41 |
42 | More documentation is still to come. For now, see json11.hpp.
43 |
--------------------------------------------------------------------------------
/cpp/memoryTestXcode/Test/Test.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/cpp/memoryTestXcode/Test/Test.xcodeproj/project.xcworkspace/xcshareddata/Test.xccheckout:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDESourceControlProjectFavoriteDictionaryKey
6 |
7 | IDESourceControlProjectIdentifier
8 | 37A619AA-BAE6-4E3B-9397-F62FC3C94D05
9 | IDESourceControlProjectName
10 | Test
11 | IDESourceControlProjectOriginsDictionary
12 |
13 | 88672A8D0836C6CEFDF99D2EDD72495CC7A45785
14 | https://github.com/vzaccaria/native-sgrab-helper.git
15 |
16 | IDESourceControlProjectPath
17 | src/cpp/memoryTestXcode/Test/Test.xcodeproj
18 | IDESourceControlProjectRelativeInstallPathDictionary
19 |
20 | 88672A8D0836C6CEFDF99D2EDD72495CC7A45785
21 | ../../../../../..
22 |
23 | IDESourceControlProjectURL
24 | https://github.com/vzaccaria/native-sgrab-helper.git
25 | IDESourceControlProjectVersion
26 | 111
27 | IDESourceControlProjectWCCIdentifier
28 | 88672A8D0836C6CEFDF99D2EDD72495CC7A45785
29 | IDESourceControlProjectWCConfigurations
30 |
31 |
32 | IDESourceControlRepositoryExtensionIdentifierKey
33 | public.vcs.git
34 | IDESourceControlWCCIdentifierKey
35 | 88672A8D0836C6CEFDF99D2EDD72495CC7A45785
36 | IDESourceControlWCCName
37 | native-sgrab-helper
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/cpp/memoryTestXcode/Test/Test.xcodeproj/project.xcworkspace/xcuserdata/zaccaria.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/cpp/memoryTestXcode/Test/Test.xcodeproj/project.xcworkspace/xcuserdata/zaccaria.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/cpp/memoryTestXcode/Test/Test.xcodeproj/xcuserdata/zaccaria.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | Test.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 307374791BC80DD40000538D
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/cpp/nativeSgrabHelper.cpp:
--------------------------------------------------------------------------------
1 | #include "exportedFunctions.h"
2 |
3 | using v8::FunctionTemplate;
4 |
5 | // this represents the top level of the module.
6 | // C++ constructs that are exposed to javascript are exported here
7 |
8 | #define __js_expose_fn(name, function) (Nan::Set(target, Nan::New(name).ToLocalChecked(), Nan::GetFunction(Nan::New(function)).ToLocalChecked()));
9 |
10 | NAN_MODULE_INIT(InitAll) {
11 | __js_expose_fn("windowList", windowList);
12 | __js_expose_fn("getImageBufferResized", getImageBufferResized);
13 | }
14 |
15 | NODE_MODULE(nativeSgrabHelper, InitAll)
16 |
--------------------------------------------------------------------------------
/cpp/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "babel-cli": "6.24.1",
4 | "diy-build": "1.0.9",
5 | "uid": "^0.0.2"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/cpp/test.cpp:
--------------------------------------------------------------------------------
1 | #include "CoreGraphicsHelpers.hpp"
2 | #include
3 |
4 |
5 | int main(int argc, char *argv[])
6 | {
7 | printf("%s", getWindowListAsJsonString().c_str());
8 | return 0;
9 | }
10 |
--------------------------------------------------------------------------------
/index.make:
--------------------------------------------------------------------------------
1 | # Use this makefile with: make -I(THISDIRECTORY)
2 |
3 | BUILDIR ?= dist
4 | PROCREGEXP ?=
5 | WATCHOBJECT ?=
6 | WATCHTARGET ?=
7 |
8 | #.SILENT:
9 | #.IGNORE:
10 |
11 |
12 | .DEFAULT_GOAL := all
13 |
14 | # Used to create a directory as a prerequisite of a file
15 | .SECONDEXPANSION:
16 |
17 | mirrorinto = $(patsubst %, $1/%, $2)
18 | collapseinto = $(patsubst %, $1/%, $(notdir $2))
19 |
20 | # Used to create a directory as a prerequisite of a file
21 | %/.f:
22 | mkdir -p $(dir $@)
23 | touch $@
24 |
25 | clean:
26 | rm -rf $(BUILDIR)
27 |
28 |
29 | .phony: watch
30 | watch:
31 | watchman $(WATCHOBJECT) "make $(WATCHTARGET)" &
32 |
33 |
34 | .PHONY: show-procs
35 | show-procs:
36 | @echo 'Processes in PROCREGEXP = $(PROCREGEXP), WATCHOBJECT = $(WATCHOBJECT)'
37 | @echo ' '
38 | $(if $(PROCREGEXP), pgrep -l -f $(PROCREGEXP), @echo "PROCREGEXP not set")
39 | $(if $(WATCHOBJECT), pgrep -l -f ".*watchman.*$(WATCHOBJECT)", @echo "WATCHOBJECT not set")
40 |
41 | .PHONY: kill-procs
42 | kill-procs:
43 | @make show-procs
44 | $(if $(PROCREGEXP), pkill -9 -f $(PROCREGEXP), @echo "PROCREGEXP not set")
45 | $(if $(WATCHOBJECT), pkill -9 -f ".*watchman.*$(WATCHOBJECT)", @echo "WATCHOBJECT not set")
46 |
47 | show: show-procs
48 |
49 | stop: kill-procs
50 |
51 | include build.make
52 |
--------------------------------------------------------------------------------
/semantic/src/definitions/elements/flag.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * # Semantic UI - Flag
3 | * http://github.com/semantic-org/semantic-ui/
4 | *
5 | *
6 | * Copyright 2015 Contributors
7 | * Released under the MIT license
8 | * http://opensource.org/licenses/MIT
9 | *
10 | */
11 |
12 |
13 | /*******************************
14 | Theme
15 | *******************************/
16 |
17 | @type : 'element';
18 | @element : 'flag';
19 |
20 | @import (multiple) '../../theme.config';
21 |
22 |
23 | /*******************************
24 | Flag
25 | *******************************/
26 |
27 | i.flag:not(.icon) {
28 | display: inline-block;
29 |
30 | width: @width;
31 | height: @height;
32 |
33 | line-height: @height;
34 | vertical-align: @verticalAlign;
35 | margin: 0em @margin 0em 0em;
36 |
37 | text-decoration: inherit;
38 |
39 | speak: none;
40 | font-smoothing: antialiased;
41 | backface-visibility: hidden;
42 | }
43 |
44 | /* Sprite */
45 | i.flag:not(.icon):before {
46 | display: inline-block;
47 | content: '';
48 | background: url(@spritePath) no-repeat 0px 0px;
49 | width: @width;
50 | height: @height;
51 | }
52 |
53 | .loadUIOverrides();
--------------------------------------------------------------------------------
/semantic/src/definitions/globals/reset.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * # Semantic UI - Reset
3 | * http://github.com/semantic-org/semantic-ui/
4 | *
5 | *
6 | * Copyright 2015 Contributors
7 | * Released under the MIT license
8 | * http://opensource.org/licenses/MIT
9 | *
10 | */
11 |
12 | /*******************************
13 | Theme
14 | *******************************/
15 |
16 | @type : 'global';
17 | @element : 'reset';
18 |
19 | @import (multiple) '../../theme.config';
20 |
21 | /*******************************
22 | Reset
23 | *******************************/
24 |
25 | /* Border-Box */
26 | *,
27 | *:before,
28 | *:after {
29 | box-sizing: inherit;
30 | }
31 | html {
32 | box-sizing: border-box;
33 | }
34 |
35 | /* iPad Input Shadows */
36 | input[type="text"], input[type="email"], input[type="search"], input[type="password"] {
37 | -webkit-appearance: none;
38 | -moz-appearance: none; /* mobile firefox too! */
39 | }
40 |
41 | .loadUIOverrides();
--------------------------------------------------------------------------------
/semantic/src/definitions/modules/sticky.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * # Semantic UI - Sticky
3 | * http://github.com/semantic-org/semantic-ui/
4 | *
5 | *
6 | * Copyright 2015 Contributors
7 | * Released under the MIT license
8 | * http://opensource.org/licenses/MIT
9 | *
10 | */
11 |
12 |
13 | /*******************************
14 | Theme
15 | *******************************/
16 |
17 | @type : 'module';
18 | @element : 'sticky';
19 |
20 | @import (multiple) '../../theme.config';
21 |
22 | /*******************************
23 | Sticky
24 | *******************************/
25 |
26 | .ui.sticky {
27 | position: static;
28 | transition: @transition;
29 | z-index: @zIndex;
30 | }
31 |
32 | /*******************************
33 | States
34 | *******************************/
35 |
36 | /* Bound */
37 | .ui.sticky.bound {
38 | position: absolute;
39 | left: auto;
40 | right: auto;
41 | }
42 |
43 | /* Fixed */
44 | .ui.sticky.fixed {
45 | position: fixed;
46 | left: auto;
47 | right: auto;
48 | }
49 |
50 | /* Bound/Fixed Position */
51 | .ui.sticky.bound.top,
52 | .ui.sticky.fixed.top {
53 | top: 0px;
54 | bottom: auto;
55 | }
56 | .ui.sticky.bound.bottom,
57 | .ui.sticky.fixed.bottom {
58 | top: auto;
59 | bottom: 0px;
60 | }
61 |
62 |
63 | /*******************************
64 | Types
65 | *******************************/
66 |
67 | .ui.native.sticky {
68 | position: -webkit-sticky;
69 | position: -moz-sticky;
70 | position: -ms-sticky;
71 | position: -o-sticky;
72 | position: sticky;
73 | }
74 |
75 | .loadUIOverrides();
--------------------------------------------------------------------------------
/semantic/src/definitions/modules/transition.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * # Semantic UI - Transition
3 | * http://github.com/semantic-org/semantic-ui/
4 | *
5 | *
6 | * Copyright 2015 Contributors
7 | * Released under the MIT license
8 | * http://opensource.org/licenses/MIT
9 | *
10 | */
11 |
12 |
13 | /*******************************
14 | Theme
15 | *******************************/
16 |
17 | @type : 'module';
18 | @element : 'transition';
19 |
20 | @import (multiple) '../../theme.config';
21 |
22 | /*******************************
23 | Transitions
24 | *******************************/
25 |
26 | .transition {
27 | animation-iteration-count: 1;
28 | animation-duration: @transitionDefaultDuration;
29 | animation-timing-function: @transitionDefaultEasing;
30 | animation-fill-mode: @transitionDefaultFill;
31 | }
32 |
33 | /*******************************
34 | States
35 | *******************************/
36 |
37 |
38 | /* Animating */
39 | .animating.transition {
40 | backface-visibility: @backfaceVisibility;
41 | visibility: visible !important;
42 | }
43 |
44 | /* Loading */
45 | .loading.transition {
46 | position: absolute;
47 | top: -99999px;
48 | left: -99999px;
49 | }
50 |
51 | /* Hidden */
52 | .hidden.transition {
53 | display: none;
54 | visibility: hidden;
55 | }
56 |
57 | /* Visible */
58 | .visible.transition {
59 | display: block !important;
60 | visibility: visible !important;
61 | /* backface-visibility: @backfaceVisibility;
62 | transform: @use3DAcceleration;*/
63 | }
64 |
65 | /* Disabled */
66 | .disabled.transition {
67 | animation-play-state: paused;
68 | }
69 |
70 | /*******************************
71 | Variations
72 | *******************************/
73 |
74 | .looping.transition {
75 | animation-iteration-count: infinite;
76 | }
77 |
78 |
79 | .loadUIOverrides();
--------------------------------------------------------------------------------
/semantic/src/site/collections/breadcrumb.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/breadcrumb.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/form.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/form.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/grid.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/grid.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/menu.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/menu.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/message.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/message.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/table.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/collections/table.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/button.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/button.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/container.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/container.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/divider.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/divider.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/flag.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/flag.variables:
--------------------------------------------------------------------------------
1 | /*-------------------
2 | Flag Variables
3 | --------------------*/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/header.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/header.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/icon.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/icon.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/image.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/image.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/input.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/input.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/label.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/label.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/list.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/list.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/loader.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/loader.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/rail.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/rail.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/reveal.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/reveal.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/segment.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/segment.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/step.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/elements/step.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/globals/reset.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/globals/reset.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Global Variables
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/globals/site.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/globals/site.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Global Variables
3 | *******************************/
--------------------------------------------------------------------------------
/semantic/src/site/modules/accordion.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/accordion.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/chatroom.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/chatroom.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/checkbox.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/checkbox.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/dimmer.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/dimmer.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/dropdown.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/dropdown.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/embed.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/embed.variables:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/site/modules/embed.variables
--------------------------------------------------------------------------------
/semantic/src/site/modules/modal.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/modal.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/nag.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/nag.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/popup.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/popup.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/progress.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/progress.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/rating.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/rating.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/search.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/search.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/shape.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/shape.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/sidebar.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/sidebar.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/sticky.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/sticky.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/tab.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/tab.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/transition.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Site Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/modules/transition.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/ad.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/ad.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/card.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/card.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/comment.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/comment.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/feed.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/feed.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/item.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/item.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/statistic.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/site/views/statistic.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | User Variable Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/basic/assets/fonts/icons.eot
--------------------------------------------------------------------------------
/semantic/src/themes/basic/assets/fonts/icons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/basic/assets/fonts/icons.ttf
--------------------------------------------------------------------------------
/semantic/src/themes/basic/assets/fonts/icons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/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.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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/default/assets/fonts/icons.eot
--------------------------------------------------------------------------------
/semantic/src/themes/default/assets/fonts/icons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/default/assets/fonts/icons.ttf
--------------------------------------------------------------------------------
/semantic/src/themes/default/assets/fonts/icons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/default/assets/fonts/icons.woff
--------------------------------------------------------------------------------
/semantic/src/themes/default/assets/fonts/icons.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/default/assets/fonts/icons.woff2
--------------------------------------------------------------------------------
/semantic/src/themes/default/assets/images/flags.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/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/table.overrides:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/default/collections/table.overrides
--------------------------------------------------------------------------------
/semantic/src/themes/default/elements/button.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Theme Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/themes/default/elements/container.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Theme Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/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/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/chatroom.overrides:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Theme Overrides
3 | *******************************/
4 |
--------------------------------------------------------------------------------
/semantic/src/themes/default/modules/chatroom.variables:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Chatroom
3 | *******************************/
--------------------------------------------------------------------------------
/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/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/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/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/github/assets/fonts/octicons-local.ttf
--------------------------------------------------------------------------------
/semantic/src/themes/github/assets/fonts/octicons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/semantic/src/themes/github/assets/fonts/octicons.ttf
--------------------------------------------------------------------------------
/semantic/src/themes/github/assets/fonts/octicons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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/vzaccaria/teasy/90e76ead73b56b94677ba4138dd0921b4dc4369e/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 |
--------------------------------------------------------------------------------
/semantic/tasks/README.md:
--------------------------------------------------------------------------------
1 | ## Tasks
2 |
3 | * Watch - Compile only changed files from source
4 | * Build - Build all files from source
5 | * Version - Output version number
6 | * Install - Run Installer to Set-up Paths
7 |
8 | ## How to use
9 |
10 | These tasks can be imported into your own gulpfile allowing you to avoid using Semantic's build tools
11 |
12 | ```javascript
13 | var
14 | watch = require('path/to/semantic/tasks/watch')
15 | ;
16 | gulp.task('watch ui', watch);
17 | ```
18 |
--------------------------------------------------------------------------------
/semantic/tasks/admin/publish.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Release All
3 | *******************************/
4 |
5 | /*
6 | This task update all SUI individual component repos with new versions of components
7 |
8 | * Commits changes from create components to GitHub and Tags
9 |
10 | */
11 |
12 | var
13 | runSequence = require('run-sequence')
14 | ;
15 |
16 | /* Release All */
17 | module.exports = function(callback) {
18 |
19 | runSequence(
20 | 'update distributions', // commit less/css versions to github
21 | 'update components', // commit components to github
22 | callback
23 | );
24 |
25 | };
--------------------------------------------------------------------------------
/semantic/tasks/admin/register.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Register PM
3 | *******************************/
4 |
5 | /*
6 | Task to register component repos with Package Managers
7 | * Registers component with bower
8 | * Registers component with NPM
9 | */
10 |
11 | var
12 | // node dependencies
13 | process = require('child_process'),
14 |
15 | // config
16 | release = require('../config/admin/release'),
17 |
18 | // register components and distributions
19 | repos = release.distributions.concat(release.components),
20 | total = repos.length,
21 | index = -1,
22 |
23 | stream,
24 | stepRepo
25 | ;
26 |
27 | module.exports = function(callback) {
28 |
29 | console.log('Registering repos with package managers');
30 |
31 | // Do Git commands synchronously per component, to avoid issues
32 | stepRepo = function() {
33 | index = index + 1;
34 | if(index >= total) {
35 | callback();
36 | return;
37 | }
38 | var
39 | repo = repos[index].toLowerCase(),
40 | outputDirectory = release.outputRoot + repo + '/',
41 | exec = process.exec,
42 | execSettings = {cwd: outputDirectory},
43 | updateNPM = 'npm publish'
44 | ;
45 |
46 | /* Register with NPM */
47 | exec(updateNPM, execSettings, function(err, stdout, stderr) {
48 | console.log(err, stdout, stderr);
49 | stepRepo();
50 | });
51 |
52 | };
53 | stepRepo();
54 | };
55 |
56 |
--------------------------------------------------------------------------------
/semantic/tasks/admin/release.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Release
3 | *******************************/
4 |
5 | /*
6 | This task update all SUI individual component repos with new versions of components
7 |
8 | * Initializes repositories with current versions
9 | * Creates local files at ../distributions/ with each repo for release
10 |
11 | */
12 |
13 | var
14 | runSequence = require('run-sequence')
15 | ;
16 |
17 | /* Release All */
18 | module.exports = function(callback) {
19 |
20 | runSequence(
21 | //'build', // build Semantic
22 | 'init distributions', // sync with current github version
23 | 'create distributions', // update each repo with changes from master repo
24 | 'init components', // sync with current github version
25 | 'create components', // update each repo
26 | callback
27 | );
28 |
29 | };
--------------------------------------------------------------------------------
/semantic/tasks/build.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Build Task
3 | *******************************/
4 |
5 | var
6 | // dependencies
7 | gulp = require('gulp-help')(require('gulp')),
8 | runSequence = require('run-sequence'),
9 |
10 | // config
11 | config = require('./config/user'),
12 | install = require('./config/project/install'),
13 |
14 | // task sequence
15 | tasks = []
16 | ;
17 |
18 |
19 | // sub-tasks
20 | if(config.rtl) {
21 | require('./collections/rtl')(gulp);
22 | }
23 | require('./collections/build')(gulp);
24 |
25 |
26 | module.exports = function(callback) {
27 |
28 | console.info('Building Semantic');
29 |
30 | if( !install.isSetup() ) {
31 | console.error('Cannot find semantic.json. Run "gulp install" to set-up Semantic');
32 | return;
33 | }
34 |
35 | // check for right-to-left (RTL) language
36 | if(config.rtl === true || config.rtl === 'Yes') {
37 | gulp.start('build-rtl');
38 | return;
39 | }
40 |
41 | if(config.rtl == 'both') {
42 | tasks.push('build-rtl');
43 | }
44 |
45 | tasks.push('build-javascript');
46 | tasks.push('build-css');
47 | tasks.push('build-assets');
48 |
49 | runSequence(tasks, callback);
50 | };
51 |
--------------------------------------------------------------------------------
/semantic/tasks/check-install.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Check Install
3 | *******************************/
4 |
5 | var
6 | // node dependencies
7 | gulp = require('gulp'),
8 | fs = require('fs'),
9 | console = require('better-console'),
10 | install = require('./config/project/install')
11 | ;
12 |
13 | // export task
14 | module.exports = function() {
15 |
16 | setTimeout(function() {
17 | if( !install.isSetup() ) {
18 | console.log('Starting install...');
19 | gulp.start('install');
20 | return;
21 | }
22 | else {
23 | gulp.start('watch');
24 | }
25 | }, 50); // Delay to allow console.clear to remove messages from check event
26 |
27 |
28 | };
--------------------------------------------------------------------------------
/semantic/tasks/clean.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Clean Task
3 | *******************************/
4 |
5 | var
6 | del = require('del'),
7 | config = require('./config/user'),
8 | tasks = require('./config/tasks')
9 | ;
10 |
11 | // cleans distribution files
12 | module.exports = function(callback) {
13 | return del([config.paths.clean], tasks.settings.del, callback);
14 | };
--------------------------------------------------------------------------------
/semantic/tasks/collections/README.md:
--------------------------------------------------------------------------------
1 | ## How to use
2 |
3 | These are collections of tasks that are imported together.
4 |
5 | To import them into gulp:
6 | ```javascript
7 | var
8 | gulp = require('gulp'),
9 | // modified to point to semantic folder
10 | install = require('tasks/collections/install')
11 | ;
12 | gulp = install(gulp);
13 |
14 | // tasks are now injected and ready to be used
15 | gulp.start('install');
16 | ```
--------------------------------------------------------------------------------
/semantic/tasks/collections/admin.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Admin Task Collection
3 | *******************************/
4 |
5 | /*
6 | This are tasks to be run by project maintainers
7 | - Creating Component Repos
8 | - Syncing with GitHub via APIs
9 | - Modifying package files
10 | */
11 |
12 | /*******************************
13 | Tasks
14 | *******************************/
15 |
16 |
17 | module.exports = function(gulp) {
18 | var
19 | // less/css distributions
20 | initComponents = require('../admin/components/init'),
21 | createComponents = require('../admin/components/create'),
22 | updateComponents = require('../admin/components/update'),
23 |
24 | // single component releases
25 | initDistributions = require('../admin/distributions/init'),
26 | createDistributions = require('../admin/distributions/create'),
27 | updateDistributions = require('../admin/distributions/update'),
28 |
29 | release = require('../admin/release'),
30 | publish = require('../admin/publish'),
31 | register = require('../admin/register')
32 | ;
33 |
34 | /* Release */
35 | gulp.task('init distributions', 'Grabs each component from GitHub', initDistributions);
36 | gulp.task('create distributions', 'Updates files in each repo', createDistributions);
37 | gulp.task('init components', 'Grabs each component from GitHub', initComponents);
38 | gulp.task('create components', 'Updates files in each repo', createComponents);
39 |
40 | /* Publish */
41 | gulp.task('update distributions', 'Commits component updates from create to GitHub', updateDistributions);
42 | gulp.task('update components', 'Commits component updates from create to GitHub', updateComponents);
43 |
44 | /* Tasks */
45 | gulp.task('release', 'Stages changes in GitHub repos for all distributions', release);
46 | gulp.task('publish', 'Publishes all releases (components, package)', publish);
47 | gulp.task('register', 'Registers all packages with NPM', register);
48 |
49 | };
--------------------------------------------------------------------------------
/semantic/tasks/collections/build.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Define Sub-Tasks
3 | *******************************/
4 |
5 | module.exports = function(gulp) {
6 |
7 | var
8 | // build sub-tasks
9 | buildJS = require('./../build/javascript'),
10 | buildCSS = require('./../build/css'),
11 | buildAssets = require('./../build/assets')
12 | ;
13 |
14 | // in case these tasks are undefined during import, less make sure these are available in scope
15 | gulp.task('build-javascript', 'Builds all javascript from source', buildJS);
16 | gulp.task('build-css', 'Builds all css from source', buildCSS);
17 | gulp.task('build-assets', 'Copies all assets from source', buildAssets);
18 |
19 | };
20 |
--------------------------------------------------------------------------------
/semantic/tasks/collections/rtl.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Define Sub-Tasks
3 | *******************************/
4 |
5 | module.exports = function(gulp) {
6 |
7 | var
8 | // rtl
9 | buildRTL = require('./../rtl/build'),
10 | watchRTL = require('./../rtl/watch')
11 | ;
12 |
13 | gulp.task('watch-rtl', 'Build all files as RTL', watchRTL);
14 | gulp.task('build-rtl', 'Watch files as RTL ', buildRTL);
15 |
16 | };
17 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/github.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | GitHub Login
3 | *******************************/
4 | /*
5 | Logs into GitHub using OAuth
6 | */
7 |
8 | var
9 | fs = require('fs'),
10 | path = require('path'),
11 | githubAPI = require('github'),
12 |
13 | // stores oauth info for GitHub API
14 | oAuthConfig = path.join(__dirname, 'oauth.js'),
15 | oAuth = fs.existsSync(oAuthConfig)
16 | ? require(oAuthConfig)
17 | : false,
18 | github
19 | ;
20 |
21 | if(!oAuth) {
22 | console.log('here');
23 | console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
24 | }
25 |
26 | github = new githubAPI({
27 | version : '3.0.0',
28 | debug : true,
29 | protocol : 'https',
30 | timeout : 5000
31 | });
32 |
33 | github.authenticate({
34 | type: 'oauth',
35 | token: oAuth.token
36 | });
37 |
38 | module.exports = github;
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/oauth.example.js:
--------------------------------------------------------------------------------
1 | /*
2 | Used to import GitHub Auth Token
3 | To Automate GitHub Updates
4 | */
5 |
6 | module.exports = {
7 | token : 'AN-OAUTH2-TOKEN',
8 | name : 'Your Name',
9 | email : 'user@email.com'
10 | };
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/README.md:
--------------------------------------------------------------------------------
1 | # Semantic {Component}
2 |
3 | This repository contains pre-compiled {component} files using the default themes. This is intended for use in projects that do not need all the bells and whistles of Semantic UI, and want to keep file size to a minimum.
4 |
5 | For the latest changes please see the [Release Notes](https://github.com/Semantic-Org/UI-{Component}/blob/master/RELEASE-NOTES.md)
6 |
7 | **Special Note**
8 | An update in `2.0.8` has fixed an issue which may have prevented some single component modules from working correctly. Please see notes in [this pull request](https://github.com/Semantic-Org/Semantic-UI/pull/2816).
9 |
10 | If you're looking for the full version of Semantic including all components and build tools [check out the main project repository](https://github.com/Semantic-Org/Semantic-UI/tree/1.0)
11 |
12 | #### To install with Bower
13 | ```
14 | bower install semantic-ui-{component}
15 | ```
16 |
17 | #### To install with NPM
18 | ```
19 | npm install semantic-ui-{component}
20 | ```
21 |
22 | #### To install with Meteor
23 | ```
24 | meteor add semantic:ui-{component}
25 | ```
26 |
27 |
28 | ## Addendum
29 |
30 | This element's definitions (required class names, html structures) are available in the [UI Docs](http://www.semantic-ui.com)
31 |
32 | Please consider checking out [all the benefits to theming](http://www.learnsemantic.com/guide/expert.html) before using these stand-alone releases.
33 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "Component",
3 | "description" : "Component distribution",
4 | "homepage" : "http://www.semantic-ui.com",
5 | "author": {
6 | "name" : "Jack Lukic",
7 | "web" : "http://www.jacklukic.com"
8 | },
9 | "ignore": [
10 | "./index.js"
11 | ],
12 | "keywords": [
13 | "semantic",
14 | "ui",
15 | "css3",
16 | "framework"
17 | ],
18 | "license" : [
19 | "http://semantic-ui.mit-license.org/"
20 | ],
21 | "ignore": [
22 | "docs",
23 | "node",
24 | "server",
25 | "spec",
26 | "src",
27 | "test"
28 | ]
29 | }
30 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/component-package.js:
--------------------------------------------------------------------------------
1 |
2 | Package.describe({
3 | name : 'semantic:ui-{component}',
4 | summary : 'Semantic UI - {Component}: Single component release',
5 | version : '{version}',
6 | git : 'git://github.com/Semantic-Org/UI-{Component}.git',
7 | });
8 |
9 | Package.onUse(function(api) {
10 | api.versionsFrom('1.0');
11 | api.addFiles([
12 | {files}
13 | ], 'client');
14 | });
15 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "semantic/ui",
3 | "description" : "Semantic empowers designers and developers by creating a shared vocabulary for UI.",
4 | "homepage" : "http://www.semantic-ui.com",
5 | "authors": [
6 | {
7 | "name" : "Jack Lukic",
8 | "email": "jacklukic@gmail.com",
9 | "web" : "http://www.jacklukic.com",
10 | "role" : "Creator"
11 | }
12 | ],
13 | "keywords": [
14 | "semantic",
15 | "ui",
16 | "css",
17 | "framework"
18 | ],
19 | "license" : "MIT"
20 | }
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/css-package.js:
--------------------------------------------------------------------------------
1 | var
2 | where = 'client' // Adds files only to the client
3 | ;
4 |
5 | Package.describe({
6 | name : 'semantic:ui-css',
7 | summary : 'Semantic UI - CSS Release of Semantic UI',
8 | version : '{version}',
9 | git : 'git://github.com/Semantic-Org/Semantic-UI-CSS.git',
10 | });
11 |
12 | Package.onUse(function(api) {
13 |
14 | api.versionsFrom('1.0');
15 |
16 | api.use('jquery', 'client');
17 |
18 | api.addFiles([
19 | // icons
20 | 'themes/default/assets/fonts/icons.eot',
21 | 'themes/default/assets/fonts/icons.svg',
22 | 'themes/default/assets/fonts/icons.ttf',
23 | 'themes/default/assets/fonts/icons.woff',
24 | 'themes/default/assets/fonts/icons.woff2',
25 |
26 | // flags
27 | 'themes/default/assets/images/flags.png',
28 |
29 | // release
30 | 'semantic.css',
31 | 'semantic.js'
32 | ], 'client');
33 |
34 | });
35 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/less-package.js:
--------------------------------------------------------------------------------
1 | var
2 | where = 'client' // Adds files only to the client
3 | ;
4 |
5 | Package.describe({
6 | name : 'semantic:ui',
7 | summary : 'Semantic UI - LESS Release of Semantic UI',
8 | version : '{version}',
9 | git : 'git://github.com/Semantic-Org/Semantic-UI-LESS.git',
10 | });
11 |
12 | Package.onUse(function(api) {
13 |
14 | api.versionsFrom('1.0');
15 | api.use('less', 'client');
16 |
17 | api.addFiles([
18 | {files}
19 | ], 'client');
20 |
21 | });
22 |
--------------------------------------------------------------------------------
/semantic/tasks/config/admin/templates/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "semantic",
3 | "version": "1.0.0",
4 | "title": "Semantic UI",
5 | "description": "Semantic empowers designers and developers by creating a shared vocabulary for UI.",
6 | "homepage": "http://www.semantic-ui.com",
7 | "author": "Jack Lukic ",
8 | "license": "MIT",
9 | "repository": {
10 | "type": "git",
11 | "url": "git://github.com/Semantic-Org/Semantic-UI.git"
12 | },
13 | "bugs": {
14 | "url": "https://github.com/Semantic-Org/Semantic-UI/issues"
15 | },
16 | "devDependencies": {}
17 | }
18 |
--------------------------------------------------------------------------------
/semantic/tasks/config/docs.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Docs
3 | *******************************/
4 |
5 | /* Paths used for "serve-docs" and "build-docs" tasks */
6 | module.exports = {
7 | base: '',
8 | globs: {
9 | eco: '**/*.html.eco'
10 | },
11 | paths: {
12 | clean: '../docs/out/dist/',
13 | source: {
14 | config : 'src/theme.config',
15 | definitions : 'src/definitions/',
16 | site : 'src/site/',
17 | themes : 'src/themes/'
18 | },
19 | output: {
20 | examples : '../docs/out/examples/',
21 | less : '../docs/out/src/',
22 | metadata : '../docs/out/',
23 | packaged : '../docs/out/dist/',
24 | uncompressed : '../docs/out/dist/components/',
25 | compressed : '../docs/out/dist/components/',
26 | themes : '../docs/out/dist/themes/'
27 | },
28 | template: {
29 | eco: '../docs/server/documents/'
30 | },
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/semantic/tasks/config/project/release.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Release Config
3 | *******************************/
4 |
5 | var
6 | requireDotFile = require('require-dot-file'),
7 | config,
8 | npmPackage,
9 | version
10 | ;
11 |
12 |
13 | /*******************************
14 | Derived Values
15 | *******************************/
16 |
17 | try {
18 | config = requireDotFile('semantic.json');
19 | }
20 | catch(error) {}
21 |
22 |
23 | try {
24 | npmPackage = require('../../../package.json');
25 | }
26 | catch(error) {
27 | // generate fake package
28 | npmPackage = {
29 | name: 'Unknown',
30 | version: 'x.x'
31 | };
32 | }
33 |
34 | // looks for version in config or package.json (whichever is available)
35 | version = (npmPackage && npmPackage.version !== undefined && npmPackage.name == 'semantic-ui')
36 | ? npmPackage.version
37 | : config.version
38 | ;
39 |
40 |
41 | /*******************************
42 | Export
43 | *******************************/
44 |
45 | module.exports = {
46 |
47 | title : 'Semantic UI',
48 | repository : 'https://github.com/Semantic-Org/Semantic-UI',
49 | url : 'http://www.semantic-ui.com/',
50 |
51 | banner: ''
52 | + ' /*' + '\n'
53 | + ' * # <%= title %> - <%= version %>' + '\n'
54 | + ' * <%= repository %>' + '\n'
55 | + ' * <%= url %>' + '\n'
56 | + ' *' + '\n'
57 | + ' * Copyright 2014 Contributors' + '\n'
58 | + ' * Released under the MIT license' + '\n'
59 | + ' * http://opensource.org/licenses/MIT' + '\n'
60 | + ' *' + '\n'
61 | + ' */' + '\n',
62 |
63 | version : version
64 |
65 | };
66 |
--------------------------------------------------------------------------------
/semantic/tasks/config/user.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Set-up
3 | *******************************/
4 |
5 | var
6 | // npm dependencies
7 | extend = require('extend'),
8 | fs = require('fs'),
9 | path = require('path'),
10 | requireDotFile = require('require-dot-file'),
11 |
12 | // semantic.json defaults
13 | defaults = require('./defaults'),
14 | config = require('./project/config'),
15 |
16 | // Final config object
17 | gulpConfig = {},
18 |
19 | // semantic.json settings
20 | userConfig
21 |
22 | ;
23 |
24 |
25 | /*******************************
26 | User Config
27 | *******************************/
28 |
29 | try {
30 | // looks for config file across all parent directories
31 | userConfig = requireDotFile('semantic.json');
32 | }
33 | catch(error) {
34 | if(error.code === 'MODULE_NOT_FOUND') {
35 | console.error('No semantic.json config found');
36 | }
37 | }
38 |
39 | // extend user config with defaults
40 | gulpConfig = (!userConfig)
41 | ? extend(true, {}, defaults)
42 | : extend(false, {}, defaults, userConfig)
43 | ;
44 |
45 | /*******************************
46 | Add Derived Values
47 | *******************************/
48 |
49 | // adds calculated values
50 | config.addDerivedValues(gulpConfig);
51 |
52 |
53 | /*******************************
54 | Export
55 | *******************************/
56 |
57 | module.exports = gulpConfig;
58 |
59 |
--------------------------------------------------------------------------------
/semantic/tasks/version.js:
--------------------------------------------------------------------------------
1 | /*******************************
2 | Version Task
3 | *******************************/
4 |
5 | var
6 | release = require('./config/project/release')
7 | ;
8 |
9 | module.exports = function(callback) {
10 | console.log(release.title + ' ' + release.version);
11 | };
--------------------------------------------------------------------------------
/test/example.js:
--------------------------------------------------------------------------------
1 | /* eslint func-names: 0, no-unused-vars: 0 */
2 | var expect = require('chai').expect;
3 |
4 |
5 | describe('description', function() {
6 | it('description', function() {
7 | // body...
8 | });
9 | });
10 |
--------------------------------------------------------------------------------
/webpack/webpack-dev-server.config.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./make-webpack-config')({
2 | devServer: true,
3 | devtool: 'eval',
4 | debug: true
5 | });
6 |
--------------------------------------------------------------------------------
/webpack/webpack-hot-dev-server.config.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./make-webpack-config')({
2 | devServer: true,
3 | hotComponents: true,
4 | separateStylesheet: true,
5 | devtool: 'eval',
6 | debug: true
7 | });
8 |
--------------------------------------------------------------------------------
/webpack/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./make-webpack-config')({});
2 |
3 |
4 |
--------------------------------------------------------------------------------
/webpack/webpack.config.production.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./make-webpack-config')({
2 | // commonsChunk: true,
3 | longTermCaching: true,
4 | separateStylesheet: true,
5 | minimize: true
6 | // devtool: 'source-map'
7 | });
8 |
--------------------------------------------------------------------------------