├── .browserslistrc ├── .gitignore ├── LICENSE ├── README.md ├── babel.config.js ├── build └── rollup.config.js ├── dev ├── serve.js └── serve.vue ├── package-lock.json ├── package.json ├── src ├── entry.esm.js ├── entry.js ├── index.css ├── input.css └── lib-components │ ├── Alert │ ├── Style.json │ └── TAlert.vue │ ├── Button │ ├── Button.md │ ├── Style.json │ └── TButton.vue │ ├── ContentCard │ ├── Style.json │ └── TContentCard.vue │ ├── GlobalStyles.json │ ├── Icons │ ├── ChevronDownIcon.vue │ ├── CircleCheckIcon.vue │ ├── CircleExclamationIcon.vue │ ├── CircleMinusIcon.vue │ ├── CircleXMark.vue │ ├── ExpandIcon.vue │ ├── MinimizeIcon.vue │ ├── TrashIcon.vue │ └── XMarkIcon.vue │ ├── Input │ ├── Style.json │ ├── TCheckboxInput.vue │ ├── TInputGroup.vue │ ├── TRadioButtonInput.vue │ ├── TSelectInput.vue │ ├── TSwitchInput.vue │ ├── TTextAreaInput.vue │ └── TTextInput.vue │ ├── LoadingAnimation │ └── TCircleLoadingAnimation.vue │ ├── Modal │ └── TModal.vue │ └── index.js └── tailwind.config.js /.browserslistrc: -------------------------------------------------------------------------------- 1 | current node 2 | last 2 versions and > 2% 3 | ie > 10 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | /dist/ 4 | 5 | # local env files 6 | .env.local 7 | .env.*.local 8 | 9 | # Log files 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | 14 | # Editor directories and files 15 | .idea 16 | .vscode 17 | *.suo 18 | *.ntvs* 19 | *.njsproj 20 | *.sln 21 | *.sw* 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Sinan AYDOĞAN 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. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # TailAdmin UI Kit 2 | 3 | UI components library by VueJS and TailwindCSS. 4 | 5 |

6 | 7 | 8 |

9 |

10 | 11 | 12 | 13 | 14 | 15 |

16 | 17 |

18 | 19 | 20 | 21 |

22 | 23 |

24 | 25 | 26 | 27 |

