mirror of
https://github.com/tabler/tabler.git
synced 2025-12-21 17:34:25 +04:00
Compare commits
51 Commits
precommit-
...
v1.2.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8abd2a8d20 | ||
|
|
226f9bd202 | ||
|
|
255bea88b1 | ||
|
|
8525276984 | ||
|
|
f3182c6538 | ||
|
|
6d6d1bde4c | ||
|
|
2b6d6b184b | ||
|
|
5b2ee97aa7 | ||
|
|
681f7a5fed | ||
|
|
9910dd0dde | ||
|
|
8d4f8d07c3 | ||
|
|
199f39a52e | ||
|
|
94bea005a4 | ||
|
|
0d501e9017 | ||
|
|
00e9c06f11 | ||
|
|
52710a339a | ||
|
|
6c566cf7b1 | ||
|
|
523f288c8f | ||
|
|
864619201e | ||
|
|
f9e4da2fb0 | ||
|
|
c70806a9db | ||
|
|
44250db908 | ||
|
|
137e5be8f2 | ||
|
|
ffdf712f8a | ||
|
|
4846828f39 | ||
|
|
e8e3857b00 | ||
|
|
91b026507b | ||
|
|
f9013873b9 | ||
|
|
ddcd3a79e1 | ||
|
|
c20d076b74 | ||
|
|
042e50f979 | ||
|
|
e14e4921b5 | ||
|
|
d61cddb3d6 | ||
|
|
0accf60a63 | ||
|
|
d3daf7a5db | ||
|
|
8ac0742cc7 | ||
|
|
f94b153f7f | ||
|
|
74e5d26c20 | ||
|
|
9a9dedf1b4 | ||
|
|
e704a5a946 | ||
|
|
dd26b62607 | ||
|
|
9fceadd422 | ||
|
|
9c368702b4 | ||
|
|
3fc7b84fc4 | ||
|
|
b17b488c96 | ||
|
|
9bbcb99b90 | ||
|
|
215eaa4acb | ||
|
|
92a3afe492 | ||
|
|
19a3d20fad | ||
|
|
8cd7b186b7 | ||
|
|
be1f3d1c1f |
@@ -10,7 +10,7 @@ import * as prettier from "prettier";
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url))
|
||||
|
||||
const docs = sync(join(__dirname, '..', 'docs', '**', '*.mdx'))
|
||||
const docs = sync(join(__dirname, '..', 'docs', '**', '*.md'))
|
||||
|
||||
async function formatHTML(htmlString) {
|
||||
try {
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": minor
|
||||
---
|
||||
|
||||
Add gradient background utilities
|
||||
5
.changeset/beige-apricots-pretend.md
Normal file
5
.changeset/beige-apricots-pretend.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Add SRI hashes to scripts and styles
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Rollback accordion component structure
|
||||
@@ -5,6 +5,6 @@
|
||||
"fixed": [],
|
||||
"linked": [],
|
||||
"access": "public",
|
||||
"baseBranch": "main",
|
||||
"baseBranch": "dev",
|
||||
"ignore": []
|
||||
}
|
||||
|
||||
5
.changeset/few-donuts-repeat.md
Normal file
5
.changeset/few-donuts-repeat.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Add "text features" menu item
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Add Bootstrap components to Tabler JS
|
||||
5
.changeset/forty-ties-fail.md
Normal file
5
.changeset/forty-ties-fail.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Correct `aria-label` of app menu link
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
---
|
||||
|
||||
Replace HTML `alt` attribute to `aria-title` used on SVG element
|
||||
5
.changeset/lemon-penguins-sin.md
Normal file
5
.changeset/lemon-penguins-sin.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Fix color badge in navbar menu
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
---
|
||||
|
||||
Update modal examples
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Apply border radius to `tom-select` on focus
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
"preview": patch
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Add missing `tw` entry in `flags.json`
|
||||
|
||||
5
.changeset/popular-hairs-unite.md
Normal file
5
.changeset/popular-hairs-unite.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@tabler/preview": patch
|
||||
---
|
||||
|
||||
Delete missing demo RTL style
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Minor spelling and grammar improvements to emails docs
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix `autosize` and `input mask` plugins to use window scope
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Improve README
|
||||
5
.github/workflows/lockfiles.yaml
vendored
5
.github/workflows/lockfiles.yaml
vendored
@@ -1,6 +1,7 @@
|
||||
name: Changed lock files
|
||||
on:
|
||||
pull_request: null
|
||||
pull_request_target:
|
||||
types: [opened, reopened]
|
||||
|
||||
permissions:
|
||||
pull-requests: read
|
||||
@@ -14,7 +15,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Prevent lock file change
|
||||
uses: xalvarez/prevent-file-change-action@v1
|
||||
uses: xalvarez/prevent-file-change-action@v2
|
||||
with:
|
||||
githubToken: ${{ secrets.GITHUB_TOKEN }}
|
||||
pattern: Gemfile.lock|pnpm-lock.json
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -35,4 +35,5 @@ package-lock.json
|
||||
|
||||
demo/
|
||||
dist/
|
||||
packages-zip/
|
||||
packages-zip/
|
||||
.env
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"bracketSpacing": true,
|
||||
"jsxSingleQuote": false,
|
||||
"printWidth": 240,
|
||||
"printWidth": 320,
|
||||
"proseWrap": "always",
|
||||
"semi": false,
|
||||
"singleQuote": false,
|
||||
|
||||
520
CHANGELOG.md
520
CHANGELOG.md
@@ -1,520 +0,0 @@
|
||||
# Changelog
|
||||
|
||||
## 1.0.0 - 2025-01-28
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- c276a8b: Add new `Tag` component
|
||||
- d380224: Add customizable Star Ratings component using `star-rating.js` library
|
||||
- 47cd6c1: Add `flags.html` page with list of all flags
|
||||
- be67ab6: Update CSS class from `text-muted` to `text-secondary` for better Bootstrap compatibility
|
||||
- 080c746: Adding `alerts.html` page with example of alerts.
|
||||
- b381273: Change primary color value to new Tabler branding
|
||||
- 75619dd: Unify dark mode with latest Bootstrap API and improve dark mode elements
|
||||
- cc82dbf: New Chat component
|
||||
- 5a03643: Adjusting form element sizes for enhanced mobile devices compatibility
|
||||
- be14607: Add new color picker component using `coloris.js` library
|
||||
- d046570: Update Tabler Icons to version 2.23 with 18 new icons added
|
||||
- 5488c50: New page with payment providers: `payment-providers.html`
|
||||
- 5488c50: Add support for new payment providers: 2c2p, Adyen, Affirm, Alipay Plus, Allegro Pay, Amazon Pay, Apple Pay, Autopay, Binance USD, Bkash, Cash App, Chime, EasyPaisa, Ethereum, Google Pay, HubSpot, iDeal, Litecoin, Mercado Pago, MetaMask, MoneyGram, OpenSea, Payconiq, Payka, Payline, PayPo, Paysafe, Poli, Revolut Pay, Samsung Pay, Shop Pay, Solana, Spingo, Stax, Tether, True USD, Venmo, WeChat Pay, Wise, Zelle
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 293d0a4: Change Twitter to X brand
|
||||
- fd0935a: Updated link to icons documentation
|
||||
- 1cf27dc: Dependencies update
|
||||
- 041f4e4: Order menu items alphabetically
|
||||
- 20cad01: Automatically retrieve and display the changelog from the CHANGELOG.md file.
|
||||
- 34f3efc: Initialize Visual Studio Code config
|
||||
- 7ba7717: Make horizontal rule direction aware
|
||||
- 063ef58: Update Tabler Illustrations to v1.5
|
||||
- 5e2c975: Update Tabler Icons to v3.29.0
|
||||
- 9d5f7ca: Remove unused dependencies from `package.json`
|
||||
- be69fd6: Replace Jekyll with Eleventy
|
||||
- 2f5fad6: Dependencies update
|
||||
- dfd7c88: Update TinyMCE to v7.0
|
||||
- 056df18: Fix text color in dark version of navbar
|
||||
- 17327dc: Remove invalid `z-index` setting for dropdowns
|
||||
- 4ff077a: Update Tabler Icons to version 2.21 with 18 new icons added
|
||||
- 867c8dd: Update Tabler Emails to v2.0
|
||||
- d8605f2: Init changelog script
|
||||
- 89c6234: Adding Two-Step Verification Pages
|
||||
- f6e885b: Replace `.page-center` with `.my-auto` in single page layouts
|
||||
- 7aa216f: Add border-opacity variable for improved color utility
|
||||
- 88eb413: Fix icon display issues in the Star Ratings component
|
||||
- 78392b6: Fix `color` of disabled `dropdown-item` in Navbar component
|
||||
- 4deb8f4: Bump pnpm/action-setup from 2 to 3
|
||||
- 9015472: Add social icons plugin
|
||||
- 7fe30a1: `Dockerfile` fix
|
||||
- e53942f: Update Jekyll to version 4.3.4
|
||||
- 72f868b: Update Tabler Icons to version 2.20 with 37 new icons added
|
||||
- e0443c0: Add Tabler Illustrations
|
||||
- 5cca710: Update illustrations and enhance SVG handling in HTML
|
||||
- 3a4f10f: Fix ids of custom size star ratings
|
||||
- 7896562: Unify size of avatar, flag and payment components
|
||||
- 1587905: Update icons to v2.42.0
|
||||
- d9e00b2: Update Bootstrap to v5.3.0
|
||||
- bc1d1a3: Set `font-size` of an `i` element with `icon` class in a `button` element
|
||||
- 0195f9b: Dependencies update
|
||||
- a5bf5d3: Fix icons in `form-elements.html`
|
||||
- 736410c: Update Tabler Icons to v3.28.1
|
||||
- 3f516ea: Fix `rgba` color values in `_variables.scss`
|
||||
- e91884e: Fix description of alerts with a description
|
||||
- 90cc744: Fix colors of disabled `.ts-control`
|
||||
- 1801e41: Center content on error and single page layouts
|
||||
- 45c83ac: Resolve map page issues
|
||||
- faee63c: Improve base font family loading
|
||||
- 5e7e0dd: Introduce Docker Compose Config to build and run Ttabler locally
|
||||
- c293a66: Fix `@charset` CSS declaration in bundle.
|
||||
- cb4a681: Update `_navbar.scss` with disabled dropdown menu items color
|
||||
- af41fb3: Update Tabler Icons to v3.17.0
|
||||
- 6cbe888: Update `@tabler/icons` to v3.0
|
||||
- 0e4bf5f: Refactor data structure by converting YAML files to JSON
|
||||
- 82cf257: Increase `z-index` of `ts-dropdown` to prevent overlapping by buttons
|
||||
- 4b4b4f6: Adding punctuation to `SECURITY.md`
|
||||
- a0a2d52: Fix form controls bugs in dark mode
|
||||
- f45b697: Fix padding in code blocks
|
||||
- 4de166d: Unified Box Shadows with Bootstrap Compatibility
|
||||
- 87bf2f5: Remove duplicated setting of color in `th` element
|
||||
- 5dc45aa: Fix layout of search results for small and medium screens
|
||||
- 4ae0358: Remove `text-decoration` on hovering `a` element with class having `icon` class
|
||||
- e798eb6: Fix small typo in tables docs
|
||||
- 1c1d0c9: Improve documentation for alerts
|
||||
- 371ef84: Bump `pnpm/action-setup` from 3 to 4
|
||||
- 8421fc2: Update dependencies
|
||||
- 0625f5f: Update Tabler Icons to version 2.22 with 18 new icons added
|
||||
- ba65fc3: Update devDependencies
|
||||
- a43ded4: Add All Contributions package to project for easy contribution tracking
|
||||
- 2f622c9: Set value of `$font-family-monospace` as default
|
||||
- 2c7c448: Refactor Dockerfile and package.json
|
||||
- 5ec7f05: Resolved light dropdown issue on dark theme
|
||||
- b0b07b9: Enhance documentation
|
||||
- 0f129b1: Update Tabler Icons to version 2.19 with 18 new icons added
|
||||
- 507df7b: Fix cells with inline icons
|
||||
- 0e5b44a: Fix `color` of disabled `nav-link` in `nav-bordered`
|
||||
- 65c1300: Fix the `z-index` value of the `nav-tab` inside `card-tab` #1933
|
||||
- 8552a46: Switch from `npm` to `pnpm` for faster package installation
|
||||
- 4a9e40d: Increase contrast of active `dropdown-item` in vertical layout
|
||||
- 17ebdf4: Update documentation for Tabler components
|
||||
- 4c88481: Add variable to configure `avatar-list` spacing
|
||||
- df46ee7: Do not display empty `fieldset` element
|
||||
- 875cafa: Refactor SCSS variables to use `color.adjust` for improved color manipulation
|
||||
- eb28546: Add Tabler Illustrations
|
||||
- 650d84c: Update required Node.js version to 18 and add `.nvmrc` file
|
||||
- fb659d4: Fix table default background color
|
||||
- f77c712: Avoid SCSS color dependency on `:focus`
|
||||
- 71c68ce: Update changelog configuration and release scripts
|
||||
- 34d124d: Update Tabler Icons to v3.26.0
|
||||
- 4cd9215: Updated Tabler Icons to v3.24.0
|
||||
- 7bb947b: Update Tabler Icons to version 2.18 with 18 new icons added
|
||||
- c75cf55: Update Node.js engine requirement to allow versions >=20
|
||||
- 1c34e8e: Update Tabler Icons to v3.14.0
|
||||
- 289dd3b: Add Prettier to project for consistent code formatting
|
||||
- f83e36c: Upgrade Node.js from version 18 to version 20 for improved performance, security, and feature updates.
|
||||
- b885852: Update Tabler Icons to version 2.25 with 48 new icons added
|
||||
- 53a5117: Fix responsiveness issue in Settings menu
|
||||
- 38504e5: Added 3 new payments from Nepal: Esewa, FonePay, Khalti and Imepay
|
||||
- 35ee14d: Add new Filled section to Icons page
|
||||
- d32f242: Update `bootstrap` to v5.3.1
|
||||
- d82f94e: Update package dependencies to latest versions
|
||||
- 54c5ad0: Fix link to webfont version of Tabler Icons
|
||||
- 94b83d4: Add support for changeset tool for more efficient and organized code changes
|
||||
- c51ff28: Fix colors in date range datepicker
|
||||
|
||||
## `1.0.0-beta24` - 2025-01-11
|
||||
|
||||
- Enhanced documentation.
|
||||
- Updated illustrations and improved SVG handling in HTML.
|
||||
- Updated copyright year in LICENSE file to 2025.
|
||||
- Added marketing pages plugin.
|
||||
|
||||
## `1.0.0-beta23` - 2025-01-07
|
||||
|
||||
- Documentation improvements.
|
||||
- Added countup functionality and updated documentation example.
|
||||
- Do not display empty `<fieldset>`.
|
||||
- Set font-size of webfont icon inside a button.
|
||||
- Ordered menu items alphabetically.
|
||||
- Marked value of `$font-family-monospace` as `!default`.
|
||||
- Fixed unpkg links to static-files icons.
|
||||
- Fixed description of alerts with a description.
|
||||
- Fixed layout of search results for small and medium screens.
|
||||
- Removed invalid z-index setting for dropdown.
|
||||
- Fixed IDs of custom size star ratings.
|
||||
- Removed text-decoration on hover for elements with child icons.
|
||||
- Fixed link to webfont icons.
|
||||
- Updated color reference links in UI component documentation.
|
||||
- Fixed typo in browser support documentation summary.
|
||||
- Enhanced Figma plugin documentation with detailed usage instructions.
|
||||
- Added documentation for Tabler Illustrations and updated index with a link.
|
||||
- Enhanced documentation for various UI and icon sections.
|
||||
- Added new documentation files for icons and UI components; restructured existing files.
|
||||
- Updated documentation structure and content for icons and UI components.
|
||||
- Removed outdated `menu.json` and added `index.mdx` files for UI documentation structure.
|
||||
- General docs update.
|
||||
- Increased contrast of active dropdown-item in vertical layout.
|
||||
- Removed duplicated color setting in table headers.
|
||||
- Increased `z-index` of `ts-dropdown`.
|
||||
- Added social icons plugin.
|
||||
- Described variables for datagrid in docs.
|
||||
- Fixed multiple documentation issues.
|
||||
- Removed unused config from the code.
|
||||
- Fixed links to Tabler Icons.
|
||||
- Updated dark image.
|
||||
- Updated screenshot.
|
||||
- Fixed icon issues.
|
||||
- Fixed URL in documentation.
|
||||
|
||||
## `1.0.0-beta22` - 2025-01-02
|
||||
|
||||
- Fixed `@charset` CSS declaration in bundle.
|
||||
- Fixed cells with inline icons.
|
||||
- Fixed padding in code blocks.
|
||||
- Fixed colors in date range datepicker.
|
||||
- Fixed icon display issues in the Star Ratings component.
|
||||
- Fixed `z-index` value of the `nav-tab` inside `card-tab`.
|
||||
- Fixed wrong gray colors.
|
||||
- Fixed incorrect CDN URL in `webfont.mdx`.
|
||||
- Ensured border color works in dark mode.
|
||||
- Replaced `.page-center` with `.my-auto` in single-page layouts.
|
||||
- Updated Tabler Emails to v2.0.
|
||||
- Updated Tabler Icons to v3.26.0.
|
||||
- Updated docs structure.
|
||||
- Updated `download.mdx`.
|
||||
- Updated Node.js to version 20.
|
||||
- Improved base font family.
|
||||
- Made horizontal rule direction-aware.
|
||||
- Added new payment providers.
|
||||
- Read changelog from `CHANGELOG.md` file.
|
||||
- Initialized VS Code configuration.
|
||||
|
||||
## `1.0.0-beta21` - 2024-09-8
|
||||
|
||||
- Updated dependencies.
|
||||
- Updated Tabler Icons to v3.14.0 and the import script.
|
||||
- Fixed invisible scrollbar in dark mode when navigating the preview.
|
||||
- Styled `btn-close` specifically for `.modal-header`.
|
||||
- Added proper borders to the ribbon start class.
|
||||
- Changed brand color.
|
||||
- Included `docs` in the `npm` package.
|
||||
- Added Tabler Illustrations.
|
||||
- Fixed use of the secondary color in specific form elements.
|
||||
- Introduced Docker Compose Config for local Tabler builds.
|
||||
- Allowed usage of `tinymce` v7.x as a peer dependency.
|
||||
- Updated TinyMCE to v7.0.
|
||||
- Rebranded Twitter to X.
|
||||
- Replaced undraw illustrations with Tabler Illustrations.
|
||||
- Added punctuation to `SECURITY.md`.
|
||||
- Updated `_navbar.scss` to correct disabled dropdown menu item colors.
|
||||
- Removed unused packages.
|
||||
- Fixed map pages.
|
||||
- Resolved issues with toasts in dark mode.
|
||||
- Fixed alert background prefix.
|
||||
- Corrected a typo in CHANGELOG.md.
|
||||
- Fixed radial chart issue.
|
||||
- Added documentation on running the site locally in Site README.
|
||||
- Updated colors in `colors.mdx`.
|
||||
- Fixed dynamic SCSS prefix in mixins.
|
||||
- Changed `<h1>` to `<div>` in `navbar-logo.html`.
|
||||
- Resolved vertical centering on error pages.
|
||||
- Fixed navbar menu issues.
|
||||
- Added `background-clip: border-box` to `.dropdown-menu` class.
|
||||
- Replaced `href="#"` with `href="javascript:void(0)"`.
|
||||
- Fixed disabled CSS class for links.
|
||||
- Addressed missing variables and minor color adjustments.
|
||||
- Improved heights, scrolls, and layouts in Docs examples.
|
||||
- Fixed flags display in preview.
|
||||
|
||||
## `1.0.0-beta20` - 2023-08-24
|
||||
|
||||
- Update `bootstrap` to v5.3.1
|
||||
- Add new `Chat` component
|
||||
- Add new `Tag` component
|
||||
- Add customizable Star Ratings component using `star-rating.js` library
|
||||
- Add new color picker component using `coloris.js` library
|
||||
- Add `alerts.html` page with example of alerts.
|
||||
- Add `flags.html` page with list of all flags
|
||||
- Add Two-Step Verification Pages
|
||||
- Add variable to configure `avatar-list` spacing
|
||||
- Unify dark mode with latest Bootstrap API and improve dark mode elements
|
||||
- Unify Box Shadows with Bootstrap Compatibility
|
||||
- Avoid SCSS color dependency on `:focus`
|
||||
- Update CSS class from `text-muted` to `text-secondary` for better Bootstrap compatibility
|
||||
- Fix text color in dark version of navbar
|
||||
- Adjusting form element sizes for enhanced mobile devices compatibility
|
||||
- Resolved light dropdown issue on dark theme
|
||||
- Update Tabler Icons to version 2.32 with 48 new icons added
|
||||
- Fix table default background color
|
||||
- Fix responsiveness issue in Settings menu
|
||||
- Update required Node.js version to 18 and add `.nvmrc` file
|
||||
- Add support for changeset tool for more efficient and organized code changes
|
||||
- `Dockerfile` fix
|
||||
- Switch from `npm` to `pnpm` for faster package installation
|
||||
|
||||
## `1.0.0-beta19` - 2023-05-15
|
||||
|
||||
- Add customizable Star Ratings component using `star-rating.js` library (#1571)
|
||||
- Add new "Filled" section to Icons page (#1574)
|
||||
- Fix form controls bugs in dark mode (#1573)
|
||||
- Fix text color in dark version of navbar (#1569)
|
||||
- Changelog update
|
||||
|
||||
## `1.0.0-beta18` - 2023-05-14
|
||||
|
||||
- new page: Cookie banner
|
||||
- Unify dark mode with latest Bootstrap API and improve dark mode elements (#1561)
|
||||
- Update Tabler Icons to version 2.18 with 18 new icons added (#1560)
|
||||
- Switch from `npm` to `pnpm` for faster package installation (#1559)
|
||||
- Add Prettier to project for consistent code formatting (#1558)
|
||||
- Update required Node.js version to 18 and add `.nvmrc` file (#1555)
|
||||
- Add All Contributions package to project for easy contribution tracking (#1556)
|
||||
- Add support for changeset tool for more efficient and organized code changes (#1553)
|
||||
- Fix bug where `border-1`, `border-2`, etc don't work (#1526)
|
||||
- Fix indeterminate input background color (#1536)
|
||||
- Update Bootstrap to `5.3.0-alpha3` (#1543)
|
||||
- `tom-select` dark mode styling fixes
|
||||
- Advanced udage of `tom-select` (#1480)
|
||||
- Fix Dropdown menu in rtl mode (#801)
|
||||
- Fix `tom-select` dropdown will be shaded in table-responsive (#1409)
|
||||
- Remove overflow scroll from body
|
||||
- Fix avatars overlap transparently (#1464)
|
||||
- Fix TinyMCE dropdown icon list transparent (#1426)
|
||||
- Dark mode lite colors improvement
|
||||
- Fix non full width selects (#1392)
|
||||
|
||||
## `1.0.0-beta17` - 2023-01-28
|
||||
|
||||
- update `bootstrap` to v5.3.0
|
||||
- update icons to v2.1.2
|
||||
- add 72 new brands, browsers logos update
|
||||
- new `Trial ended` page
|
||||
- new `Page loader` page
|
||||
- new `Profile` page
|
||||
- headings fix
|
||||
- dropdown background color fix
|
||||
- fix rgba conversion bug
|
||||
- fix autofill text color, not matching in dark mode
|
||||
- update license
|
||||
- header html5 tags
|
||||
- add input with appended `<kbd>`
|
||||
- `bootstrap` import fix
|
||||
- font improvements
|
||||
- change `$body-color` to CSS variable
|
||||
- scrollbars improvements
|
||||
- move `@tabler/icons` to `dev-dependencies`
|
||||
- fix #1370: avatar stacked list is not stacked anymore
|
||||
|
||||
## `1.0.0-beta16` - 2022-11-12
|
||||
|
||||
- new `Photogrid` page
|
||||
- `Steps` component improvements
|
||||
- fix #1348: Make job listing responsive for smaller devices
|
||||
- fix #1357: buttons group not active
|
||||
- fix #1352: fix deprecation warning
|
||||
- fix #1180: number input with `form-control-sm` looks weird
|
||||
- fix #1328: color input should show different color for inner check symbol on white ellipse
|
||||
- fix #1355 - missing font sizes
|
||||
- update icons to v1.111.0
|
||||
- homepage navbar fix
|
||||
- fix #1262 - `.bg-opacity-xx` class is not functioning properly
|
||||
|
||||
## `1.0.0-beta15` - 2022-11-01
|
||||
|
||||
- new `badges` page
|
||||
- `<kbd>` styling
|
||||
- update icons to v1.109.0
|
||||
- `tom-select` border fix
|
||||
- exclude `playgrounds` from build
|
||||
- update jekyll to v4.3.1
|
||||
- fix: facebook color update
|
||||
- navbar aria atributes fixes
|
||||
- fix #808 - `navbar-menu` and `sidebar-menu` has the same `id`
|
||||
- fix #1335 - missing color variables usage in `alert` and `btn-ghost-*`
|
||||
- move border style to CSS variables
|
||||
- add missing forms
|
||||
- `btn-actions` fixes
|
||||
- replace `$text-muted` to css variable
|
||||
|
||||
## `1.0.0-beta14` - 2022-10-21
|
||||
|
||||
- fix active items in dark mode
|
||||
- update Jekyll to newest version
|
||||
|
||||
## `1.0.0-beta13` - 2022-10-18
|
||||
|
||||
- update Bootstrap to 5.2.1, update dependencies
|
||||
- new `tracking` component
|
||||
- new radio button version of `form-imagecheck`
|
||||
- update icons to v1.105.0
|
||||
- dark mode improvements
|
||||
- corrects the spelling of New Zealand (#1318)
|
||||
- remove `$border-color-dark`
|
||||
- fix #1301 - code snippets in docs look bad in dark mode
|
||||
- fix #1305 - different default link color for dark mode
|
||||
- fix popover background in dark mode
|
||||
- fix button default border color
|
||||
- fix `form-imagecheck` bg in dark mode
|
||||
- navbar logo fix
|
||||
- move card ribbons config to variables
|
||||
- navbar border fix
|
||||
- dark mode active fix
|
||||
- using globalThis instead of window (#1315)
|
||||
- fix #1210 - lastmod not generated for pages in `sitemap.xml`
|
||||
- fix card border in dark mode
|
||||
- fix #895 - background color overwrites background image
|
||||
- fix #1302 - wrong card header in dark mode
|
||||
- fix #1303 - wrong color when hovering over `selectgroup` in dark mode
|
||||
- fix #1308 - bad coloring in table in dark mode
|
||||
- fix #1273 - datepicker background color broken
|
||||
- fix `$prefix` hard coded `layout/_dark.scss`
|
||||
- fix #1275 - remove last border-right on progress bar
|
||||
- fix #1261 - broken offcanvas bg
|
||||
|
||||
## `1.0.0-beta12` - 2022-09-19
|
||||
|
||||
- new "Job listing" page
|
||||
- new "Sign in with cover" page
|
||||
- new "Logs" page
|
||||
- new `progressbg` component
|
||||
- add a lot of CSS variables
|
||||
- add Dockerfile with alpine base
|
||||
- add icon pulse/tada/rotate animations
|
||||
- use `:host` in selectors to support Web Components
|
||||
- use dark table variant colors in dark mode (#1200)
|
||||
- update Tabler Icons to v1.96
|
||||
- change `space-y` component
|
||||
- headings, shadows and borders unify
|
||||
- toggle TinyMCE dark mode and skin based on the set Tabler theme
|
||||
- fix `card-footer` background
|
||||
- fix headers weight
|
||||
- fix transparent hover background in pagination
|
||||
- fix dark mode card text color
|
||||
- fix `--#{$prefix}card-bg` is undefined
|
||||
- fix global variable for `.card` and `.btn`
|
||||
- fix code sample in the customize tabler docs
|
||||
- fix form elements demo page radio buttons
|
||||
- replace `gulp-minify` with `gulp-terser`
|
||||
|
||||
## `1.0.0-beta11` - 2022-07-05
|
||||
|
||||
- new `Dropzone` component
|
||||
- new `Lightbox` component
|
||||
- new `TinyMCS` component
|
||||
- new `Inline Player` component
|
||||
- new `Pricing table` component
|
||||
- new `Datagrid` component
|
||||
- new optgroup form examples
|
||||
- new settings page
|
||||
- update Tabler Icons to v1.78
|
||||
- added popover docs page
|
||||
- fix: #1125 incorrect chart display in the mobile version
|
||||
- update Bootstrap to 5.2.0
|
||||
|
||||
## `1.0.0-beta10` - 2022-04-29
|
||||
|
||||
- new `datatable` component
|
||||
- update Tabler Icons to v1.67
|
||||
- fix: #1024 - fix Tom-select in dark mode
|
||||
- new carousel indicators: dots, vertical, thumbs (#1101)
|
||||
- replace !important modifier with more specific selectors (#1100)
|
||||
- new `FAQ` page
|
||||
|
||||
## `1.0.0-beta9` - 2022-02-26
|
||||
|
||||
- fix: #1061 - list group item colors in light and dark modes
|
||||
- new `tasks` dashboard
|
||||
- fix: #1059 - upload button in form element in dark view has problem
|
||||
- fix: #1052 - card background icon is practically invisible
|
||||
- remove Inter font and use default font system stack
|
||||
- fix: #1018 - vector map not working
|
||||
- fix: #1035 - wrong background color of hovered list group items in dark mode
|
||||
- dependencies update
|
||||
- add `font-display: swap;` to improve font loading
|
||||
- new `Boxed` layout
|
||||
|
||||
## `1.0.0-beta8` - 2022-02-05
|
||||
|
||||
- update dependencies
|
||||
- new vector maps demos
|
||||
- fixes update map on resize
|
||||
- docs improvement
|
||||
- replace `badge` with `status-dot` in `navbar-notifications.html`
|
||||
- map tooltip fixes
|
||||
|
||||
## `1.0.0-beta7` - 2022-02-05
|
||||
|
||||
- fix: #1019 - project-overview.html link not working
|
||||
- fix: #1010 - card with bottom tabs has incorrect border radius
|
||||
- uptime monitor mobile fixes
|
||||
- navbar dark button fix
|
||||
- `tabler-icons` link
|
||||
- autoloading webfonts
|
||||
- cards fixes, new cards demos
|
||||
- ruby dependencies update
|
||||
- RTL stylesheet fixes
|
||||
- new card action demos
|
||||
|
||||
## `1.0.0-beta6` - 2022-01-18
|
||||
|
||||
- pricing cards fix
|
||||
- fix bug `fw-...`, `.fs-...` is missed (#987)
|
||||
- avatar class fix
|
||||
- fix bug #903 `litepicker` with date range not having correct border
|
||||
- page wrapper fix
|
||||
- fix #900 `is-invalid-lite` class is not working under `was-validated` form class
|
||||
- update `@tabler/icons` to version 1.48
|
||||
- fix #960 - Badges not honoring font sizes
|
||||
- fix #959 - `node-sass` does not properly compile nested media queries
|
||||
- update package dependencies to newest version
|
||||
|
||||
## `1.0.0-beta5` - 2021-12-07
|
||||
|
||||
**Tabler has finally lived to see dark mode! 🌝🌚**
|
||||
|
||||
- **Dark mode enabled!**
|
||||
- add more cursors (#947)
|
||||
- fix #892 - media queries need to be nested when negating
|
||||
- update `@tabler/icons` to newest version
|
||||
- move optional dependencies to peerDependencies (#924)
|
||||
- move deployment to Github Actions (#934)
|
||||
- table border fixes
|
||||
- antialiased fix
|
||||
- update `@tabler/icons` to version 1.42
|
||||
- change default font to 'Inter'
|
||||
- colors unify
|
||||
- add `tom-select` and remove `choices.js`
|
||||
|
||||
## `1.0.0-beta4` - 2021-10-24
|
||||
|
||||
- upgrade required node.js version to 14
|
||||
- upgrade Bootstrap to 5.1
|
||||
- upgrade dependencies
|
||||
- fix #775 - litepicker not initializing
|
||||
- fix `nouislider` import in dev
|
||||
|
||||
## `1.0.0-beta3` - 2021-05-08
|
||||
|
||||
- upgrade Bootstrap to 5.0
|
||||
- upgrade dependencies
|
||||
- change `$border-radius-pill` variable
|
||||
- badge vertical align fix
|
||||
|
||||
## `1.0.0-beta2` - 2021-03-29
|
||||
|
||||
- update dependencies
|
||||
- `li` marker fix
|
||||
- page wrapper, nav fixes
|
||||
- scripts optimize, remove `capture_once`
|
||||
- `page-body` fixes
|
||||
- layout navbar fix
|
||||
- typography fix
|
||||
- ribbon fix
|
||||
- charts label fixes
|
||||
- charts docs
|
||||
|
||||
## `1.0.0-beta` - 2021-02-17
|
||||
|
||||
**Initial beta release of Tabler v1.0! Lots more coming soon though 😁**
|
||||
|
||||
- update Bootstrap to 5.0.0-beta2
|
||||
- update other dependencies.
|
||||
@@ -6,7 +6,7 @@ import { readFileSync, writeFileSync } from 'node:fs';
|
||||
import { join, dirname, basename } from 'node:path';
|
||||
import { fileURLToPath } from 'node:url'
|
||||
import { sync } from 'glob';
|
||||
import banner from '@repo/banner';
|
||||
import banner from '../../shared/banner/index.mjs';
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url))
|
||||
|
||||
|
||||
107
core/.build/generate-sri.js
Normal file
107
core/.build/generate-sri.js
Normal file
@@ -0,0 +1,107 @@
|
||||
const crypto = require('node:crypto');
|
||||
const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
const sh = require('shelljs');
|
||||
|
||||
sh.config.fatal = true
|
||||
|
||||
const configFile = path.join(__dirname, '../../shared/data/sri.json')
|
||||
|
||||
const files = [
|
||||
{
|
||||
file: 'dist/css/tabler.min.css',
|
||||
configPropertyName: 'css'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler.rtl.min.css',
|
||||
configPropertyName: 'css-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-flags.min.css',
|
||||
configPropertyName: 'css-flags'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-flags.rtl.min.css',
|
||||
configPropertyName: 'css-flags-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-marketing.min.css',
|
||||
configPropertyName: 'css-marketing'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-marketing.rtl.min.css',
|
||||
configPropertyName: 'css-marketing-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-payments.min.css',
|
||||
configPropertyName: 'css-payments'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-payments.rtl.min.css',
|
||||
configPropertyName: 'css-payments-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-props.min.css',
|
||||
configPropertyName: 'css-props'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-props.rtl.min.css',
|
||||
configPropertyName: 'css-props-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-themes.min.css',
|
||||
configPropertyName: 'css-themes'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-themes.rtl.min.css',
|
||||
configPropertyName: 'css-themes-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-socials.min.css',
|
||||
configPropertyName: 'css-socials'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-socials.rtl.min.css',
|
||||
configPropertyName: 'css-socials-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-vendors.min.css',
|
||||
configPropertyName: 'css-vendors'
|
||||
},
|
||||
{
|
||||
file: 'dist/css/tabler-vendors.rtl.min.css',
|
||||
configPropertyName: 'css-vendors-rtl'
|
||||
},
|
||||
{
|
||||
file: 'dist/js/tabler.min.js',
|
||||
configPropertyName: 'js'
|
||||
},
|
||||
{
|
||||
file: 'dist/js/tabler-theme.min.js',
|
||||
configPropertyName: 'js-theme'
|
||||
},
|
||||
// {
|
||||
// file: 'dist/preview/css/demo.min.css',
|
||||
// configPropertyName: 'demo-css'
|
||||
// },
|
||||
// {
|
||||
// file: 'dist/preview/js/demo.min.js',
|
||||
// configPropertyName: 'demo-js'
|
||||
// },
|
||||
]
|
||||
|
||||
for (const { file, configPropertyName } of files) {
|
||||
fs.readFile(path.join(__dirname, '..', file), 'utf8', (error, data) => {
|
||||
if (error) {
|
||||
throw error
|
||||
}
|
||||
|
||||
const algorithm = 'sha384'
|
||||
const hash = crypto.createHash(algorithm).update(data, 'utf8').digest('base64')
|
||||
const integrity = `${algorithm}-${hash}`
|
||||
|
||||
console.log(`${configPropertyName}: ${integrity}`)
|
||||
|
||||
sh.sed('-i', new RegExp(`^(\\s+"${configPropertyName}":\\s+["'])\\S*(["'])`), `$1${integrity}$2`, configFile)
|
||||
})
|
||||
}
|
||||
@@ -4,13 +4,13 @@ import { fileURLToPath } from 'node:url'
|
||||
import { babel } from '@rollup/plugin-babel'
|
||||
import { nodeResolve } from '@rollup/plugin-node-resolve'
|
||||
import replace from '@rollup/plugin-replace'
|
||||
import banner from '@repo/banner'
|
||||
import banner from '../../shared/banner/index.mjs'
|
||||
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url))
|
||||
|
||||
const ESM = process.env.ESM === 'true'
|
||||
const THEME = process.env.THEME === 'true'
|
||||
|
||||
let destinationFile = `tabler${ESM ? '.esm' : ''}`
|
||||
const external = []
|
||||
const plugins = [
|
||||
babel({
|
||||
@@ -27,8 +27,9 @@ plugins.push(
|
||||
nodeResolve()
|
||||
)
|
||||
|
||||
const destinationFile = `tabler${THEME ? '-theme' : ''}${ESM ? '.esm' : ''}`
|
||||
const rollupConfig = {
|
||||
input: path.resolve(__dirname, `../js/tabler.${ESM ? 'esm' : 'umd'}.js`),
|
||||
input: path.resolve(__dirname, `../js/tabler${THEME ? '-theme' : ''}.js`),
|
||||
output: {
|
||||
banner: banner(),
|
||||
file: path.resolve(__dirname, `../dist/js/${destinationFile}.js`),
|
||||
@@ -40,7 +41,7 @@ const rollupConfig = {
|
||||
}
|
||||
|
||||
if (!ESM) {
|
||||
rollupConfig.output.name = 'tabler'
|
||||
rollupConfig.output.name = `tabler${THEME ? '-theme' : ''}`
|
||||
}
|
||||
|
||||
export default rollupConfig
|
||||
@@ -1,5 +1,40 @@
|
||||
# @tabler/core
|
||||
|
||||
## 1.2.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- c59bc9d: Add gradient background utilities
|
||||
- f9e4da2: Add new apps card with brand icons in navbar
|
||||
- 92a3afe: Replaced TinyMCE with HugeRTE to address license violation
|
||||
- 199f39a: Update Bootstrap to version 5.3.5
|
||||
- 9bbcb99: Add theme settings wizard
|
||||
- b17b488: Add steps light colors
|
||||
- 215eaa4: Add Turbo library integration
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- aea3b0a: Rollback accordion component structure
|
||||
- 3fc7b84: Add space between page numbers in pagination
|
||||
- 2f8a372: Add Bootstrap components to Tabler JS
|
||||
- 9fceadd: Fix tooltip colors in vector maps
|
||||
- 44250db: Update avatar size variable to support list size configuration
|
||||
- be1f3d1: Fix broken shape in South Korea flag
|
||||
- c20d076: Refactor `border-radius` in components to use CSS variables
|
||||
- 042e50f: Update disabled color variables in navbars
|
||||
- 473fa38: Apply border radius to `tom-select` on focus
|
||||
- 8646192: Add avatars page with various demos of avatars
|
||||
- 922bb03: Minor spelling and grammar improvements to emails docs
|
||||
- 44250db: Update avatar size variable to support list size configuration
|
||||
- ddcd3a7: Refactor SCSS for alerts and close button styles
|
||||
- e3d68d6: Fix `autosize` and `input mask` plugins to use window scope
|
||||
- 4846828: Fix scrollbar color mixin to use body color variable
|
||||
- 6b6617a: Improve README
|
||||
- 94bea00: Make scrollbar track transparent
|
||||
- e14e492: Fix scrollbar jumps when content is higher than screen
|
||||
- 6d6d1bd: Add responsive font size for form controls on mobile devices
|
||||
- 6c566cf: Add new advanced table example
|
||||
|
||||
## 1.1.1
|
||||
|
||||
### Patch Changes
|
||||
@@ -37,3 +72,523 @@
|
||||
- b28ce9f: Fix vertical alignment in single page and error layouts
|
||||
- 24b944c: Fix `.avatar-upload` double borders
|
||||
- ca4ba14: Fixes navbar styles with new hover effects and color variables
|
||||
|
||||
## 1.0.0 - 2025-01-28
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- c276a8b: Add new `Tag` component
|
||||
- d380224: Add customizable Star Ratings component using `star-rating.js` library
|
||||
- 47cd6c1: Add `flags.html` page with list of all flags
|
||||
- be67ab6: Update CSS class from `text-muted` to `text-secondary` for better Bootstrap compatibility
|
||||
- 080c746: Adding `alerts.html` page with example of alerts.
|
||||
- b381273: Change primary color value to new Tabler branding
|
||||
- 75619dd: Unify dark mode with latest Bootstrap API and improve dark mode elements
|
||||
- cc82dbf: New Chat component
|
||||
- 5a03643: Adjusting form element sizes for enhanced mobile devices compatibility
|
||||
- be14607: Add new color picker component using `coloris.js` library
|
||||
- d046570: Update Tabler Icons to version 2.23 with 18 new icons added
|
||||
- 5488c50: New page with payment providers: `payment-providers.html`
|
||||
- 5488c50: Add support for new payment providers: 2c2p, Adyen, Affirm, Alipay Plus, Allegro Pay, Amazon Pay, Apple Pay, Autopay, Binance USD, Bkash, Cash App, Chime, EasyPaisa, Ethereum, Google Pay, HubSpot, iDeal, Litecoin, Mercado Pago, MetaMask, MoneyGram, OpenSea, Payconiq, Payka, Payline, PayPo, Paysafe, Poli,
|
||||
Revolut Pay, Samsung Pay, Shop Pay, Solana, Spingo, Stax, Tether, True USD, Venmo, WeChat Pay, Wise, Zelle
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 293d0a4: Change Twitter to X brand
|
||||
- fd0935a: Updated link to icons documentation
|
||||
- 1cf27dc: Dependencies update
|
||||
- 041f4e4: Order menu items alphabetically
|
||||
- 20cad01: Automatically retrieve and display the changelog from the CHANGELOG.md file.
|
||||
- 34f3efc: Initialize Visual Studio Code config
|
||||
- 7ba7717: Make horizontal rule direction aware
|
||||
- 063ef58: Update Tabler Illustrations to v1.5
|
||||
- 5e2c975: Update Tabler Icons to v3.29.0
|
||||
- 9d5f7ca: Remove unused dependencies from `package.json`
|
||||
- be69fd6: Replace Jekyll with Eleventy
|
||||
- 2f5fad6: Dependencies update
|
||||
- dfd7c88: Update TinyMCE to v7.0
|
||||
- 056df18: Fix text color in dark version of navbar
|
||||
- 17327dc: Remove invalid `z-index` setting for dropdowns
|
||||
- 4ff077a: Update Tabler Icons to version 2.21 with 18 new icons added
|
||||
- 867c8dd: Update Tabler Emails to v2.0
|
||||
- d8605f2: Init changelog script
|
||||
- 89c6234: Adding Two-Step Verification Pages
|
||||
- f6e885b: Replace `.page-center` with `.my-auto` in single page layouts
|
||||
- 7aa216f: Add border-opacity variable for improved color utility
|
||||
- 88eb413: Fix icon display issues in the Star Ratings component
|
||||
- 78392b6: Fix `color` of disabled `dropdown-item` in Navbar component
|
||||
- 4deb8f4: Bump pnpm/action-setup from 2 to 3
|
||||
- 9015472: Add social icons plugin
|
||||
- 7fe30a1: `Dockerfile` fix
|
||||
- e53942f: Update Jekyll to version 4.3.4
|
||||
- 72f868b: Update Tabler Icons to version 2.20 with 37 new icons added
|
||||
- e0443c0: Add Tabler Illustrations
|
||||
- 5cca710: Update illustrations and enhance SVG handling in HTML
|
||||
- 3a4f10f: Fix ids of custom size star ratings
|
||||
- 7896562: Unify size of avatar, flag and payment components
|
||||
- 1587905: Update icons to v2.42.0
|
||||
- d9e00b2: Update Bootstrap to v5.3.0
|
||||
- bc1d1a3: Set `font-size` of an `i` element with `icon` class in a `button` element
|
||||
- 0195f9b: Dependencies update
|
||||
- a5bf5d3: Fix icons in `form-elements.html`
|
||||
- 736410c: Update Tabler Icons to v3.28.1
|
||||
- 3f516ea: Fix `rgba` color values in `_variables.scss`
|
||||
- e91884e: Fix description of alerts with a description
|
||||
- 90cc744: Fix colors of disabled `.ts-control`
|
||||
- 1801e41: Center content on error and single page layouts
|
||||
- 45c83ac: Resolve map page issues
|
||||
- faee63c: Improve base font family loading
|
||||
- 5e7e0dd: Introduce Docker Compose Config to build and run Ttabler locally
|
||||
- c293a66: Fix `@charset` CSS declaration in bundle.
|
||||
- cb4a681: Update `_navbar.scss` with disabled dropdown menu items color
|
||||
- af41fb3: Update Tabler Icons to v3.17.0
|
||||
- 6cbe888: Update `@tabler/icons` to v3.0
|
||||
- 0e4bf5f: Refactor data structure by converting YAML files to JSON
|
||||
- 82cf257: Increase `z-index` of `ts-dropdown` to prevent overlapping by buttons
|
||||
- 4b4b4f6: Adding punctuation to `SECURITY.md`
|
||||
- a0a2d52: Fix form controls bugs in dark mode
|
||||
- f45b697: Fix padding in code blocks
|
||||
- 4de166d: Unified Box Shadows with Bootstrap Compatibility
|
||||
- 87bf2f5: Remove duplicated setting of color in `th` element
|
||||
- 5dc45aa: Fix layout of search results for small and medium screens
|
||||
- 4ae0358: Remove `text-decoration` on hovering `a` element with class having `icon` class
|
||||
- e798eb6: Fix small typo in tables docs
|
||||
- 1c1d0c9: Improve documentation for alerts
|
||||
- 371ef84: Bump `pnpm/action-setup` from 3 to 4
|
||||
- 8421fc2: Update dependencies
|
||||
- 0625f5f: Update Tabler Icons to version 2.22 with 18 new icons added
|
||||
- ba65fc3: Update devDependencies
|
||||
- a43ded4: Add All Contributions package to project for easy contribution tracking
|
||||
- 2f622c9: Set value of `$font-family-monospace` as default
|
||||
- 2c7c448: Refactor Dockerfile and package.json
|
||||
- 5ec7f05: Resolved light dropdown issue on dark theme
|
||||
- b0b07b9: Enhance documentation
|
||||
- 0f129b1: Update Tabler Icons to version 2.19 with 18 new icons added
|
||||
- 507df7b: Fix cells with inline icons
|
||||
- 0e5b44a: Fix `color` of disabled `nav-link` in `nav-bordered`
|
||||
- 65c1300: Fix the `z-index` value of the `nav-tab` inside `card-tab` #1933
|
||||
- 8552a46: Switch from `npm` to `pnpm` for faster package installation
|
||||
- 4a9e40d: Increase contrast of active `dropdown-item` in vertical layout
|
||||
- 17ebdf4: Update documentation for Tabler components
|
||||
- 4c88481: Add variable to configure `avatar-list` spacing
|
||||
- df46ee7: Do not display empty `fieldset` element
|
||||
- 875cafa: Refactor SCSS variables to use `color.adjust` for improved color manipulation
|
||||
- eb28546: Add Tabler Illustrations
|
||||
- 650d84c: Update required Node.js version to 18 and add `.nvmrc` file
|
||||
- fb659d4: Fix table default background color
|
||||
- f77c712: Avoid SCSS color dependency on `:focus`
|
||||
- 71c68ce: Update changelog configuration and release scripts
|
||||
- 34d124d: Update Tabler Icons to v3.26.0
|
||||
- 4cd9215: Updated Tabler Icons to v3.24.0
|
||||
- 7bb947b: Update Tabler Icons to version 2.18 with 18 new icons added
|
||||
- c75cf55: Update Node.js engine requirement to allow versions >=20
|
||||
- 1c34e8e: Update Tabler Icons to v3.14.0
|
||||
- 289dd3b: Add Prettier to project for consistent code formatting
|
||||
- f83e36c: Upgrade Node.js from version 18 to version 20 for improved performance, security, and feature updates.
|
||||
- b885852: Update Tabler Icons to version 2.25 with 48 new icons added
|
||||
- 53a5117: Fix responsiveness issue in Settings menu
|
||||
- 38504e5: Added 3 new payments from Nepal: Esewa, FonePay, Khalti and Imepay
|
||||
- 35ee14d: Add new Filled section to Icons page
|
||||
- d32f242: Update `bootstrap` to v5.3.1
|
||||
- d82f94e: Update package dependencies to latest versions
|
||||
- 54c5ad0: Fix link to webfont version of Tabler Icons
|
||||
- 94b83d4: Add support for changeset tool for more efficient and organized code changes
|
||||
- c51ff28: Fix colors in date range datepicker
|
||||
|
||||
## `1.0.0-beta24` - 2025-01-11
|
||||
|
||||
- Enhanced documentation.
|
||||
- Updated illustrations and improved SVG handling in HTML.
|
||||
- Updated copyright year in LICENSE file to 2025.
|
||||
- Added marketing pages plugin.
|
||||
|
||||
## `1.0.0-beta23` - 2025-01-07
|
||||
|
||||
- Documentation improvements.
|
||||
- Added countup functionality and updated documentation example.
|
||||
- Do not display empty `<fieldset>`.
|
||||
- Set font-size of webfont icon inside a button.
|
||||
- Ordered menu items alphabetically.
|
||||
- Marked value of `$font-family-monospace` as `!default`.
|
||||
- Fixed unpkg links to static-files icons.
|
||||
- Fixed description of alerts with a description.
|
||||
- Fixed layout of search results for small and medium screens.
|
||||
- Removed invalid z-index setting for dropdown.
|
||||
- Fixed IDs of custom size star ratings.
|
||||
- Removed text-decoration on hover for elements with child icons.
|
||||
- Fixed link to webfont icons.
|
||||
- Updated color reference links in UI component documentation.
|
||||
- Fixed typo in browser support documentation summary.
|
||||
- Enhanced Figma plugin documentation with detailed usage instructions.
|
||||
- Added documentation for Tabler Illustrations and updated index with a link.
|
||||
- Enhanced documentation for various UI and icon sections.
|
||||
- Added new documentation files for icons and UI components; restructured existing files.
|
||||
- Updated documentation structure and content for icons and UI components.
|
||||
- Removed outdated `menu.json` and added `index.mdx` files for UI documentation structure.
|
||||
- General docs update.
|
||||
- Increased contrast of active dropdown-item in vertical layout.
|
||||
- Removed duplicated color setting in table headers.
|
||||
- Increased `z-index` of `ts-dropdown`.
|
||||
- Added social icons plugin.
|
||||
- Described variables for datagrid in docs.
|
||||
- Fixed multiple documentation issues.
|
||||
- Removed unused config from the code.
|
||||
- Fixed links to Tabler Icons.
|
||||
- Updated dark image.
|
||||
- Updated screenshot.
|
||||
- Fixed icon issues.
|
||||
- Fixed URL in documentation.
|
||||
|
||||
## `1.0.0-beta22` - 2025-01-02
|
||||
|
||||
- Fixed `@charset` CSS declaration in bundle.
|
||||
- Fixed cells with inline icons.
|
||||
- Fixed padding in code blocks.
|
||||
- Fixed colors in date range datepicker.
|
||||
- Fixed icon display issues in the Star Ratings component.
|
||||
- Fixed `z-index` value of the `nav-tab` inside `card-tab`.
|
||||
- Fixed wrong gray colors.
|
||||
- Fixed incorrect CDN URL in `webfont.mdx`.
|
||||
- Ensured border color works in dark mode.
|
||||
- Replaced `.page-center` with `.my-auto` in single-page layouts.
|
||||
- Updated Tabler Emails to v2.0.
|
||||
- Updated Tabler Icons to v3.26.0.
|
||||
- Updated docs structure.
|
||||
- Updated `download.mdx`.
|
||||
- Updated Node.js to version 20.
|
||||
- Improved base font family.
|
||||
- Made horizontal rule direction-aware.
|
||||
- Added new payment providers.
|
||||
- Read changelog from `CHANGELOG.md` file.
|
||||
- Initialized VS Code configuration.
|
||||
|
||||
## `1.0.0-beta21` - 2024-09-8
|
||||
|
||||
- Updated dependencies.
|
||||
- Updated Tabler Icons to v3.14.0 and the import script.
|
||||
- Fixed invisible scrollbar in dark mode when navigating the preview.
|
||||
- Styled `btn-close` specifically for `.modal-header`.
|
||||
- Added proper borders to the ribbon start class.
|
||||
- Changed brand color.
|
||||
- Included `docs` in the `npm` package.
|
||||
- Added Tabler Illustrations.
|
||||
- Fixed use of the secondary color in specific form elements.
|
||||
- Introduced Docker Compose Config for local Tabler builds.
|
||||
- Allowed usage of `tinymce` v7.x as a peer dependency.
|
||||
- Updated TinyMCE to v7.0.
|
||||
- Rebranded Twitter to X.
|
||||
- Replaced undraw illustrations with Tabler Illustrations.
|
||||
- Added punctuation to `SECURITY.md`.
|
||||
- Updated `_navbar.scss` to correct disabled dropdown menu item colors.
|
||||
- Removed unused packages.
|
||||
- Fixed map pages.
|
||||
- Resolved issues with toasts in dark mode.
|
||||
- Fixed alert background prefix.
|
||||
- Corrected a typo in CHANGELOG.md.
|
||||
- Fixed radial chart issue.
|
||||
- Added documentation on running the site locally in Site README.
|
||||
- Updated colors in `colors.mdx`.
|
||||
- Fixed dynamic SCSS prefix in mixins.
|
||||
- Changed `<h1>` to `<div>` in `navbar-logo.html`.
|
||||
- Resolved vertical centering on error pages.
|
||||
- Fixed navbar menu issues.
|
||||
- Added `background-clip: border-box` to `.dropdown-menu` class.
|
||||
- Replaced `href="#"` with `href="javascript:void(0)"`.
|
||||
- Fixed disabled CSS class for links.
|
||||
- Addressed missing variables and minor color adjustments.
|
||||
- Improved heights, scrolls, and layouts in Docs examples.
|
||||
- Fixed flags display in preview.
|
||||
|
||||
## `1.0.0-beta20` - 2023-08-24
|
||||
|
||||
- Update `bootstrap` to v5.3.1
|
||||
- Add new `Chat` component
|
||||
- Add new `Tag` component
|
||||
- Add customizable Star Ratings component using `star-rating.js` library
|
||||
- Add new color picker component using `coloris.js` library
|
||||
- Add `alerts.html` page with example of alerts.
|
||||
- Add `flags.html` page with list of all flags
|
||||
- Add Two-Step Verification Pages
|
||||
- Add variable to configure `avatar-list` spacing
|
||||
- Unify dark mode with latest Bootstrap API and improve dark mode elements
|
||||
- Unify Box Shadows with Bootstrap Compatibility
|
||||
- Avoid SCSS color dependency on `:focus`
|
||||
- Update CSS class from `text-muted` to `text-secondary` for better Bootstrap compatibility
|
||||
- Fix text color in dark version of navbar
|
||||
- Adjusting form element sizes for enhanced mobile devices compatibility
|
||||
- Resolved light dropdown issue on dark theme
|
||||
- Update Tabler Icons to version 2.32 with 48 new icons added
|
||||
- Fix table default background color
|
||||
- Fix responsiveness issue in Settings menu
|
||||
- Update required Node.js version to 18 and add `.nvmrc` file
|
||||
- Add support for changeset tool for more efficient and organized code changes
|
||||
- `Dockerfile` fix
|
||||
- Switch from `npm` to `pnpm` for faster package installation
|
||||
|
||||
## `1.0.0-beta19` - 2023-05-15
|
||||
|
||||
- Add customizable Star Ratings component using `star-rating.js` library (#1571)
|
||||
- Add new "Filled" section to Icons page (#1574)
|
||||
- Fix form controls bugs in dark mode (#1573)
|
||||
- Fix text color in dark version of navbar (#1569)
|
||||
- Changelog update
|
||||
|
||||
## `1.0.0-beta18` - 2023-05-14
|
||||
|
||||
- new page: Cookie banner
|
||||
- Unify dark mode with latest Bootstrap API and improve dark mode elements (#1561)
|
||||
- Update Tabler Icons to version 2.18 with 18 new icons added (#1560)
|
||||
- Switch from `npm` to `pnpm` for faster package installation (#1559)
|
||||
- Add Prettier to project for consistent code formatting (#1558)
|
||||
- Update required Node.js version to 18 and add `.nvmrc` file (#1555)
|
||||
- Add All Contributions package to project for easy contribution tracking (#1556)
|
||||
- Add support for changeset tool for more efficient and organized code changes (#1553)
|
||||
- Fix bug where `border-1`, `border-2`, etc don't work (#1526)
|
||||
- Fix indeterminate input background color (#1536)
|
||||
- Update Bootstrap to `5.3.0-alpha3` (#1543)
|
||||
- `tom-select` dark mode styling fixes
|
||||
- Advanced udage of `tom-select` (#1480)
|
||||
- Fix Dropdown menu in rtl mode (#801)
|
||||
- Fix `tom-select` dropdown will be shaded in table-responsive (#1409)
|
||||
- Remove overflow scroll from body
|
||||
- Fix avatars overlap transparently (#1464)
|
||||
- Fix TinyMCE dropdown icon list transparent (#1426)
|
||||
- Dark mode lite colors improvement
|
||||
- Fix non full width selects (#1392)
|
||||
|
||||
## `1.0.0-beta17` - 2023-01-28
|
||||
|
||||
- update `bootstrap` to v5.3.0
|
||||
- update icons to v2.1.2
|
||||
- add 72 new brands, browsers logos update
|
||||
- new `Trial ended` page
|
||||
- new `Page loader` page
|
||||
- new `Profile` page
|
||||
- headings fix
|
||||
- dropdown background color fix
|
||||
- fix rgba conversion bug
|
||||
- fix autofill text color, not matching in dark mode
|
||||
- update license
|
||||
- header html5 tags
|
||||
- add input with appended `<kbd>`
|
||||
- `bootstrap` import fix
|
||||
- font improvements
|
||||
- change `$body-color` to CSS variable
|
||||
- scrollbars improvements
|
||||
- move `@tabler/icons` to `dev-dependencies`
|
||||
- fix #1370: avatar stacked list is not stacked anymore
|
||||
|
||||
## `1.0.0-beta16` - 2022-11-12
|
||||
|
||||
- new `Photogrid` page
|
||||
- `Steps` component improvements
|
||||
- fix #1348: Make job listing responsive for smaller devices
|
||||
- fix #1357: buttons group not active
|
||||
- fix #1352: fix deprecation warning
|
||||
- fix #1180: number input with `form-control-sm` looks weird
|
||||
- fix #1328: color input should show different color for inner check symbol on white ellipse
|
||||
- fix #1355 - missing font sizes
|
||||
- update icons to v1.111.0
|
||||
- homepage navbar fix
|
||||
- fix #1262 - `.bg-opacity-xx` class is not functioning properly
|
||||
|
||||
## `1.0.0-beta15` - 2022-11-01
|
||||
|
||||
- new `badges` page
|
||||
- `<kbd>` styling
|
||||
- update icons to v1.109.0
|
||||
- `tom-select` border fix
|
||||
- exclude `playgrounds` from build
|
||||
- update jekyll to v4.3.1
|
||||
- fix: facebook color update
|
||||
- navbar aria atributes fixes
|
||||
- fix #808 - `navbar-menu` and `sidebar-menu` has the same `id`
|
||||
- fix #1335 - missing color variables usage in `alert` and `btn-ghost-*`
|
||||
- move border style to CSS variables
|
||||
- add missing forms
|
||||
- `btn-actions` fixes
|
||||
- replace `$text-muted` to css variable
|
||||
|
||||
## `1.0.0-beta14` - 2022-10-21
|
||||
|
||||
- fix active items in dark mode
|
||||
- update Jekyll to newest version
|
||||
|
||||
## `1.0.0-beta13` - 2022-10-18
|
||||
|
||||
- update Bootstrap to 5.2.1, update dependencies
|
||||
- new `tracking` component
|
||||
- new radio button version of `form-imagecheck`
|
||||
- update icons to v1.105.0
|
||||
- dark mode improvements
|
||||
- corrects the spelling of New Zealand (#1318)
|
||||
- remove `$border-color-dark`
|
||||
- fix #1301 - code snippets in docs look bad in dark mode
|
||||
- fix #1305 - different default link color for dark mode
|
||||
- fix popover background in dark mode
|
||||
- fix button default border color
|
||||
- fix `form-imagecheck` bg in dark mode
|
||||
- navbar logo fix
|
||||
- move card ribbons config to variables
|
||||
- navbar border fix
|
||||
- dark mode active fix
|
||||
- using globalThis instead of window (#1315)
|
||||
- fix #1210 - lastmod not generated for pages in `sitemap.xml`
|
||||
- fix card border in dark mode
|
||||
- fix #895 - background color overwrites background image
|
||||
- fix #1302 - wrong card header in dark mode
|
||||
- fix #1303 - wrong color when hovering over `selectgroup` in dark mode
|
||||
- fix #1308 - bad coloring in table in dark mode
|
||||
- fix #1273 - datepicker background color broken
|
||||
- fix `$prefix` hard coded `layout/_dark.scss`
|
||||
- fix #1275 - remove last border-right on progress bar
|
||||
- fix #1261 - broken offcanvas bg
|
||||
|
||||
## `1.0.0-beta12` - 2022-09-19
|
||||
|
||||
- new "Job listing" page
|
||||
- new "Sign in with cover" page
|
||||
- new "Logs" page
|
||||
- new `progressbg` component
|
||||
- add a lot of CSS variables
|
||||
- add Dockerfile with alpine base
|
||||
- add icon pulse/tada/rotate animations
|
||||
- use `:host` in selectors to support Web Components
|
||||
- use dark table variant colors in dark mode (#1200)
|
||||
- update Tabler Icons to v1.96
|
||||
- change `space-y` component
|
||||
- headings, shadows and borders unify
|
||||
- toggle TinyMCE dark mode and skin based on the set Tabler theme
|
||||
- fix `card-footer` background
|
||||
- fix headers weight
|
||||
- fix transparent hover background in pagination
|
||||
- fix dark mode card text color
|
||||
- fix `--#{$prefix}card-bg` is undefined
|
||||
- fix global variable for `.card` and `.btn`
|
||||
- fix code sample in the customize tabler docs
|
||||
- fix form elements demo page radio buttons
|
||||
- replace `gulp-minify` with `gulp-terser`
|
||||
|
||||
## `1.0.0-beta11` - 2022-07-05
|
||||
|
||||
- new `Dropzone` component
|
||||
- new `Lightbox` component
|
||||
- new `TinyMCS` component
|
||||
- new `Inline Player` component
|
||||
- new `Pricing table` component
|
||||
- new `Datagrid` component
|
||||
- new optgroup form examples
|
||||
- new settings page
|
||||
- update Tabler Icons to v1.78
|
||||
- added popover docs page
|
||||
- fix: #1125 incorrect chart display in the mobile version
|
||||
- update Bootstrap to 5.2.0
|
||||
|
||||
## `1.0.0-beta10` - 2022-04-29
|
||||
|
||||
- new `datatable` component
|
||||
- update Tabler Icons to v1.67
|
||||
- fix: #1024 - fix Tom-select in dark mode
|
||||
- new carousel indicators: dots, vertical, thumbs (#1101)
|
||||
- replace !important modifier with more specific selectors (#1100)
|
||||
- new `FAQ` page
|
||||
|
||||
## `1.0.0-beta9` - 2022-02-26
|
||||
|
||||
- fix: #1061 - list group item colors in light and dark modes
|
||||
- new `tasks` dashboard
|
||||
- fix: #1059 - upload button in form element in dark view has problem
|
||||
- fix: #1052 - card background icon is practically invisible
|
||||
- remove Inter font and use default font system stack
|
||||
- fix: #1018 - vector map not working
|
||||
- fix: #1035 - wrong background color of hovered list group items in dark mode
|
||||
- dependencies update
|
||||
- add `font-display: swap;` to improve font loading
|
||||
- new `Boxed` layout
|
||||
|
||||
## `1.0.0-beta8` - 2022-02-05
|
||||
|
||||
- update dependencies
|
||||
- new vector maps demos
|
||||
- fixes update map on resize
|
||||
- docs improvement
|
||||
- replace `badge` with `status-dot` in `navbar-notifications.html`
|
||||
- map tooltip fixes
|
||||
|
||||
## `1.0.0-beta7` - 2022-02-05
|
||||
|
||||
- fix: #1019 - project-overview.html link not working
|
||||
- fix: #1010 - card with bottom tabs has incorrect border radius
|
||||
- uptime monitor mobile fixes
|
||||
- navbar dark button fix
|
||||
- `tabler-icons` link
|
||||
- autoloading webfonts
|
||||
- cards fixes, new cards demos
|
||||
- ruby dependencies update
|
||||
- RTL stylesheet fixes
|
||||
- new card action demos
|
||||
|
||||
## `1.0.0-beta6` - 2022-01-18
|
||||
|
||||
- pricing cards fix
|
||||
- fix bug `fw-...`, `.fs-...` is missed (#987)
|
||||
- avatar class fix
|
||||
- fix bug #903 `litepicker` with date range not having correct border
|
||||
- page wrapper fix
|
||||
- fix #900 `is-invalid-lite` class is not working under `was-validated` form class
|
||||
- update `@tabler/icons` to version 1.48
|
||||
- fix #960 - Badges not honoring font sizes
|
||||
- fix #959 - `node-sass` does not properly compile nested media queries
|
||||
- update package dependencies to newest version
|
||||
|
||||
## `1.0.0-beta5` - 2021-12-07
|
||||
|
||||
**Tabler has finally lived to see dark mode! 🌝🌚**
|
||||
|
||||
- **Dark mode enabled!**
|
||||
- add more cursors (#947)
|
||||
- fix #892 - media queries need to be nested when negating
|
||||
- update `@tabler/icons` to newest version
|
||||
- move optional dependencies to peerDependencies (#924)
|
||||
- move deployment to Github Actions (#934)
|
||||
- table border fixes
|
||||
- antialiased fix
|
||||
- update `@tabler/icons` to version 1.42
|
||||
- change default font to 'Inter'
|
||||
- colors unify
|
||||
- add `tom-select` and remove `choices.js`
|
||||
|
||||
## `1.0.0-beta4` - 2021-10-24
|
||||
|
||||
- upgrade required node.js version to 14
|
||||
- upgrade Bootstrap to 5.1
|
||||
- upgrade dependencies
|
||||
- fix #775 - litepicker not initializing
|
||||
- fix `nouislider` import in dev
|
||||
|
||||
## `1.0.0-beta3` - 2021-05-08
|
||||
|
||||
- upgrade Bootstrap to 5.0
|
||||
- upgrade dependencies
|
||||
- change `$border-radius-pill` variable
|
||||
- badge vertical align fix
|
||||
|
||||
## `1.0.0-beta2` - 2021-03-29
|
||||
|
||||
- update dependencies
|
||||
- `li` marker fix
|
||||
- page wrapper, nav fixes
|
||||
- scripts optimize, remove `capture_once`
|
||||
- `page-body` fixes
|
||||
- layout navbar fix
|
||||
- typography fix
|
||||
- ribbon fix
|
||||
- charts label fixes
|
||||
- charts docs
|
||||
|
||||
## `1.0.0-beta` - 2021-02-17
|
||||
|
||||
**Initial beta release of Tabler v1.0! Lots more coming soon though 😁**
|
||||
|
||||
- update Bootstrap to 5.0.0-beta2
|
||||
- update other dependencies.
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
---
|
||||
title: Welcome to Tabler Documentation
|
||||
summary: Tabler Docs provides a comprehensive guide to help you get started with the Tabler ecosystem, including its UI components, plugins, and icons. Explore detailed documentation to understand and leverage the full potential of Tabler in your projects.
|
||||
---
|
||||
|
||||
<ResponsiveImage src="/docs/tabler.png" src-dark="/docs/tabler-dark.png" alt="Tabler" width="816" height="620" className="mb-4" />
|
||||
|
||||
Find all the guides and resources you need to develop with Tabler and our other tools. Explore our UI components, icons, illustrations, and email templates to enhance your web development experience. Our tools are designed to be easy to use, customizable, and fully responsive, ensuring that your projects look great on any device.
|
||||
|
||||
<Cards>
|
||||
<Card title="UI Components" href="/docs/ui" icon="paint">Free and open source web application UI kit based on Bootstrap</Card>
|
||||
<Card title="Icons" href="/docs/icons" icon="ghost"><IconsCount /> pixel-perfect icons for web design and development</Card>
|
||||
<Card title="Illustrations" href="/docs/illustrations" icon="brand-figma"><IllustrationsCount /> customizable SVG illustrations for your web project</Card>
|
||||
<Card title="Email Templates" href="/docs/emails" icon="mail"><EmailsCount /> responsive email templates ready to use in your marketing campaigns</Card>
|
||||
<Card title="Avatars" icon="user-circle" disabled badge="Comming soon">Package of over 100 avatars for your next web project</Card>
|
||||
</Cards>
|
||||
@@ -1,83 +0,0 @@
|
||||
---
|
||||
title: Colors
|
||||
summary: The choice of colors for a website or app interface has a big influence on how users interact with the product and what decisions they make. Harmonious colors can contribute to a nice first impression and encourage users to engage with your product, so it's a very important aspect of a successful design, which needs to be well thought out.
|
||||
bootstrapLink: utilities/colors/
|
||||
description: Impact of colors on user interface design.
|
||||
---
|
||||
|
||||
## Base colors
|
||||
|
||||
Choose one of the available colors from the basic color palette and make your design attractive for users. You can use the colors to customize the design of components, indicate different states or suggest actions you want users to take.
|
||||
|
||||
<ColorsTable colors={[
|
||||
{ name: "blue", value: "#066fd1" },
|
||||
{ name: "azure", value: "#4299e1" },
|
||||
{ name: "indigo", value: "#4263eb" },
|
||||
{ name: "purple", value: "#ae3ec9" },
|
||||
{ name: "pink", value: "#d6336c" },
|
||||
{ name: "red", value: "#d63939" },
|
||||
{ name: "orange", value: "#f76707" },
|
||||
{ name: "yellow", value: "#f59f00" },
|
||||
{ name: "lime", value: "#74b816" },
|
||||
{ name: "green", value: "#2fb344" },
|
||||
{ name: "teal", value: "#0ca678" },
|
||||
{ name: "cyan", value: "#17a2b8" },
|
||||
]}/>
|
||||
|
||||
## Light colors
|
||||
|
||||
All available colors can come in pastel shades, which are perfect for more subtle designs and can be easily combined with the basic palette to create eye-catching designs.
|
||||
|
||||
<ColorsTable colors={[
|
||||
{ name: "blue-lt", value: "#e9f0f9" },
|
||||
{ name: "azure-lt", value: "#ecf5fc" },
|
||||
{ name: "indigo-lt", value: "#eceffd" },
|
||||
{ name: "purple-lt", value: "#f7ecfa" },
|
||||
{ name: "pink-lt", value: "#fbebf0" },
|
||||
{ name: "red-lt", value: "#fbebeb" },
|
||||
{ name: "orange-lt", value: "#fef0e6" },
|
||||
{ name: "yellow-lt", value: "#fef5e6" },
|
||||
{ name: "lime-lt", value: "#f1f8e8" },
|
||||
{ name: "green-lt", value: "#eaf7ec" },
|
||||
{ name: "teal-lt", value: "#e7f6f2" },
|
||||
{ name: "cyan-lt", value: "#e8f6f8" }
|
||||
]}/>
|
||||
|
||||
## Gray palette
|
||||
|
||||
The gray palette is a great choice for creating a neutral background for your design. It can be used to create a clean and professional look, and can be combined with other colors to create a harmonious design.
|
||||
|
||||
<ColorsTable colors={[
|
||||
{ name: "gray-50", value: "#f8fafc" },
|
||||
{ name: "gray-100", value: "#f1f5f9" },
|
||||
{ name: "gray-200", value: "#e2e8f0" },
|
||||
{ name: "gray-300", value: "#c8d3e1" },
|
||||
{ name: "gray-400", value: "#9ba9be" },
|
||||
{ name: "gray-500", value: "#6c7a91" },
|
||||
{ name: "gray-600", value: "#49566c" },
|
||||
{ name: "gray-700", value: "#313c52" },
|
||||
{ name: "gray-800", value: "#1d273b" },
|
||||
{ name: "gray-900", value: "#0f172a" }
|
||||
]} />
|
||||
|
||||
## Social colors
|
||||
|
||||
Use the colors of popular social networks to create a recognizable design and make it easier for users to interact with your product.
|
||||
|
||||
<ColorsTable colors={[
|
||||
{ name: "facebook", value: "#1877F2" },
|
||||
{ name: "twitter", value: "#1da1f2" },
|
||||
{ name: "linkedin", value: "#0a66c2" },
|
||||
{ name: "google", value: "#dc4e41" },
|
||||
{ name: "youtube", value: "#ff0000" },
|
||||
{ name: "vimeo", value: "#1ab7ea" },
|
||||
{ name: "dribbble", value: "#ea4c89" },
|
||||
{ name: "github", value: "#181717" },
|
||||
{ name: "instagram", value: "#e4405f" },
|
||||
{ name: "pinterest", value: "#bd081c" },
|
||||
{ name: "vk", value: "#6383a8" },
|
||||
{ name: "rss", value: "#ffa500" },
|
||||
{ name: "flickr", value: "#0063dc" },
|
||||
{ name: "bitbucket", value: "#0052cc" },
|
||||
{ name: "tabler", value: "#066fd1" }
|
||||
]} />
|
||||
@@ -1,227 +0,0 @@
|
||||
---
|
||||
title: Avatars
|
||||
summary: Avatars help customize various elements of a user interface and make the product experience more personalized. They are often used in communication apps, collaboration tools and social media.
|
||||
description: Personalize UI with user avatars.
|
||||
---
|
||||
|
||||
## Default markup
|
||||
|
||||
Use the `avatar` class to add an avatar to your interface design for greater customization.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/002f.jpg)"></span>
|
||||
<span class="avatar">JL</span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/004f.jpg)"></span>
|
||||
```
|
||||
|
||||
## Avatar image
|
||||
|
||||
Set an image as the background to make users easy to indentify and create a personalized experience.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/016f.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/022m.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/036m.jpg)"></span>
|
||||
```
|
||||
|
||||
## Initials
|
||||
|
||||
You can also use initials instead of pictures.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar">AB</span>
|
||||
<span class="avatar">CD</span>
|
||||
<span class="avatar">EF</span>
|
||||
<span class="avatar">GH</span>
|
||||
<span class="avatar">IJ</span>
|
||||
```
|
||||
|
||||
## Avatar icons
|
||||
|
||||
Besides pictures and initials, you can also use icons to make the avatars more universal.
|
||||
|
||||
```html example centered separated
|
||||
<span class="avatar">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon avatar-icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<circle cx="12" cy="7" r="4" />
|
||||
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
|
||||
</svg>
|
||||
</span>
|
||||
<span class="avatar">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon avatar-icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<line x1="12" y1="5" x2="12" y2="19" />
|
||||
<line x1="5" y1="12" x2="19" y2="12" />
|
||||
</svg>
|
||||
</span>
|
||||
<span class="avatar">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon avatar-icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<circle cx="9" cy="7" r="4" />
|
||||
<path d="M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
|
||||
<path d="M16 11h6m-3 -3v6" />
|
||||
</svg>
|
||||
</span>
|
||||
```
|
||||
|
||||
```html
|
||||
<span class="avatar">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/user -->
|
||||
<svg>...</svg>
|
||||
</span>
|
||||
```
|
||||
|
||||
## Avatar initials color
|
||||
|
||||
Customize the color of the avatars' background. You can click [here](/docs/ui/base/colors) to see the list of available colors.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar bg-green-lt">AB</span>
|
||||
<span class="avatar bg-red-lt">CD</span>
|
||||
<span class="avatar bg-yellow-lt">EF</span>
|
||||
<span class="avatar bg-primary-lt">GH</span>
|
||||
<span class="avatar bg-purple-lt">IJ</span>
|
||||
```
|
||||
|
||||
## Avatar size
|
||||
|
||||
Using Bootstrap’s typical naming structure, you can create a standard avatar or scale it up or down to different sizes based on what you need.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar avatar-xl" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
<span class="avatar avatar-lg" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
<span class="avatar avatar-md" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
<span class="avatar avatar-sm" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
<span class="avatar avatar-xs" style="background-image: url(/samples/avatars/000m.jpg)"></span>
|
||||
```
|
||||
|
||||
## Avatar status
|
||||
|
||||
Add a status indicator to your avatar to show, for instance, if a user is online or offline or indicate the number of messages they have received.
|
||||
|
||||
```html example centered separated code
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/018m.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/015m.jpg)">
|
||||
<span class="badge bg-danger"></span>
|
||||
</span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/022m.jpg)">
|
||||
<span class="badge bg-success"></span>
|
||||
</span>
|
||||
<span class="avatar"> <span class="badge bg-warning"></span>SA </span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/022m.jpg)">
|
||||
<span class="badge bg-info"></span>
|
||||
</span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/048m.jpg)">
|
||||
<span class="badge bg-gray">5</span>
|
||||
</span>
|
||||
```
|
||||
|
||||
## Avatar shape
|
||||
|
||||
Change the shape of an avatar with the default Bootstrap image classes. You can make them round or square and change their border radius.
|
||||
|
||||
```html example centered separated
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/019m.jpg)"></span>
|
||||
<span class="avatar rounded" style="background-image: url(/samples/avatars/039f.jpg)"></span>
|
||||
<span class="avatar rounded-circle">AA</span>
|
||||
<span class="avatar rounded-0" style="background-image: url(/samples/avatars/043f.jpg)"></span>
|
||||
<span class="avatar rounded-3" style="background-image: url(/samples/avatars/044f.jpg)"></span>
|
||||
```
|
||||
|
||||
## Avatars list
|
||||
|
||||
Create a list of avatars within one parent container.
|
||||
|
||||
```html example centered separated code
|
||||
<div class="avatar-list">
|
||||
<span class="avatar rounded" style="background-image: url(/samples/avatars/031f.jpg)"></span>
|
||||
<span class="avatar rounded">JL</span>
|
||||
<span class="avatar rounded" style="background-image: url(/samples/avatars/033f.jpg)"></span>
|
||||
<span class="avatar rounded" style="background-image: url(/samples/avatars/017m.jpg)"></span>
|
||||
<span class="avatar rounded" style="background-image: url(/samples/avatars/024m.jpg)"></span>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Stacked list
|
||||
|
||||
Make the list stack once a certain number of avatars is reached to make it look clear and display well regardless of the screen size.
|
||||
|
||||
```html example centered separated code
|
||||
<div class="avatar-list avatar-list-stacked">
|
||||
<span class="avatar">EB</span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/026m.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/016f.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/028m.jpg)"></span>
|
||||
<span class="avatar" style="background-image: url(/samples/avatars/030m.jpg)"></span>
|
||||
<span class="avatar">+8</span>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html example centered separated code
|
||||
<div class="avatar-list avatar-list-stacked">
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/035m.jpg)"
|
||||
></span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/027f.jpg)"
|
||||
></span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/036f.jpg)"
|
||||
></span>
|
||||
<span class="avatar avatar-sm rounded-circle">SA</span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/034f.jpg)"
|
||||
></span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/043f.jpg)"
|
||||
></span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/039f.jpg)"
|
||||
></span>
|
||||
<span
|
||||
class="avatar avatar-sm rounded-circle"
|
||||
style="background-image: url(/samples/avatars/020m.jpg)"
|
||||
></span>
|
||||
</div>
|
||||
```
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,392 +0,0 @@
|
||||
---
|
||||
title: Icons
|
||||
summary: Use any of over 5000 icons created specifically for Tabler and make your dashboard look even more attractive. All icons are under MIT license, so you can use them without any problem both in private and commercial projects.
|
||||
banner: icons
|
||||
description: Enhance dashboards with custom icons.
|
||||
---
|
||||
|
||||
If you need to add icons to your website, you can use the Tabler Icons library. It contains over 5000 icons that you can use in your projects. All icons are under the MIT license, so you can use them without any problem both in private and commercial projects. You can find the Tabler Icons library [here](https://tabler-icons.io/).
|
||||
|
||||
## Base icon
|
||||
|
||||
To add an icon to your code copy the SVG code from the Tabler Icons website and paste it into your HTML file.
|
||||
|
||||
```html
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-heart"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572"></path>
|
||||
</svg>
|
||||
```
|
||||
|
||||
Results can be seen in the example below.
|
||||
|
||||
```html example centered separated
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-heart"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572"></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-ghost-2"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M10 9h.01"></path>
|
||||
<path d="M14 9h.01"></path>
|
||||
<path
|
||||
d="M12 3a7 7 0 0 1 7 7v1l1 0a2 2 0 1 1 0 4l-1 0v3l2 3h-10a6 6 0 0 1 -6 -5.775l0 -.226l-1 0a2 2 0 0 1 0 -4l1 0v-1a7 7 0 0 1 7 -7z"
|
||||
></path>
|
||||
<path d="M11 14h2a1 1 0 0 0 -2 0z"></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-lego"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M9.5 11l.01 0"></path>
|
||||
<path d="M14.5 11l.01 0"></path>
|
||||
<path d="M9.5 15a3.5 3.5 0 0 0 5 0"></path>
|
||||
<path
|
||||
d="M7 5h1v-2h8v2h1a3 3 0 0 1 3 3v9a3 3 0 0 1 -3 3v1h-10v-1a3 3 0 0 1 -3 -3v-9a3 3 0 0 1 3 -3"
|
||||
></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-building-carousel"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M12 12m-6 0a6 6 0 1 0 12 0a6 6 0 1 0 -12 0"></path>
|
||||
<path d="M5 8m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path>
|
||||
<path d="M12 4m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path>
|
||||
<path d="M19 8m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path>
|
||||
<path d="M5 16m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path>
|
||||
<path d="M19 16m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path>
|
||||
<path d="M8 22l4 -10l4 10"></path>
|
||||
</svg>
|
||||
```
|
||||
|
||||
## Filled icons
|
||||
|
||||
To use filled icons, you need to copy the SVG code from the Tabler Icons website and paste it into your HTML file.
|
||||
|
||||
```html
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-heart-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M6.979 3.074a6 6 0 0 1 4.988 1.425l.037 .033l.034 -.03a6 6 0 0 1 4.733 -1.44l.246 .036a6 6 0 0 1 3.364 10.008l-.18 .185l-.048 .041l-7.45 7.379a1 1 0 0 1 -1.313 .082l-.094 -.082l-7.493 -7.422a6 6 0 0 1 3.176 -10.215z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
```
|
||||
|
||||
Look at the example below to see the filled icons.
|
||||
|
||||
```html example centered separated
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-heart-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M6.979 3.074a6 6 0 0 1 4.988 1.425l.037 .033l.034 -.03a6 6 0 0 1 4.733 -1.44l.246 .036a6 6 0 0 1 3.364 10.008l-.18 .185l-.048 .041l-7.45 7.379a1 1 0 0 1 -1.313 .082l-.094 -.082l-7.493 -7.422a6 6 0 0 1 3.176 -10.215z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-bell-ringing-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M17.451 2.344a1 1 0 0 1 1.41 -.099a12.05 12.05 0 0 1 3.048 4.064a1 1 0 1 1 -1.818 .836a10.05 10.05 0 0 0 -2.54 -3.39a1 1 0 0 1 -.1 -1.41z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
<path
|
||||
d="M5.136 2.245a1 1 0 0 1 1.312 1.51a10.05 10.05 0 0 0 -2.54 3.39a1 1 0 1 1 -1.817 -.835a12.05 12.05 0 0 1 3.045 -4.065z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
<path
|
||||
d="M14.235 19c.865 0 1.322 1.024 .745 1.668a3.992 3.992 0 0 1 -2.98 1.332a3.992 3.992 0 0 1 -2.98 -1.332c-.552 -.616 -.158 -1.579 .634 -1.661l.11 -.006h4.471z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
<path
|
||||
d="M12 2c1.358 0 2.506 .903 2.875 2.141l.046 .171l.008 .043a8.013 8.013 0 0 1 4.024 6.069l.028 .287l.019 .289v2.931l.021 .136a3 3 0 0 0 1.143 1.847l.167 .117l.162 .099c.86 .487 .56 1.766 -.377 1.864l-.116 .006h-16c-1.028 0 -1.387 -1.364 -.493 -1.87a3 3 0 0 0 1.472 -2.063l.021 -.143l.001 -2.97a8 8 0 0 1 3.821 -6.454l.248 -.146l.01 -.043a3.003 3.003 0 0 1 2.562 -2.29l.182 -.017l.176 -.004z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-cherry-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M16.588 5.191l.058 .045l.078 .074l.072 .084l.013 .018a.998 .998 0 0 1 .182 .727l-.022 .111l-.03 .092c-.99 2.725 -.666 5.158 .679 7.706a4 4 0 1 1 -4.613 4.152l-.005 -.2l.005 -.2a4.002 4.002 0 0 1 2.5 -3.511c-.947 -2.03 -1.342 -4.065 -1.052 -6.207c-.166 .077 -.332 .15 -.499 .218l.094 -.064c-2.243 1.47 -3.552 3.004 -3.98 4.57a4.5 4.5 0 1 1 -7.064 3.906l-.004 -.212l.005 -.212a4.5 4.5 0 0 1 5.2 -4.233c.332 -1.073 .945 -2.096 1.83 -3.069c-1.794 -.096 -3.586 -.759 -5.355 -1.986l-.268 -.19l-.051 -.04l-.046 -.04l-.044 -.044l-.04 -.046l-.04 -.05l-.032 -.047l-.035 -.06l-.053 -.11l-.038 -.116l-.023 -.117l-.005 -.042l-.005 -.118l.01 -.118l.023 -.117l.038 -.115l.03 -.066l.023 -.045l.035 -.06l.032 -.046l.04 -.051l.04 -.046l.044 -.044l.046 -.04l.05 -.04c4.018 -2.922 8.16 -2.922 12.177 0z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-circle-key-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M12 2c5.523 0 10 4.477 10 10a10 10 0 0 1 -20 0c0 -5.523 4.477 -10 10 -10zm2 5a3 3 0 0 0 -2.98 2.65l-.015 .174l-.005 .176l.005 .176c.019 .319 .087 .624 .197 .908l.09 .209l-3.5 3.5l-.082 .094a1 1 0 0 0 0 1.226l.083 .094l1.5 1.5l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l.083 -.094a1 1 0 0 0 0 -1.226l-.083 -.094l-.792 -.793l.585 -.585l.793 .792l.094 .083a1 1 0 0 0 1.403 -1.403l-.083 -.094l-.792 -.793l.792 -.792a3 3 0 1 0 1.293 -5.708zm0 2a1 1 0 1 1 0 2a1 1 0 0 1 0 -2z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
```
|
||||
|
||||
## Icon colors
|
||||
|
||||
To change the color of the icon, you need to add the `text-` class to the parent element of the icon. Full list of available colors can be found [here](/docs/ui/colors). Color classes can be used with any HTML element.
|
||||
|
||||
```html
|
||||
<span class="text-red">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/heart -->
|
||||
<svg>...</svg>
|
||||
</span>
|
||||
```
|
||||
|
||||
Look at the example below to see how the color of the icon changes.
|
||||
|
||||
```html example centered separated
|
||||
<span class="text-red">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-heart-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M6.979 3.074a6 6 0 0 1 4.988 1.425l.037 .033l.034 -.03a6 6 0 0 1 4.733 -1.44l.246 .036a6 6 0 0 1 3.364 10.008l-.18 .185l-.048 .041l-7.45 7.379a1 1 0 0 1 -1.313 .082l-.094 -.082l-7.493 -7.422a6 6 0 0 1 3.176 -10.215z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="text-yellow">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-star-filled"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path
|
||||
d="M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z"
|
||||
stroke-width="0"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="text-blue">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-circle"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="text-green">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tabler icon-tabler-square-rounded"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z"></path>
|
||||
</svg>
|
||||
</span>
|
||||
```
|
||||
|
||||
## Icon animations
|
||||
|
||||
To add an animation to the icon, you need to add the `icon-pulse`, `icon-tada`, or `icon-rotate` class to the SVG element.
|
||||
|
||||
```html
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/heart -->
|
||||
<svg class="icon-pulse" ...>...</svg>
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/bell -->
|
||||
<svg class="icon-tada" ...>...</svg>
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/rotate-clockwise -->
|
||||
<svg class="icon-rotate" ...>...</svg>
|
||||
```
|
||||
|
||||
Look at the example below to see the animated icons.
|
||||
|
||||
```html example centered separated
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-pulse"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path d="M19.5 12.572l-7.5 7.428l-7.5 -7.428m0 0a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572" />
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-tada"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M10 5a2 2 0 0 1 4 0a7 7 0 0 1 4 6v3a4 4 0 0 0 2 3h-16a4 4 0 0 0 2 -3v-3a7 7 0 0 1 4 -6"
|
||||
/>
|
||||
<path d="M9 17v1a3 3 0 0 0 6 0v-1" />
|
||||
</svg>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon icon-rotate"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path d="M4.05 11a8 8 0 1 1 .5 4m-.5 5v-5h5" />
|
||||
</svg>
|
||||
```
|
||||
|
||||
@@ -1,207 +0,0 @@
|
||||
---
|
||||
title: Ribbons
|
||||
summary: Ribbons are graphical elements which attract users' attention to a given element of an interface and make it stand out.
|
||||
description: Highlight elements with graphical ribbons.
|
||||
---
|
||||
|
||||
## Default markup
|
||||
|
||||
Use the `ribbon` class to add the default ribbon to any section of your interface.
|
||||
|
||||
```html example columns={1} centered background="base"
|
||||
<div class="card">
|
||||
<div class="card-body" style="height: 5rem"></div>
|
||||
<div class="ribbon">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html
|
||||
<div class="card">
|
||||
<div class="card-body"></div>
|
||||
<div class="ribbon">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/star -->
|
||||
<svg>...</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Ribbon position
|
||||
|
||||
You can change the position of a ribbon by adding one of the following classes to the element:
|
||||
|
||||
- `ribbon-top` - moves it to the top
|
||||
- `ribbon-end` - moves it to the right
|
||||
- `ribbon-bottom` - moves it to the bottom
|
||||
- `ribbon-start` - moves it to the left
|
||||
|
||||
Using multiple classes at once will give you more position options. For example, the following class: `.ribbon.ribbon-top.ribbon-left` will move the ribbon to the top left corner.
|
||||
|
||||
```html example columns={1} centered background="base"
|
||||
<div class="card">
|
||||
<div class="card-body" style="height: 5rem"></div>
|
||||
<div class="ribbon ribbon-top ribbon-start">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html
|
||||
<div class="card">
|
||||
<div class="card-body"></div>
|
||||
<div class="ribbon ribbon-top ribbon-start">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/star -->
|
||||
<svg>...</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Ribbon color
|
||||
|
||||
Customize the ribbon's background color. You can click [here](/docs/ui/base/colors) to see the list of available colors.
|
||||
|
||||
```html example columns={1} centered background="base"
|
||||
<div class="card">
|
||||
<div class="card-body" style="height: 5rem"></div>
|
||||
<div class="ribbon bg-red">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html
|
||||
<div class="card">
|
||||
<div class="card-body"></div>
|
||||
<div class="ribbon bg-red">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/star -->
|
||||
<svg>...</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Ribbon text
|
||||
|
||||
Add your own text to a ribbon to display any additional information and make it easy to spot for users.
|
||||
|
||||
```html example columns={1} centered background="base"
|
||||
<div class="card">
|
||||
<div class="card-body" style="height: 5rem"></div>
|
||||
<div class="ribbon bg-green">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html
|
||||
<div class="card">
|
||||
<div class="card-body"></div>
|
||||
<div class="ribbon bg-green">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/star -->
|
||||
<svg>...</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Ribbon style
|
||||
|
||||
Change the style of a ribbon to make it go well with your interface design.
|
||||
|
||||
```html example columns={1} centered background="base"
|
||||
<div class="card w-100">
|
||||
<div class="card-body" style="height: 5rem"></div>
|
||||
<div class="ribbon ribbon-bookmark bg-orange">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path
|
||||
d="M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
```html
|
||||
<div class="card">
|
||||
<div class="card-body"></div>
|
||||
<div class="ribbon ribbon-bookmark bg-orange">
|
||||
<!-- SVG icon from http://tabler.io/icons/icon/star -->
|
||||
<svg>...</svg>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
@@ -1,164 +0,0 @@
|
||||
---
|
||||
title: Navbars
|
||||
summary: A navbar serves as a central navigation tool, offering users quick and easy access to key sections of a website or application, improving usability and enhancing the overall user experience.
|
||||
description: Create and customize responsive navigation bars with ease.
|
||||
---
|
||||
|
||||
The navbar is a core component of any website or application, serving as the primary navigation tool. It provides users with quick access to key sections, enhancing usability and improving the overall user experience. Positioned typically at the top of the page, the navbar can contain links, buttons, branding elements, and even interactive components like dropdown menus or search bars.
|
||||
|
||||
With Tabler's utility classes, creating and customizing a responsive navbar is straightforward. Whether you’re building a simple site or a complex dashboard, Tabler’s navbar utilities offer the flexibility to design navigation that aligns perfectly with your project’s requirements.
|
||||
|
||||
|
||||
|
||||
## Sample navbar
|
||||
|
||||
To create a navbar, use the `.navbar` class. The navbar is a horizontal bar that contains links to different sections of a website. It is typically placed at the top of the page and is used to provide navigation to the rest of the site.
|
||||
|
||||
```html
|
||||
<header class="navbar navbar-expand-md d-print-none">...</header>
|
||||
```
|
||||
|
||||
The navbar can contain links, buttons, and other elements. You can customize the appearance of the navbar by adding classes to the elements inside it.
|
||||
|
||||
```html example fullpage vcentered padding={0} height="20rem"
|
||||
<header class="navbar navbar-expand-md d-print-none">
|
||||
<div class="container-xl">
|
||||
<button
|
||||
class="navbar-toggler"
|
||||
type="button"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#navbar-menu"
|
||||
aria-controls="navbar-menu"
|
||||
aria-expanded="false"
|
||||
aria-label="Toggle navigation"
|
||||
>
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="navbar-brand navbar-brand-autodark d-none-navbar-horizontal pe-0 pe-md-3">
|
||||
<a href="javascript:void(0)">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="110"
|
||||
height="32"
|
||||
viewBox="0 0 232 68"
|
||||
class="navbar-brand-image"
|
||||
>
|
||||
<path
|
||||
d="M64.6 16.2C63 9.9 58.1 5 51.8 3.4 40 1.5 28 1.5 16.2 3.4 9.9 5 5 9.9 3.4 16.2 1.5 28 1.5 40 3.4 51.8 5 58.1 9.9 63 16.2 64.6c11.8 1.9 23.8 1.9 35.6 0C58.1 63 63 58.1 64.6 51.8c1.9-11.8 1.9-23.8 0-35.6zM33.3 36.3c-2.8 4.4-6.6 8.2-11.1 11-1.5.9-3.3.9-4.8.1s-2.4-2.3-2.5-4c0-1.7.9-3.3 2.4-4.1 2.3-1.4 4.4-3.2 6.1-5.3-1.8-2.1-3.8-3.8-6.1-5.3-2.3-1.3-3-4.2-1.7-6.4s4.3-2.9 6.5-1.6c4.5 2.8 8.2 6.5 11.1 10.9 1 1.4 1 3.3.1 4.7zM49.2 46H37.8c-2.1 0-3.8-1-3.8-3s1.7-3 3.8-3h11.4c2.1 0 3.8 1 3.8 3s-1.7 3-3.8 3z"
|
||||
fill="#066fd1"
|
||||
style="fill: var(--tblr-primary, #066fd1)"
|
||||
></path>
|
||||
<path
|
||||
d="M105.8 46.1c.4 0 .9.2 1.2.6s.6 1 .6 1.7c0 .9-.5 1.6-1.4 2.2s-2 .9-3.2.9c-2 0-3.7-.4-5-1.3s-2-2.6-2-5.4V31.6h-2.2c-.8 0-1.4-.3-1.9-.8s-.9-1.1-.9-1.9c0-.7.3-1.4.8-1.8s1.2-.7 1.9-.7h2.2v-3.1c0-.8.3-1.5.8-2.1s1.3-.8 2.1-.8 1.5.3 2 .8.8 1.3.8 2.1v3.1h3.4c.8 0 1.4.3 1.9.8s.8 1.2.8 1.9-.3 1.4-.8 1.8-1.2.7-1.9.7h-3.4v13c0 .7.2 1.2.5 1.5s.8.5 1.4.5c.3 0 .6-.1 1.1-.2.5-.2.8-.3 1.2-.3zm28-20.7c.8 0 1.5.3 2.1.8.5.5.8 1.2.8 2.1v20.3c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2-.8-.8-1.2-.8-2.1c-.8.9-1.9 1.7-3.2 2.4-1.3.7-2.8 1-4.3 1-2.2 0-4.2-.6-6-1.7-1.8-1.1-3.2-2.7-4.2-4.7s-1.6-4.3-1.6-6.9c0-2.6.5-4.9 1.5-6.9s2.4-3.6 4.2-4.8c1.8-1.1 3.7-1.7 5.9-1.7 1.5 0 3 .3 4.3.8 1.3.6 2.5 1.3 3.4 2.1 0-.8.3-1.5.8-2.1.5-.5 1.2-.7 2-.7zm-9.7 21.3c2.1 0 3.8-.8 5.1-2.3s2-3.4 2-5.7-.7-4.2-2-5.8c-1.3-1.5-3-2.3-5.1-2.3-2 0-3.7.8-5 2.3-1.3 1.5-2 3.5-2 5.8s.6 4.2 1.9 5.7 3 2.3 5.1 2.3zm32.1-21.3c2.2 0 4.2.6 6 1.7 1.8 1.1 3.2 2.7 4.2 4.7s1.6 4.3 1.6 6.9-.5 4.9-1.5 6.9-2.4 3.6-4.2 4.8c-1.8 1.1-3.7 1.7-5.9 1.7-1.5 0-3-.3-4.3-.9s-2.5-1.4-3.4-2.3v.3c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2.1-.8c-.5-.5-.8-1.2-.8-2.1V18.9c0-.8.3-1.5.8-2.1.5-.6 1.2-.8 2.1-.8s1.5.3 2.1.8c.5.6.8 1.3.8 2.1v10c.8-1 1.8-1.8 3.2-2.5 1.3-.7 2.8-1 4.3-1zm-.7 21.3c2 0 3.7-.8 5-2.3s2-3.5 2-5.8-.6-4.2-1.9-5.7-3-2.3-5.1-2.3-3.8.8-5.1 2.3-2 3.4-2 5.7.7 4.2 2 5.8c1.3 1.6 3 2.3 5.1 2.3zm23.6 1.9c0 .8-.3 1.5-.8 2.1s-1.3.8-2.1.8-1.5-.3-2-.8-.8-1.3-.8-2.1V18.9c0-.8.3-1.5.8-2.1s1.3-.8 2.1-.8 1.5.3 2 .8.8 1.3.8 2.1v29.7zm29.3-10.5c0 .8-.3 1.4-.9 1.9-.6.5-1.2.7-2 .7h-15.8c.4 1.9 1.3 3.4 2.6 4.4 1.4 1.1 2.9 1.6 4.7 1.6 1.3 0 2.3-.1 3.1-.4.7-.2 1.3-.5 1.8-.8.4-.3.7-.5.9-.6.6-.3 1.1-.4 1.6-.4.7 0 1.2.2 1.7.7s.7 1 .7 1.7c0 .9-.4 1.6-1.3 2.4-.9.7-2.1 1.4-3.6 1.9s-3 .8-4.6.8c-2.7 0-5-.6-7-1.7s-3.5-2.7-4.6-4.6-1.6-4.2-1.6-6.6c0-2.8.6-5.2 1.7-7.2s2.7-3.7 4.6-4.8 3.9-1.7 6-1.7 4.1.6 6 1.7 3.4 2.7 4.5 4.7c.9 1.9 1.5 4.1 1.5 6.3zm-12.2-7.5c-3.7 0-5.9 1.7-6.6 5.2h12.6v-.3c-.1-1.3-.8-2.5-2-3.5s-2.5-1.4-4-1.4zm30.3-5.2c1 0 1.8.3 2.4.8.7.5 1 1.2 1 1.9 0 1-.3 1.7-.8 2.2-.5.5-1.1.8-1.8.7-.5 0-1-.1-1.6-.3-.2-.1-.4-.1-.6-.2-.4-.1-.7-.1-1.1-.1-.8 0-1.6.3-2.4.8s-1.4 1.3-1.9 2.3-.7 2.3-.7 3.7v11.4c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2.1-.8c-.5-.6-.8-1.3-.8-2.1V28.8c0-.8.3-1.5.8-2.1.5-.6 1.2-.8 2.1-.8s1.5.3 2.1.8c.5.6.8 1.3.8 2.1v.6c.7-1.3 1.8-2.3 3.2-3 1.3-.7 2.8-1 4.3-1z"
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
fill="#4a4a4a"
|
||||
></path>
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="javascript:void(0)">
|
||||
<span class="nav-link-icon">
|
||||
<!-- Download SVG icon from http://tabler.io/icons/icon/home -->
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="2"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
class="icon icon-tabler icons-tabler-outline icon-tabler-home"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path d="M5 12l-2 0l9 -9l9 9l-2 0" />
|
||||
<path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" />
|
||||
<path d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6" />
|
||||
</svg>
|
||||
</span>
|
||||
<span class="nav-link-title"> Home </span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="javascript:void(0)">
|
||||
<span class="nav-link-icon"
|
||||
><!-- Download SVG icon from http://tabler.io/icons/icon/checkbox -->
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="2"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
class="icon icon-tabler icons-tabler-outline icon-tabler-user"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||
<path d="M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0" />
|
||||
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
|
||||
</svg>
|
||||
</span>
|
||||
<span class="nav-link-title"> Profile </span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="javascript:void(0)">
|
||||
<span class="nav-link-icon"
|
||||
><!-- Download SVG icon from http://tabler.io/icons/icon/checkbox -->
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="2"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
class="icon"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M9 11l3 3l8 -8"></path>
|
||||
<path d="M20 12v6a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h9"></path>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="nav-link-title"> Settings </span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="navbar-nav flex-row order-md-last ms-auto">
|
||||
<div class="nav-item dropdown">
|
||||
<a
|
||||
href="#"
|
||||
class="nav-link d-flex lh-1 text-reset p-0"
|
||||
data-bs-toggle="dropdown"
|
||||
aria-label="Open user menu"
|
||||
>
|
||||
<span
|
||||
class="avatar avatar-sm"
|
||||
style="background-image: url(/static/samples/avatars/044m.jpg)"
|
||||
></span>
|
||||
<div class="d-none d-xl-block ps-2">
|
||||
<div>Paweł Kuna</div>
|
||||
<div class="mt-1 small text-secondary">UI Designer</div>
|
||||
</div>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow">
|
||||
<a href="#" class="dropdown-item">Status</a>
|
||||
<a href="./profile.html" class="dropdown-item">Profile</a>
|
||||
<a href="#" class="dropdown-item">Feedback</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a href="./settings.html" class="dropdown-item">Settings</a>
|
||||
<a href="./sign-in.html" class="dropdown-item">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
```
|
||||
@@ -1,316 +0,0 @@
|
||||
---
|
||||
title: Flags
|
||||
summary: Thanks to the Tabler flags plugin, you can create flags to visually represent countries or languages. Flags are often used in forms, as an element of a delivery address, phone number dialling code and many more.
|
||||
plugin: flags
|
||||
libs: tabler-flags
|
||||
description: Visual representation of countries/languages.
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
This part of Tabler is distributed as a plugin. To enable it you should include `tabler-flags.css` or `tabler-flags.min.css` file in your page.
|
||||
|
||||
You can also include the plugin via CDN:
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="$TABLER_CDN/dist/css/tabler-flags.min.css" />
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
To create a flag, add the `flag` class to a component and choose the country whose flag you want to use.
|
||||
|
||||
```html example centered separated plugins="flags"
|
||||
<span class="flag flag-country-us"></span>
|
||||
```
|
||||
|
||||
|
||||
## Country flags
|
||||
|
||||
To use the flag of a particular country, add the `flag-country-(country name)` class. For example, to create a flag of Andorra, you should use the following class: `.flag-country-ad`. The full list of countries can be found below.
|
||||
|
||||
```html
|
||||
<span class="flag flag-country-ad"></span>
|
||||
<span class="flag flag-country-ae"></span>
|
||||
```
|
||||
|
||||
```html example centered separated plugins="flags"
|
||||
<span class="flag flag-country-tg"></span>
|
||||
<span class="flag flag-country-br"></span>
|
||||
<span class="flag flag-country-pt"></span>
|
||||
```
|
||||
|
||||
## Flag sizes
|
||||
|
||||
Using Bootstrap’s typical naming structure, you can create a standard flag, or scale it up or down to different sizes based on what’s needed.
|
||||
|
||||
```html example centered separated plugins="flags"
|
||||
<span class="flag flag-xl flag-country-us"></span>
|
||||
<span class="flag flag-lg flag-country-us"></span>
|
||||
<span class="flag flag-md flag-country-us"></span>
|
||||
<span class="flag flag-sm flag-country-us"></span>
|
||||
<span class="flag flag-xs flag-country-us"></span>
|
||||
```
|
||||
|
||||
```html
|
||||
<span class="flag flag-xl ..."></span>
|
||||
<span class="flag flag-lg ..."></span>
|
||||
<span class="flag flag-md ..."></span>
|
||||
<span class="flag flag-sm ..."></span>
|
||||
<span class="flag flag-xs ..."></span>
|
||||
```
|
||||
|
||||
## Flags list
|
||||
|
||||
The full list of countries can be found below.
|
||||
|
||||
<FlagsTable countries={[
|
||||
{ "name": "Andorra", "code": "ad" },
|
||||
{ "name": "United Arab Emirates", "code": "ae" },
|
||||
{ "name": "Afghanistan", "code": "af" },
|
||||
{ "name": "Antigua", "code": "ag" },
|
||||
{ "name": "Anguilla", "code": "ai" },
|
||||
{ "name": "Armenia", "code": "am" },
|
||||
{ "name": "Angolan", "code": "ao" },
|
||||
{ "name": "Antarctica", "code": "aq" },
|
||||
{ "name": "Argentina", "code": "ar" },
|
||||
{ "name": "American Samoa", "code": "as" },
|
||||
{ "name": "Austria", "code": "at" },
|
||||
{ "name": "Australia", "code": "au" },
|
||||
{ "name": "Aruba", "code": "aw" },
|
||||
{ "name": "Aslan Islands", "code": "ax" },
|
||||
{ "name": "Azerbaijan", "code": "az" },
|
||||
{ "name": "Bosnian", "code": "ba" },
|
||||
{ "name": "Barbados", "code": "bb" },
|
||||
{ "name": "Belgium", "code": "be" },
|
||||
{ "name": "Burkina Faso", "code": "bf" },
|
||||
{ "name": "Bulgaria", "code": "bg" },
|
||||
{ "name": "Bahrain", "code": "bh" },
|
||||
{ "name": "Burundi", "code": "bi" },
|
||||
{ "name": "Benin", "code": "bj" },
|
||||
{ "name": "Saint-Barthélemy", "code": "bl" },
|
||||
{ "name": "Bermuda", "code": "bm" },
|
||||
{ "name": "Bruneian", "code": "bn" },
|
||||
{ "name": "Bolivia", "code": "bo" },
|
||||
{ "name": "Bonaire", "code": "bq-bo" },
|
||||
{ "name": "Brazil", "code": "br" },
|
||||
{ "name": "Bahamas", "code": "bs" },
|
||||
{ "name": "Bhutan", "code": "bt" },
|
||||
{ "name": "Bouvet Island", "code": "bv" },
|
||||
{ "name": "Batswana", "code": "bw" },
|
||||
{ "name": "Belarus", "code": "by" },
|
||||
{ "name": "Belize", "code": "bz" },
|
||||
{ "name": "Canada", "code": "ca" },
|
||||
{ "name": "Cocos Island", "code": "cc" },
|
||||
{ "name": "Democratic Republic of Congo", "code": "cd" },
|
||||
{ "name": "Central African Republic", "code": "cf" },
|
||||
{ "name": "Republic of the Congo", "code": "cg" },
|
||||
{ "name": "Switzerland", "code": "ch" },
|
||||
{ "name": "Ivory Coast", "code": "ci" },
|
||||
{ "name": "Cook Island", "code": "ck" },
|
||||
{ "name": "Chile", "code": "cl" },
|
||||
{ "name": "Cameroon", "code": "cm" },
|
||||
{ "name": "China", "code": "cn" },
|
||||
{ "name": "Colombia", "code": "co" },
|
||||
{ "name": "Costa Rica", "code": "cr" },
|
||||
{ "name": "Cuba", "code": "cu" },
|
||||
{ "name": "Cape Verde", "code": "cv" },
|
||||
{ "name": "Curacao", "code": "cw" },
|
||||
{ "name": "Christmas Island", "code": "cx" },
|
||||
{ "name": "Cyprus", "code": "cy" },
|
||||
{ "name": "Czech Republic", "code": "cz" },
|
||||
{ "name": "Germany", "code": "de" },
|
||||
{ "name": "Djibouti", "code": "dj" },
|
||||
{ "name": "Denmark", "code": "dk" },
|
||||
{ "name": "Dominica", "code": "dm" },
|
||||
{ "name": "Dominican Republic", "code": "do" },
|
||||
{ "name": "Algeria", "code": "dz" },
|
||||
{ "name": "Ecuador", "code": "ec" },
|
||||
{ "name": "Estonia", "code": "ee" },
|
||||
{ "name": "Egypt", "code": "eg" },
|
||||
{ "name": "Sahrawi", "code": "eh" },
|
||||
{ "name": "Eritrea", "code": "er" },
|
||||
{ "name": "Spain", "code": "es" },
|
||||
{ "name": "Ethiopia", "code": "et" },
|
||||
{ "name": "European Union", "code": "eu" },
|
||||
{ "name": "Finland", "code": "fi" },
|
||||
{ "name": "Fiji", "code": "fj" },
|
||||
{ "name": "Falkland Islands", "code": "fk" },
|
||||
{ "name": "Federate States of Micronesia", "code": "fm" },
|
||||
{ "name": "Faroe Islands", "code": "fo" },
|
||||
{ "name": "France", "code": "fr" },
|
||||
{ "name": "Gabon", "code": "ga" },
|
||||
{ "name": "Great Britain", "code": "gb" },
|
||||
{ "name": "England", "code": "gb-eng" },
|
||||
{ "name": "Northern Ireland", "code": "gb-nir" },
|
||||
{ "name": "Scotland", "code": "gb-sct" },
|
||||
{ "name": "Wales", "code": "gb-wls" },
|
||||
{ "name": "Grenada", "code": "gd" },
|
||||
{ "name": "Georgia", "code": "ge" },
|
||||
{ "name": "Guyana", "code": "gf" },
|
||||
{ "name": "Guernsey", "code": "gg" },
|
||||
{ "name": "Ghana", "code": "gh" },
|
||||
{ "name": "Gibraltar", "code": "gi" },
|
||||
{ "name": "Greenland", "code": "gl" },
|
||||
{ "name": "Gambia", "code": "gm" },
|
||||
{ "name": "Guinea", "code": "gn" },
|
||||
{ "name": "Guadeloupe", "code": "gp" },
|
||||
{ "name": "Equatorial Guinea", "code": "gq" },
|
||||
{ "name": "Greece", "code": "gr" },
|
||||
{ "name": "South Georgia", "code": "gs" },
|
||||
{ "name": "Guatemala", "code": "gt" },
|
||||
{ "name": "Guam", "code": "gu" },
|
||||
{ "name": "Guinea-Bissau", "code": "gw" },
|
||||
{ "name": "Guyana", "code": "gy" },
|
||||
{ "name": "Hong Kong", "code": "hk" },
|
||||
{ "name": "Heard and McDonald Islands", "code": "hm" },
|
||||
{ "name": "Honduras", "code": "hn" },
|
||||
{ "name": "Croatia", "code": "hr" },
|
||||
{ "name": "Haiti", "code": "ht" },
|
||||
{ "name": "Hungary", "code": "hu" },
|
||||
{ "name": "Indonesia", "code": "id" },
|
||||
{ "name": "Ireland", "code": "ie" },
|
||||
{ "name": "Israel", "code": "il" },
|
||||
{ "name": "Isle of Man", "code": "im" },
|
||||
{ "name": "India", "code": "in" },
|
||||
{ "name": "British Indian Ocean Territory", "code": "io" },
|
||||
{ "name": "Iraq", "code": "iq" },
|
||||
{ "name": "Iran", "code": "ir" },
|
||||
{ "name": "Iceland", "code": "is" },
|
||||
{ "name": "Italy", "code": "it" },
|
||||
{ "name": "Jersey", "code": "je" },
|
||||
{ "name": "Jamaica", "code": "jm" },
|
||||
{ "name": "Jordan", "code": "jo" },
|
||||
{ "name": "Japan", "code": "jp" },
|
||||
{ "name": "Kenya", "code": "ke" },
|
||||
{ "name": "Kyrgyzstan", "code": "kg" },
|
||||
{ "name": "Cambodia", "code": "kh" },
|
||||
{ "name": "Kiribati", "code": "ki" },
|
||||
{ "name": "Comoros", "code": "km" },
|
||||
{ "name": "Saint Kitts and Nevis", "code": "kn" },
|
||||
{ "name": "North Korea", "code": "kp" },
|
||||
{ "name": "South Korea", "code": "kr" },
|
||||
{ "name": "Kuwait", "code": "kw" },
|
||||
{ "name": "Cayman Islands", "code": "ky" },
|
||||
{ "name": "Kazakhstan", "code": "kz" },
|
||||
{ "name": "Laos", "code": "la" },
|
||||
{ "name": "Lebanese", "code": "lb" },
|
||||
{ "name": "Saint Lucia", "code": "lc" },
|
||||
{ "name": "Liechtenstein", "code": "li" },
|
||||
{ "name": "Sri Lanka", "code": "lk" },
|
||||
{ "name": "Liberia", "code": "lr" },
|
||||
{ "name": "Lesotho", "code": "ls" },
|
||||
{ "name": "Lithuania", "code": "lt" },
|
||||
{ "name": "Luxembourg", "code": "lu" },
|
||||
{ "name": "Latvia", "code": "lv" },
|
||||
{ "name": "Libya", "code": "ly" },
|
||||
{ "name": "Morocco", "code": "ma" },
|
||||
{ "name": "Monaco", "code": "mc" },
|
||||
{ "name": "Moldova", "code": "md" },
|
||||
{ "name": "Montenegro", "code": "me" },
|
||||
{ "name": "Saint Martin", "code": "mf" },
|
||||
{ "name": "Madagascar", "code": "mg" },
|
||||
{ "name": "Marshall Islands", "code": "mh" },
|
||||
{ "name": "Macedonia", "code": "mk" },
|
||||
{ "name": "Mali", "code": "ml" },
|
||||
{ "name": "Myanmar", "code": "mm" },
|
||||
{ "name": "Mongolia", "code": "mn" },
|
||||
{ "name": "Macao", "code": "mo" },
|
||||
{ "name": "Northern Mariana Islands", "code": "mp" },
|
||||
{ "name": "Martinique", "code": "mq" },
|
||||
{ "name": "Mauritania", "code": "mr" },
|
||||
{ "name": "Montserrat", "code": "ms" },
|
||||
{ "name": "Malta", "code": "mt" },
|
||||
{ "name": "Mauritius", "code": "mu" },
|
||||
{ "name": "Maldives", "code": "mv" },
|
||||
{ "name": "Malawi", "code": "mw" },
|
||||
{ "name": "Mexico", "code": "mx" },
|
||||
{ "name": "Malaysia", "code": "my" },
|
||||
{ "name": "Mozambique", "code": "mz" },
|
||||
{ "name": "Namibia", "code": "na" },
|
||||
{ "name": "New Caledonia", "code": "nc" },
|
||||
{ "name": "Niger", "code": "ne" },
|
||||
{ "name": "Norfolk Island", "code": "nf" },
|
||||
{ "name": "Nigeria", "code": "ng" },
|
||||
{ "name": "Nicaragua", "code": "ni" },
|
||||
{ "name": "Norway", "code": "no" },
|
||||
{ "name": "Nepal", "code": "np" },
|
||||
{ "name": "Nauruan", "code": "nr" },
|
||||
{ "name": "New Zealand", "code": "nz" },
|
||||
{ "name": "Oman", "code": "om" },
|
||||
{ "name": "Panama", "code": "pa" },
|
||||
{ "name": "Peru", "code": "pe" },
|
||||
{ "name": "French Polynesia", "code": "pf" },
|
||||
{ "name": "Papua New Guinea", "code": "pg" },
|
||||
{ "name": "Philippines", "code": "ph" },
|
||||
{ "name": "Pakistan", "code": "pk" },
|
||||
{ "name": "Poland", "code": "pl" },
|
||||
{ "name": "Saint Pierre", "code": "pm" },
|
||||
{ "name": "Pitcairn Islands", "code": "pn" },
|
||||
{ "name": "Puerto Rico", "code": "pr" },
|
||||
{ "name": "Palestine", "code": "ps" },
|
||||
{ "name": "Portugal", "code": "pt" },
|
||||
{ "name": "Palau", "code": "pw" },
|
||||
{ "name": "Paraguay", "code": "py" },
|
||||
{ "name": "Qatar", "code": "qa" },
|
||||
{ "name": "Reunion Island", "code": "re" },
|
||||
{ "name": "Romania", "code": "ro" },
|
||||
{ "name": "Serbia", "code": "rs" },
|
||||
{ "name": "Russia", "code": "ru" },
|
||||
{ "name": "Rwanda", "code": "rw" },
|
||||
{ "name": "Saudi Arabia", "code": "sa" },
|
||||
{ "name": "Solomon Islands", "code": "sb" },
|
||||
{ "name": "Seychelles", "code": "sc" },
|
||||
{ "name": "Sudan", "code": "sd" },
|
||||
{ "name": "Sweden", "code": "se" },
|
||||
{ "name": "Singapore", "code": "sg" },
|
||||
{ "name": "Saint Helena", "code": "sh" },
|
||||
{ "name": "Slovenia", "code": "si" },
|
||||
{ "name": "Svalbard Island", "code": "sj" },
|
||||
{ "name": "Slovakia", "code": "sk" },
|
||||
{ "name": "Sierra Leone", "code": "sl" },
|
||||
{ "name": "San Marino", "code": "sm" },
|
||||
{ "name": "Senegal", "code": "sn" },
|
||||
{ "name": "Somalia", "code": "so" },
|
||||
{ "name": "Suriname", "code": "sr" },
|
||||
{ "name": "South Sudan", "code": "ss" },
|
||||
{ "name": "Sao Tome", "code": "st" },
|
||||
{ "name": "El Salvador", "code": "sv" },
|
||||
{ "name": "Sint Maarten", "code": "sx" },
|
||||
{ "name": "Syria", "code": "sy" },
|
||||
{ "name": "Swaziland", "code": "sz" },
|
||||
{ "name": "Turks and Caicos", "code": "tc" },
|
||||
{ "name": "Chad", "code": "td" },
|
||||
{ "name": "French Southern and Antarctic Lands", "code": "tf" },
|
||||
{ "name": "Togo", "code": "tg" },
|
||||
{ "name": "Thailand", "code": "th" },
|
||||
{ "name": "Tajikistan", "code": "tj" },
|
||||
{ "name": "Tokelau", "code": "tk" },
|
||||
{ "name": "Timor Leste", "code": "tl" },
|
||||
{ "name": "Turkmenistan", "code": "tm" },
|
||||
{ "name": "Tunisia", "code": "tn" },
|
||||
{ "name": "Tonga", "code": "to" },
|
||||
{ "name": "Turkey", "code": "tr" },
|
||||
{ "name": "Trinidad and Tobago", "code": "tt" },
|
||||
{ "name": "Tuvalu", "code": "tv" },
|
||||
{ "name": "Tanzania", "code": "tz" },
|
||||
{ "name": "Ukraine", "code": "ua" },
|
||||
{ "name": "Uganda", "code": "ug" },
|
||||
{ "name": "United States Minor Islands", "code": "um" },
|
||||
{ "name": "United States of America", "code": "us" },
|
||||
{ "name": "Uruguay", "code": "uy" },
|
||||
{ "name": "Uzbekistan", "code": "uz" },
|
||||
{ "name": "Vatican City", "code": "va" },
|
||||
{ "name": "Saint Vincent", "code": "vc" },
|
||||
{ "name": "Venezuela", "code": "ve" },
|
||||
{ "name": "British Virgin Islands", "code": "vg" },
|
||||
{ "name": "Virgin Islands", "code": "vi" },
|
||||
{ "name": "Vietnam", "code": "vn" },
|
||||
{ "name": "Vanuatu", "code": "vu" },
|
||||
{ "name": "Wallis and Futuna", "code": "wf" },
|
||||
{ "name": "Samoa", "code": "ws" },
|
||||
{ "name": "Yemen", "code": "ye" },
|
||||
{ "name": "South Africa", "code": "za" },
|
||||
{ "name": "Zambia", "code": "zm" },
|
||||
{ "name": "Zimbabwe", "code": "zw" }
|
||||
]}/>
|
||||
@@ -1,152 +0,0 @@
|
||||
---
|
||||
title: Payments
|
||||
summary: The Tabler payments plug-in will let you use a set of payment provider icons to facilitate the payment process and make it more user-friendly.
|
||||
plugin: payments
|
||||
description: User-friendly payment provider icons.
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
This part of Tabler is distributed as a plugin. To enable it you should include `tabler-payments.css` or `tabler-payments.min.css` file in your page.
|
||||
|
||||
You can also include the plugin via CDN:
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="$TABLER_CDN/dist/css/tabler-payments.min.css" />
|
||||
```
|
||||
|
||||
## Payment
|
||||
|
||||
To create a payment provider icon, add the `payment` class to a component and specify the payment provider. The full list of payment providers can be found below.
|
||||
|
||||
```html example plugins="payments" separated centered
|
||||
<span class="payment payment-provider-shopify"></span>
|
||||
<span class="payment payment-provider-visa"></span>
|
||||
<span class="payment payment-provider-paypal"></span>
|
||||
```
|
||||
|
||||
## Payment sizes
|
||||
|
||||
Using Bootstrap’s typical naming structure, you can create a standard payment, or scale it up or down to different sizes based on what’s needed.
|
||||
|
||||
```html example plugins="payments" separated centered
|
||||
<span class="payment payment-xl payment-provider-shopify"></span>
|
||||
<span class="payment payment-lg payment-provider-visa"></span>
|
||||
<span class="payment payment-md payment-provider-paypal"></span>
|
||||
<span class="payment payment-sm payment-provider-amazon"></span>
|
||||
<span class="payment payment-xs payment-provider-blik"></span>
|
||||
```
|
||||
|
||||
## List of available payment providers
|
||||
|
||||
Select an icon from the list of payment providers. Each icon comes in two color variants - light and dark, so you can choose the one that goes well with your design.
|
||||
|
||||
<PaymentsTable providers={[
|
||||
{ "name": "2c2p", "code": "2c2p" },
|
||||
{ "name": "2checkout", "code": "2checkout" },
|
||||
{ "name": "Adyen", "code": "adyen" },
|
||||
{ "name": "Affirm", "code": "affirm" },
|
||||
{ "name": "Alipay Plus", "code": "alipay-plus" },
|
||||
{ "name": "Alipay", "code": "alipay" },
|
||||
{ "name": "Allegro Pay", "code": "allegro-pay" },
|
||||
{ "name": "Amazon Pay", "code": "amazon-pay" },
|
||||
{ "name": "Amazon", "code": "amazon" },
|
||||
{ "name": "American Express", "code": "americanexpress" },
|
||||
{ "name": "Apple Pay", "code": "applepay" },
|
||||
{ "name": "Authorize", "code": "authorize" },
|
||||
{ "name": "Autopay", "code": "autopay" },
|
||||
{ "name": "Bancontact", "code": "bancontact" },
|
||||
{ "name": "Binance USD", "code": "binance-usd" },
|
||||
{ "name": "Bitcoin", "code": "bitcoin" },
|
||||
{ "name": "BitPay", "code": "bitpay" },
|
||||
{ "name": "Bkash", "code": "bkash" },
|
||||
{ "name": "Blik", "code": "blik" },
|
||||
{ "name": "Braintree", "code": "braintree" },
|
||||
{ "name": "Cash App", "code": "cash-app" },
|
||||
{ "name": "Chime", "code": "chime" },
|
||||
{ "name": "Cirrus", "code": "cirrus" },
|
||||
{ "name": "ClickandBuy", "code": "clickandbuy" },
|
||||
{ "name": "Coinkite", "code": "coinkite" },
|
||||
{ "name": "Diners Club", "code": "dinersclub" },
|
||||
{ "name": "Direct Debit", "code": "directdebit" },
|
||||
{ "name": "Discover", "code": "discover" },
|
||||
{ "name": "Dotpay", "code": "dotpay" },
|
||||
{ "name": "Dwolla", "code": "dwolla" },
|
||||
{ "name": "EasyPaisa", "code": "easypaisa" },
|
||||
{ "name": "eBay", "code": "ebay" },
|
||||
{ "name": "Elo", "code": "elo" },
|
||||
{ "name": "ePayco", "code": "epayco" },
|
||||
{ "name": "eSewa", "code": "esewa" },
|
||||
{ "name": "Ethereum", "code": "ethereum" },
|
||||
{ "name": "eWay", "code": "eway" },
|
||||
{ "name": "FonePay", "code": "fonepay" },
|
||||
{ "name": "Giropay", "code": "giropay" },
|
||||
{ "name": "Google Pay", "code": "google-pay" },
|
||||
{ "name": "Google Wallet", "code": "googlewallet" },
|
||||
{ "name": "HubSpot", "code": "hubspot" },
|
||||
{ "name": "Ingenico", "code": "ingenico" },
|
||||
{ "name": "iDeal", "code": "ideal" },
|
||||
{ "name": "IMEPay", "code": "imepay" },
|
||||
{ "name": "JCB", "code": "jcb" },
|
||||
{ "name": "Khalti", "code": "khalti" },
|
||||
{ "name": "Klarna", "code": "klarna" },
|
||||
{ "name": "Laser", "code": "laser" },
|
||||
{ "name": "Litecoin", "code": "litecoin" },
|
||||
{ "name": "Maestro", "code": "maestro" },
|
||||
{ "name": "Mastercard", "code": "mastercard" },
|
||||
{ "name": "Mercado Pago", "code": "mercado-pago" },
|
||||
{ "name": "MetaMask", "code": "metamask" },
|
||||
{ "name": "MIR", "code": "mir" },
|
||||
{ "name": "Monero", "code": "monero" },
|
||||
{ "name": "MoneyGram", "code": "moneygram" },
|
||||
{ "name": "Neteller", "code": "neteller" },
|
||||
{ "name": "Ogone", "code": "ogone" },
|
||||
{ "name": "OKPay", "code": "okpay" },
|
||||
{ "name": "OpenSea", "code": "opensea" },
|
||||
{ "name": "Paybox", "code": "paybox" },
|
||||
{ "name": "Payconiq", "code": "payconiq" },
|
||||
{ "name": "Payka", "code": "payka" },
|
||||
{ "name": "Payline", "code": "payline" },
|
||||
{ "name": "Paymill", "code": "paymill" },
|
||||
{ "name": "Payone", "code": "payone" },
|
||||
{ "name": "Payoneer", "code": "payoneer" },
|
||||
{ "name": "PayPal", "code": "paypal" },
|
||||
{ "name": "PayPo", "code": "paypo" },
|
||||
{ "name": "Paysafe", "code": "paysafe" },
|
||||
{ "name": "Paysafecard", "code": "paysafecard" },
|
||||
{ "name": "PayU", "code": "payu" },
|
||||
{ "name": "Payza", "code": "payza" },
|
||||
{ "name": "Poli", "code": "poli" },
|
||||
{ "name": "Przelewy24", "code": "przelewy24" },
|
||||
{ "name": "Revolut Pay", "code": "revolut-pay" },
|
||||
{ "name": "Ripple", "code": "ripple" },
|
||||
{ "name": "Sage", "code": "sage" },
|
||||
{ "name": "Samsung Pay", "code": "samsung-pay" },
|
||||
{ "name": "SEPA", "code": "sepa" },
|
||||
{ "name": "Shop Pay", "code": "shop-pay" },
|
||||
{ "name": "Shopify", "code": "shopify" },
|
||||
{ "name": "Skrill", "code": "skrill" },
|
||||
{ "name": "Solana", "code": "solana" },
|
||||
{ "name": "Solo", "code": "solo" },
|
||||
{ "name": "Spingo", "code": "spingo" },
|
||||
{ "name": "Square", "code": "square" },
|
||||
{ "name": "Stax", "code": "stax" },
|
||||
{ "name": "Stripe", "code": "stripe" },
|
||||
{ "name": "Switch", "code": "switch" },
|
||||
{ "name": "Tether", "code": "tether" },
|
||||
{ "name": "Tpay", "code": "tpay" },
|
||||
{ "name": "Troy", "code": "troy" },
|
||||
{ "name": "True USD", "code": "true-usd" },
|
||||
{ "name": "Ukash", "code": "ukash" },
|
||||
{ "name": "UnionPay", "code": "unionpay" },
|
||||
{ "name": "Venmo", "code": "venmo" },
|
||||
{ "name": "Verifone", "code": "verifone" },
|
||||
{ "name": "Verisign", "code": "verisign" },
|
||||
{ "name": "Visa", "code": "visa" },
|
||||
{ "name": "WeChat Pay", "code": "we-chat-pay" },
|
||||
{ "name": "WebMoney", "code": "webmoney" },
|
||||
{ "name": "Western Union", "code": "westernunion" },
|
||||
{ "name": "Wise", "code": "wise" },
|
||||
{ "name": "Worldpay", "code": "worldpay" },
|
||||
{ "name": "Zelle", "code": "zelle" }
|
||||
]}/>
|
||||
@@ -1,135 +0,0 @@
|
||||
---
|
||||
title: Social Icons
|
||||
summary: Social icons are a great way to make your website more engaging and user-friendly. You can use social icons to help users quickly find your social media profiles and connect with you.
|
||||
plugin: socials
|
||||
libs: tabler-socials
|
||||
description: Connect users to your social profiles.
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
This part of Tabler is distributed as a plugin. To enable it you should include `tabler-socials.css` or `tabler-socials.min.css` file in your page.
|
||||
|
||||
You can also include the plugin via CDN:
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="$TABLER_CDN/dist/css/tabler-socials.min.css" />
|
||||
```
|
||||
|
||||
## Social icons
|
||||
|
||||
To create a social icon, add the `social` class to a component and also add the class for the specific social app whose icon you want to use.
|
||||
|
||||
```html example centered separated plugins="socials"
|
||||
<span class="social social-app-facebook"></span>
|
||||
<span class="social social-app-x"></span>
|
||||
<span class="social social-app-instagram"></span>
|
||||
```
|
||||
|
||||
## Social apps list
|
||||
|
||||
Here is a list of all available social apps:
|
||||
|
||||
<SocialsTable apps={[
|
||||
{
|
||||
"name": "Apple",
|
||||
"file": "apple"
|
||||
},
|
||||
{
|
||||
"name": "Discord",
|
||||
"file": "discord"
|
||||
},
|
||||
{
|
||||
"name": "Dribbble",
|
||||
"file": "dribbble"
|
||||
},
|
||||
{
|
||||
"name": "Facebook",
|
||||
"file": "facebook"
|
||||
},
|
||||
{
|
||||
"name": "Figma",
|
||||
"file": "figma"
|
||||
},
|
||||
{
|
||||
"name": "GitHub",
|
||||
"file": "github"
|
||||
},
|
||||
{
|
||||
"name": "Google",
|
||||
"file": "google"
|
||||
},
|
||||
{
|
||||
"name": "Instagram",
|
||||
"file": "instagram"
|
||||
},
|
||||
{
|
||||
"name": "LinkedIn",
|
||||
"file": "linkedin"
|
||||
},
|
||||
{
|
||||
"name": "Medium",
|
||||
"file": "medium"
|
||||
},
|
||||
{
|
||||
"name": "Meta",
|
||||
"file": "meta"
|
||||
},
|
||||
{
|
||||
"name": "MetaMask",
|
||||
"file": "metamask"
|
||||
},
|
||||
{
|
||||
"name": "Pinterest",
|
||||
"file": "pinterest"
|
||||
},
|
||||
{
|
||||
"name": "Reddit",
|
||||
"file": "reddit"
|
||||
},
|
||||
{
|
||||
"name": "Signal",
|
||||
"file": "signal"
|
||||
},
|
||||
{
|
||||
"name": "Skype",
|
||||
"file": "skype"
|
||||
},
|
||||
{
|
||||
"name": "Snapchat",
|
||||
"file": "snapchat"
|
||||
},
|
||||
{
|
||||
"name": "Spotify",
|
||||
"file": "spotify"
|
||||
},
|
||||
{
|
||||
"name": "Telegram",
|
||||
"file": "telegram"
|
||||
},
|
||||
{
|
||||
"name": "TikTok",
|
||||
"file": "tiktok"
|
||||
},
|
||||
{
|
||||
"name": "Tumblr",
|
||||
"file": "tumblr"
|
||||
},
|
||||
{
|
||||
"name": "Twitch",
|
||||
"file": "twitch"
|
||||
},
|
||||
{
|
||||
"name": "VK",
|
||||
"file": "vk"
|
||||
},
|
||||
{
|
||||
"name": "X (Twitter)",
|
||||
"file": "x"
|
||||
},
|
||||
{
|
||||
"name": "YouTube",
|
||||
"file": "youtube"
|
||||
}
|
||||
]} />
|
||||
|
||||
@@ -1 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="15" fill="none"><g mask="url(#KR_-_Korea_(South)__a)"><path fill="#F7FCFF" fill-rule="evenodd" d="M0 0v15h20V0H0z" clip-rule="evenodd"/><g mask="url(#KR_-_Korea_(South)__b)"><path fill="#3D58DB" fill-rule="evenodd" d="M10 11.387c2.002 0 3.624-1.723 3.624-3.849 0-2.126-1.622-3.849-3.624-3.849s-3.624 1.723-3.624 3.85c0 2.125 1.622 3.848 3.624 3.848z" clip-rule="evenodd"/><g mask="url(#KR_-_Korea_(South)__c)"><path fill="#E31D1C" fill-rule="evenodd" d="M13.751 7.833s-.203-1.815-1.71-1.914c-1.507-.098-1.913 1.331-2 1.71-.087.379-.307 1.39-1.893 1.39s-1.73-2.57-1.73-2.57V3.42h7.333v4.414z" clip-rule="evenodd"/></g><path fill="#272727" fill-rule="evenodd" d="m4.562 1.283.572.517-2.65 3.095-.572-.517 2.65-3.095zm.943.837.572.517-2.555 3.05-.572-.517 2.555-3.05zm1.51 1.364-.571-.517L3.882 6.04l.572.517 2.562-3.073zm8.837-2.418-.572.515.993 1.164.572-.515-.993-1.164zm1.764 2.141-.572.516.992 1.164.572-.515-.992-1.165zm-4.223.051.571-.515.993 1.164-.572.515-.992-1.164zm2.335 1.626-.572.516.992 1.164.572-.515-.992-1.165zm-1.356-2.49.572-.515 2.762 3.363-.572.516-2.762-3.364zm1.912 6.508-.576-.517-1.001 1.168.577.518 1-1.17zm-1.682 2.057-.577-.517-1 1.168.577.518 1-1.17zm2.927-.938.577.517-1 1.169-.578-.518 1.001-1.168zm-1.023 2.621-.577-.517-1 1.169.576.517 1.001-1.169zm-1.527-1.406.577.518-1.044 1.248-.577-.518 1.044-1.248zm2.29-1.562-.576-.517-1.045 1.248.577.517 1.044-1.248zM4.004 9.306l.572-.516 2.553 2.926-.572.515-2.553-2.925zm.596 2.559.572-.516 1.078 1.185-.572.515L4.6 11.865zm-1.907-1.433-.572.516 2.567 2.964.572-.516-2.567-2.964zm.407-.337.572-.516.935 1.096-.572.516-.935-1.096z" clip-rule="evenodd"/></g></g></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="15" fill="none"><path d="M0,0V15H20V0Z" fill="#f7fcff" fill-rule="evenodd"/><path d="M13.74,7.58a3.66,3.66,0,1,1-3.66-3.7A3.67,3.67,0,0,1,13.74,7.58Z" fill="#e31d1c" fill-rule="evenodd"/><path d="M6.47,6.93c.12.93.29,2,1.72,2.08a1.82,1.82,0,0,0,1.94-1.6,1.81,1.81,0,0,1,2.86-1,1.71,1.71,0,0,1,.74,1.35,3.64,3.64,0,0,1-1.84,3.08,3.73,3.73,0,0,1-4.16-.34A3.84,3.84,0,0,1,6.47,6.93Z" fill="#3d58db" fill-rule="evenodd"/><path d="M4.56,1.28l.57.52L2.48,4.89l-.57-.51Zm.94.84.58.52L3.52,5.69,3,5.17ZM7,3.48,6.44,3,3.88,6l.57.52L7,3.48Zm8.84-2.41-.57.51,1,1.16.57-.51Zm1.77,2.14L17,3.72l1,1.17.57-.52Zm-4.23,0L14,2.74l1,1.17-.57.51Zm2.34,1.62-.57.52,1,1.16.57-.51ZM14.37,2.39l.57-.51,2.77,3.36-.58.52ZM16.28,8.9l-.57-.52-1,1.17.57.52,1-1.17ZM14.6,11,14,10.44l-1,1.17.57.52,1-1.17ZM17.53,10l.58.52-1,1.17-.58-.52Zm-1,2.62-.58-.52-1,1.17.57.52ZM15,11.24l.58.51L14.51,13l-.58-.52Zm2.29-1.57-.58-.51-1,1.24.57.52ZM4,9.31l.58-.52,2.55,2.93-.57.51Zm.6,2.55.57-.51,1.08,1.18-.57.52ZM2.69,10.43,2.12,11l2.57,3,.57-.51Zm.41-.33.57-.52.94,1.1L4,11.19Z" fill="#272727" fill-rule="evenodd"/></svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.1 KiB |
35
core/js/tabler-theme.js
Normal file
35
core/js/tabler-theme.js
Normal file
@@ -0,0 +1,35 @@
|
||||
/**
|
||||
* demo-theme is specifically loaded right after the body and not deferred
|
||||
* to ensure we switch to the chosen dark/light theme as fast as possible.
|
||||
* This will prevent any flashes of the light theme (default) before switching.
|
||||
*/
|
||||
const themeConfig = {
|
||||
"theme": "light",
|
||||
"theme-base": "gray",
|
||||
"theme-font": "sans-serif",
|
||||
"theme-primary": "blue",
|
||||
"theme-radius": "1",
|
||||
}
|
||||
|
||||
const params = new Proxy(new URLSearchParams(window.location.search), {
|
||||
get: (searchParams, prop) => searchParams.get(prop),
|
||||
})
|
||||
|
||||
for (const key in themeConfig) {
|
||||
const param = params[key]
|
||||
let selectedValue
|
||||
|
||||
if (!!param) {
|
||||
localStorage.setItem('tabler-' + key, param)
|
||||
selectedValue = param
|
||||
} else {
|
||||
const storedTheme = localStorage.getItem('tabler-' + key)
|
||||
selectedValue = storedTheme ? storedTheme : themeConfig[key]
|
||||
}
|
||||
|
||||
if (selectedValue !== themeConfig[key]) {
|
||||
document.documentElement.setAttribute('data-bs-' + key, selectedValue)
|
||||
} else {
|
||||
document.documentElement.removeAttribute('data-bs-' + key)
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import "./src/dropdown"
|
||||
import "./src/tooltip"
|
||||
import "./src/popover"
|
||||
import "./src/switch-icon"
|
||||
import "./src/tab"
|
||||
import "./src/toast"
|
||||
|
||||
export * as bootstrap from "bootstrap"
|
||||
@@ -1,30 +0,0 @@
|
||||
import "./src/autosize"
|
||||
import "./src/countup"
|
||||
import "./src/input-mask"
|
||||
import "./src/dropdown"
|
||||
import "./src/tooltip"
|
||||
import "./src/popover"
|
||||
import "./src/switch-icon"
|
||||
import "./src/tab"
|
||||
import "./src/toast"
|
||||
|
||||
import * as bootstrap from "bootstrap"
|
||||
import * as tabler from "./src/tabler"
|
||||
|
||||
export {
|
||||
Alert,
|
||||
Modal,
|
||||
Toast,
|
||||
Tooltip,
|
||||
Tab,
|
||||
Button,
|
||||
Carousel,
|
||||
Collapse,
|
||||
Dropdown,
|
||||
Popover,
|
||||
ScrollSpy,
|
||||
Offcanvas
|
||||
} from 'bootstrap'
|
||||
|
||||
globalThis.bootstrap = bootstrap
|
||||
globalThis.tabler = tabler
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "@tabler/core",
|
||||
"version": "1.1.1",
|
||||
"version": "1.2.0",
|
||||
"description": "Premium and Open Source dashboard template with responsive and high quality UI.",
|
||||
"homepage": "https://tabler.io",
|
||||
"scripts": {
|
||||
"dev": "pnpm run watch",
|
||||
"build": "pnpm run clean && pnpm run css && pnpm run js && pnpm run copy",
|
||||
"build": "pnpm run clean && pnpm run css && pnpm run js && pnpm run copy && pnpm run generate-sri",
|
||||
"clean": "shx rm -rf dist demo",
|
||||
"css": "pnpm run css-compile && pnpm run css-prefix && pnpm run css-rtl && pnpm run css-minify && pnpm run css-banner",
|
||||
"css-compile": "sass scss/:dist/css/ --no-source-map --load-path=node_modules",
|
||||
@@ -16,18 +16,23 @@
|
||||
"css-minify-main": "cleancss -O1 --format breakWith=lf --with-rebase --source-map --source-map-inline-sources --output dist/css/ --batch --batch-suffix \".min\" \"dist/css/*.css\" \"!dist/css/*.min.css\" \"!dist/css/*rtl*.css\"",
|
||||
"css-minify-rtl": "cleancss -O1 --format breakWith=lf --with-rebase --source-map --source-map-inline-sources --output dist/css/ --batch --batch-suffix \".min\" \"dist/css/*rtl.css\" \"!dist/css/*.min.css\"",
|
||||
"js": "pnpm run js-compile && pnpm run js-minify",
|
||||
"js-compile": "pnpm run js-compile-standalone && pnpm run js-compile-standalone-esm",
|
||||
"js-compile": "pnpm run js-compile-standalone && pnpm run js-compile-standalone-esm && pnpm run js-compile-theme && pnpm run js-compile-theme-esm",
|
||||
"js-compile-theme-esm": "rollup --environment THEME:true --environment ESM:true --config .build/rollup.config.mjs --sourcemap",
|
||||
"js-compile-theme": "rollup --environment THEME:true --config .build/rollup.config.mjs --sourcemap",
|
||||
"js-compile-standalone": "rollup --config .build/rollup.config.mjs --sourcemap",
|
||||
"js-compile-standalone-esm": "rollup --environment ESM:true --config .build/rollup.config.mjs --sourcemap",
|
||||
"js-minify": "pnpm run js-minify-standalone && pnpm run js-minify-standalone-esm",
|
||||
"js-minify": "pnpm run js-minify-standalone && pnpm run js-minify-standalone-esm && pnpm run js-minify-theme && pnpm run js-minify-theme-esm",
|
||||
"js-minify-standalone": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/tabler.js.map,includeSources,url=tabler.min.js.map\" --output dist/js/tabler.min.js dist/js/tabler.js",
|
||||
"js-minify-standalone-esm": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/tabler.esm.js.map,includeSources,url=tabler.esm.min.js.map\" --output dist/js/tabler.esm.min.js dist/js/tabler.esm.js",
|
||||
"js-minify-theme": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/tabler-theme.js.map,includeSources,url=tabler-theme.min.js.map\" --output dist/js/tabler-theme.min.js dist/js/tabler-theme.js",
|
||||
"js-minify-theme-esm": "terser --compress passes=2 --mangle --comments \"/^!/\" --source-map \"content=dist/js/tabler-theme.esm.js.map,includeSources,url=tabler-theme.esm.min.js.map\" --output dist/js/tabler-theme.esm.min.js dist/js/tabler-theme.esm.js",
|
||||
"copy": "pnpm run copy-img",
|
||||
"copy-img": "shx mkdir -p dist/img && shx cp -rf img/* dist/img",
|
||||
"watch": "concurrently \"pnpm run watch-css\" \"pnpm run watch-js\"",
|
||||
"watch-css": "nodemon --watch scss/ --ext scss --exec \"pnpm run css-compile && pnpm run css-prefix\"",
|
||||
"watch-js": "nodemon --watch js/ --ext js --exec \"pnpm run js-compile\"",
|
||||
"bundlewatch": "bundlewatch",
|
||||
"generate-sri": "node .build/generate-sri.js",
|
||||
"format:check": "prettier --check src/**/*.{js,scss} --cache",
|
||||
"format:write": "prettier --write src/**/*.{js,scss} --cache"
|
||||
},
|
||||
@@ -139,10 +144,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@popperjs/core": "^2.11.8",
|
||||
"bootstrap": "5.3.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/banner": "workspace:*"
|
||||
"bootstrap": "5.3.5"
|
||||
},
|
||||
"directories": {
|
||||
"doc": "docs"
|
||||
|
||||
@@ -14,12 +14,10 @@
|
||||
@import "bootstrap/scss/nav";
|
||||
@import "bootstrap/scss/navbar";
|
||||
@import "bootstrap/scss/card";
|
||||
// @import "bootstrap/scss/accordion";
|
||||
@import "bootstrap/scss/breadcrumb";
|
||||
@import "bootstrap/scss/pagination";
|
||||
@import "bootstrap/scss/progress";
|
||||
@import "bootstrap/scss/list-group";
|
||||
@import "bootstrap/scss/close";
|
||||
@import "bootstrap/scss/toasts";
|
||||
@import "bootstrap/scss/modal";
|
||||
@import "bootstrap/scss/tooltip";
|
||||
@@ -29,8 +27,5 @@
|
||||
@import "bootstrap/scss/offcanvas";
|
||||
@import "bootstrap/scss/placeholders";
|
||||
|
||||
// Helpers
|
||||
@import "bootstrap/scss/helpers";
|
||||
|
||||
// Utilities
|
||||
@import "bootstrap/scss/utilities/api";
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
@import "config";
|
||||
@import "bootstrap-components";
|
||||
|
||||
@import "props";
|
||||
|
||||
@import "fonts/webfonts";
|
||||
|
||||
@import "layout/root";
|
||||
@@ -65,6 +67,8 @@
|
||||
@import "ui/chat";
|
||||
@import "ui/signature";
|
||||
|
||||
@import "helpers/index";
|
||||
|
||||
@import "utils/background";
|
||||
@import "utils/colors";
|
||||
@import "utils/scroll";
|
||||
|
||||
91
core/scss/_props.scss
Normal file
91
core/scss/_props.scss
Normal file
@@ -0,0 +1,91 @@
|
||||
@import "config";
|
||||
|
||||
:root,
|
||||
:host {
|
||||
/** Fonts */
|
||||
--#{$prefix}font-monospace: #{$font-family-monospace};
|
||||
--#{$prefix}font-sans-serif: #{$font-family-sans-serif};
|
||||
--#{$prefix}font-serif: #{$font-family-serif};
|
||||
--#{$prefix}font-comic: #{$font-family-comic};
|
||||
|
||||
/** Gray colors */
|
||||
--#{$prefix}gray-50: #{$gray-50};
|
||||
--#{$prefix}gray-100: #{$gray-100};
|
||||
--#{$prefix}gray-200: #{$gray-200};
|
||||
--#{$prefix}gray-300: #{$gray-300};
|
||||
--#{$prefix}gray-400: #{$gray-400};
|
||||
--#{$prefix}gray-500: #{$gray-500};
|
||||
--#{$prefix}gray-600: #{$gray-600};
|
||||
--#{$prefix}gray-700: #{$gray-700};
|
||||
--#{$prefix}gray-800: #{$gray-800};
|
||||
--#{$prefix}gray-900: #{$gray-900};
|
||||
--#{$prefix}gray-950: #{$gray-950};
|
||||
|
||||
--#{$prefix}white: #{$white};
|
||||
--#{$prefix}black: #{$black};
|
||||
--#{$prefix}dark: #{$dark};
|
||||
--#{$prefix}light: #{$light};
|
||||
|
||||
/** Brand colors */
|
||||
--#{$prefix}brand: #{$primary};
|
||||
|
||||
/** Theme colors */
|
||||
@each $name, $color in map-merge($theme-colors, $social-colors) {
|
||||
--#{$prefix}#{$name}: #{$color};
|
||||
--#{$prefix}#{$name}-rgb: #{to-rgb($color)};
|
||||
--#{$prefix}#{$name}-fg: #{if(contrast-ratio($color) > $min-contrast-ratio, var(--#{$prefix}light), var(--#{$prefix}dark))};
|
||||
--#{$prefix}#{$name}-darken: #{theme-color-darker($color)};
|
||||
--#{$prefix}#{$name}-darken: color-mix(in oklab, var(--#{$prefix}#{$name}), transparent 20%);
|
||||
--#{$prefix}#{$name}-lt: #{theme-color-lighter($color)};
|
||||
--#{$prefix}#{$name}-lt: color-mix(in oklab, var(--#{$prefix}#{$name}) 10%, transparent);
|
||||
--#{$prefix}#{$name}-200: color-mix(in oklab, var(--#{$prefix}#{$name}) 20%, transparent);
|
||||
--#{$prefix}#{$name}-lt-rgb: #{to-rgb(theme-color-lighter($color))};
|
||||
}
|
||||
|
||||
/** Social colors */
|
||||
@each $name, $color in $social-colors {
|
||||
--#{$prefix}#{$name}: #{$color};
|
||||
}
|
||||
|
||||
/** Spacers */
|
||||
@each $name, $value in $spacers {
|
||||
--#{$prefix}spacer-#{$name}: #{$value};
|
||||
}
|
||||
|
||||
/** Font sizes */
|
||||
@each $name, $value in $font-weights {
|
||||
--#{$prefix}font-weight-#{$name}: #{$value};
|
||||
}
|
||||
|
||||
@each $name, $value in $font-sizes {
|
||||
--#{$prefix}font-size-h#{$name}: #{$value};
|
||||
}
|
||||
|
||||
@each $name, $value in $line-heights {
|
||||
--#{$prefix}line-height-#{$name}: #{$value};
|
||||
}
|
||||
|
||||
/** Shadows */
|
||||
@each $name, $value in $box-shadows {
|
||||
--#{$prefix}shadow#{if($name, '-#{$name}', '')}: #{$value};
|
||||
}
|
||||
|
||||
/** Border radiuses */
|
||||
--#{$prefix}border-radius-scale: 1;
|
||||
@each $name, $value in $border-radiuses {
|
||||
@if $name {
|
||||
--#{$prefix}border-radius-#{$name}: calc(#{$value} * var(--#{$prefix}border-radius-scale, 1));
|
||||
} @else {
|
||||
--#{$prefix}border-radius: #{$value};
|
||||
}
|
||||
}
|
||||
|
||||
/** Backdrops */
|
||||
--#{$prefix}backdrop-opacity: #{$backdrop-opacity};
|
||||
--#{$prefix}backdrop-bg: var(--#{$prefix}bg-surface-dark);
|
||||
@each $name, $value in $backdrops {
|
||||
--#{$prefix}backdrop-bg#{if($name, '-#{$name}', '')}: #{$value};
|
||||
}
|
||||
--#{$prefix}backdrop-blur: #{$backdrop-blur};
|
||||
--#{$prefix}backdrop-filter: blur(var(--#{$prefix}backdrop-blur));
|
||||
}
|
||||
@@ -11,7 +11,7 @@ $border-dark-color-dark: color.adjust($dark, $lightness: 4%) !default;
|
||||
$border-active-color-dark: color.adjust($dark, $lightness: 12%) !default;
|
||||
|
||||
//new bootsrap variables
|
||||
$body-color-dark: $gray-200 !default;
|
||||
$body-color-dark: $gray-200 !default;
|
||||
$body-emphasis-color-dark: $white !default;
|
||||
|
||||
$code-color-dark: var(--#{$prefix}gray-300) !default;
|
||||
|
||||
@@ -24,8 +24,9 @@ $font-local: null !default;
|
||||
$font-icons: () !default;
|
||||
|
||||
$font-family-sans-serif: unquote("#{if($font-local, "#{$font-local}, ", ' ')}#{if($font-google, "#{$font-google}, ", ' ')}") 'Inter Var', Inter, -apple-system, BlinkMacSystemFont, San Francisco, Segoe UI, Roboto, Helvetica Neue, sans-serif !default;
|
||||
$font-family-monospace: unquote("#{if($font-google-monospaced, "#{$font-google-monospaced}, ", '')}") Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace !default;
|
||||
$font-family-monospace: unquote("#{if($font-google-monospaced, "#{$font-google-monospaced}, ", '')}") Monaco, Consolas, Liberation Mono, Courier New, monospace !default;
|
||||
$font-family-serif: "Georgia", "Times New Roman", times, serif !default;
|
||||
$font-family-comic: "Comic Sans MS", "Comic Sans", 'Chalkboard SE', 'Comic Neue', sans-serif, cursive !default;
|
||||
|
||||
//Icons
|
||||
$icon-stroke-width: 1.5 !default;
|
||||
@@ -78,6 +79,7 @@ $font-weights: (
|
||||
$line-height-base: divide(1.25rem, $font-size-base) !default;
|
||||
$line-height-sm: divide(1rem, $font-size-base) !default;
|
||||
$line-height-lg: divide(1.5rem, $font-size-base) !default;
|
||||
$line-height-xl: divide(1.75rem, $font-size-base) !default;
|
||||
|
||||
$h1-font-size: 1.5rem !default;
|
||||
$h1-line-height: 2rem !default;
|
||||
@@ -144,16 +146,17 @@ $border-light-opacity: 0.08 !default;
|
||||
$border-dark-opacity: 0.24 !default;
|
||||
$border-active-opacity: 0.58 !default;
|
||||
|
||||
$gray-50: #f6f8fb !default;
|
||||
$gray-100: #eef3f6 !default;
|
||||
$gray-200: #dce1e7 !default;
|
||||
$gray-300: #b8c4d4 !default;
|
||||
$gray-400: #8a97ab !default;
|
||||
$gray-500: #6c7a91 !default;
|
||||
$gray-600: #49566c !default;
|
||||
$gray-700: #3a4859 !default;
|
||||
$gray-800: #182433 !default;
|
||||
$gray-900: #040a11 !default;
|
||||
$gray-50: #f9fafb !default;
|
||||
$gray-100: #f3f4f6 !default;
|
||||
$gray-200: #e5e7eb !default;
|
||||
$gray-300: #d1d5db !default;
|
||||
$gray-400: #9ca3af !default;
|
||||
$gray-500: #6b7280 !default;
|
||||
$gray-600: #4b5563 !default;
|
||||
$gray-700: #374151 !default;
|
||||
$gray-800: #1f2937 !default;
|
||||
$gray-900: #111827 !default;
|
||||
$gray-950: #030712 !default;
|
||||
|
||||
$black: #000000 !default;
|
||||
$white: #ffffff !default;
|
||||
@@ -186,19 +189,7 @@ $green: #2fb344 !default;
|
||||
$teal: #0ca678 !default;
|
||||
$cyan: #17a2b8 !default;
|
||||
|
||||
$color-blue: #066fd1;
|
||||
$color-azure: #3586c9;
|
||||
$color-indigo: #4263eb;
|
||||
$color-purple: #ae3ec9;
|
||||
$color-pink: #d6336c;
|
||||
$color-red: #e73f3f;
|
||||
$color-orange: #f76707;
|
||||
$color-yellow: #f59f00;
|
||||
$color-lime: #74b816;
|
||||
$color-green: #2fb344;
|
||||
$color-teal: #0ca678;
|
||||
$color-cyan: #17a2b8;
|
||||
|
||||
$text-muted: $gray-500 !default;
|
||||
$text-secondary: $gray-500 !default;
|
||||
$text-secondary-light: $gray-400 !default;
|
||||
$text-secondary-dark: $gray-600 !default;
|
||||
@@ -219,27 +210,28 @@ $active-border-color: var(--#{$prefix}primary) !default;
|
||||
$hover-bg: rgba(var(--#{$prefix}secondary-rgb), 0.08) !default;
|
||||
|
||||
$disabled-bg: var(--#{$prefix}bg-surface-secondary) !default;
|
||||
$disabled-color: var(--#{$prefix}gray-300) !default;
|
||||
$disabled-color: color-transparent(var(--#{$prefix}body-color), .4) !default;
|
||||
|
||||
$primary: $blue !default;
|
||||
$secondary: $text-secondary !default;
|
||||
$muted: $text-secondary !default;
|
||||
$success: $green !default;
|
||||
$info: $azure !default;
|
||||
$warning: $orange !default;
|
||||
$warning: $yellow !default;
|
||||
$danger: $red !default;
|
||||
|
||||
$link-color: $primary !default;
|
||||
|
||||
$theme-colors: (
|
||||
"primary": $primary,
|
||||
"secondary": $text-secondary,
|
||||
"secondary": $secondary,
|
||||
"success": $success,
|
||||
"info": $info,
|
||||
"warning": $warning,
|
||||
"danger": $danger,
|
||||
"light": $light,
|
||||
"dark": $dark,
|
||||
"muted": $text-secondary,
|
||||
"muted": $muted,
|
||||
) !default;
|
||||
|
||||
$extra-colors: (
|
||||
@@ -289,7 +281,16 @@ $gray-colors: (
|
||||
gray-900: $gray-900,
|
||||
) !default;
|
||||
|
||||
$theme-colors: map-merge($theme-colors, map-merge($extra-colors, $social-colors));
|
||||
$theme-colors: map-merge($theme-colors, map-merge($extra-colors, ()));
|
||||
|
||||
// BACKDROPS
|
||||
$backdrop-opacity: 24% !default;
|
||||
$backdrop-blur: 4px !default;
|
||||
$backdrop-bg: var(--#{$prefix}gray-800) !default;
|
||||
$backdrops: (
|
||||
dark: color-mix(in srgb, var(--#{$prefix}color-dark), transparent var(--#{$prefix}backdrop-opacity)),
|
||||
light: color-mix(in srgb, var(--#{$prefix}color-light), transparent var(--#{$prefix}backdrop-opacity)),
|
||||
) !default;
|
||||
|
||||
// Borders
|
||||
$border-width: 1px !default;
|
||||
@@ -300,6 +301,15 @@ $border-radius: 6px !default;
|
||||
$border-radius-lg: 8px !default;
|
||||
$border-radius-pill: 100rem !default;
|
||||
|
||||
$border-radiuses: (
|
||||
0: 0,
|
||||
sm: $border-radius-sm,
|
||||
md: $border-radius,
|
||||
lg: $border-radius-lg,
|
||||
pill: $border-radius-pill,
|
||||
null: var(--#{$prefix}border-radius-md),
|
||||
) !default;
|
||||
|
||||
$border-values: (
|
||||
null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) $border-color-translucent,
|
||||
wide: $border-width-wide var(--#{$prefix}border-style) $border-color-translucent,
|
||||
@@ -310,10 +320,10 @@ $border-values: (
|
||||
$icon-color: var(--#{$prefix}gray-400) !default;
|
||||
|
||||
// Code
|
||||
$code-color: var(--#{$prefix}gray-600) !default;
|
||||
$code-color: var(--#{$prefix}primary) !default;
|
||||
$code-font-size: $font-size-reative-sm !default;
|
||||
$code-line-height: 1.25rem !default;
|
||||
$code-bg: var(--#{$prefix}bg-surface-secondary) !default;
|
||||
$code-bg: var(--#{$prefix}primary-lt) !default;
|
||||
|
||||
$pre-padding: 1rem !default;
|
||||
$pre-bg: var(--#{$prefix}bg-surface-dark) !default;
|
||||
@@ -333,54 +343,62 @@ $avatar-size: 2.5rem !default;
|
||||
$avatar-status-size: .75rem !default;
|
||||
$avatar-font-size: 1rem !default;
|
||||
$avatar-icon-size: 1.5rem !default;
|
||||
$avatar-brand-size: 1.25rem !default;
|
||||
$avatar-bg: var(--#{$prefix}bg-surface-secondary) !default;
|
||||
$avatar-sizes: (
|
||||
"xxs": (
|
||||
size: 1rem,
|
||||
font-size: .5rem,
|
||||
icon-size: .75rem,
|
||||
status-size: .25rem
|
||||
icon-size: .5rem,
|
||||
status-size: .25rem,
|
||||
brand-size: .5rem
|
||||
),
|
||||
"xs": (
|
||||
size: 1.25rem,
|
||||
font-size: $h6-font-size,
|
||||
icon-size: .75rem,
|
||||
status-size: .375rem
|
||||
status-size: .375rem,
|
||||
brand-size: .75rem
|
||||
),
|
||||
"sm": (
|
||||
size: 2rem,
|
||||
font-size: $h5-font-size,
|
||||
icon-size: 1.5rem,
|
||||
status-size: .5rem
|
||||
status-size: .5rem,
|
||||
brand-size: 1rem
|
||||
),
|
||||
"md": (
|
||||
size: 2.5rem,
|
||||
font-size: $h4-font-size,
|
||||
icon-size: 1.5rem,
|
||||
status-size: .75rem
|
||||
status-size: .75rem,
|
||||
brand-size: 1.25rem
|
||||
),
|
||||
"lg": (
|
||||
size: 3rem,
|
||||
font-size: $h2-font-size,
|
||||
icon-size: 2rem,
|
||||
status-size: .75rem
|
||||
status-size: .75rem,
|
||||
brand-size: 1.25rem
|
||||
),
|
||||
"xl": (
|
||||
size: 5rem,
|
||||
font-size: 2rem,
|
||||
icon-size: 3rem,
|
||||
status-size: 1rem
|
||||
status-size: 1rem,
|
||||
brand-size: 1.25rem
|
||||
),
|
||||
"2xl": (
|
||||
size: 7rem,
|
||||
font-size: 3rem,
|
||||
icon-size: 5rem,
|
||||
status-size: 1rem
|
||||
status-size: 1rem,
|
||||
brand-size: 2rem
|
||||
),
|
||||
) !default;
|
||||
$avatar-border-radius: var(--#{$prefix}border-radius) !default;
|
||||
$avatar-font-size: $h4-font-size !default;
|
||||
$avatar-box-shadow: var(--#{$prefix}box-shadow-border) !default;
|
||||
$avatar-box-shadow: var(--#{$prefix}shadow-border) !default;
|
||||
$avatar-list-spacing: -0.5;
|
||||
|
||||
$link-decoration: none !default;
|
||||
@@ -498,13 +516,13 @@ $box-shadow-card-hover: rgba(var(--#{$prefix}body-color-rgb), 0.16) 0 2px 16px 0
|
||||
$box-shadow-dropdown: 0 16px 24px 2px rgba(0, 0, 0, 0.07), 0 6px 30px 5px rgba(0, 0, 0, 0.06), 0 8px 10px -5px rgba(0, 0, 0, 0.1) !default;
|
||||
|
||||
$box-shadows: (
|
||||
box-shadow: $box-shadow,
|
||||
box-shadow-border: $box-shadow-border,
|
||||
box-shadow-transparent: $box-shadow-transparent,
|
||||
box-shadow-input: $box-shadow-input,
|
||||
box-shadow-card: $box-shadow-card,
|
||||
box-shadow-card-hover: $box-shadow-card-hover,
|
||||
box-shadow-dropdown: $box-shadow-dropdown,
|
||||
null: $box-shadow,
|
||||
border: $box-shadow-border,
|
||||
transparent: $box-shadow-transparent,
|
||||
input: $box-shadow-input,
|
||||
card: $box-shadow-card,
|
||||
card-hover: $box-shadow-card-hover,
|
||||
dropdown: $box-shadow-dropdown,
|
||||
) !default;
|
||||
|
||||
$box-shadow-inset: 0 0 transparent !default;
|
||||
@@ -569,7 +587,7 @@ $badge-bg-color: var(--#{$prefix}bg-surface-secondary) !default;
|
||||
// Buttons
|
||||
$input-btn-line-height: $line-height-base !default;
|
||||
$input-btn-font-size: $font-size-base !default;
|
||||
$input-btn-font-family: var(--#{$prefix}font-sans-serif) !default;
|
||||
$input-btn-font-family: var(--#{$prefix}body-font-face) !default;
|
||||
$input-btn-padding-y: 0.5rem - 0.0625rem !default;
|
||||
$input-btn-icon-size: $icon-size !default;
|
||||
|
||||
@@ -594,7 +612,7 @@ $input-height-lg: null !default;
|
||||
$input-border-radius: var(--#{$prefix}border-radius) !default;
|
||||
$input-color: var(--#{$prefix}body-color) !default;
|
||||
$input-focus-color: var(--#{$prefix}body-color) !default;
|
||||
$input-box-shadow: var(--#{$prefix}box-shadow-input) !default;
|
||||
$input-box-shadow: var(--#{$prefix}shadow-input) !default;
|
||||
|
||||
// Buttons
|
||||
$btn-border-radius-sm: var(--#{$prefix}border-radius-sm) !default;
|
||||
@@ -605,7 +623,7 @@ $btn-padding-x: 1rem !default;
|
||||
$btn-font-weight: var(--#{$prefix}font-weight-medium) !default;
|
||||
$btn-border-color: var(--#{$prefix}border-color) !default;
|
||||
$btn-border-radius: var(--#{$prefix}border-radius) !default;
|
||||
$btn-box-shadow: var(--#{$prefix}box-shadow-input) !default;
|
||||
$btn-box-shadow: var(--#{$prefix}shadow-input) !default;
|
||||
|
||||
// Cards
|
||||
$card-title-spacer-y: 1.25rem !default;
|
||||
@@ -677,16 +695,16 @@ $dropdown-max-width: 25rem !default;
|
||||
$dropdown-scrollable-height: 13rem !default;
|
||||
$dropdown-link-active-color: var(--#{$prefix}primary) !default;
|
||||
$dropdown-link-active-bg: var(--#{$prefix}active-bg) !default;
|
||||
$dropdown-box-shadow: var(--#{$prefix}box-shadow-dropdown) !default;
|
||||
$dropdown-box-shadow: var(--#{$prefix}shadow-dropdown) !default;
|
||||
|
||||
$dropdown-divider-bg: $dropdown-border-color !default;
|
||||
$dropdown-divider-margin-y: var(--#{$prefix}spacer-2) !default;
|
||||
|
||||
// Tooltip
|
||||
$tooltip-bg: var(--#{$prefix}bg-surface-dark) !default;
|
||||
$tooltip-color: var(--#{$prefix}light) !default;
|
||||
$tooltip-bg: var(--#{$prefix}bg-surface-inverted) !default;
|
||||
$tooltip-color: var(--#{$prefix}text-inverted) !default;
|
||||
$tooltip-padding-y: var(--#{$prefix}spacer-1) !default;
|
||||
$tooltip-padding-x: var(--#{$prefix}spacer-2) !default;
|
||||
$tooltip-padding-x: var(--#{$prefix}spacer-3) !default;
|
||||
|
||||
// Loader
|
||||
$loader-size: 2.5rem !default;
|
||||
@@ -701,7 +719,7 @@ $list-group-item-padding-x: $card-cap-padding-x !default;
|
||||
|
||||
// Modals
|
||||
$modal-backdrop-opacity: 0.24 !default;
|
||||
$modal-backdrop-bg: $dark !default;
|
||||
$modal-backdrop-bg: $backdrop-bg !default;
|
||||
$modal-backdrop-blur: 4px !default;
|
||||
|
||||
$modal-fade-transform: translate(0, -1rem) !default;
|
||||
@@ -760,7 +778,7 @@ $navbar-height: 3.5rem !default;
|
||||
$navbar-padding-y: 0.25rem !default;
|
||||
$navbar-light-color: var(--#{$prefix}secondary) !default;
|
||||
|
||||
$navbar-hover-color: $white !default;
|
||||
$navbar-hover-color: var(--#{$prefix}body-color) !default;
|
||||
|
||||
$navbar-border-width: var(--#{$prefix}border-width) !default;
|
||||
$navbar-border-color: var(--#{$prefix}border-color) !default;
|
||||
@@ -899,7 +917,7 @@ $input-bg: var(--#{$prefix}bg-forms) !default;
|
||||
$input-disabled-bg: $disabled-bg !default;
|
||||
$input-border-color: var(--#{$prefix}border-color) !default;
|
||||
$input-border-color-translucent: var(--#{$prefix}border-color-translucent) !default;
|
||||
$input-placeholder-color: $text-secondary-light !default;
|
||||
$input-placeholder-color: var(--#{$prefix}tertiary) !default;
|
||||
|
||||
$input-group-addon-bg: var(--#{$prefix}bg-surface-secondary) !default;
|
||||
$input-group-addon-color: var(--#{$prefix}gray-500) !default;
|
||||
@@ -930,7 +948,7 @@ $form-check-radio-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://w
|
||||
$form-check-label-disabled-opacity: $text-secondary-opacity;
|
||||
|
||||
$form-select-indicator-color: $text-secondary-light !default;
|
||||
$form-select-box-shadow: var(--#{$prefix}box-shadow-input) !default;
|
||||
$form-select-box-shadow: var(--#{$prefix}shadow-input) !default;
|
||||
|
||||
$form-switch-width: 2rem !default;
|
||||
$form-switch-height: 1.25rem !default;
|
||||
@@ -959,7 +977,7 @@ $form-feedback-icon-invalid: str-replace(
|
||||
$form-label-font-size: $h4-font-size !default;
|
||||
$form-label-font-weight: var(--#{$prefix}font-weight-medium) !default;
|
||||
|
||||
$form-secondary-color: var(--#{$prefix}gray-500) !default;
|
||||
$form-secondary-color: var(--#{$prefix}secondary) !default;
|
||||
|
||||
// Legend
|
||||
$legend-bg: var(--#{$prefix}border-color) !default;
|
||||
@@ -967,7 +985,7 @@ $legend-size: 0.75em !default;
|
||||
$legend-border-radius: var(--#{$prefix}border-radius-sm) !default;
|
||||
|
||||
// Flags
|
||||
$flag-box-shadow: var(--#{$prefix}box-shadow-border) !default;
|
||||
$flag-box-shadow: var(--#{$prefix}shadow-border) !default;
|
||||
$flag-border-radius: var(--#{$prefix}border-radius) !default;
|
||||
$flag-sizes: $avatar-sizes !default;
|
||||
|
||||
@@ -977,6 +995,7 @@ $payment-sizes: $avatar-sizes !default;
|
||||
// Offcanvas
|
||||
$offcanvas-bg-color: var(--#{$prefix}bg-surface) !default;
|
||||
$offcanvas-border-color: var(--#{$prefix}border-color) !default;
|
||||
$offcanvas-backdrop-bg: $backdrop-bg !default;
|
||||
|
||||
// Placeholder
|
||||
$placeholder-opacity-min: 0.1 !default;
|
||||
|
||||
143
core/scss/helpers/_index.scss
Normal file
143
core/scss/helpers/_index.scss
Normal file
@@ -0,0 +1,143 @@
|
||||
//
|
||||
// Clearfix
|
||||
//
|
||||
.clearfix {
|
||||
@include clearfix();
|
||||
}
|
||||
|
||||
//
|
||||
// Text truncation
|
||||
//
|
||||
.text-truncate {
|
||||
@include text-truncate();
|
||||
}
|
||||
|
||||
//
|
||||
// Vertical rule
|
||||
//
|
||||
.vr {
|
||||
display: inline-block;
|
||||
align-self: stretch;
|
||||
width: $vr-border-width;
|
||||
min-height: 1em;
|
||||
background-color: currentcolor;
|
||||
opacity: $hr-opacity;
|
||||
}
|
||||
|
||||
//
|
||||
// Stretched link
|
||||
//
|
||||
.stretched-link {
|
||||
&::#{$stretched-link-pseudo-element} {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: $stretched-link-z-index;
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Visually hidden
|
||||
//
|
||||
.visually-hidden,
|
||||
.visually-hidden-focusable:not(:focus):not(:focus-within) {
|
||||
@include visually-hidden();
|
||||
}
|
||||
|
||||
//
|
||||
// Stacks
|
||||
//
|
||||
.hstack {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
align-self: stretch;
|
||||
}
|
||||
|
||||
.vstack {
|
||||
display: flex;
|
||||
flex: 1 1 auto;
|
||||
flex-direction: column;
|
||||
align-self: stretch;
|
||||
}
|
||||
|
||||
//
|
||||
// Position
|
||||
//
|
||||
// Shorthand
|
||||
|
||||
.fixed-top {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
z-index: $zindex-fixed;
|
||||
}
|
||||
|
||||
.fixed-bottom {
|
||||
position: fixed;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: $zindex-fixed;
|
||||
}
|
||||
|
||||
// Responsive sticky top and bottom
|
||||
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||
@include media-breakpoint-up($breakpoint) {
|
||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||
|
||||
.sticky#{$infix}-top {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: $zindex-sticky;
|
||||
}
|
||||
|
||||
.sticky#{$infix}-bottom {
|
||||
position: sticky;
|
||||
bottom: 0;
|
||||
z-index: $zindex-sticky;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Aspect ratio
|
||||
//
|
||||
.ratio {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
&::before {
|
||||
display: block;
|
||||
padding-top: var(--#{$prefix}aspect-ratio);
|
||||
content: "";
|
||||
}
|
||||
|
||||
> * {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@each $key, $ratio in $aspect-ratios {
|
||||
.ratio-#{$key} {
|
||||
--#{$prefix}aspect-ratio: #{$ratio};
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Focus ring
|
||||
//
|
||||
.focus-ring:focus {
|
||||
outline: 0;
|
||||
// By default, there is no `--bs-focus-ring-x`, `--bs-focus-ring-y`, or `--bs-focus-ring-blur`, but we provide CSS variables with fallbacks to initial `0` values
|
||||
box-shadow: var(--#{$prefix}focus-ring-x, 0) var(--#{$prefix}focus-ring-y, 0) var(--#{$prefix}focus-ring-blur, 0) var(--#{$prefix}focus-ring-width) var(--#{$prefix}focus-ring-color);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ body {
|
||||
position: relative;
|
||||
min-height: 100%;
|
||||
height: 100%;
|
||||
padding: 0 !important;
|
||||
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
@@ -2,53 +2,55 @@
|
||||
|
||||
// stylelint-disable declaration-no-important
|
||||
|
||||
body {
|
||||
&:not(.theme-dark):not([data-bs-theme=dark]) {
|
||||
.hide-theme-light {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.img-dark {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
&.theme-dark,
|
||||
&[data-bs-theme=dark] {
|
||||
.hide-theme-dark {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.img-light {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark, true) {
|
||||
--#{$prefix}body-color: #{$body-color-dark};
|
||||
--#{$prefix}body-color-rgb: #{to-rgb($body-color-dark)};
|
||||
--#{$prefix}muted: #{$text-secondary-dark};
|
||||
:root {
|
||||
&:not(.theme-dark):not([data-bs-theme="dark"]) {
|
||||
.hide-theme-light {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
--#{$prefix}body-bg: #{$darken-dark};
|
||||
--#{$prefix}body-bg-rgb: #{to-rgb($darken-dark)};
|
||||
.img-dark {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
&.theme-dark,
|
||||
&[data-bs-theme="dark"] {
|
||||
.hide-theme-dark {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.img-light {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@include color-mode(dark, true) {
|
||||
color-scheme: dark;
|
||||
--#{$prefix}body-color: var(--#{$prefix}gray-200);
|
||||
--#{$prefix}secondary: var(--#{$prefix}gray-400);
|
||||
|
||||
--#{$prefix}body-bg: var(--#{$prefix}gray-900);
|
||||
--#{$prefix}emphasis-color: #{$body-emphasis-color-dark};
|
||||
--#{$prefix}emphasis-color-rgb: #{to-rgb($body-emphasis-color-dark)};
|
||||
|
||||
--#{$prefix}bg-forms: #{$darken-dark};
|
||||
--#{$prefix}bg-surface: #{$dark};
|
||||
--#{$prefix}bg-surface-dark: #{$darken-dark};
|
||||
--#{$prefix}bg-surface-secondary: #{$lighten-dark};
|
||||
--#{$prefix}bg-surface-tertiary: #{$darken-dark};
|
||||
--#{$prefix}bg-forms: var(--#{$prefix}gray-900);
|
||||
--#{$prefix}bg-surface: var(--#{$prefix}gray-800);
|
||||
--#{$prefix}bg-surface-inverted: var(--#{$prefix}gray-100);
|
||||
--#{$prefix}bg-surface-secondary: var(--#{$prefix}gray-900);
|
||||
--#{$prefix}bg-surface-tertiary: var(--#{$prefix}gray-800);
|
||||
|
||||
--#{$prefix}link-color: #{color.adjust($primary, $lightness: 8%)};
|
||||
--#{$prefix}link-hover-color: #{$primary};
|
||||
--#{$prefix}text-inverted: var(--#{$prefix}gray-800);
|
||||
|
||||
--#{$prefix}link-color: var(--#{$prefix}primary);
|
||||
--#{$prefix}link-hover-color: color-mix(in srgb, var(--#{$prefix}primary), black 20%);
|
||||
|
||||
--#{$prefix}active-bg: #{$lighten-dark};
|
||||
--#{$prefix}disabled-color: var(--#{$prefix}gray-700);
|
||||
--#{$prefix}disabled-color: #{color-transparent(var(--#{$prefix}body-color), .4)};
|
||||
|
||||
--#{$prefix}border-color: var(--#{$prefix}dark-mode-border-color);
|
||||
--#{$prefix}border-color: var(--#{$prefix}gray-700);
|
||||
--#{$prefix}border-color-translucent: var(
|
||||
--#{$prefix}dark-mode-border-color-translucent
|
||||
);
|
||||
@@ -62,13 +64,6 @@ body {
|
||||
--#{$prefix}code-color: var(--#{$prefix}body-color);
|
||||
--#{$prefix}code-bg: #{$border-dark-color-dark};
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
--#{$prefix}#{$color}-lt: #{theme-color-lighter($value, $dark)};
|
||||
--#{$prefix}#{$color}-lt-rgb: #{to-rgb(
|
||||
theme-color-lighter($value, $dark)
|
||||
)};
|
||||
}
|
||||
|
||||
.navbar-brand-autodark {
|
||||
.navbar-brand-image {
|
||||
@include autodark-image;
|
||||
|
||||
@@ -83,6 +83,7 @@ Navbar
|
||||
--#{$prefix}navbar-active-border-color: #{$navbar-active-border-color};
|
||||
--#{$prefix}navbar-active-bg: #{$navbar-light-active-bg};
|
||||
--#{$prefix}navbar-border-color: #{$navbar-border-color};
|
||||
--#{$prefix}navbar-hover-color: #{$navbar-hover-color};
|
||||
align-items: stretch;
|
||||
min-height: $navbar-height;
|
||||
box-shadow: inset 0 calc(-1 * var(--#{$prefix}navbar-border-width)) 0 0 var(--#{$prefix}navbar-border-color);
|
||||
@@ -275,7 +276,7 @@ Navbar transparent
|
||||
Navbar nav
|
||||
*/
|
||||
.navbar-nav {
|
||||
--#{$prefix}nav-link-hover-bg: #{$navbar-nav-link-hover-bg};
|
||||
--#{$prefix}nav-link-hover-bg: #{color-transparent(var(--#{$prefix}nav-link-color), 0.04)};
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
align-items: stretch;
|
||||
|
||||
@@ -81,6 +81,7 @@
|
||||
min-height: 2.25rem;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
max-width: 100%;
|
||||
|
||||
.page-wrapper & {
|
||||
margin: var(--#{$prefix}page-padding-y) 0 0;
|
||||
|
||||
@@ -2,31 +2,38 @@
|
||||
:host {
|
||||
font-size: 16px;
|
||||
height: 100%;
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
margin-left: calc(100vw - 100%);
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
:root,
|
||||
:host,
|
||||
[data-bs-theme="light"] {
|
||||
@each $name, $color in map-merge($theme-colors, $gray-colors) {
|
||||
--#{$prefix}#{$name}: #{$color};
|
||||
--#{$prefix}#{$name}-rgb: #{to-rgb($color)};
|
||||
--#{$prefix}#{$name}-fg: #{if(contrast-ratio($color) > $min-contrast-ratio, var(--#{$prefix}light), var(--#{$prefix}dark))};
|
||||
--#{$prefix}#{$name}-darken: #{theme-color-darker($color)};
|
||||
--#{$prefix}#{$name}-lt: #{theme-color-lighter($color)};
|
||||
--#{$prefix}#{$name}-lt-rgb: #{to-rgb(theme-color-lighter($color))};
|
||||
}
|
||||
color-scheme: light;
|
||||
--#{$prefix}spacer: var(--#{$prefix}spacer-2);
|
||||
|
||||
@each $name, $value in $spacers {
|
||||
--#{$prefix}spacer-#{$name}: #{$value};
|
||||
}
|
||||
--#{$prefix}spacer: #{$spacer};
|
||||
|
||||
--#{$prefix}bg-surface: #{$bg-surface};
|
||||
--#{$prefix}bg-surface-secondary: #{$bg-surface-secondary};
|
||||
--#{$prefix}bg-surface-tertiary: #{$bg-surface-tertiary};
|
||||
--#{$prefix}bg-surface-dark: #{$bg-surface-dark};
|
||||
--#{$prefix}bg-surface: var(--#{$prefix}bg-surface-primary);
|
||||
--#{$prefix}bg-surface-primary: var(--#{$prefix}white);
|
||||
--#{$prefix}bg-surface-secondary: var(--#{$prefix}gray-50);
|
||||
--#{$prefix}bg-surface-tertiary: var(--#{$prefix}gray-50);
|
||||
--#{$prefix}bg-surface-dark: var(--#{$prefix}gray-900);
|
||||
--#{$prefix}bg-surface-inverted: var(--#{$prefix}gray-900);
|
||||
--#{$prefix}bg-forms: var(--#{$prefix}bg-surface);
|
||||
|
||||
--#{$prefix}text-inverted: var(--#{$prefix}gray-100);
|
||||
|
||||
--#{$prefix}body-color: var(--#{$prefix}gray-700);
|
||||
--#{$prefix}body-bg: var(--#{$prefix}bg-surface-secondary);
|
||||
|
||||
--#{$prefix}link-color: var(--#{$prefix}primary);
|
||||
--#{$prefix}link-hover-color: color-mix(in srgb, var(--#{$prefix}primary), #000 20%);
|
||||
|
||||
--#{$prefix}secondary: var(--#{$prefix}gray-500);
|
||||
--#{$prefix}tertiary: var(--#{$prefix}gray-400);
|
||||
|
||||
--#{$prefix}border-color: #{$border-color};
|
||||
--#{$prefix}border-color-translucent: #{$border-color-translucent};
|
||||
--#{$prefix}border-dark-color: #{$border-dark-color};
|
||||
@@ -50,23 +57,8 @@
|
||||
|
||||
--#{$prefix}page-padding: #{$page-padding};
|
||||
--#{$prefix}page-padding-y: #{$page-padding-y};
|
||||
|
||||
@include media-breakpoint-down($cards-grid-breakpoint) {
|
||||
--#{$prefix}page-padding: #{$page-padding-sm};
|
||||
}
|
||||
|
||||
@each $name, $value in $font-weights {
|
||||
--#{$prefix}font-weight-#{$name}: #{$value};
|
||||
}
|
||||
|
||||
@each $name, $value in $font-sizes {
|
||||
--#{$prefix}font-size-h#{$name}: #{$value};
|
||||
}
|
||||
|
||||
@each $name, $value in $line-heights {
|
||||
--#{$prefix}line-height-#{$name}: #{$value};
|
||||
}
|
||||
|
||||
@each $name, $value in $box-shadows {
|
||||
--#{$prefix}#{$name}: #{$value};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,5 +4,5 @@
|
||||
}
|
||||
|
||||
.body-gradient {
|
||||
background: var(--tblr-bg-surface) linear-gradient(to bottom, var(--tblr-bg-surface-secondary) 12%, var(--tblr-bg-surface) 99%) repeat-x top center/100% 100vh;
|
||||
background: var(--#{$prefix}bg-surface) linear-gradient(to bottom, var(--#{$prefix}bg-surface-secondary) 12%, var(--#{$prefix}bg-surface) 99%) repeat-x top center/100% 100vh;
|
||||
}
|
||||
@@ -39,7 +39,7 @@ $pricing-card-width: 22rem;
|
||||
|
||||
&.featured {
|
||||
z-index: 1;
|
||||
border: 2px solid $primary;
|
||||
border: 2px solid var(--#{$prefix}primary);
|
||||
order: -1;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
@mixin subheader($include-color: true, $include-line-height: true) {
|
||||
font-size: $h5-font-size;
|
||||
font-weight: var(--#{$prefix}font-weight-bold);
|
||||
font-weight: var(--#{$prefix}font-weight-medium);
|
||||
text-transform: uppercase;
|
||||
letter-spacing: .04em;
|
||||
letter-spacing: .04em;
|
||||
|
||||
@if $include-line-height {
|
||||
line-height: $h5-line-height;
|
||||
@@ -13,9 +13,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
@mixin scrollbar($color: var(--#{$prefix}body-color-rgb)) {
|
||||
@mixin scrollbar {
|
||||
#{if(&, "&", "*")} {
|
||||
scrollbar-color: rgba(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color-rgb)), .16);
|
||||
scrollbar-color: color-transparent(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color)), .20) transparent;
|
||||
}
|
||||
|
||||
#{if(&, "&", "*")}::-webkit-scrollbar {
|
||||
@@ -27,7 +27,7 @@
|
||||
#{if(&, "&", "*")}::-webkit-scrollbar-thumb {
|
||||
border-radius: 1rem;
|
||||
border: 5px solid transparent;
|
||||
box-shadow: inset 0 0 0 1rem rgba(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color-rgb)), .16);
|
||||
box-shadow: inset 0 0 0 1rem color-transparent(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color)), .20);
|
||||
}
|
||||
|
||||
#{if(&, "&", "*")}::-webkit-scrollbar-track {
|
||||
@@ -35,7 +35,7 @@
|
||||
}
|
||||
|
||||
#{if(&, "&", "*")}:hover::-webkit-scrollbar-thumb {
|
||||
box-shadow: inset 0 0 0 1rem rgba(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color-rgb)), .32);
|
||||
box-shadow: inset 0 0 0 1rem color-transparent(var(--#{$prefix}scrollbar-color, var(--#{$prefix}body-color)), .40);
|
||||
}
|
||||
|
||||
#{if(&, "&", "*")}::-webkit-scrollbar-corner {
|
||||
|
||||
1
core/scss/tabler-props.scss
Normal file
1
core/scss/tabler-props.scss
Normal file
@@ -0,0 +1 @@
|
||||
@import "props"
|
||||
121
core/scss/tabler-themes.scss
Normal file
121
core/scss/tabler-themes.scss
Normal file
@@ -0,0 +1,121 @@
|
||||
@import "config";
|
||||
|
||||
[data-bs-theme-base="slate"] {
|
||||
--#{$prefix}gray-50: #f8fafc;
|
||||
--#{$prefix}gray-100: #f1f5f9;
|
||||
--#{$prefix}gray-200: #e2e8f0;
|
||||
--#{$prefix}gray-300: #cbd5e1;
|
||||
--#{$prefix}gray-400: #94a3b8;
|
||||
--#{$prefix}gray-500: #64748b;
|
||||
--#{$prefix}gray-600: #475569;
|
||||
--#{$prefix}gray-700: #334155;
|
||||
--#{$prefix}gray-800: #1e293b;
|
||||
--#{$prefix}gray-900: #0f172a;
|
||||
--#{$prefix}gray-950: #020617;
|
||||
}
|
||||
|
||||
[data-bs-theme-base="gray"] {
|
||||
--#{$prefix}gray-50: #f9fafb;
|
||||
--#{$prefix}gray-100: #f3f4f6;
|
||||
--#{$prefix}gray-200: #e5e7eb;
|
||||
--#{$prefix}gray-300: #d1d5db;
|
||||
--#{$prefix}gray-400: #9ca3af;
|
||||
--#{$prefix}gray-500: #6b7280;
|
||||
--#{$prefix}gray-600: #4b5563;
|
||||
--#{$prefix}gray-700: #374151;
|
||||
--#{$prefix}gray-800: #1f2937;
|
||||
--#{$prefix}gray-900: #111827;
|
||||
--#{$prefix}gray-950: #030712;
|
||||
}
|
||||
|
||||
[data-bs-theme-base="zinc"] {
|
||||
--#{$prefix}gray-50: #fafafa;
|
||||
--#{$prefix}gray-100: #f4f4f5;
|
||||
--#{$prefix}gray-200: #e4e4e7;
|
||||
--#{$prefix}gray-300: #d4d4d8;
|
||||
--#{$prefix}gray-400: #a1a1aa;
|
||||
--#{$prefix}gray-500: #71717a;
|
||||
--#{$prefix}gray-600: #52525b;
|
||||
--#{$prefix}gray-700: #3f3f46;
|
||||
--#{$prefix}gray-800: #27272a;
|
||||
--#{$prefix}gray-900: #18181b;
|
||||
--#{$prefix}gray-950: #09090b;
|
||||
}
|
||||
|
||||
[data-bs-theme-base="neutral"] {
|
||||
--#{$prefix}gray-50: #fafafa;
|
||||
--#{$prefix}gray-100: #f5f5f5;
|
||||
--#{$prefix}gray-200: #e5e5e5;
|
||||
--#{$prefix}gray-300: #d4d4d4;
|
||||
--#{$prefix}gray-400: #a3a3a3;
|
||||
--#{$prefix}gray-500: #737373;
|
||||
--#{$prefix}gray-600: #525252;
|
||||
--#{$prefix}gray-700: #404040;
|
||||
--#{$prefix}gray-800: #262626;
|
||||
--#{$prefix}gray-900: #171717;
|
||||
--#{$prefix}gray-950: #0a0a0a;
|
||||
}
|
||||
|
||||
[data-bs-theme-base="stone"] {
|
||||
--#{$prefix}gray-50: #fafaf9;
|
||||
--#{$prefix}gray-100: #f5f5f4;
|
||||
--#{$prefix}gray-200: #e7e5e4;
|
||||
--#{$prefix}gray-300: #d6d3d1;
|
||||
--#{$prefix}gray-400: #a8a29e;
|
||||
--#{$prefix}gray-500: #78716c;
|
||||
--#{$prefix}gray-600: #57534e;
|
||||
--#{$prefix}gray-700: #44403c;
|
||||
--#{$prefix}gray-800: #292524;
|
||||
--#{$prefix}gray-900: #1c1917;
|
||||
--#{$prefix}gray-950: #0c0a09;
|
||||
}
|
||||
|
||||
[data-bs-theme-base="pink"] {
|
||||
--#{$prefix}gray-50: #fdf2f8;
|
||||
--#{$prefix}gray-100: #fce7f3;
|
||||
--#{$prefix}gray-200: #fbcfe8;
|
||||
--#{$prefix}gray-300: #f9a8d4;
|
||||
--#{$prefix}gray-400: #f472b6;
|
||||
--#{$prefix}gray-500: #ec4899;
|
||||
--#{$prefix}gray-600: #db2777;
|
||||
--#{$prefix}gray-700: #be185d;
|
||||
--#{$prefix}gray-800: #9d174d;
|
||||
--#{$prefix}gray-900: #831843;
|
||||
--#{$prefix}gray-950: #500724;
|
||||
}
|
||||
|
||||
@each $name, $value in $extra-colors {
|
||||
[data-bs-theme-primary="#{$name}"] {
|
||||
--#{$prefix}primary: #{$value};
|
||||
--#{$prefix}primary-rgb: #{to-rgb($value)};
|
||||
}
|
||||
}
|
||||
|
||||
@each $value in (0, .5, 1, 1.5, 2) {
|
||||
[data-bs-theme-radius="#{$value}"] {
|
||||
--#{$prefix}border-radius-scale: #{$value};
|
||||
}
|
||||
}
|
||||
|
||||
[data-bs-theme-primary="inverted"] {
|
||||
--#{$prefix}primary: var(--#{$prefix}gray-800);
|
||||
--#{$prefix}primary-fg: var(--#{$prefix}light);
|
||||
--#{$prefix}primary-rgb: #{to-rgb($dark)};
|
||||
|
||||
&[data-bs-theme="dark"],
|
||||
[data-bs-theme="dark"] {
|
||||
--#{$prefix}primary: #{$light};
|
||||
--#{$prefix}primary-fg: var(--#{$prefix}dark);
|
||||
--#{$prefix}primary-rgb: #{to-rgb($light)};
|
||||
}
|
||||
}
|
||||
|
||||
@each $name, $value in (monospace: $font-family-monospace, sans-serif: $font-family-sans-serif, serif: $font-family-serif, comic: $font-family-comic) {
|
||||
[data-bs-theme-font="#{$name}"] {
|
||||
--#{$prefix}body-font-family: var(--#{$prefix}font-#{$name});
|
||||
|
||||
@if $name == "monospace" {
|
||||
--#{$prefix}body-font-size: 80%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,9 @@
|
||||
@import "vendor/dropzone";
|
||||
@import "vendor/fslightbox";
|
||||
@import "vendor/plyr";
|
||||
@import "vendor/tinymce";
|
||||
@import "vendor/wysiwyg";
|
||||
@import "vendor/stars-rating";
|
||||
@import "vendor/coloris";
|
||||
@import "vendor/typed";
|
||||
@import "vendor/turbo";
|
||||
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
@import "core";
|
||||
|
||||
|
||||
@@ -1,15 +1,17 @@
|
||||
.alert {
|
||||
--#{$prefix}alert-bg: transparent;
|
||||
// scss-docs-start alert-variables
|
||||
--#{$prefix}alert-color: var(--#{$prefix}body-color);
|
||||
--#{$prefix}alert-bg: #{color-transparent(var(--#{$prefix}alert-color), .1)};
|
||||
--#{$prefix}alert-padding-x: #{$alert-padding-x};
|
||||
--#{$prefix}alert-padding-y: #{$alert-padding-y};
|
||||
--#{$prefix}alert-margin-bottom: #{$alert-margin-bottom};
|
||||
--#{$prefix}alert-color: inherit;
|
||||
--#{$prefix}alert-border-color: var(--#{$prefix}border-color);
|
||||
--#{$prefix}alert-border-color: #{color-transparent(var(--#{$prefix}alert-color), .2)};
|
||||
--#{$prefix}alert-border: var(--#{$prefix}border-width) solid var(--#{$prefix}alert-border-color);
|
||||
--#{$prefix}alert-border-radius: var(--#{$prefix}border-radius);
|
||||
--#{$prefix}alert-link-color: inherit;
|
||||
--#{$prefix}alert-heading-font-weight: var(--#{$prefix}font-weight-medium);
|
||||
|
||||
// scss-docs-end
|
||||
|
||||
position: relative;
|
||||
padding: var(--#{$prefix}alert-padding-y) var(--#{$prefix}alert-padding-x);
|
||||
margin-bottom: var(--#{$prefix}alert-margin-bottom);
|
||||
@@ -66,8 +68,8 @@
|
||||
|
||||
.btn-close {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
top: calc(var(--#{$prefix}alert-padding-x) / 2 - 1px);
|
||||
right: calc(var(--#{$prefix}alert-padding-y) / 2 - 1px);
|
||||
z-index: 1;
|
||||
padding: calc(var(--#{$prefix}alert-padding-y) * 1.25) var(--#{$prefix}alert-padding-x);
|
||||
}
|
||||
@@ -75,12 +77,21 @@
|
||||
|
||||
.alert-important {
|
||||
border-color: var(--#{$prefix}alert-color);
|
||||
color: var(--#{$prefix}alert-color);
|
||||
background-color: var(--#{$prefix}alert-color);
|
||||
color: var(--#{$prefix}white);
|
||||
|
||||
.btn-close,
|
||||
.alert-description {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.alert-icon {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.alert-minor {
|
||||
background: transparent;
|
||||
border-color: var(--tblr-border-color);
|
||||
}
|
||||
|
||||
@each $name, $color in $theme-colors {
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
.avatar {
|
||||
--#{$prefix}avatar-size: #{$avatar-size};
|
||||
--#{$prefix}avatar-size: var(--#{$prefix}avatar-list-size, #{$avatar-size});
|
||||
--#{$prefix}avatar-status-size: #{$avatar-status-size};
|
||||
--#{$prefix}avatar-bg: #{$avatar-bg};
|
||||
--#{$prefix}avatar-box-shadow: #{$avatar-box-shadow};
|
||||
--#{$prefix}avatar-box-shadow-color: var(--#{$prefix}border-color-translucent);
|
||||
--#{$prefix}avatar-box-shadow: inset 0 0 0 1px var(--#{$prefix}avatar-box-shadow-color);
|
||||
--#{$prefix}avatar-font-size: #{$avatar-font-size};
|
||||
--#{$prefix}avatar-icon-size: #{$avatar-icon-size};
|
||||
--#{$prefix}avatar-brand-size: #{$avatar-brand-size};
|
||||
position: relative;
|
||||
width: var(--#{$prefix}avatar-size);
|
||||
height: var(--#{$prefix}avatar-size);
|
||||
@@ -22,6 +24,7 @@
|
||||
background: var(--#{$prefix}avatar-bg) no-repeat center/cover;
|
||||
border-radius: $avatar-border-radius;
|
||||
box-shadow: var(--#{$prefix}avatar-box-shadow);
|
||||
transition: color $transition-time, background-color $transition-time, box-shadow $transition-time;
|
||||
|
||||
.icon {
|
||||
width: var(--#{$prefix}avatar-icon-size);
|
||||
@@ -38,6 +41,11 @@
|
||||
|
||||
@at-root a#{&} {
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
color: var(--#{$prefix}primary);
|
||||
--#{$prefix}avatar-box-shadow-color: var(--#{$prefix}primary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,11 +59,12 @@
|
||||
--#{$prefix}avatar-status-size: #{map-get($size, status-size)};
|
||||
--#{$prefix}avatar-font-size: #{map-get($size, font-size)};
|
||||
--#{$prefix}avatar-icon-size: #{map-get($size, icon-size)};
|
||||
}
|
||||
--#{$prefix}avatar-brand-size: #{map-get($size, brand-size)};
|
||||
|
||||
.avatar-#{$avatar-size} .badge:empty {
|
||||
width: map-get($size, status-size);
|
||||
height: map-get($size, status-size);
|
||||
.badge:empty {
|
||||
width: map-get($size, status-size);
|
||||
height: map-get($size, status-size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,6 +72,7 @@
|
||||
// Avatar list
|
||||
//
|
||||
.avatar-list {
|
||||
--#{$prefix}avatar-list-size: #{$avatar-size};
|
||||
@include elements-list;
|
||||
|
||||
a.avatar {
|
||||
@@ -78,7 +88,13 @@
|
||||
|
||||
.avatar {
|
||||
margin-right: calc(#{$avatar-list-spacing} * var(--#{$prefix}avatar-size)) !important;
|
||||
box-shadow: var(--#{$prefix}avatar-box-shadow), 0 0 0 2px var(--#{$prefix}card-cap-bg, var(--#{$prefix}card-bg, var(--#{$prefix}bg-surface)));
|
||||
box-shadow: var(--#{$prefix}avatar-box-shadow), 0 0 0 2px var(--#{$prefix}card-bg, var(--#{$prefix}bg-surface));
|
||||
}
|
||||
}
|
||||
|
||||
@each $avatar-size, $size in $avatar-sizes {
|
||||
.avatar-list-#{$avatar-size} {
|
||||
--#{$prefix}avatar-list-size: #{map-get($size, size)};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -86,8 +102,6 @@
|
||||
// Avatar upload
|
||||
//
|
||||
.avatar-upload {
|
||||
width: 4rem;
|
||||
height: 4rem;
|
||||
border: var(--#{$prefix}border-width) dashed var(--#{$prefix}border-color);
|
||||
background: $form-check-input-bg;
|
||||
box-shadow: none;
|
||||
@@ -116,4 +130,16 @@
|
||||
.avatar-cover {
|
||||
margin-top: calc(-.5 * var(--#{$prefix}avatar-size));
|
||||
box-shadow: 0 0 0 .25rem var(--#{$prefix}card-bg, var(--#{$prefix}body-bg));
|
||||
}
|
||||
|
||||
.avatar-brand {
|
||||
width: var(--#{$prefix}avatar-brand-size);
|
||||
height: var(--#{$prefix}avatar-brand-size);
|
||||
position: absolute;
|
||||
right: -2px;
|
||||
bottom: -2px;
|
||||
z-index: 1000;
|
||||
background: var(--#{$prefix}bg-surface);
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
border: 1px solid var(--#{$prefix}border-color);
|
||||
}
|
||||
@@ -28,7 +28,7 @@
|
||||
line-height: var(--#{$prefix}badge-line-height);
|
||||
|
||||
@at-root a#{&} {
|
||||
color: $card-bg;
|
||||
background: var(--#{$prefix}bg-surface-secondary);
|
||||
}
|
||||
|
||||
.icon {
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
--#{$prefix}btn-border-color: #{$btn-border-color};
|
||||
--#{$prefix}btn-hover-bg: var(--#{$prefix}btn-bg);
|
||||
--#{$prefix}btn-hover-border-color: var(--#{$prefix}border-active-color);
|
||||
--#{$prefix}btn-box-shadow: var(--#{$prefix}box-shadow-input);
|
||||
--#{$prefix}btn-box-shadow: var(--#{$prefix}shadow-input);
|
||||
--#{$prefix}btn-active-color: #{$active-color};
|
||||
--#{$prefix}btn-active-bg: #{$active-bg};
|
||||
--#{$prefix}btn-active-border-color: #{$active-border-color};
|
||||
@@ -72,7 +72,7 @@
|
||||
//
|
||||
// Button color variations
|
||||
//
|
||||
@each $color, $value in $theme-colors {
|
||||
@each $color, $value in map-merge($theme-colors, $social-colors) {
|
||||
.btn-#{$color} {
|
||||
@if $color == 'dark' {
|
||||
--#{$prefix}btn-border-color: var(--#{$prefix}dark-mode-border-color);
|
||||
@@ -84,7 +84,7 @@
|
||||
--#{$prefix}btn-active-border-color: transparent;
|
||||
}
|
||||
|
||||
--#{$prefix}btn-color: var(--#{$prefix}#{$color}-fg);
|
||||
--#{$prefix}btn-color: var(--#{$prefix}#{$color}-fg, #{$white});
|
||||
--#{$prefix}btn-bg: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-hover-color: var(--#{$prefix}#{$color}-fg);
|
||||
--#{$prefix}btn-hover-bg: var(--#{$prefix}#{$color}-darken);
|
||||
@@ -92,7 +92,7 @@
|
||||
--#{$prefix}btn-active-bg: var(--#{$prefix}#{$color}-darken);
|
||||
--#{$prefix}btn-disabled-bg: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-disabled-color: var(--#{$prefix}#{$color}-fg);
|
||||
--#{$prefix}btn-box-shadow: var(--#{$prefix}box-shadow-input);
|
||||
--#{$prefix}btn-box-shadow: var(--#{$prefix}shadow-input);
|
||||
}
|
||||
|
||||
.btn-outline-#{$color} {
|
||||
@@ -107,21 +107,19 @@
|
||||
--#{$prefix}btn-disabled-color: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-disabled-border-color: var(--#{$prefix}#{$color});
|
||||
}
|
||||
}
|
||||
|
||||
@each $name, $color in $theme-colors {
|
||||
.btn-ghost-#{$name} {
|
||||
--#{$prefix}btn-color: var(--#{$prefix}#{$name});
|
||||
.btn-ghost-#{$color} {
|
||||
--#{$prefix}btn-color: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-bg: transparent;
|
||||
--#{$prefix}btn-border-color: transparent;
|
||||
--#{$prefix}btn-hover-color: var(--#{$prefix}#{$name}-fg);
|
||||
--#{$prefix}btn-hover-bg: var(--#{$prefix}#{$name});
|
||||
--#{$prefix}btn-hover-border-color: var(--#{$prefix}#{$name});
|
||||
--#{$prefix}btn-active-color: var(--#{$prefix}#{$name}-fg);
|
||||
--#{$prefix}btn-active-bg: var(--#{$prefix}#{$name});
|
||||
--#{$prefix}btn-hover-color: var(--#{$prefix}#{$color}-fg);
|
||||
--#{$prefix}btn-hover-bg: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-hover-border-color: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-active-color: var(--#{$prefix}#{$color}-fg);
|
||||
--#{$prefix}btn-active-bg: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-active-border-color: transparent;
|
||||
--#{$prefix}btn-active-shadow: #{$btn-active-box-shadow};
|
||||
--#{$prefix}btn-disabled-color: var(--#{$prefix}#{$name});
|
||||
--#{$prefix}btn-disabled-color: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}btn-disabled-bg: transparent;
|
||||
--#{$prefix}btn-disabled-border-color: transparent;
|
||||
--#{$prefix}gradient: none;
|
||||
@@ -186,9 +184,9 @@
|
||||
.btn-floating {
|
||||
position: fixed;
|
||||
z-index: $zindex-fixed;
|
||||
bottom: 1.5rem;
|
||||
right: 1.5rem;
|
||||
border-radius: $border-radius-pill;
|
||||
bottom: 1rem;
|
||||
left: 1rem;
|
||||
box-shadow: var(--#{$prefix}shadow-dropdown);
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -1,7 +1,60 @@
|
||||
.btn-close {
|
||||
--#{$prefix}btn-close-color: currentColor;
|
||||
--#{$prefix}btn-close-bg: #{ escape-svg($btn-close-bg) };
|
||||
--#{$prefix}btn-close-opacity: #{$btn-close-opacity};
|
||||
--#{$prefix}btn-close-hover-opacity: #{$btn-close-hover-opacity};
|
||||
--#{$prefix}btn-close-focus-shadow: #{$btn-close-focus-shadow};
|
||||
--#{$prefix}btn-close-focus-opacity: #{$btn-close-focus-opacity};
|
||||
--#{$prefix}btn-close-disabled-opacity: #{$btn-close-disabled-opacity};
|
||||
--#{$prefix}btn-close-size: #{$btn-close-width};
|
||||
|
||||
width: var(--#{$prefix}btn-close-size);
|
||||
height: var(--#{$prefix}btn-close-size);
|
||||
padding: $btn-close-padding-y $btn-close-padding-x;
|
||||
color: var(--#{$prefix}btn-close-color);
|
||||
mask: var(--#{$prefix}btn-close-bg) no-repeat center/calc(var(--#{$prefix}btn-close-size) * .75);
|
||||
background-color: var(--#{$prefix}btn-close-color);
|
||||
border: 0;
|
||||
border-radius: var(--tblr-border-radius);
|
||||
opacity: var(--#{$prefix}btn-close-opacity);
|
||||
cursor: pointer;
|
||||
display: block;
|
||||
|
||||
&:hover {
|
||||
color: var(--#{$prefix}btn-close-color);
|
||||
text-decoration: none;
|
||||
opacity: var(--#{$prefix}btn-close-hover-opacity);
|
||||
}
|
||||
|
||||
&:focus {
|
||||
outline: none;
|
||||
outline: 0;
|
||||
box-shadow: var(--#{$prefix}btn-close-focus-shadow);
|
||||
opacity: var(--#{$prefix}btn-close-focus-opacity);
|
||||
}
|
||||
}
|
||||
|
||||
&:disabled,
|
||||
&.disabled {
|
||||
pointer-events: none;
|
||||
user-select: none;
|
||||
opacity: var(--#{$prefix}btn-close-disabled-opacity);
|
||||
}
|
||||
}
|
||||
|
||||
// @mixin btn-close-white() {
|
||||
// --#{$prefix}btn-close-filter: #{$btn-close-filter-dark};
|
||||
// }
|
||||
|
||||
// .btn-close-white {
|
||||
// @include btn-close-white();
|
||||
// }
|
||||
|
||||
// :root,
|
||||
// [data-bs-theme="light"] {
|
||||
// --#{$prefix}btn-close-filter: #{$btn-close-filter};
|
||||
// }
|
||||
|
||||
// @if $enable-dark-mode {
|
||||
// @include color-mode(dark, true) {
|
||||
// @include btn-close-white();
|
||||
// }
|
||||
// }
|
||||
@@ -109,6 +109,7 @@
|
||||
|
||||
.dropdown-menu-card {
|
||||
padding: 0;
|
||||
min-width: 20rem;
|
||||
|
||||
> .card {
|
||||
margin: 0;
|
||||
|
||||
@@ -68,7 +68,7 @@ Form control
|
||||
*/
|
||||
.form-control {
|
||||
&:-webkit-autofill {
|
||||
box-shadow: 0 0 0 1000px var(--#{$prefix}body-bg) inset;
|
||||
box-shadow: 0 0 0 1000px var(--#{$prefix}bg-surface-secondary) inset;
|
||||
color: var(--#{$prefix}body-color);
|
||||
-webkit-text-fill-color: var(--#{$prefix}body-color);
|
||||
}
|
||||
@@ -125,7 +125,7 @@ Form control
|
||||
.form-fieldset {
|
||||
padding: 1rem;
|
||||
margin-bottom: 1rem;
|
||||
background: var(--#{$prefix}body-bg);
|
||||
background: var(--#{$prefix}bg-surface-secondary);
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color);
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
}
|
||||
@@ -238,4 +238,14 @@ label[for="floating-input"] {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/**
|
||||
Forms on mobile devices
|
||||
*/
|
||||
.form-control,
|
||||
.form-select {
|
||||
@include media-breakpoint-down(sm) {
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
Markdown
|
||||
*/
|
||||
.markdown {
|
||||
line-height: $line-height-lg;
|
||||
line-height: $line-height-xl;
|
||||
|
||||
> :first-child {
|
||||
margin-top: 0;
|
||||
@@ -24,6 +24,10 @@ Markdown
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: var(--#{$prefix}font-weight-bold);
|
||||
}
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
margin-top: 2.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
> table {
|
||||
@@ -39,5 +43,10 @@ Markdown
|
||||
> img,
|
||||
> p > img {
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
border: 1px solid var(--#{$prefix}border-color);
|
||||
}
|
||||
|
||||
> pre {
|
||||
max-height: 20rem;
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,7 @@
|
||||
.nav {
|
||||
--#{$prefix}nav-link-hover-bg: #{color-transparent(var(--#{$prefix}nav-link-color), 0.04)};
|
||||
}
|
||||
|
||||
.nav-vertical {
|
||||
&,
|
||||
.nav {
|
||||
@@ -13,7 +17,8 @@
|
||||
|
||||
.nav-link.active,
|
||||
.nav-item.show .nav-link {
|
||||
font-weight: var(--#{$prefix}font-weight-medium);
|
||||
font-weight: var(--#{$prefix}font-weight-bold);
|
||||
color: var(--#{$prefix}nav-link-active-color);
|
||||
}
|
||||
|
||||
&.nav-pills {
|
||||
@@ -46,7 +51,12 @@
|
||||
color: $nav-bordered-link-active-color;
|
||||
border-color: $nav-bordered-link-active-border-color;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-underline {
|
||||
.nav-link {
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
.offcanvas-header {
|
||||
border-bottom: var(--#{$prefix}border-width) var(--#{$prefix}border-style) $border-color-translucent;
|
||||
border-bottom: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color);
|
||||
}
|
||||
|
||||
.offcanvas-footer {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
.pagination {
|
||||
--#{$prefix}pagination-gap: .25rem;
|
||||
user-select: none;
|
||||
gap: var(--#{$prefix}pagination-gap);
|
||||
}
|
||||
|
||||
.page-link {
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
.signature {
|
||||
--#{$prefix}signature-padding: var(--#{$prefix}spacer-1);
|
||||
--#{$prefix}signature-border-radius: var(--#{$prefix}border-radius);
|
||||
border: var(--#{$prefix}border-width) solid var(--#{$prefix}border-color);
|
||||
padding: var(--#{$prefix}spacer-1);
|
||||
padding: var(--#{$prefix}signature-padding);
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
}
|
||||
|
||||
.signature-canvas {
|
||||
border: var(--#{$prefix}border-width) dashed var(--#{$prefix}border-color);
|
||||
border-radius: var(--#{$prefix}border-radius-sm);
|
||||
border-radius: calc(var(--#{$prefix}signature-border-radius) - var(--#{$prefix}signature-padding));
|
||||
display: block;
|
||||
cursor: crosshair;
|
||||
width: 100%;
|
||||
|
||||
@@ -17,6 +17,10 @@
|
||||
@each $name, $color in $extra-colors {
|
||||
.steps-#{$name} {
|
||||
--#{$prefix}steps-color: var(--#{$prefix}#{$name});
|
||||
|
||||
&-lt {
|
||||
--#{$prefix}steps-color: var(--#{$prefix}#{$name}-lt);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -154,8 +154,24 @@ Table sort
|
||||
//
|
||||
.table-selectable {
|
||||
tbody tr {
|
||||
.on-checked {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.on-unchecked {
|
||||
display: initial;
|
||||
}
|
||||
|
||||
&:has(.table-selectable-check:checked) {
|
||||
background-color: $table-active-bg;
|
||||
|
||||
.on-checked {
|
||||
display: initial;
|
||||
}
|
||||
|
||||
.on-unchecked {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7,7 +7,7 @@
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
padding: 0 0.5rem;
|
||||
background: var(--#{$prefix}bg-surface);
|
||||
box-shadow: var(--#{$prefix}box-shadow-input);
|
||||
box-shadow: var(--#{$prefix}shadow-input);
|
||||
gap: .5rem;
|
||||
|
||||
.btn-close {
|
||||
|
||||
@@ -1,11 +1,17 @@
|
||||
@import "typo/hr";
|
||||
|
||||
.lead {
|
||||
line-height: 1.4;
|
||||
color: var(--#{$prefix}secondary);
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration-skip-ink: auto;
|
||||
color: color-mix(in srgb, transparent, var(--#{$prefix}link-color) var(--#{$prefix}link-opacity, 100%));
|
||||
|
||||
&:hover {
|
||||
color: color-mix(in srgb, transparent, var(--#{$prefix}link-hover-color) var(--#{$prefix}link-opacity, 100%));
|
||||
}
|
||||
}
|
||||
|
||||
h1,
|
||||
@@ -107,10 +113,14 @@ dl {
|
||||
}
|
||||
|
||||
pre {
|
||||
--#{$prefix}scrollbar-color: #{$pre-color};
|
||||
padding: $pre-padding;
|
||||
background: $pre-bg;
|
||||
color: $pre-color;
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
line-height: $line-height-base;
|
||||
|
||||
@include scrollbar;
|
||||
|
||||
code {
|
||||
background: transparent;
|
||||
@@ -157,7 +167,7 @@ Selection
|
||||
*/
|
||||
::selection,
|
||||
.text-selected {
|
||||
background-color: color-transparent(var(--#{$prefix}primary), .1);
|
||||
background-color: color-transparent(var(--#{$prefix}primary), 0.1);
|
||||
}
|
||||
|
||||
.text-selected {
|
||||
@@ -179,6 +189,17 @@ a:hover:has(.icon) {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.link-hoverable {
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
transition: background-color 0.15s ease-in-out;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
color: var(--#{$prefix}primary);
|
||||
background: color-transparent(var(--#{$prefix}secondary), 0.04);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Subheader
|
||||
*/
|
||||
@@ -191,7 +212,7 @@ Mentions
|
||||
*/
|
||||
.mention {
|
||||
display: inline-block;
|
||||
box-shadow: var(--tblr-box-shadow-border);
|
||||
box-shadow: var(--#{$prefix}box-shadow-border);
|
||||
border-radius: var(--#{$prefix}border-radius-pill);
|
||||
line-height: calc(16em / 12);
|
||||
font-size: calc(12em / 14);
|
||||
@@ -199,11 +220,11 @@ Mentions
|
||||
background: var(--#{$prefix}bg-surface-tertiary);
|
||||
padding: calc(2em / 12) calc(8em / 12);
|
||||
font-weight: var(--#{$prefix}font-weight-medium);
|
||||
|
||||
|
||||
@at-root a#{&} {
|
||||
cursor: pointer;
|
||||
|
||||
&:hover,
|
||||
&:hover,
|
||||
&.hover {
|
||||
background: var(--#{$prefix}bg-surface-secondary);
|
||||
text-decoration: underline;
|
||||
@@ -243,10 +264,51 @@ $text-variants: (
|
||||
|
||||
@each $variant, $color in $text-variants {
|
||||
.text-#{$variant} {
|
||||
background: color-transparent($color, .04);
|
||||
background: color-transparent($color, 0.04);
|
||||
background: color-transparent($color, 4%);
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-decoration-color: $color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.steps {
|
||||
--#{$prefix}steps-padding: 2rem;
|
||||
--#{$prefix}steps-item-size: 1.5rem;
|
||||
margin-left: 1rem;
|
||||
padding-left: var(--#{$prefix}steps-padding);
|
||||
counter-reset: step;
|
||||
border-left: 1px solid var(--#{$prefix}border-color);
|
||||
margin-bottom: 2rem;
|
||||
flex-direction: column;
|
||||
|
||||
h3 {
|
||||
counter-increment: step;
|
||||
|
||||
&:not(:first-child) {
|
||||
margin-top: 2.5rem !important;
|
||||
}
|
||||
|
||||
&:before {
|
||||
content: counter(step);
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
margin-top: 1px;
|
||||
margin-left: calc(-1 * var(--#{$prefix}steps-padding) - var(--#{$prefix}steps-item-size) / 2);
|
||||
width: var(--#{$prefix}steps-item-size);
|
||||
height: var(--#{$prefix}steps-item-size);
|
||||
text-align: center;
|
||||
color: var(--#{$prefix}body-color);
|
||||
border: 1px solid var(--#{$prefix}border-color);
|
||||
background: var(--#{$prefix}bg-surface);
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
line-height: calc(var(--#{$prefix}steps-item-size) - 2px);
|
||||
font-size: var(--#{$prefix}font-size-h4);
|
||||
font-weight: var(--#{$prefix}font-weight-bold);
|
||||
}
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ Color Input
|
||||
height: 1.5rem;
|
||||
color: $white;
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) $input-border-color-translucent;
|
||||
border-radius: 3px;
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
|
||||
|
||||
&:before {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Image check
|
||||
*/
|
||||
.form-imagecheck {
|
||||
--#{$prefix}form-imagecheck-radius: var(--#{$prefix}border-radius);
|
||||
position: relative;
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
@@ -19,7 +20,7 @@ Image check
|
||||
margin: 0;
|
||||
user-select: none;
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color);
|
||||
border-radius: 3px;
|
||||
border-radius: var(--#{$prefix}form-imagecheck-radius);
|
||||
|
||||
.form-imagecheck-input:focus ~ & {
|
||||
border-color: var(--#{$prefix}primary);
|
||||
@@ -73,13 +74,13 @@ Image check
|
||||
@include transition(opacity $transition-time);
|
||||
|
||||
&:first-child {
|
||||
border-top-left-radius: 2px;
|
||||
border-top-right-radius: 2px;
|
||||
border-top-left-radius: calc(var(--#{$prefix}form-imagecheck-radius) - 1px);
|
||||
border-top-right-radius: calc(var(--#{$prefix}form-imagecheck-radius) - 1px);
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
border-bottom-right-radius: 2px;
|
||||
border-bottom-left-radius: 2px;
|
||||
border-bottom-right-radius: calc(var(--#{$prefix}form-imagecheck-radius) - 1px);
|
||||
border-bottom-left-radius: calc(var(--#{$prefix}form-imagecheck-radius) - 1px);
|
||||
}
|
||||
|
||||
.form-imagecheck:hover &,
|
||||
|
||||
@@ -42,7 +42,7 @@ Select group
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) $input-border-color;
|
||||
border-radius: 3px;
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
box-shadow: $input-box-shadow;
|
||||
@include transition(border-color $transition-time, background $transition-time, color $transition-time);
|
||||
|
||||
|
||||
@@ -1,20 +1,16 @@
|
||||
// All colors
|
||||
@each $color, $value in map-merge($theme-colors, ( white: $white )) {
|
||||
@each $color, $value in map-merge($theme-colors, ( white: $white)) {
|
||||
.bg-#{"" + $color} {
|
||||
--#{$prefix}bg-opacity: 1;
|
||||
background-color: rgba(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}bg-opacity)) !important;
|
||||
background-color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}bg-opacity, 1) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.bg-#{"" + $color}-lt {
|
||||
--#{$prefix}bg-opacity: 1;
|
||||
--#{$prefix}text-opacity: 1;
|
||||
color: rgba(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}text-opacity)) !important;
|
||||
background-color: rgba(var(--#{$prefix}#{$color}-lt-rgb), var(--#{$prefix}bg-opacity)) !important;
|
||||
color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}text-opacity, 1) * 100%), transparent) !important;
|
||||
background-color: color-mix(in srgb, var(--#{$prefix}#{$color}-lt) calc(var(--#{$prefix}bg-opacity, 1) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.border-#{"" + $color} {
|
||||
--#{$prefix}border-opacity: 1;
|
||||
border-color: rgba(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}border-opacity)) !important;
|
||||
border-color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}border-opacity, 1) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.bg-gradient-from-#{"" + $color} {
|
||||
@@ -29,12 +25,31 @@
|
||||
--#{$prefix}gradient-via: var(--#{$prefix}#{$color});
|
||||
--#{$prefix}gradient-stops: var(--#{$prefix}gradient-from, transparent), var(--#{$prefix}gradient-via, transparent), var(--#{$prefix}gradient-to, transparent);
|
||||
}
|
||||
|
||||
.text-bg-#{"" + $color} {
|
||||
color: color-contrast($value) if($enable-important-utilities, !important, null);
|
||||
background-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}bg-opacity, 1)) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.link-#{"" + $color} {
|
||||
color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}link-opacity, 1) * 100%), transparent) !important;
|
||||
text-decoration-color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}link-underline-opacity, 1) * 100%), transparent) !important;
|
||||
|
||||
@if $link-shade-percentage != 0 {
|
||||
&:hover,
|
||||
&:focus {
|
||||
$hover-color: if(color-contrast($value) == $color-contrast-light, shade-color($value, $link-shade-percentage), tint-color($value, $link-shade-percentage));
|
||||
color: RGBA(#{to-rgb($hover-color)}, var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);
|
||||
text-decoration-color: RGBA(to-rgb($hover-color), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
.text-#{"" + $color} {
|
||||
--#{$prefix}text-opacity: 1;
|
||||
color: rgba(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}text-opacity)) !important;
|
||||
color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}text-opacity) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.text-#{"" + $color}-fg {
|
||||
@@ -45,7 +60,7 @@
|
||||
@each $color, $value in $gray-colors {
|
||||
.bg-#{"" + $color} {
|
||||
--#{$prefix}bg-opacity: 1;
|
||||
background-color: rgba(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}bg-opacity)) !important;
|
||||
background-color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}bg-opacity) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.text-#{"" + $color}-fg {
|
||||
@@ -53,6 +68,21 @@
|
||||
}
|
||||
}
|
||||
|
||||
@each $color, $value in $social-colors {
|
||||
.bg-#{"" + $color} {
|
||||
--#{$prefix}bg-opacity: 1;
|
||||
background-color: color-mix(in srgb, var(--#{$prefix}#{$color}) calc(var(--#{$prefix}bg-opacity) * 100%), transparent) !important;
|
||||
}
|
||||
|
||||
.text-#{"" + $color}-fg {
|
||||
color: $value !important;
|
||||
}
|
||||
}
|
||||
|
||||
.bg-inverted {
|
||||
--#{$prefix}bg-opacity: 1;
|
||||
background-color: color-mix(in srgb, var(--#{$prefix}bg-surface-inverted) calc(var(--#{$prefix}bg-opacity) * 100%), transparent) !important;
|
||||
}
|
||||
.bg-surface {
|
||||
background-color: var(--#{$prefix}bg-surface) !important;
|
||||
}
|
||||
@@ -66,5 +96,5 @@
|
||||
}
|
||||
|
||||
.bg-surface-backdrop {
|
||||
background-color: rgba($modal-backdrop-bg, $modal-backdrop-opacity) !important;
|
||||
background-color: color-transparent($modal-backdrop-bg, $modal-backdrop-opacity) !important;
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
// stylelint-disable declaration-no-important
|
||||
|
||||
/*
|
||||
Scrollable
|
||||
*/
|
||||
|
||||
7
core/scss/vendor/_coloris.scss
vendored
7
core/scss/vendor/_coloris.scss
vendored
@@ -1,6 +1,11 @@
|
||||
.clr-picker {
|
||||
box-shadow: var(--#{$prefix}box-shadow-dropdown);
|
||||
box-shadow: var(--#{$prefix}shadow-dropdown);
|
||||
background-color: var(--#{$prefix}bg-surface);
|
||||
border-radius: var(--#{$prefix}border-radius);
|
||||
}
|
||||
|
||||
.clr-gradient {
|
||||
border-radius: var(--#{$prefix}border-radius) var(--#{$prefix}border-radius) 0 0;
|
||||
}
|
||||
|
||||
input.clr-color {
|
||||
|
||||
2
core/scss/vendor/_fslightbox.scss
vendored
2
core/scss/vendor/_fslightbox.scss
vendored
@@ -1,6 +1,6 @@
|
||||
.fslightbox-container {
|
||||
font-family: inherit !important;
|
||||
background: rgba($modal-backdrop-bg, $modal-backdrop-opacity) !important;
|
||||
background: var(--#{$prefix}backdrop-bg) !important;
|
||||
backdrop-filter: blur($modal-backdrop-blur) !important;
|
||||
}
|
||||
|
||||
|
||||
5
core/scss/vendor/_jsvectormap.scss
vendored
5
core/scss/vendor/_jsvectormap.scss
vendored
@@ -1,7 +1,6 @@
|
||||
// @import "jsvectormap/dist/jsvectormap";
|
||||
|
||||
.jvm-tooltip {
|
||||
background: $dark;
|
||||
background: var(--#{$prefix}bg-surface-inverted);
|
||||
color: var(--#{$prefix}text-inverted);
|
||||
font-family: inherit;
|
||||
font-size: $h5-font-size;
|
||||
box-shadow: $card-box-shadow;
|
||||
|
||||
1
core/scss/vendor/_litepicker.scss
vendored
1
core/scss/vendor/_litepicker.scss
vendored
@@ -62,6 +62,7 @@
|
||||
.container__months {
|
||||
box-shadow: none;
|
||||
background-color: var(--#{$prefix}bg-forms);
|
||||
border-radius: calc(var(--#{$prefix}border-radius) - 1px);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
2
core/scss/vendor/_nouislider.scss
vendored
2
core/scss/vendor/_nouislider.scss
vendored
@@ -1,5 +1,3 @@
|
||||
// @import "nouislider/dist/nouislider";
|
||||
|
||||
.noUi-target {
|
||||
border: 0;
|
||||
box-shadow: none;
|
||||
|
||||
6
core/scss/vendor/_tinymce.scss
vendored
6
core/scss/vendor/_tinymce.scss
vendored
@@ -1,4 +1,4 @@
|
||||
.tox-tinymce {
|
||||
.tox-hugerte {
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color) !important;
|
||||
border-radius: $border-radius !important;
|
||||
font-family: var(--#{$prefix}font-sans-serif) !important;
|
||||
@@ -12,7 +12,7 @@
|
||||
background: transparent !important;
|
||||
}
|
||||
|
||||
.tox:not(.tox-tinymce-inline) {
|
||||
.tox:not(.tox-hugerte-inline) {
|
||||
.tox-editor-header {
|
||||
border-bottom: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color) !important;
|
||||
box-shadow: none !important;
|
||||
@@ -29,6 +29,6 @@
|
||||
}
|
||||
|
||||
.tox .tox-toolbar-overlord,
|
||||
.tox:not(.tox-tinymce-inline) .tox-editor-header {
|
||||
.tox:not(.tox-hugerte-inline) .tox-editor-header {
|
||||
background: transparent !important;
|
||||
}
|
||||
4
core/scss/vendor/_tom-select.scss
vendored
4
core/scss/vendor/_tom-select.scss
vendored
@@ -2,8 +2,6 @@ $select-color-dropdown: #fff;
|
||||
$select-color-dropdown-border-top: red;
|
||||
$input-border-width: 1px;
|
||||
|
||||
// @import "tom-select/src/scss/tom-select.bootstrap5.scss";
|
||||
|
||||
:root {
|
||||
--ts-pr-clear-button: 0rem;
|
||||
--ts-pr-caret: 0rem;
|
||||
@@ -46,7 +44,7 @@ $input-border-width: 1px;
|
||||
.ts-dropdown {
|
||||
background: var(--#{$prefix}bg-surface);
|
||||
color: var(--#{$prefix}body-color);
|
||||
box-shadow: var(--#{$prefix}box-shadow-dropdown);
|
||||
box-shadow: var(--#{$prefix}shadow-dropdown);
|
||||
z-index: $zindex-dropdown;
|
||||
|
||||
.option {
|
||||
|
||||
3
core/scss/vendor/_turbo.scss
vendored
Normal file
3
core/scss/vendor/_turbo.scss
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
.turbo-progress-bar {
|
||||
background: var(--#{$prefix}primary);
|
||||
}
|
||||
34
core/scss/vendor/_wysiwyg.scss
vendored
Normal file
34
core/scss/vendor/_wysiwyg.scss
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
.tox-hugerte {
|
||||
border: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color) !important;
|
||||
border-radius: $border-radius !important;
|
||||
font-family: var(--#{$prefix}font-sans-serif) !important;
|
||||
}
|
||||
|
||||
.tox-toolbar__group {
|
||||
padding: 0 .5rem 0;
|
||||
}
|
||||
|
||||
.tox .tox-toolbar__primary {
|
||||
background: transparent !important;
|
||||
}
|
||||
|
||||
.tox:not(.tox-hugerte-inline) {
|
||||
.tox-editor-header {
|
||||
border-bottom: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color) !important;
|
||||
box-shadow: none !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.tox-tbtn {
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.tox-statusbar {
|
||||
border-top: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color) !important;
|
||||
}
|
||||
|
||||
.tox .tox-toolbar-overlord,
|
||||
.tox:not(.tox-hugerte-inline) .tox-editor-header {
|
||||
background: transparent !important;
|
||||
}
|
||||
43
docs/.build/rollup.config.mjs
Normal file
43
docs/.build/rollup.config.mjs
Normal file
@@ -0,0 +1,43 @@
|
||||
import path from 'node:path'
|
||||
import { fileURLToPath } from 'node:url'
|
||||
import { babel } from '@rollup/plugin-babel'
|
||||
import { nodeResolve } from '@rollup/plugin-node-resolve'
|
||||
import replace from '@rollup/plugin-replace'
|
||||
import dotenv from "rollup-plugin-dotenv"
|
||||
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url))
|
||||
|
||||
const external = []
|
||||
const plugins = [
|
||||
dotenv({
|
||||
cwd: path.resolve(__dirname, '../..'),
|
||||
}),
|
||||
babel({
|
||||
exclude: 'node_modules/**',
|
||||
babelHelpers: 'bundled'
|
||||
})
|
||||
]
|
||||
|
||||
plugins.push(
|
||||
replace({
|
||||
'process.env.NODE_ENV': '"production"',
|
||||
preventAssignment: true
|
||||
}),
|
||||
nodeResolve()
|
||||
)
|
||||
|
||||
const rollupConfig = {
|
||||
input: [
|
||||
path.resolve(__dirname, `../js/docs.js`)
|
||||
],
|
||||
output: {
|
||||
name: 'docs',
|
||||
dir: path.resolve(__dirname, `../dist/js`),
|
||||
format: 'esm',
|
||||
generatedCode: 'es2015'
|
||||
},
|
||||
external,
|
||||
plugins
|
||||
}
|
||||
|
||||
export default rollupConfig
|
||||
1
docs/.gitignore
vendored
Normal file
1
docs/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.vercel
|
||||
34
docs/CHANGELOG.md
Normal file
34
docs/CHANGELOG.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# @tabler/docs
|
||||
|
||||
## 1.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [c59bc9d]
|
||||
- Updated dependencies [f9e4da2]
|
||||
- Updated dependencies [aea3b0a]
|
||||
- Updated dependencies [92a3afe]
|
||||
- Updated dependencies [3fc7b84]
|
||||
- Updated dependencies [199f39a]
|
||||
- Updated dependencies [2f8a372]
|
||||
- Updated dependencies [9fceadd]
|
||||
- Updated dependencies [44250db]
|
||||
- Updated dependencies [be1f3d1]
|
||||
- Updated dependencies [c20d076]
|
||||
- Updated dependencies [042e50f]
|
||||
- Updated dependencies [473fa38]
|
||||
- Updated dependencies [8646192]
|
||||
- Updated dependencies [922bb03]
|
||||
- Updated dependencies [44250db]
|
||||
- Updated dependencies [9bbcb99]
|
||||
- Updated dependencies [b17b488]
|
||||
- Updated dependencies [ddcd3a7]
|
||||
- Updated dependencies [e3d68d6]
|
||||
- Updated dependencies [215eaa4]
|
||||
- Updated dependencies [4846828]
|
||||
- Updated dependencies [6b6617a]
|
||||
- Updated dependencies [94bea00]
|
||||
- Updated dependencies [e14e492]
|
||||
- Updated dependencies [6d6d1bd]
|
||||
- Updated dependencies [6c566cf]
|
||||
- @tabler/core@1.2.0
|
||||
6
docs/content/content.11tydata.mjs
Normal file
6
docs/content/content.11tydata.mjs
Normal file
@@ -0,0 +1,6 @@
|
||||
export default {
|
||||
layout: 'docs/default',
|
||||
permalink: function ({page}) {
|
||||
return `${page.filePathStem.replace(/^\/content\//, '/').replace(/\/index$/, '') }/index.html`;
|
||||
},
|
||||
};
|
||||
@@ -43,7 +43,7 @@ tabler-emails/
|
||||
The **Tabler Emails** package is organized into a clear and efficient folder structure to streamline the use of its assets. Below is a breakdown of its key directories:
|
||||
|
||||
### 1. Email Templates: `emails/`
|
||||
This folder contains <EmailsCount /> email subfolders, each with a specific template. Each email folder contains the following files:
|
||||
This folder contains {{ emailsCount }} email subfolders, each with a specific template. Each email folder contains the following files:
|
||||
* Compiled HTML files for light and dark themes. Read more about their usage in the [Compiled HTML](/docs/emails/compiled-html) section.
|
||||
* Source HTML files for light and dark themes. Find more information in the [Source HTML](/docs/emails/source-html) section.
|
||||
* Screenshot images for desktop and mobile views.
|
||||
@@ -7,7 +7,7 @@ description: Over 5000 pixel-perfect icons for web design and development
|
||||
|
||||
## Browse icons
|
||||
|
||||
Tabler Icons is a comprehensive icon library that features over <IconsCount rounded /> high-quality icons. These icons are designed with a clean and modern aesthetic, making them suitable for a wide range of applications.
|
||||
Tabler Icons is a comprehensive icon library that features {{ iconsCount }} high-quality icons. These icons are designed with a clean and modern aesthetic, making them suitable for a wide range of applications.
|
||||
|
||||
To use Tabler Icons, you can visit their website at https://tabler-icons.io. From there, you can browse the full collection of icons by category or search for a specific icon using the search bar. Once you have found an icon you like, you can download it in various file formats, including SVG, PNG, and Icon Font.
|
||||
|
||||
@@ -4,11 +4,11 @@ description: Tabler Icons library for Preact framework.
|
||||
summary: Tabler Icons for Preact provides an optimized collection of icons specifically designed for use with Preact. These lightweight and scalable icons are easy to integrate into Preact-based projects.
|
||||
---
|
||||
|
||||

|
||||

|
||||
|
||||
## Installation
|
||||
|
||||
<TabsPackage name="@tabler/icons-preact" />
|
||||
{% include "docs/tabs-package.html" name="@tabler/icons-preact" %}
|
||||
|
||||
or just [download from Github](https://github.com/tabler/tabler-icons/releases).
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user