28 | 29 | ## Installation 30 | 31 | Use the package manager [npm](https://docs.npmjs.com/cli/v6/commands/npm-install) to install TailAdmin UI Kit. 32 | 33 | ## Usage 34 | 35 | Please follow my [YouTube channel](https://www.youtube.com/playlist?list=PLbdS49WKsrOXTo_X_Ja6P3zll1yyhoIYN) for usages. 36 | 37 | ```bash 38 | npm install tailadmin-ui-kit 39 | ``` 40 | 41 | 42 | ```javascript 43 | // Import a component if you want to use in script block 44 | import { TSwitchInput } from "tailadmin-ui-kit" 45 | import {defineComponent} from 'vue'; 46 | 47 | export default defineComponent({ 48 | name: 'Products', 49 | components: {TSwitchInput}, 50 | setup() { 51 | const form = ref({ 52 | name: '', 53 | status: false 54 | }) 55 | 56 | return { 57 | form 58 | } 59 | } 60 | }); 61 | ``` 62 | 63 | ```html 64 | 65 | 66 | ``` 67 | 68 | ## :rocket: Components 69 | - [Alert](https://youtu.be/BoGcU6olNsg) 70 | - [Button](https://youtu.be/A42a0Tcls5s) 71 | - [Content Card](https://youtu.be/NuYh3Dl7oXc)🚀 72 | - [Modal with Notification feature](https://youtu.be/iCJOApZVwQQ) 73 | - Form & Input Components 74 | - [Input Group](https://youtu.be/EanH8XQNMU8) 75 | - [Text Input](https://youtu.be/EanH8XQNMU8) 76 | - [Text Area Input](https://youtu.be/cCQSoqIfJMM) 77 | - [Switch Input](https://youtu.be/a5RpQl2cnEs) 78 | - [Select Input](https://youtu.be/nJ4bQjdvxPM) 79 | 80 | > :telescope: Other components coming soon, please check [Github](https://github.com/sinan-aydogan/tailadmin-ui-kit) 81 | 82 | ## Help 83 | 84 | If you need to help more than this documentation: 85 | - You can join our [Discord Channel](https://discord.gg/TnjA2GqYmw) then ask your questions 86 | 87 | ## Contributing 88 | 89 | Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. 90 | 91 | Please make sure to update tests as appropriate. 92 | 93 | ## License 94 | 95 | The TailAdmin is open-sourced software licensed under the [MIT](https://opensource.org/licenses/MIT) license. 96 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | const devPresets = ['@vue/babel-preset-app']; 2 | const buildPresets = [ 3 | [ 4 | '@babel/preset-env', 5 | // Config for @babel/preset-env 6 | { 7 | // Example: Always transpile optional chaining/nullish coalescing 8 | // include: [ 9 | // /(optional-chaining|nullish-coalescing)/ 10 | // ], 11 | }, 12 | ], 13 | ]; 14 | module.exports = { 15 | presets: (process.env.NODE_ENV === 'development' ? devPresets : buildPresets), 16 | }; 17 | -------------------------------------------------------------------------------- /build/rollup.config.js: -------------------------------------------------------------------------------- 1 | // rollup.config.js 2 | import fs from 'fs'; 3 | import path from 'path'; 4 | import vue from 'rollup-plugin-vue'; 5 | import alias from '@rollup/plugin-alias'; 6 | import commonjs from '@rollup/plugin-commonjs'; 7 | import resolve from '@rollup/plugin-node-resolve'; 8 | import replace from '@rollup/plugin-replace'; 9 | import babel from '@rollup/plugin-babel'; 10 | import PostCSS from 'rollup-plugin-postcss'; 11 | import { terser } from 'rollup-plugin-terser'; 12 | import minimist from 'minimist'; 13 | import json from "@rollup/plugin-json"; 14 | import styles from "rollup-plugin-styles"; 15 | 16 | // Get browserslist config and remove ie from es build targets 17 | const esbrowserslist = fs.readFileSync('./.browserslistrc') 18 | .toString() 19 | .split('\n') 20 | .filter((entry) => entry && entry.substring(0, 2) !== 'ie'); 21 | 22 | // Extract babel preset-env config, to combine with esbrowserslist 23 | const babelPresetEnvConfig = require('../babel.config') 24 | .presets.filter((entry) => entry[0] === '@babel/preset-env')[0][1]; 25 | 26 | const argv = minimist(process.argv.slice(2)); 27 | 28 | const projectRoot = path.resolve(__dirname, '..'); 29 | 30 | const baseConfig = { 31 | input: 'src/entry.js', 32 | plugins: { 33 | preVue: [ 34 | alias({ 35 | entries: [ 36 | { 37 | find: '@', 38 | replacement: `${path.resolve(projectRoot, 'src')}`, 39 | }, 40 | ], 41 | }), 42 | ], 43 | replace: { 44 | 'process.env.NODE_ENV': JSON.stringify('production'), 45 | }, 46 | vue: { 47 | }, 48 | postVue: [ 49 | resolve({ 50 | extensions: ['.js', '.jsx', '.ts', '.tsx', '.vue'], 51 | }), 52 | // Process only ` 56 | 57 | 105 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tailadmin-ui-kit", 3 | "author": "Sinan AYDOĞAN", 4 | "version": "1.0.23", 5 | "description": "VueJS UI Kit for Admin Panels", 6 | "license": "MIT", 7 | "main": "dist/tailadmin-ui-kit.ssr.js", 8 | "browser": "dist/tailadmin-ui-kit.esm.js", 9 | "module": "dist/tailadmin-ui-kit.esm.js", 10 | "unpkg": "dist/tailadmin-ui-kit.min.js", 11 | "style": "src/index.css", 12 | "repository": { 13 | "type": "git", 14 | "url": "git+https://github.com/sinan-aydogan/tailadmin-ui-kit.git" 15 | }, 16 | "funding": [ 17 | { 18 | "type": "github", 19 | "url": "https://github.com/sponsors/sinan-aydogan" 20 | }, 21 | { 22 | "type": "kofi", 23 | "url": "https://ko-fi.com/sinanaydogan" 24 | } 25 | ], 26 | "keywords": [ 27 | "css", 28 | "tailwindcss", 29 | "tailwind components", 30 | "vuejs", 31 | "component", 32 | "ui", 33 | "ui kit", 34 | "vue component", 35 | "table component", 36 | "button component", 37 | "avatar component", 38 | "tailwindcss-ui-kit", 39 | "vue-ui-kit", 40 | "responsive", 41 | "tailadmin", 42 | "front-end", 43 | "web", 44 | "opensource", 45 | "form component", 46 | "text input", 47 | "text area", 48 | "select component", 49 | "select input", 50 | "vue select", 51 | "switch component", 52 | "modal component", 53 | "content card", 54 | "showcase" 55 | ], 56 | "files": [ 57 | "dist/*", 58 | "src/**/*.vue", 59 | "src/*.css" 60 | ], 61 | "sideEffects": true, 62 | "scripts": { 63 | "serve": "vue-cli-service serve dev/serve.js", 64 | "prebuild": "rimraf ./dist", 65 | "build": "cross-env NODE_ENV=production rollup --config build/rollup.config.js", 66 | "build:ssr": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format cjs", 67 | "build:es": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format es", 68 | "build:unpkg": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format iife" 69 | }, 70 | "devDependencies": { 71 | "@babel/core": "^7.14.6", 72 | "@babel/preset-env": "^7.14.7", 73 | "@rollup/plugin-alias": "^3.1.2", 74 | "@rollup/plugin-babel": "^5.3.0", 75 | "@rollup/plugin-commonjs": "^14.0.0", 76 | "@rollup/plugin-node-resolve": "^9.0.0", 77 | "@rollup/plugin-replace": "^2.4.2", 78 | "@vue/cli-plugin-babel": "^4.5.13", 79 | "@vue/cli-service": "^4.5.13", 80 | "@vue/compiler-sfc": "^3.0.11", 81 | "cross-env": "^7.0.3", 82 | "minimist": "^1.2.5", 83 | "or": "^0.2.0", 84 | "postcss": "^8.2.10", 85 | "prettier": "^2.6.2", 86 | "rimraf": "^3.0.2", 87 | "rollup": "^2.52.8", 88 | "rollup-plugin-postcss": "^4.0.0", 89 | "rollup-plugin-styles": "^4.0.0", 90 | "rollup-plugin-terser": "^7.0.2", 91 | "rollup-plugin-vue": "^6.0.0", 92 | "tailwindcss": "^3.0.24", 93 | "vue": "^3.0.5" 94 | }, 95 | "peerDependencies": { 96 | "vue": "^3.0.5" 97 | }, 98 | "engines": { 99 | "node": ">=12" 100 | }, 101 | "dependencies": { 102 | "@rollup/plugin-json": "^4.1.0", 103 | "@tailwindcss/aspect-ratio": "^0.4.0", 104 | "@vueuse/core": "^8.3.1", 105 | "lodash": "^4.17.21", 106 | "vuedraggable": "^4.1.0" 107 | } 108 | } 109 | -------------------------------------------------------------------------------- /src/entry.esm.js: -------------------------------------------------------------------------------- 1 | 2 | // Import vue components 3 | import * as components from '@/lib-components/index'; 4 | 5 | // install function executed by Vue.use() 6 | const install = function installTailadminUiKit(app) { 7 | Object.entries(components).forEach(([componentName, component]) => { 8 | app.component(componentName, component); 9 | }); 10 | }; 11 | 12 | // Create module definition for Vue.use() 13 | export default install; 14 | 15 | // To allow individual component use, export components 16 | // each can be registered via Vue.component() 17 | export * from '@/lib-components/index'; 18 | -------------------------------------------------------------------------------- /src/entry.js: -------------------------------------------------------------------------------- 1 | // iife/cjs usage extends esm default export - so import it all 2 | import plugin, * as components from '@/entry.esm'; 3 | import "./index.css" 4 | 5 | // Attach named exports directly to plugin. IIFE/CJS will 6 | // only expose one global var, with component exports exposed as properties of 7 | // that global var (eg. plugin.component) 8 | Object.entries(components).forEach(([componentName, component]) => { 9 | if (componentName !== 'default') { 10 | plugin[componentName] = component; 11 | } 12 | }); 13 | 14 | export default plugin; 15 | -------------------------------------------------------------------------------- /src/input.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss/base"; 2 | @import "tailwindcss/components"; 3 | @import "tailwindcss/utilities"; -------------------------------------------------------------------------------- /src/lib-components/Alert/Style.json: -------------------------------------------------------------------------------- 1 | { 2 | "filled": { 3 | "base": "text-white py-1 px-4", 4 | "slate": { 5 | "container": "bg-slate-500", 6 | "cdLine": "bg-slate-700" 7 | }, 8 | "gray": { 9 | "container": "bg-gray-500", 10 | "cdLine": "bg-gray-700" 11 | }, 12 | "zinc": { 13 | "container": "bg-zinc-500", 14 | "cdLine": "bg-zinc-700" 15 | }, 16 | "neutral": { 17 | "container": "bg-neutral-500", 18 | "cdLine": "bg-neutral-700" 19 | }, 20 | "stone": { 21 | "container": "bg-stone-500", 22 | "cdLine": "bg-stone-700" 23 | }, 24 | "red": { 25 | "container": "bg-red-500", 26 | "cdLine": "bg-red-700" 27 | }, 28 | "orange": { 29 | "container": "bg-orange-500", 30 | "cdLine": "bg-orange-700" 31 | }, 32 | "amber": { 33 | "container": "bg-amber-500", 34 | "cdLine": "bg-amber-700" 35 | }, 36 | "yellow": { 37 | "container": "bg-yellow-500", 38 | "cdLine": "bg-yellow-700" 39 | }, 40 | "lime": { 41 | "container": "bg-lime-500", 42 | "cdLine": "bg-lime-700" 43 | }, 44 | "green": { 45 | "container": "bg-green-500", 46 | "cdLine": "bg-green-700" 47 | }, 48 | "emerald": { 49 | "container": "bg-emerald-500", 50 | "cdLine": "bg-emerald-700" 51 | }, 52 | "teal": { 53 | "container": "bg-teal-500", 54 | "cdLine": "bg-teal-700" 55 | }, 56 | "cyan": { 57 | "container": "bg-cyan-500", 58 | "cdLine": "bg-cyan-700" 59 | }, 60 | "sky": { 61 | "container": "bg-sky-500", 62 | "cdLine": "bg-sky-700" 63 | }, 64 | "blue": { 65 | "container": "bg-blue-500", 66 | "cdLine": "bg-blue-700" 67 | }, 68 | "indigo": { 69 | "container": "bg-indigo-500", 70 | "cdLine": "bg-indigo-700" 71 | }, 72 | "violet": { 73 | "container": "bg-violet-500", 74 | "cdLine": "bg-violet-700" 75 | }, 76 | "purple": { 77 | "container": "bg-purple-500", 78 | "cdLine": "bg-purple-700" 79 | }, 80 | "fuchsia": { 81 | "container": "bg-fuchsia-500", 82 | "cdLine": "bg-fuchsia-700" 83 | }, 84 | "pink": { 85 | "container": "bg-pink-500", 86 | "cdLine": "bg-pink-700" 87 | }, 88 | "rose": { 89 | "container": "bg-rose-500", 90 | "cdLine": "bg-rose-700" 91 | } 92 | }, 93 | "light": { 94 | "base": "border py-1 px-4", 95 | "slate": { 96 | "container": "bg-slate-50 border-slate-500 text-slate-600 dark:bg-slate-700/10 dark:text-slate-100", 97 | "cdLine": "bg-slate-500" 98 | }, 99 | "gray": { 100 | "container" : "bg-gray-50 border-gray-500 text-gray-600 dark:bg-gray-700/10 dark:text-gray-100", 101 | "cdLine": "bg-gray-500" 102 | }, 103 | "zinc": { 104 | "container" : "bg-zinc-50 border-zinc-500 text-zinc-600 dark:bg-zinc-700/10 dark:text-zinc-100", 105 | "cdLine": "bg-zinc-500" 106 | }, 107 | "neutral": { 108 | "container" : "bg-neutral-50 border-neutral-500 text-neutral-600 dark:bg-neutral-700/10 dark:text-neutral-100", 109 | "cdLine": "bg-neutral-500" 110 | }, 111 | "stone": { 112 | "container" : "bg-stone-50 border-stone-500 text-stone-600 dark:bg-stone-700/10 dark:text-stone-100", 113 | "cdLine": "bg-stone-500" 114 | }, 115 | "red": { 116 | "container" : "bg-red-50 border-red-500 text-red-600 dark:bg-red-700/10 dark:text-red-100", 117 | "cdLine": "bg-red-500" 118 | }, 119 | "orange": { 120 | "container" : "bg-orange-50 border-orange-500 text-orange-600 dark:bg-orange-700/10 dark:text-orange-100", 121 | "cdLine": "bg-orange-500" 122 | }, 123 | "amber": { 124 | "container" : "bg-amber-50 border-amber-500 text-amber-600 dark:bg-amber-700/10 dark:text-amber-100", 125 | "cdLine": "bg-amber-500" 126 | }, 127 | "yellow": { 128 | "container" : "bg-yellow-50 border-yellow-500 text-yellow-600 dark:bg-yellow-700/10 dark:text-yellow-100", 129 | "cdLine": "bg-yellow-500" 130 | }, 131 | "lime": { 132 | "container" : "bg-lime-50 border-lime-500 text-lime-600 dark:bg-lime-700/10 dark:text-lime-100", 133 | "cdLine": "bg-lime-500" 134 | }, 135 | "green": { 136 | "container" : "bg-green-50 border-green-500 text-green-600 dark:bg-green-700/10 dark:text-green-100", 137 | "cdLine": "bg-green-500" 138 | }, 139 | "emerald": { 140 | "container" : "bg-emerald-50 border-emerald-500 text-emerald-600 dark:bg-emerald-700/10 dark:text-emerald-100", 141 | "cdLine": "bg-emerald-500" 142 | }, 143 | "teal": { 144 | "container" : "bg-teal-50 border-teal-500 text-teal-600 dark:bg-teal-700/10 dark:text-teal-100", 145 | "cdLine": "bg-teal-500" 146 | }, 147 | "cyan": { 148 | "container" : "bg-cyan-50 border-cyan-500 text-cyan-600 dark:bg-cyan-700/10 dark:text-cyan-100", 149 | "cdLine": "bg-cyan-500" 150 | }, 151 | "sky": { 152 | "container" : "bg-sky-50 border-sky-500 text-sky-600 dark:bg-sky-700/10 dark:text-sky-100", 153 | "cdLine": "bg-sky-500" 154 | }, 155 | "blue": { 156 | "container" : "bg-blue-50 border-blue-500 text-blue-600 dark:bg-blue-700/10 dark:text-blue-100", 157 | "cdLine": "bg-blue-500" 158 | }, 159 | "indigo": { 160 | "container" : "bg-indigo-50 border-indigo-500 text-indigo-600 dark:bg-indigo-700/10 dark:text-indigo-100", 161 | "cdLine": "bg-indigo-500" 162 | }, 163 | "violet": { 164 | "container" : "bg-violet-50 border-violet-500 text-violet-600 dark:bg-violet-700/10 dark:text-violet-100", 165 | "cdLine": "bg-violet-500" 166 | }, 167 | "purple": { 168 | "container" : "bg-purple-50 border-purple-500 text-purple-600 dark:bg-purple-700/10 dark:text-purple-100", 169 | "cdLine": "bg-purple-500" 170 | }, 171 | "fuchsia": { 172 | "container" : "bg-fuchsia-50 border-fuchsia-500 text-fuchsia-600 dark:bg-fuchsia-700/10 dark:text-fuchsia-100", 173 | "cdLine": "bg-fuchsia-500" 174 | }, 175 | "pink": { 176 | "container" : "bg-pink-50 border-pink-500 text-pink-600 dark:bg-pink-700/10 dark:text-pink-100", 177 | "cdLine": "bg-pink-500" 178 | }, 179 | "rose": { 180 | "container" : "bg-rose-50 border-rose-500 text-rose-600 dark:bg-rose-700/10 dark:text-rose-100", 181 | "cdLine": "bg-rose-500" 182 | } 183 | }, 184 | "inline": { 185 | "base": "border py-1 pl-6 pr-4 text-white", 186 | "slate": { 187 | "container": "bg-slate-500 border-slate-500 dark:bg-opacity-30", 188 | "cdLine": "bg-slate-50" 189 | }, 190 | "gray": { 191 | "container": "bg-gray-500 border-gray-500 dark:bg-opacity-30", 192 | "cdLine": "bg-gray-50" 193 | }, 194 | "zinc": { 195 | "container": "bg-zinc-500 border-zinc-500 dark:bg-opacity-30", 196 | "cdLine": "bg-zinc-50" 197 | }, 198 | "neutral": { 199 | "container": "bg-neutral-500 border-neutral-500 dark:bg-opacity-30", 200 | "cdLine": "bg-neutral-50" 201 | }, 202 | "stone": { 203 | "container": "bg-stone-500 border-stone-500 dark:bg-opacity-30", 204 | "cdLine": "bg-stone-50" 205 | }, 206 | "red": { 207 | "container": "bg-red-500 border-red-500 dark:bg-opacity-30", 208 | "cdLine": "bg-red-50" 209 | }, 210 | "orange": { 211 | "container": "bg-orange-500 border-orange-500 dark:bg-opacity-30", 212 | "cdLine": "bg-orange-50" 213 | }, 214 | "amber": { 215 | "container": "bg-amber-500 border-amber-500 dark:bg-opacity-30", 216 | "cdLine": "bg-amber-50" 217 | }, 218 | "yellow": { 219 | "container": "bg-yellow-500 border-yellow-500 dark:bg-opacity-30", 220 | "cdLine": "bg-yellow-50" 221 | }, 222 | "lime": { 223 | "container": "bg-lime-500 border-lime-500 dark:bg-opacity-30", 224 | "cdLine": "bg-lime-50" 225 | }, 226 | "green": { 227 | "container": "bg-green-500 border-green-500 dark:bg-opacity-30", 228 | "cdLine": "bg-green-50" 229 | }, 230 | "emerald": { 231 | "container": "bg-emerald-500 border-emerald-500 dark:bg-opacity-30", 232 | "cdLine": "bg-emerald-50" 233 | }, 234 | "teal": { 235 | "container": "bg-teal-500 border-teal-500 dark:bg-opacity-30", 236 | "cdLine": "bg-teal-50" 237 | }, 238 | "cyan": { 239 | "container": "bg-cyan-500 border-cyan-500 dark:bg-opacity-30", 240 | "cdLine": "bg-cyan-50" 241 | }, 242 | "sky": { 243 | "container": "bg-sky-500 border-sky-500 dark:bg-opacity-30", 244 | "cdLine": "bg-sky-50" 245 | }, 246 | "blue": { 247 | "container": "bg-blue-500 border-blue-500 dark:bg-opacity-30", 248 | "cdLine": "bg-blue-50" 249 | }, 250 | "indigo": { 251 | "container": "bg-indigo-500 border-indigo-500 dark:bg-opacity-30", 252 | "cdLine": "bg-indigo-50" 253 | }, 254 | "violet": { 255 | "container": "bg-violet-500 border-violet-500 dark:bg-opacity-30", 256 | "cdLine": "bg-violet-50" 257 | }, 258 | "purple": { 259 | "container": "bg-purple-500 border-purple-500 dark:bg-opacity-30", 260 | "cdLine": "bg-purple-50" 261 | }, 262 | "fuchsia": { 263 | "container": "bg-fuchsia-500 border-fuchsia-500 dark:bg-opacity-30", 264 | "cdLine": "bg-fuchsia-50" 265 | }, 266 | "pink": { 267 | "container": "bg-pink-500 border-pink-500 dark:bg-opacity-30", 268 | "cdLine": "bg-pink-50" 269 | }, 270 | "rose": { 271 | "container": "bg-rose-500 border-rose-500 dark:bg-opacity-30", 272 | "cdLine": "bg-rose-50" 273 | } 274 | }, 275 | "outline": { 276 | "base": "flex shadow px-4 text-slate-700 bg-white dark:bg-slate-700/10 dark:text-white overflow-hidden", 277 | "slate": { 278 | "container": "text-slate-500", 279 | "cdLine":"bg-slate-500", 280 | "icon": "text-slate-500" 281 | }, 282 | "gray": { 283 | "container": "text-gray-500", 284 | "cdLine": "bg-gray-500", 285 | "icon": "text-gray-500" 286 | }, 287 | "zinc": { 288 | "container": "text-zinc-500", 289 | "cdLine": "bg-zinc-500", 290 | "icon": "text-zinc-500" 291 | }, 292 | "neutral": { 293 | "container": "text-neutral-500", 294 | "cdLine": "bg-neutral-500", 295 | "icon": "text-neutral-500" 296 | }, 297 | "stone": { 298 | "container": "text-stone-500", 299 | "cdLine": "bg-stone-500", 300 | "icon": "text-stone-500" 301 | }, 302 | "red": { 303 | "container": "text-red-500", 304 | "cdLine": "bg-red-500", 305 | "icon": "text-red-500" 306 | }, 307 | "orange": { 308 | "container": "text-orange-500", 309 | "cdLine": "bg-orange-500", 310 | "icon": "text-orange-500" 311 | }, 312 | "amber": { 313 | "container": "text-amber-500", 314 | "cdLine": "bg-amber-500", 315 | "icon": "text-amber-500" 316 | }, 317 | "yellow": { 318 | "container": "text-yellow-500", 319 | "cdLine": "bg-yellow-500", 320 | "icon": "text-yellow-500" 321 | }, 322 | "lime": { 323 | "container": "text-lime-500", 324 | "cdLine": "bg-lime-500", 325 | "icon": "text-lime-500" 326 | }, 327 | "green": { 328 | "container": "text-green-500", 329 | "cdLine": "bg-green-500", 330 | "icon": "text-green-500" 331 | }, 332 | "emerald": { 333 | "container": "text-emerald-500", 334 | "cdLine": "bg-emerald-500", 335 | "icon": "text-emerald-500" 336 | }, 337 | "teal": { 338 | "container": "text-teal-500", 339 | "cdLine": "bg-teal-500", 340 | "icon": "text-teal-500" 341 | }, 342 | "cyan": { 343 | "container": "text-cyan-500", 344 | "cdLine": "bg-cyan-500", 345 | "icon": "text-cyan-500" 346 | }, 347 | "sky": { 348 | "container": "text-sky-500", 349 | "cdLine": "bg-sky-500", 350 | "icon": "text-sky-500" 351 | }, 352 | "blue": { 353 | "container": "text-blue-500", 354 | "cdLine": "bg-blue-500", 355 | "icon": "text-blue-500" 356 | }, 357 | "indigo": { 358 | "container": "text-indigo-500", 359 | "cdLine": "bg-indigo-500", 360 | "icon": "text-indigo-500" 361 | }, 362 | "violet": { 363 | "container": "text-violet-500", 364 | "cdLine": "bg-violet-500", 365 | "icon": "text-violet-500" 366 | }, 367 | "purple": { 368 | "container": "text-purple-500", 369 | "cdLine": "bg-purple-500", 370 | "icon": "text-purple-500" 371 | }, 372 | "fuchsia": { 373 | "container": "text-fuchsia-500", 374 | "cdLine": "bg-fuchsia-500", 375 | "icon": "text-fuchsia-500" 376 | }, 377 | "pink": { 378 | "container": "text-pink-500", 379 | "cdLine": "bg-pink-500", 380 | "icon": "text-pink-500" 381 | }, 382 | "rose": { 383 | "container": "text-rose-500", 384 | "cdLine": "bg-rose-500", 385 | "icon": "text-rose-500" 386 | } 387 | }, 388 | "elegant": { 389 | "base": "flex flex-row justify-start items-center py-1 px-4 shadow text-slate-700 bg-white dark:bg-slate-700/10 dark:text-white overflow-hidden", 390 | "slate": { 391 | "container": "text-slate-600 dark:text-white bg-slate-50 border-slate-500 dark:bg-slate-700/10", 392 | "cdLine":"bg-slate-500" 393 | } , 394 | "gray": { 395 | "container": "text-gray-600 dark:text-white bg-gray-50 border-gray-500 dark:bg-gray-700/10", 396 | "cdLine": "bg-gray-500" 397 | } , 398 | "zinc": { 399 | "container": "text-zinc-600 dark:text-white bg-zinc-50 border-zinc-500 dark:bg-zinc-700/10", 400 | "cdLine": "bg-zinc-500" 401 | } , 402 | "neutral": { 403 | "container": "text-neutral-600 dark:text-white bg-neutral-50 border-neutral-500 dark:bg-neutral-700/10", 404 | "cdLine": "bg-neutral-500" 405 | } , 406 | "stone": { 407 | "container": "text-stone-600 dark:text-white bg-stone-50 border-stone-500 dark:bg-stone-700/10", 408 | "cdLine": "bg-stone-500" 409 | } , 410 | "red": { 411 | "container": "text-red-600 dark:text-white bg-red-50 border-red-500 dark:bg-red-700/10", 412 | "cdLine": "bg-red-500" 413 | } , 414 | "orange": { 415 | "container": "text-orange-600 dark:text-white bg-orange-50 border-orange-500 dark:bg-orange-700/10", 416 | "cdLine": "bg-orange-500" 417 | } , 418 | "amber": { 419 | "container": "text-amber-600 dark:text-white bg-amber-50 border-amber-500 dark:bg-amber-700/10", 420 | "cdLine": "bg-amber-500" 421 | } , 422 | "yellow": { 423 | "container": "text-yellow-600 dark:text-white bg-yellow-50 border-yellow-500 dark:bg-yellow-700/10", 424 | "cdLine": "bg-yellow-500" 425 | } , 426 | "lime": { 427 | "container": "text-lime-600 dark:text-white bg-lime-50 border-lime-500 dark:bg-lime-700/10", 428 | "cdLine": "bg-lime-500" 429 | } , 430 | "green": { 431 | "container": "text-green-600 dark:text-white bg-green-50 border-green-500 dark:bg-green-700/10", 432 | "cdLine": "bg-green-500" 433 | } , 434 | "emerald": { 435 | "container": "text-emerald-600 dark:text-white bg-emerald-50 border-emerald-500 dark:bg-emerald-700/10", 436 | "cdLine": "bg-emerald-500" 437 | } , 438 | "teal": { 439 | "container": "text-teal-600 dark:text-white bg-teal-50 border-teal-500 dark:bg-teal-700/10", 440 | "cdLine": "bg-teal-500" 441 | } , 442 | "cyan": { 443 | "container": "text-cyan-600 dark:text-white bg-cyan-50 border-cyan-500 dark:bg-cyan-700/10", 444 | "cdLine": "bg-cyan-500" 445 | } , 446 | "sky": { 447 | "container": "text-sky-600 dark:text-white bg-sky-50 border-sky-500 dark:bg-sky-700/10", 448 | "cdLine": "bg-sky-500" 449 | } , 450 | "blue": { 451 | "container": "text-blue-600 dark:text-white bg-blue-50 border-blue-500 dark:bg-blue-700/10", 452 | "cdLine": "bg-blue-500" 453 | } , 454 | "indigo": { 455 | "container": "text-indigo-600 dark:text-white bg-indigo-50 border-indigo-500 dark:bg-indigo-700/10", 456 | "cdLine": "bg-indigo-500" 457 | } , 458 | "violet": { 459 | "container": "text-violet-600 dark:text-white bg-violet-50 border-violet-500 dark:bg-violet-700/10", 460 | "cdLine": "bg-violet-500" 461 | } , 462 | "purple": { 463 | "container": "text-purple-600 dark:text-white bg-purple-50 border-purple-500 dark:bg-purple-700/10", 464 | "cdLine": "bg-purple-500" 465 | } , 466 | "fuchsia": { 467 | "container": "text-fuchsia-600 dark:text-white bg-fuchsia-50 border-fuchsia-500 dark:bg-fuchsia-700/10", 468 | "cdLine": "bg-fuchsia-500" 469 | } , 470 | "pink": { 471 | "container": "text-pink-600 dark:text-white bg-pink-50 border-pink-500 dark:bg-pink-700/10", 472 | "cdLine": "bg-pink-500" 473 | } , 474 | "rose": { 475 | "container": "text-rose-600 dark:text-white bg-rose-50 border-rose-500 dark:bg-rose-700/10", 476 | "cdLine": "bg-rose-500" 477 | } 478 | }, 479 | "block": { 480 | "base": "shadow pl-1 pr-4 text-gray-700 bg-white dark:bg-slate-800 dark:text-white overflow-hidden", 481 | "slate": { 482 | "icon": "text-slate-600 bg-slate-200 border-slate-500 dark:bg-slate-500 dark:border-slate-700 dark:text-white", 483 | "cdLine": "bg-slate-500" 484 | }, 485 | "gray": { 486 | "icon": "text-gray-600 bg-gray-200 border-gray-500 dark:bg-gray-500 dark:border-gray-700 dark:text-white", 487 | "cdLine": "bg-gray-500" 488 | }, 489 | "zinc": { 490 | "icon": "text-zinc-600 bg-zinc-200 border-zinc-500 dark:bg-zinc-500 dark:border-zinc-700 dark:text-white", 491 | "cdLine": "bg-zinc-500" 492 | }, 493 | "neutral": { 494 | "icon": "text-neutral-600 bg-neutral-200 border-neutral-500 dark:bg-neutral-500 dark:border-neutral-700 dark:text-white", 495 | "cdLine": "bg-neutral-500" 496 | }, 497 | "stone": { 498 | "icon": "text-stone-600 bg-stone-200 border-stone-500 dark:bg-stone-500 dark:border-stone-700 dark:text-white", 499 | "cdLine": "bg-stone-500" 500 | }, 501 | "red": { 502 | "icon": "text-red-600 bg-red-200 border-red-500 dark:bg-red-500 dark:border-red-700 dark:text-white", 503 | "cdLine": "bg-red-500" 504 | }, 505 | "orange": { 506 | "icon": "text-orange-600 bg-orange-200 border-orange-500 dark:bg-orange-500 dark:border-orange-700 dark:text-white", 507 | "cdLine": "bg-orange-500" 508 | }, 509 | "amber": { 510 | "icon": "text-amber-600 bg-amber-200 border-amber-500 dark:bg-amber-500 dark:border-amber-700 dark:text-white", 511 | "cdLine": "bg-amber-500" 512 | }, 513 | "yellow": { 514 | "icon": "text-yellow-600 bg-yellow-200 border-yellow-500 dark:bg-yellow-500 dark:border-yellow-700 dark:text-white", 515 | "cdLine": "bg-yellow-500" 516 | }, 517 | "lime": { 518 | "icon": "text-lime-600 bg-lime-200 border-lime-500 dark:bg-lime-500 dark:border-lime-700 dark:text-white", 519 | "cdLine": "bg-lime-500" 520 | }, 521 | "green": { 522 | "icon": "text-green-600 bg-green-200 border-green-500 dark:bg-green-500 dark:border-green-700 dark:text-white", 523 | "cdLine": "bg-green-500" 524 | }, 525 | "emerald": { 526 | "icon": "text-emerald-600 bg-emerald-200 border-emerald-500 dark:bg-emerald-500 dark:border-emerald-700 dark:text-white", 527 | "cdLine": "bg-emerald-500" 528 | }, 529 | "teal": { 530 | "icon": "text-teal-600 bg-teal-200 border-teal-500 dark:bg-teal-500 dark:border-teal-700 dark:text-white", 531 | "cdLine": "bg-teal-500" 532 | }, 533 | "cyan": { 534 | "icon": "text-cyan-600 bg-cyan-200 border-cyan-500 dark:bg-cyan-500 dark:border-cyan-700 dark:text-white", 535 | "cdLine": "bg-cyan-500" 536 | }, 537 | "sky": { 538 | "icon": "text-sky-600 bg-sky-200 border-sky-500 dark:bg-sky-500 dark:border-sky-700 dark:text-white", 539 | "cdLine": "bg-sky-500" 540 | }, 541 | "blue": { 542 | "icon": "text-blue-600 bg-blue-200 border-blue-500 dark:bg-blue-500 dark:border-blue-700 dark:text-white", 543 | "cdLine": "bg-blue-500" 544 | }, 545 | "indigo": { 546 | "icon": "text-indigo-600 bg-indigo-200 border-indigo-500 dark:bg-indigo-500 dark:border-indigo-700 dark:text-white", 547 | "cdLine": "bg-indigo-500" 548 | }, 549 | "violet": { 550 | "icon": "text-violet-600 bg-violet-200 border-violet-500 dark:bg-violet-500 dark:border-violet-700 dark:text-white", 551 | "cdLine": "bg-violet-500" 552 | }, 553 | "purple": { 554 | "icon": "text-purple-600 bg-purple-200 border-purple-500 dark:bg-purple-500 dark:border-purple-700 dark:text-white", 555 | "cdLine": "bg-purple-500" 556 | }, 557 | "fuchsia": { 558 | "icon": "text-fuchsia-600 bg-fuchsia-200 border-fuchsia-500 dark:bg-fuchsia-500 dark:border-fuchsia-700 dark:text-white", 559 | "cdLine": "bg-fuchsia-500" 560 | }, 561 | "pink": { 562 | "icon": "text-pink-600 bg-pink-200 border-pink-500 dark:bg-pink-500 dark:border-pink-700 dark:text-white", 563 | "cdLine": "bg-pink-500" 564 | }, 565 | "rose": { 566 | "icon": "text-rose-600 bg-rose-200 border-rose-500 dark:bg-rose-500 dark:border-rose-700 dark:text-white", 567 | "cdLine": "bg-rose-500" 568 | } 569 | } 570 | } -------------------------------------------------------------------------------- /src/lib-components/Alert/TAlert.vue: -------------------------------------------------------------------------------- 1 | 123 | 253 | 254 | 273 | -------------------------------------------------------------------------------- /src/lib-components/Button/Button.md: -------------------------------------------------------------------------------- 1 | # Button 2 | 3 | | Prop | Type | Default | Options | Description | 4 | |--------------|---------|---------|-----------------------------------------|--------------------------| 5 | | title | String | | | Button text | 6 | | size | String | md | sm, md, lg | Inactive yet | 7 | | design | String | filled | filled, light, outline, link, link-plus | Button style | 8 | | color | String | blue | All Colors of TailwindCSS V3 | Color schema | 9 | | radius | String | md | sm, md, lg, xl, 2xl, full | Radius of the corners | 10 | | link | String | | What If you want | Inactive yet | 11 | | border | Boolean | false | true, false | | 12 | | disabled | Boolean | false | true, false | | 13 | | loading | Boolean | false | true, false | Show a loading animation | 14 | | type | String | submit | submit, reset, button | | 15 | | animation | Boolean | true | true, false | Scale animation to click | 16 | | iconPosition | String | left | left, right | | 17 | | block | Boolean | false | | Full width button | 18 | 19 | | Slot | Description | 20 | |------|----------------------------| 21 | | icon | Showing icon in the button | -------------------------------------------------------------------------------- /src/lib-components/Button/Style.json: -------------------------------------------------------------------------------- 1 | { 2 | "base": "relative flex items-center py-2 text-sm font-medium duration-200", 3 | "filled" : { 4 | "base": "text-white active:text-white disabled:bg-gray-500 disabled:text-slate-300", 5 | "slate" : "bg-slate-500 hover:bg-slate-200 active:bg-slate-500 hover:text-slate-700 border-slate-500", 6 | "gray" : "bg-gray-500 hover:bg-gray-200 active:bg-gray-500 hover:text-gray-700 border-gray-500", 7 | "zinc" : "bg-zinc-500 hover:bg-zinc-200 active:bg-zinc-500 hover:text-zinc-700 border-zinc-500", 8 | "neutral" : "bg-neutral-500 hover:bg-neutral-200 active:bg-neutral-500 hover:text-neutral-700 border-neutral-500", 9 | "stone" : "bg-stone-500 hover:bg-stone-200 active:bg-stone-500 hover:text-stone-700 border-stone-500", 10 | "red" : "bg-red-500 hover:bg-red-200 active:bg-red-500 hover:text-red-700 border-red-500", 11 | "orange" : "bg-orange-500 hover:bg-orange-200 active:bg-orange-500 hover:text-orange-700 border-orange-500", 12 | "amber" : "bg-amber-500 hover:bg-amber-200 active:bg-amber-500 hover:text-amber-700 border-amber-500", 13 | "yellow" : "bg-yellow-500 hover:bg-yellow-200 active:bg-yellow-500 hover:text-yellow-700active:bg-yellow-500 border-yellow-500", 14 | "lime" : "bg-lime-500 hover:bg-lime-200 active:bg-lime-500 hover:text-lime-700 border-lime-500", 15 | "green" : "bg-green-500 hover:bg-green-200 active:bg-green-500 hover:text-green-700 border-green-500", 16 | "emerald" : "bg-emerald-500 hover:bg-emerald-200 active:bg-emerald-500 hover:text-emerald-700 border-emerald-500", 17 | "teal" : "bg-teal-500 hover:bg-teal-200 active:bg-teal-500 hover:text-teal-700 border-teal-500", 18 | "cyan" : "bg-cyan-500 hover:bg-cyan-200 active:bg-cyan-500 hover:text-cyan-700 border-cyan-500", 19 | "sky" : "bg-sky-500 hover:bg-sky-200 active:bg-sky-500 hover:text-sky-700 border-sky-500", 20 | "blue" : "bg-blue-500 hover:bg-blue-200 active:bg-blue-500 hover:text-blue-700 border-blue-500", 21 | "indigo" : "bg-indigo-500 hover:bg-indigo-200 active:bg-indigo-500 hover:text-indigo-700 border-indigo-500", 22 | "violet" : "bg-violet-500 hover:bg-violet-200 active:bg-violet-500 hover:text-violet-700 border-violet-500", 23 | "purple" : "bg-purple-500 hover:bg-purple-200 active:bg-purple-500 hover:text-purple-700 border-purple-500", 24 | "fuchsia" : "bg-fuchsia-500 hover:bg-fuchsia-200 active:bg-fuchsia-500 hover:text-fuchsia-700 border-fuchsia-500", 25 | "pink" : "bg-pink-500 hover:bg-pink-200 active:bg-pink-500 hover:text-pink-700 border-pink-500", 26 | "rose" : "bg-rose-500 hover:bg-rose-200 active:bg-rose-500 hover:text-rose-700 border-rose-500" 27 | }, 28 | "light" : { 29 | "base": "hover:text-white disabled:bg-gray-400 disabled:text-slate-600", 30 | "slate" : "bg-slate-200 text-slate-700 hover:bg-slate-500 active:bg-slate-200 active:text-slate-700 border-slate-500", 31 | "gray" : "bg-gray-200 text-gray-700 hover:bg-gray-500 active:bg-gray-200 active:text-gray-700 border-gray-500", 32 | "zinc" : "bg-zinc-200 text-zinc-700 hover:bg-zinc-500 active:bg-zinc-200 active:text-zinc-700 border-zinc-500", 33 | "neutral" : "bg-neutral-200 text-neutral-700 hover:bg-neutral-500 active:bg-neutral-200 active:text-neutral-700 border-neutral-500", 34 | "stone" : "bg-stone-200 text-stone-700 hover:bg-stone-500 active:bg-stone-200 active:text-stone-700 border-stone-500", 35 | "red" : "bg-red-200 text-red-700 hover:bg-red-500 active:bg-red-200 active:text-red-700 border-red-500", 36 | "orange" : "bg-orange-200 text-orange-700 hover:bg-orange-500 active:bg-orange-200 active:text-orange-700 border-orange-500", 37 | "amber" : "bg-amber-200 text-amber-700 hover:bg-amber-500 active:bg-amber-200 active:text-amber-700 border-amber-500", 38 | "yellow" : "bg-yellow-200 text-yellow-700 hover:bg-yellow-500 active:bg-yellow-200 active:text-yellow-700 :bg-yellow-500 border-yellow-500", 39 | "lime" : "bg-lime-200 text-lime-700 hover:bg-lime-500 active:bg-lime-200 active:text-lime-700 border-lime-500", 40 | "green" : "bg-green-200 text-green-700 hover:bg-green-500 active:bg-green-200 active:text-green-700 border-green-500", 41 | "emerald" : "bg-emerald-200 text-emerald-700 hover:bg-emerald-500 active:bg-emerald-200 active:text-emerald-700 border-emerald-500", 42 | "teal" : "bg-teal-200 text-teal-700 hover:bg-teal-500 active:bg-teal-200 active:text-teal-700 border-teal-500", 43 | "cyan" : "bg-cyan-200 text-cyan-700 hover:bg-cyan-500 active:bg-cyan-200 active:text-cyan-700 border-cyan-500", 44 | "sky" : "bg-sky-200 text-sky-700 hover:bg-sky-500 active:bg-sky-200 active:text-sky-700 border-sky-500", 45 | "blue" : "bg-blue-200 text-blue-700 hover:bg-blue-500 active:bg-blue-200 active:text-blue-700 border-blue-500", 46 | "indigo" : "bg-indigo-200 text-indigo-700 hover:bg-indigo-500 active:bg-indigo-200 active:text-indigo-700 border-indigo-500", 47 | "violet" : "bg-violet-200 text-violet-700 hover:bg-violet-500 active:bg-violet-200 active:text-violet-700 border-violet-500", 48 | "purple" : "bg-purple-200 text-purple-700 hover:bg-purple-500 active:bg-purple-200 active:text-purple-700 border-purple-500", 49 | "fuchsia" : "bg-fuchsia-200 text-fuchsia-700 hover:bg-fuchsia-500 active:bg-fuchsia-200 active:text-fuchsia-700 border-fuchsia-500", 50 | "pink" : "bg-pink-200 text-pink-700 hover:bg-pink-500 active:bg-pink-200 active:text-pink-700 border-pink-500", 51 | "rose" : "bg-rose-200 text-rose-700 hover:bg-rose-500 active:bg-rose-200 active:text-rose-700 border-rose-500" 52 | }, 53 | "outline" : { 54 | "base": "hover:text-white active:bg-transparent disabled:border-slate-500 disabled:text-slate-500", 55 | "slate" : "text-slate-500 hover:bg-slate-500 active:text-slate-500 border-slate-500", 56 | "gray" : "text-gray-500 hover:bg-gray-500 active:text-gray-500 border-gray-500", 57 | "zinc" : "text-zinc-500 hover:bg-zinc-500 active:text-zinc-500 border-zinc-500", 58 | "neutral" : "text-neutral-500 hover:bg-neutral-500 active:text-neutral-500 border-neutral-500", 59 | "stone" : "text-stone-500 hover:bg-stone-500 active:text-stone-500 border-stone-500", 60 | "red" : "text-red-500 hover:bg-red-500 active:text-red-500 border-red-500", 61 | "orange" : "text-orange-500 hover:bg-orange-500 active:text-orange-500 border-orange-500", 62 | "amber" : "text-amber-500 hover:bg-amber-500 active:text-amber-500 border-amber-500", 63 | "yellow" : "text-yellow-500 hover:bg-yellow-500 active:text-yellow-500 :bg-yellow-500 border-yellow-500", 64 | "lime" : "text-lime-500 hover:bg-lime-500 active:text-lime-500 border-lime-500", 65 | "green" : "text-green-500 hover:bg-green-500 active:text-green-500 border-green-500", 66 | "emerald" : "text-emerald-500 hover:bg-emerald-500 active:text-emerald-500 border-emerald-500", 67 | "teal" : "text-teal-500 hover:bg-teal-500 active:text-teal-500 border-teal-500", 68 | "cyan" : "text-cyan-500 hover:bg-cyan-500 active:text-cyan-500 border-cyan-500", 69 | "sky" : "text-sky-500 hover:bg-sky-500 active:text-sky-500 border-sky-500", 70 | "blue" : "text-blue-500 hover:bg-blue-500 active:text-blue-500 border-blue-500", 71 | "indigo" : "text-indigo-500 hover:bg-indigo-500 active:text-indigo-500 border-indigo-500", 72 | "violet" : "text-violet-500 hover:bg-violet-500 active:text-violet-500 border-violet-500", 73 | "purple" : "text-purple-500 hover:bg-purple-500 active:text-purple-500 border-purple-500", 74 | "fuchsia" : "text-fuchsia-500 hover:bg-fuchsia-500 active:text-fuchsia-500 border-fuchsia-500", 75 | "pink" : "text-pink-500 hover:bg-pink-500 active:text-pink-500 border-pink-500", 76 | "rose" : "text-rose-500 hover:bg-rose-500 active:text-rose-500 border-rose-500" 77 | }, 78 | "link" : { 79 | "base": "text-slate-700 hover:underline dark:text-slate-200 disabled:text-slate-600", 80 | "slate" : "hover:text-slate-500 active:text-slate-700", 81 | "gray" : "hover:text-gray-500 active:text-gray-700", 82 | "zinc" : "hover:text-zinc-500 active:text-zinc-700", 83 | "neutral" : "hover:text-neutral-500 active:text-neutral-700", 84 | "stone" : "hover:text-stone-500 active:text-stone-700", 85 | "red" : "hover:text-red-500 active:text-red-700", 86 | "orange" : "hover:text-orange-500 active:text-orange-700", 87 | "amber" : "hover:text-amber-500 active:text-amber-700", 88 | "yellow" : "hover:text-yellow-500 active:text-yellow-700", 89 | "lime" : "hover:text-lime-500 active:text-lime-700", 90 | "green" : "hover:text-green-500 active:text-green-700", 91 | "emerald" : "hover:text-emerald-500 active:text-emerald-700", 92 | "teal" : "hover:text-teal-500 active:text-teal-700", 93 | "cyan" : "hover:text-cyan-500 active:text-cyan-700", 94 | "sky" : "hover:text-sky-500 active:text-sky-700", 95 | "blue" : "hover:text-blue-500 active:text-blue-700", 96 | "indigo" : "hover:text-indigo-500 active:text-indigo-700", 97 | "violet" : "hover:text-violet-500 active:text-violet-700", 98 | "purple" : "hover:text-purple-500 active:text-purple-700", 99 | "fuchsia" : "hover:text-fuchsia-500 active:text-fuchsia-700", 100 | "pink" : "hover:text-pink-500 active:text-pink-700", 101 | "rose" : "hover:text-rose-500 active:text-rose-700" 102 | }, 103 | "link-plus" : { 104 | "base": "text-slate-700 dark:text-slate-200 hover:text-white hover:underline active:bg-transparent disabled:text-slate-600", 105 | "slate" : "hover:bg-slate-500 active:text-slate-700", 106 | "gray" : "hover:bg-gray-500 active:text-gray-700", 107 | "zinc" : "hover:bg-zinc-500 active:text-zinc-700", 108 | "neutral" : "hover:bg-neutral-500 active:text-neutral-700", 109 | "stone" : "hover:bg-stone-500 active:text-stone-700", 110 | "red" : "hover:bg-red-500 active:text-red-700", 111 | "orange" : "hover:bg-orange-500 active:text-orange-700", 112 | "amber" : "hover:bg-amber-500 active:text-amber-700", 113 | "yellow" : "hover:bg-yellow-500 active:text-yellow-700", 114 | "lime" : "hover:bg-lime-500 active:text-lime-700", 115 | "green" : "hover:bg-green-500 active:text-green-700", 116 | "emerald" : "hover:bg-emerald-500 active:text-emerald-700", 117 | "teal" : "hover:bg-teal-500 active:text-teal-700", 118 | "cyan" : "hover:bg-cyan-500 active:text-cyan-700", 119 | "sky" : "hover:bg-sky-500 active:text-sky-700", 120 | "blue" : "hover:bg-blue-500 active:text-blue-700", 121 | "indigo" : "hover:bg-indigo-500 active:text-indigo-700", 122 | "violet" : "hover:bg-violet-500 active:text-violet-700", 123 | "purple" : "hover:bg-purple-500 active:text-purple-700", 124 | "fuchsia" : "hover:bg-fuchsia-500 active:text-fuchsia-700", 125 | "pink" : "hover:bg-pink-500 active:text-pink-700", 126 | "rose" : "hover:bg-rose-500 active:text-rose-700" 127 | } 128 | } -------------------------------------------------------------------------------- /src/lib-components/Button/TButton.vue: -------------------------------------------------------------------------------- 1 | 64 | 65 | 157 | 158 | 163 | -------------------------------------------------------------------------------- /src/lib-components/ContentCard/Style.json: -------------------------------------------------------------------------------- 1 | { 2 | "vertical" : { 3 | "container" : "p-4" 4 | }, 5 | "horizontal" : { 6 | "container" : "p-4" 7 | }, 8 | 9 | "horizontal-banner" : { 10 | "container" : "flex-row overflow-hidden", 11 | "header" : "px-4 py-2", 12 | "content" : "px-4 pb-4", 13 | "img" : "w-40 aspect-[9/16]" 14 | }, 15 | "vertical-banner" : { 16 | "container" : "flex-col overflow-hidden", 17 | "header" : "px-4 py-2", 18 | "content" : "px-4 pb-4", 19 | "img" : "w-full aspect-[16/9] h-[14rem] object-cover" 20 | } 21 | } -------------------------------------------------------------------------------- /src/lib-components/ContentCard/TContentCard.vue: -------------------------------------------------------------------------------- 1 | 118 | 119 | 196 | 197 | 215 | -------------------------------------------------------------------------------- /src/lib-components/GlobalStyles.json: -------------------------------------------------------------------------------- 1 | { 2 | "grid": { 3 | "gridSm": { 4 | "null": null, 5 | "1": "grid-cols-1", 6 | "2": "grid-cols-2", 7 | "3": "grid-cols-3", 8 | "4": "grid-cols-4", 9 | "5": "grid-cols-5", 10 | "6": "grid-cols-6", 11 | "7": "grid-cols-7", 12 | "8": "grid-cols-8", 13 | "9": "grid-cols-9", 14 | "10": "grid-cols-10", 15 | "11": "grid-cols-11", 16 | "12": "grid-cols-12" 17 | }, 18 | "gridMd": { 19 | "null": null, 20 | "1": "md:grid-cols-1", 21 | "2": "md:grid-cols-2", 22 | "3": "md:grid-cols-3", 23 | "4": "md:grid-cols-4", 24 | "5": "md:grid-cols-5", 25 | "6": "md:grid-cols-6", 26 | "7": "md:grid-cols-7", 27 | "8": "md:grid-cols-8", 28 | "9": "md:grid-cols-9", 29 | "10": "md:grid-cols-10", 30 | "11": "md:grid-cols-11", 31 | "12": "md:grid-cols-12" 32 | }, 33 | "gridLg": { 34 | "null": null, 35 | "1": "lg:grid-cols-1", 36 | "2": "lg:grid-cols-2", 37 | "3": "lg:grid-cols-3", 38 | "4": "lg:grid-cols-4", 39 | "5": "lg:grid-cols-5", 40 | "6": "lg:grid-cols-6", 41 | "7": "lg:grid-cols-7", 42 | "8": "lg:grid-cols-8", 43 | "9": "lg:grid-cols-9", 44 | "10": "lg:grid-cols-10", 45 | "11": "lg:grid-cols-11", 46 | "12": "lg:grid-cols-12" 47 | }, 48 | "gridXl": { 49 | "null": null, 50 | "1": "xl:grid-cols-1", 51 | "2": "xl:grid-cols-2", 52 | "3": "xl:grid-cols-3", 53 | "4": "xl:grid-cols-4", 54 | "5": "xl:grid-cols-5", 55 | "6": "xl:grid-cols-6", 56 | "7": "xl:grid-cols-7", 57 | "8": "xl:grid-cols-8", 58 | "9": "xl:grid-cols-9", 59 | "10": "xl:grid-cols-10", 60 | "11": "xl:grid-cols-11", 61 | "12": "xl:grid-cols-12" 62 | } 63 | }, 64 | "radius": { 65 | "sm": "rounded-sm", 66 | "md": "rounded-md", 67 | "lg": "rounded-lg", 68 | "xl": "rounded-xl", 69 | "2xl": "rounded-2xl", 70 | "full": "rounded-full" 71 | }, 72 | "textSize": { 73 | "sm": "text-sm", 74 | "md": "text-md", 75 | "lg": "text-lg", 76 | "xl": "text-xl", 77 | "2xl": "text-2xl", 78 | "3xl": "text-3xl", 79 | "4xl": "text-4xl", 80 | "5xl": "text-5xl", 81 | "6xl": "text-6xl", 82 | "7xl": "text-7xl" 83 | } 84 | } -------------------------------------------------------------------------------- /src/lib-components/Icons/ChevronDownIcon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Icons/CircleCheckIcon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Icons/CircleExclamationIcon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | -------------------------------------------------------------------------------- /src/lib-components/Icons/CircleMinusIcon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Icons/CircleXMark.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 19 | -------------------------------------------------------------------------------- /src/lib-components/Icons/ExpandIcon.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/lib-components/Icons/MinimizeIcon.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/lib-components/Icons/TrashIcon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Icons/XMarkIcon.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/lib-components/Input/Style.json: -------------------------------------------------------------------------------- 1 | { 2 | "inputGroup" : { 3 | "subLabelColors": { 4 | "base": "", 5 | "slate" : "text-slate-600", 6 | "gray" : "text-gray-600", 7 | "zinc" : "text-zinc-600", 8 | "neutral" : "text-neutral-600", 9 | "stone" : "text-stone-600", 10 | "red" : "text-red-600", 11 | "orange" : "text-orange-600", 12 | "amber" : "text-amber-600", 13 | "yellow" : "text-yellow-600", 14 | "lime" : "text-lime-600", 15 | "green" : "text-green-600", 16 | "emerald" : "text-emerald-600", 17 | "teal" : "text-teal-600", 18 | "cyan" : "text-cyan-600", 19 | "sky" : "text-sky-600", 20 | "blue" : "text-blue-600", 21 | "indigo" : "text-indigo-600", 22 | "violet" : "text-violet-600", 23 | "purple" : "text-purple-600", 24 | "fuchsia" : "text-fuchsia-600", 25 | "pink" : "text-pink-600", 26 | "rose" : "text-rose-600" 27 | }, 28 | "messageColors": { 29 | "error": "text-red-600 border-red-500", 30 | "warning": "text-yellow-600 border-yellow-500", 31 | "success": "text-green-600 border-green-500", 32 | "info": "text-blue-600 border-blue-500", 33 | "default": "text-slate-600 dark:text-slate-200 border-slate-500" 34 | } 35 | }, 36 | "textInput": { 37 | 38 | }, 39 | "textAreaInput": { 40 | 41 | }, 42 | "selectInput": { 43 | 44 | }, 45 | "checkboxInput": { 46 | 47 | }, 48 | "radioInput": { 49 | 50 | }, 51 | "switchInput": { 52 | "outsideColors": { 53 | "slate" : "bg-slate-300", 54 | "gray" : "bg-gray-300", 55 | "zinc" : "bg-zinc-300", 56 | "neutral" : "bg-neutral-300", 57 | "stone" : "bg-stone-300", 58 | "red" : "bg-red-300", 59 | "orange" : "bg-orange-300", 60 | "amber" : "bg-amber-300", 61 | "yellow" : "bg-yellow-300", 62 | "lime" : "bg-lime-300", 63 | "green" : "bg-green-300", 64 | "emerald" : "bg-emerald-300", 65 | "teal" : "bg-teal-300", 66 | "cyan" : "bg-cyan-300", 67 | "sky" : "bg-sky-300", 68 | "blue" : "bg-blue-300", 69 | "indigo" : "bg-indigo-300", 70 | "violet" : "bg-violet-300", 71 | "purple" : "bg-purple-300", 72 | "fuchsia" : "bg-fuchsia-300", 73 | "pink" : "bg-pink-300", 74 | "rose" : "bg-rose-300" 75 | }, 76 | "buttonColors" : { 77 | "slate" : "bg-slate-600 hover:bg-slate-200 active:bg-slate-600 hover:text-slate-700 border-slate-600", 78 | "gray" : "bg-gray-600 hover:bg-gray-200 active:bg-gray-600 hover:text-gray-700 border-gray-600", 79 | "zinc" : "bg-zinc-600 hover:bg-zinc-200 active:bg-zinc-600 hover:text-zinc-700 border-zinc-600", 80 | "neutral" : "bg-neutral-600 hover:bg-neutral-200 active:bg-neutral-600 hover:text-neutral-700 border-neutral-600", 81 | "stone" : "bg-stone-600 hover:bg-stone-200 active:bg-stone-600 hover:text-stone-700 border-stone-600", 82 | "red" : "bg-red-600 hover:bg-red-600 active:bg-red-600 hover:text-red-700 border-red-600", 83 | "orange" : "bg-orange-600 hover:bg-orange-200 active:bg-orange-600 hover:text-orange-700 border-orange-600", 84 | "amber" : "bg-amber-600 hover:bg-amber-200 active:bg-amber-600 hover:text-amber-700 border-amber-600", 85 | "yellow" : "bg-yellow-600 hover:bg-yellow-200 active:bg-yellow-600 hover:text-yellow-700active:bg-yellow-600 border-yellow-600", 86 | "lime" : "bg-lime-600 hover:bg-lime-200 active:bg-lime-600 hover:text-lime-700 border-lime-600", 87 | "green" : "bg-green-600 hover:bg-green-200 active:bg-green-600 hover:text-green-700 border-green-600", 88 | "emerald" : "bg-emerald-600 hover:ring-8 hover:ring-emerald-100 active:bg-emerald-600 hover:text-emerald-700 border-emerald-600", 89 | "teal" : "bg-teal-600 hover:bg-teal-200 active:bg-teal-600 hover:text-teal-700 border-teal-600", 90 | "cyan" : "bg-cyan-600 hover:bg-cyan-200 active:bg-cyan-600 hover:text-cyan-700 border-cyan-600", 91 | "sky" : "bg-sky-600 hover:bg-sky-200 active:bg-sky-600 hover:text-sky-700 border-sky-600", 92 | "blue" : "bg-blue-600 hover:bg-blue-200 active:bg-blue-600 hover:text-blue-700 border-blue-600", 93 | "indigo" : "bg-indigo-600 hover:bg-indigo-200 active:bg-indigo-600 hover:text-indigo-700 border-indigo-600", 94 | "violet" : "bg-violet-600 hover:bg-violet-200 active:bg-violet-600 hover:text-violet-700 border-violet-600", 95 | "purple" : "bg-purple-600 hover:bg-purple-200 active:bg-purple-600 hover:text-purple-700 border-purple-600", 96 | "fuchsia" : "bg-fuchsia-600 hover:bg-fuchsia-200 active:bg-fuchsia-600 hover:text-fuchsia-700 border-fuchsia-600", 97 | "pink" : "bg-pink-600 hover:bg-pink-200 active:bg-pink-600 hover:text-pink-700 border-pink-600", 98 | "rose" : "bg-rose-600 hover:bg-rose-200 active:bg-rose-600 hover:text-rose-700 border-rose-600" 99 | } 100 | } 101 | } -------------------------------------------------------------------------------- /src/lib-components/Input/TCheckboxInput.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Input/TInputGroup.vue: -------------------------------------------------------------------------------- 1 | 76 | 77 | 167 | -------------------------------------------------------------------------------- /src/lib-components/Input/TRadioButtonInput.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/lib-components/Input/TSelectInput.vue: -------------------------------------------------------------------------------- 1 | 110 | 111 | 325 | 326 | 329 | -------------------------------------------------------------------------------- /src/lib-components/Input/TSwitchInput.vue: -------------------------------------------------------------------------------- 1 | 69 | 70 | 162 | 163 | 164 | -------------------------------------------------------------------------------- /src/lib-components/Input/TTextAreaInput.vue: -------------------------------------------------------------------------------- 1 |