mirror of
https://github.com/tabler/tabler.git
synced 2025-12-22 01:44:25 +04:00
Compare commits
26 Commits
dev-brand-
...
dev-site-e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
95891cb108 | ||
|
|
09a8e2d2c5 | ||
|
|
e4c76be517 | ||
|
|
9bbdba9c67 | ||
|
|
4ef2d125c2 | ||
|
|
7193a70102 | ||
|
|
442ac3bb4b | ||
|
|
877182140d | ||
|
|
9772160071 | ||
|
|
aeff172a41 | ||
|
|
7e62c3a563 | ||
|
|
d673851db5 | ||
|
|
020255f161 | ||
|
|
5edc93384c | ||
|
|
0efbb01e55 | ||
|
|
361e81e478 | ||
|
|
ebda434060 | ||
|
|
8ffe0e6a1a | ||
|
|
5250158600 | ||
|
|
e307ba44fb | ||
|
|
8cf5058456 | ||
|
|
b7c772ce1b | ||
|
|
1f0e6e074a | ||
|
|
a76df72359 | ||
|
|
90f4931c96 | ||
|
|
33bbc46229 |
89
.all-contributorsrc
Normal file
89
.all-contributorsrc
Normal file
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"projectName": "tabler",
|
||||
"projectOwner": "tabler",
|
||||
"repoType": "github",
|
||||
"repoHost": "https://github.com",
|
||||
"files": [
|
||||
"CONTRIBUTORS.md"
|
||||
],
|
||||
"imageSize": 100,
|
||||
"commit": true,
|
||||
"commitConvention": "angular",
|
||||
"contributors": [
|
||||
{
|
||||
"login": "codecalm",
|
||||
"name": "Paweł Kuna",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/1282324?v=4",
|
||||
"profile": "https://tabler.io/",
|
||||
"contributions": [
|
||||
"code",
|
||||
"doc"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "martynaaj",
|
||||
"name": "Martyna",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/60158888?v=4",
|
||||
"profile": "https://github.com/martynaaj",
|
||||
"contributions": [
|
||||
"doc"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "deralaxo",
|
||||
"name": "Dawid Harat",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/40028795?v=4",
|
||||
"profile": "https://github.com/deralaxo",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "rjd22",
|
||||
"name": "Robert-Jan de Dreu",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/160743?v=4",
|
||||
"profile": "https://codersopinion.com/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "FreexD",
|
||||
"name": "Michał Wolny",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/7117869?v=4",
|
||||
"profile": "https://github.com/FreexD",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "wangkanai",
|
||||
"name": "Sarin Na Wangkanai",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/10666633?v=4",
|
||||
"profile": "https://www.wangkanai.com/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "WinterSilence",
|
||||
"name": "Anton",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/3521094?v=4",
|
||||
"profile": "https://ensostudio.ru/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "dheineman",
|
||||
"name": "Dave Heineman",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/516028?v=4",
|
||||
"profile": "https://github.com/dheineman",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
"linkToUsage": false
|
||||
}
|
||||
@@ -1,57 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict'
|
||||
|
||||
const fs = require('node:fs')
|
||||
const path = require('node:path')
|
||||
const request = require('request')
|
||||
const filePath = path.join(__dirname, '../src/pages/_data/photos.json')
|
||||
|
||||
const photos = JSON.parse(fs.readFileSync(filePath, 'utf8'))
|
||||
|
||||
const urlTitle = (str) => {
|
||||
str = str
|
||||
.toLowerCase()
|
||||
.replaceAll('&', 'and')
|
||||
.replace(/[^[a-z0-9-]/g, '-')
|
||||
.replace(/-+/g, '-')
|
||||
|
||||
return str
|
||||
}
|
||||
|
||||
const download = function (uri, filename, callback, error) {
|
||||
request.head(uri, function (err, res, body) {
|
||||
request(uri).pipe(fs.createWriteStream(filename))
|
||||
.on('close', callback)
|
||||
.on('error', error)
|
||||
})
|
||||
}
|
||||
|
||||
async function downloadPhotos() {
|
||||
for (const key in photos) {
|
||||
const photo = photos[key]
|
||||
|
||||
let filename, i = 1;
|
||||
|
||||
do {
|
||||
filename = `${urlTitle(photo['title'])}${i > 1 ? `-${i}` : ''}.jpg`
|
||||
i++
|
||||
} while (fs.existsSync(path.join(__dirname, `../src/static/photos/${filename}`)))
|
||||
|
||||
await new Promise((resolve, reject) => {
|
||||
download(photo['path'], path.join(__dirname, `../src/static/photos/${filename}`), function () {
|
||||
resolve()
|
||||
}, function () {
|
||||
reject()
|
||||
});
|
||||
})
|
||||
|
||||
photos[key]['file'] = filename
|
||||
photos[key]['horizontal'] = photo['width'] > photo['height']
|
||||
}
|
||||
|
||||
fs.writeFileSync(filePath, JSON.stringify(photos))
|
||||
}
|
||||
|
||||
downloadPhotos();
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict'
|
||||
|
||||
const fs = require('fs'),
|
||||
path = require('path');
|
||||
|
||||
const iconsTags = require('../node_modules/@tabler/icons/icons.json'),
|
||||
iconsPkg = require('../node_modules/@tabler/icons/package.json');
|
||||
|
||||
const prepareSvgFile = (svg) => {
|
||||
return svg.replace(/\n/g, '').replace(/>\s+</g, '><').replace(/\s+/g, ' ')
|
||||
}
|
||||
|
||||
let svgList = {}
|
||||
for (let iconName in iconsTags) {
|
||||
let iconData = iconsTags[iconName]
|
||||
svgList[iconName] = {
|
||||
name: iconName,
|
||||
svg: {
|
||||
outline: iconData.styles.outline ? prepareSvgFile(fs.readFileSync(path.join(__dirname, `../node_modules/@tabler/icons/icons/outline/${iconName}.svg`), 'utf8')) : null,
|
||||
filled: iconData.styles.filled ? prepareSvgFile(fs.readFileSync(path.join(__dirname, `../node_modules/@tabler/icons/icons/filled/${iconName}.svg`), 'utf8')) : null,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fs.writeFileSync(
|
||||
path.join(__dirname, `../src/pages/_data/icons-info.json`),
|
||||
JSON.stringify({
|
||||
version: iconsPkg.version,
|
||||
count: Object.values(svgList).reduce((acc, icon) => {
|
||||
return acc + (icon.svg.outline ? 1 : 0) + (icon.svg.filled ? 1 : 0)
|
||||
}, 0)
|
||||
})
|
||||
)
|
||||
|
||||
fs.writeFileSync(path.join(__dirname, `../src/pages/_data/icons.json`), JSON.stringify(svgList))
|
||||
@@ -1,44 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict'
|
||||
|
||||
const fs = require('fs'),
|
||||
path = require('path'),
|
||||
glob = require('glob');
|
||||
|
||||
const illustrations = glob
|
||||
.sync(path.join(__dirname, `../src/static/illustrations/light/*.png`))
|
||||
.map((file) => {
|
||||
return path.basename(file, '.png')
|
||||
})
|
||||
|
||||
fs.writeFileSync(
|
||||
path.join(__dirname, `../src/pages/_data/illustrations.json`),
|
||||
JSON.stringify(illustrations)
|
||||
)
|
||||
|
||||
|
||||
// let i = {}
|
||||
// const dirs = ['light', 'dark', 'autodark']
|
||||
// const ilustrations = ['not-found', 'computer-fix', 'boy-with-key', 'boy-girl']
|
||||
|
||||
// for(const dir of dirs) {
|
||||
// i[dir] = {}
|
||||
|
||||
// for(const ilustration of ilustrations) {
|
||||
// let svg = fs.readFileSync(path.join(__dirname, `../src/pages/_free-illustrations/${dir}/${ilustration}.svg`), 'utf8')
|
||||
|
||||
// svg = svg
|
||||
// .replace(/\n+/g, ' ')
|
||||
// .replace(/>\s+</g, '><')
|
||||
// .replace(/\s+/g, ' ')
|
||||
// .replace(/^[\n\s-]+/, '')
|
||||
|
||||
// i[dir][ilustration] = svg
|
||||
// }
|
||||
// }
|
||||
|
||||
// fs.writeFileSync(
|
||||
// path.join(__dirname, `../src/pages/_data/free-illustrations.json`),
|
||||
// JSON.stringify(i)
|
||||
// )
|
||||
@@ -1,36 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict'
|
||||
|
||||
const fs = require('fs'),
|
||||
path = require('path'),
|
||||
glob = require('glob'),
|
||||
beautifyHtml = require('js-beautify').html;
|
||||
|
||||
const docs = glob
|
||||
.sync(path.join(__dirname, `../docs/**/*.mdx`))
|
||||
|
||||
docs.forEach((file, i) => {
|
||||
const oldContent = fs.readFileSync(file, 'utf8')
|
||||
|
||||
// get codeblocks from markdown
|
||||
const content = oldContent.replace(/(```([a-z0-9]+).*?\n)(.*?)(```)/gs, (m, m1, m2, m3, m4) => {
|
||||
if (m2 === 'html') {
|
||||
let m3m = beautifyHtml(m3, {
|
||||
"indent_size": 2,
|
||||
"indent_char": " ",
|
||||
}).trim();
|
||||
|
||||
// remove empty lines
|
||||
m3m = m3m.replace(/^\s*[\r\n]/gm, '');
|
||||
|
||||
return m1 + m3m + "\n" + m4;
|
||||
}
|
||||
return m
|
||||
})
|
||||
|
||||
if (content !== oldContent) {
|
||||
fs.writeFileSync(file, content, 'utf8')
|
||||
console.log(`Reformatted ${file}`)
|
||||
}
|
||||
})
|
||||
@@ -1,26 +0,0 @@
|
||||
const glob = require('glob');
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
|
||||
const srcDir = path.join(__dirname, '../src')
|
||||
|
||||
let foundFiles = []
|
||||
glob.sync(`${srcDir}/pages/**/*.{html,md}`).forEach((file) => {
|
||||
let fileContent = fs.readFileSync(file)
|
||||
|
||||
fileContent.toString().replace(/\{% include(_cached)? "([a-z0-9\/_-]+\.html)"/g, (f, c, filename) => {
|
||||
filename = `${srcDir}/pages/_includes/${filename}`
|
||||
|
||||
if (!foundFiles.includes(filename)) {
|
||||
foundFiles.push(filename)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
let includeFiles = glob.sync(`${srcDir}/pages/_includes/**/*.html`)
|
||||
|
||||
includeFiles.forEach((file) => {
|
||||
if (!foundFiles.includes(file)) {
|
||||
console.log('file', file)
|
||||
}
|
||||
})
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Change Twitter to X brand
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Dependencies update
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Order menu items alphabetically
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Automatically retrieve and display the changelog from the CHANGELOG.md file.
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Initialize Visual Studio Code config
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Make horizontal rule direction aware
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Illustrations to v1.5
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Icons to v3.29.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Remove unused dependencies from `package.json`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Replace Jekyll with Eleventy
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Dependencies update
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update TinyMCE to v7.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Remove invalid `z-index` setting for dropdowns
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Emails to v2.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Init changelog script
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Replace `.page-center` with `.my-auto` in single page layouts
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Add border-opacity variable for improved color utility
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix icon display issues in the Star Ratings component
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix `color` of disabled `dropdown-item` in Navbar component
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Bump pnpm/action-setup from 2 to 3
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Add social icons plugin
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Jekyll to version 4.3.4
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Add Tabler Illustrations
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update illustrations and enhance SVG handling in HTML
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix ids of custom size star ratings
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update icons to v2.42.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Set `font-size` of an `i` element with `icon` class in a `button` element
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Dependencies update
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix icons in `form-elements.html`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Icons to v3.28.1
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix description of alerts with a description
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix colors of disabled `.ts-control`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Center content on error and single page layouts
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Resolve map page issues
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Improve base font family loading
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Introduce Docker Compose Config to build and run Ttabler locally
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix `@charset` CSS declaration in bundle.
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update `_navbar.scss` with disabled dropdown menu items color
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Icons to v3.17.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update `@tabler/icons` to v3.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Refactor data structure by converting YAML files to JSON
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Increase `z-index` of `ts-dropdown` to prevent overlapping by buttons
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Adding punctuation to `SECURITY.md`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix padding in code blocks
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Remove duplicated setting of color in `th` element
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix layout of search results for small and medium screens
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Remove `text-decoration` on hovering `a` element with class having `icon` class
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Improve documentation for alerts
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Bump `pnpm/action-setup` from 3 to 4
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update dependencies
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Set value of `$font-family-monospace` as default
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Refactor Dockerfile and package.json
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Enhance documentation
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix cells with inline icons
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix `color` of disabled `nav-link` in `nav-bordered`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix the `z-index` value of the `nav-tab` inside `card-tab` #1933
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Increase contrast of active `dropdown-item` in vertical layout
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update documentation for Tabler components
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Do not display empty `fieldset` element
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Refactor SCSS variables to use `color.adjust` for improved color manipulation
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Add Tabler Illustrations
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Icons to v3.26.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Updated Tabler Icons to v3.24.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Node.js engine requirement to allow versions >=20
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update Tabler Icons to v3.14.0
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Upgrade Node.js from version 18 to version 20 for improved performance, security, and feature updates.
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": minor
|
||||
---
|
||||
|
||||
New page with payment providers: `payment-providers.html`
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": minor
|
||||
---
|
||||
|
||||
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
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Update package dependencies to latest versions
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix link to webfont version of Tabler Icons
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
"@tabler/core": patch
|
||||
---
|
||||
|
||||
Fix colors in date range datepicker
|
||||
2
.github/workflows/add_to_project.yml
vendored
2
.github/workflows/add_to_project.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
name: Add new issue and pr to project
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/add-to-project@v1.0.2
|
||||
- uses: actions/add-to-project@v0.5.0
|
||||
with:
|
||||
project-url: https://github.com/orgs/tabler/projects/9/views/1
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
12
.github/workflows/bundlewatch.yml
vendored
12
.github/workflows/bundlewatch.yml
vendored
@@ -9,7 +9,7 @@ on:
|
||||
|
||||
env:
|
||||
FORCE_COLOR: 2
|
||||
NODE: 20
|
||||
NODE: 18
|
||||
|
||||
jobs:
|
||||
bundlewatch:
|
||||
@@ -17,22 +17,22 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: "${{ env.NODE }}"
|
||||
|
||||
- name: Install PNPM
|
||||
uses: pnpm/action-setup@v4
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
version: 7
|
||||
|
||||
- name: Set up Bundler
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 3.2
|
||||
ruby-version: 2.6
|
||||
bundler-cache: true
|
||||
|
||||
- name: Install pnpm dependencies
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/close_inactive.yml
vendored
2
.github/workflows/close_inactive.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
pull-requests: write
|
||||
issues: write
|
||||
steps:
|
||||
- uses: actions/stale@v9
|
||||
- uses: actions/stale@v8
|
||||
with:
|
||||
days-before-issue-stale: 360
|
||||
days-before-issue-close: 14
|
||||
|
||||
6
.github/workflows/lockfiles.yaml
vendored
6
.github/workflows/lockfiles.yaml
vendored
@@ -1,6 +1,10 @@
|
||||
name: Changed lock files
|
||||
on:
|
||||
pull_request: null
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- dev
|
||||
|
||||
permissions:
|
||||
pull-requests: read
|
||||
@@ -11,7 +15,7 @@ jobs:
|
||||
name: Verify lock file integrity
|
||||
steps:
|
||||
- name: Clone Tabler
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prevent lock file change
|
||||
uses: xalvarez/prevent-file-change-action@v1
|
||||
|
||||
16
.github/workflows/release.yml
vendored
16
.github/workflows/release.yml
vendored
@@ -3,11 +3,7 @@ name: Release
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
- dev
|
||||
|
||||
concurrency: ${{ github.workflow }}-${{ github.ref }}
|
||||
|
||||
@@ -17,17 +13,17 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Node.js 18
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 20
|
||||
node-version: 18
|
||||
|
||||
- name: Install PNPM
|
||||
uses: pnpm/action-setup@v4
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
version: 7
|
||||
|
||||
- name: Install Dependencies
|
||||
run: pnpm install
|
||||
|
||||
18
.github/workflows/test.yml
vendored
18
.github/workflows/test.yml
vendored
@@ -5,7 +5,7 @@ on:
|
||||
types: [ opened, reopened ]
|
||||
|
||||
env:
|
||||
NODE: 20
|
||||
NODE: 18
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
@@ -15,18 +15,26 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: "${{ env.NODE }}"
|
||||
cache: pnpm
|
||||
|
||||
- name: Install PNPM
|
||||
uses: pnpm/action-setup@v4
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
version: 7
|
||||
|
||||
- name: Set up Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
bundler-cache: true
|
||||
|
||||
- run: ruby --version
|
||||
- run: node --version
|
||||
|
||||
- name: Install pnpm dependencies
|
||||
|
||||
7
.gitignore
vendored
7
.gitignore
vendored
@@ -12,6 +12,8 @@ node_modules/
|
||||
/.cache/
|
||||
.sass-cache/
|
||||
|
||||
.vscode/
|
||||
|
||||
/_gh_pages/
|
||||
/site/docs/**/dist/
|
||||
/site/static/**/dist/
|
||||
@@ -28,7 +30,4 @@ node_modules/
|
||||
.yarn
|
||||
.next
|
||||
.vercel
|
||||
package-lock.json
|
||||
|
||||
demo/
|
||||
dist/
|
||||
package-lock.json
|
||||
3
.percy.yml
Normal file
3
.percy.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
version: 1
|
||||
snapshot:
|
||||
widths: [1440]
|
||||
14
.vscode/settings.json
vendored
14
.vscode/settings.json
vendored
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"files.exclude": {
|
||||
"**/.git": false,
|
||||
"**/.svn": false,
|
||||
"**/.hg": false,
|
||||
"**/CVS": false,
|
||||
"**/.DS_Store": false,
|
||||
"**/Thumbs.db": false,
|
||||
"**/.idea/": false,
|
||||
"dist": false,
|
||||
"demo": false
|
||||
},
|
||||
"explorerExclude.backup": {}
|
||||
}
|
||||
104
CHANGELOG.md
104
CHANGELOG.md
@@ -1,108 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## `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.
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## `1.0.0-beta20` - 2023-08-24
|
||||
|
||||
|
||||
11
Dockerfile
11
Dockerfile
@@ -1,20 +1,23 @@
|
||||
FROM ruby:3.2-alpine
|
||||
FROM ruby:2.7-alpine
|
||||
|
||||
WORKDIR /app
|
||||
ADD _config.yml /app/
|
||||
ADD _config_prod.yml /app/
|
||||
ADD Gemfile /app/
|
||||
ADD Gemfile.lock /app/
|
||||
ADD package.json /app/
|
||||
ADD pnpm-lock.yaml /app/
|
||||
ADD gulpfile.js /app/
|
||||
|
||||
RUN apk add --virtual build-dependencies build-base npm
|
||||
RUN apk upgrade
|
||||
RUN apk add --virtual build-dependencies build-base
|
||||
RUN apk add npm --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community/
|
||||
RUN npm i -g pnpm
|
||||
RUN pnpm install
|
||||
RUN bundle config --global silence_root_warning 1 && bundler install --verbose
|
||||
|
||||
# website
|
||||
EXPOSE 3000
|
||||
# website management (browser auto reload)
|
||||
EXPOSE 3001
|
||||
# run tabler
|
||||
ENTRYPOINT [ "pnpm", "run", "start" ]
|
||||
ENTRYPOINT [ "pnpm", "run", "start-plugins" ]
|
||||
|
||||
14
Gemfile
Normal file
14
Gemfile
Normal file
@@ -0,0 +1,14 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem "jekyll", "4.3.2"
|
||||
|
||||
group :jekyll_plugins do
|
||||
gem "jekyll-random"
|
||||
gem "jekyll-tidy"
|
||||
gem "jekyll-timeago"
|
||||
gem 'jekyll-redirect-from'
|
||||
end
|
||||
|
||||
gem 'wdm', '>= 0.1.1' if Gem.win_platform?
|
||||
|
||||
|
||||
89
Gemfile.lock
Normal file
89
Gemfile.lock
Normal file
@@ -0,0 +1,89 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
addressable (2.8.5)
|
||||
public_suffix (>= 2.0.2, < 6.0)
|
||||
colorator (1.1.0)
|
||||
concurrent-ruby (1.2.2)
|
||||
em-websocket (0.5.3)
|
||||
eventmachine (>= 0.12.9)
|
||||
http_parser.rb (~> 0)
|
||||
eventmachine (1.2.7)
|
||||
ffi (1.16.2)
|
||||
forwardable-extended (2.6.0)
|
||||
google-protobuf (3.24.3)
|
||||
htmlbeautifier (1.4.2)
|
||||
htmlcompressor (0.4.0)
|
||||
http_parser.rb (0.8.0)
|
||||
i18n (1.14.1)
|
||||
concurrent-ruby (~> 1.0)
|
||||
jekyll (4.3.2)
|
||||
addressable (~> 2.4)
|
||||
colorator (~> 1.0)
|
||||
em-websocket (~> 0.5)
|
||||
i18n (~> 1.0)
|
||||
jekyll-sass-converter (>= 2.0, < 4.0)
|
||||
jekyll-watch (~> 2.0)
|
||||
kramdown (~> 2.3, >= 2.3.1)
|
||||
kramdown-parser-gfm (~> 1.0)
|
||||
liquid (~> 4.0)
|
||||
mercenary (>= 0.3.6, < 0.5)
|
||||
pathutil (~> 0.9)
|
||||
rouge (>= 3.0, < 5.0)
|
||||
safe_yaml (~> 1.0)
|
||||
terminal-table (>= 1.8, < 4.0)
|
||||
webrick (~> 1.7)
|
||||
jekyll-random (0.1)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-redirect-from (0.16.0)
|
||||
jekyll (>= 3.3, < 5.0)
|
||||
jekyll-sass-converter (3.0.0)
|
||||
sass-embedded (~> 1.54)
|
||||
jekyll-tidy (0.2.2)
|
||||
htmlbeautifier
|
||||
htmlcompressor
|
||||
jekyll
|
||||
jekyll-timeago (0.15.0)
|
||||
mini_i18n (>= 0.8.0)
|
||||
jekyll-watch (2.2.1)
|
||||
listen (~> 3.0)
|
||||
kramdown (2.4.0)
|
||||
rexml
|
||||
kramdown-parser-gfm (1.1.0)
|
||||
kramdown (~> 2.0)
|
||||
liquid (4.0.4)
|
||||
listen (3.8.0)
|
||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||
rb-inotify (~> 0.9, >= 0.9.10)
|
||||
mercenary (0.4.0)
|
||||
mini_i18n (0.9.0)
|
||||
pathutil (0.16.2)
|
||||
forwardable-extended (~> 2.6)
|
||||
public_suffix (5.0.3)
|
||||
rake (13.0.6)
|
||||
rb-fsevent (0.11.2)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
rexml (3.2.6)
|
||||
rouge (4.1.3)
|
||||
safe_yaml (1.0.5)
|
||||
sass-embedded (1.68.0)
|
||||
google-protobuf (~> 3.23)
|
||||
rake (>= 13.0.0)
|
||||
terminal-table (3.0.2)
|
||||
unicode-display_width (>= 1.1.1, < 3)
|
||||
unicode-display_width (2.4.2)
|
||||
webrick (1.8.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
jekyll (= 4.3.2)
|
||||
jekyll-random
|
||||
jekyll-redirect-from
|
||||
jekyll-tidy
|
||||
jekyll-timeago
|
||||
|
||||
BUNDLED WITH
|
||||
2.4.19
|
||||
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018-2025 The Tabler Authors
|
||||
Copyright (c) 2018-2023 The Tabler Authors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
66
README.md
66
README.md
@@ -13,29 +13,12 @@ A premium and open source dashboard template with a responsive and high-quality
|
||||
<a href="https://github.com/tabler/tabler" target="__blank"><img alt="GitHub stars" src="https://img.shields.io/github/stars/tabler/tabler?style=social"></a>
|
||||
</p>
|
||||
|
||||
## Sponsors
|
||||
|
||||
**If you want to support our project and help me grow it, you can [become a sponsor on GitHub](https://github.com/sponsors/codecalm) or just [donate on PayPal](https://paypal.me/codecalm) :)**
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/sponsors/codecalm">
|
||||
<img src="https://cdn.jsdelivr.net/gh/tabler/sponsors@latest/sponsors.svg" alt="Tabler sponsors">
|
||||
<img src='https://raw.githubusercontent.com/tabler/static/main/sponsors.svg'>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
## Testing
|
||||
|
||||
<p align="center">Browser testing via:</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://www.lambdatest.com/" target="_blank">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/14dd2a0a-bafe-436e-a6cb-29636278c781">
|
||||
<source media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83">
|
||||
<img src="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83" alt="Tabler Icons preview" width="296">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
## 🔎 Preview
|
||||
|
||||
@@ -59,8 +42,6 @@ We've created this admin panel for everyone who wants to create templates based
|
||||
|
||||
Documentation is available as a part of Tabler preview: https://tabler.io/docs/
|
||||
|
||||
To run the documentation site locally, follow instructions in the [Documentation README](https://github.com/tabler/tabler/blob/dev/site/README.md).
|
||||
|
||||
## 🪴 Project Activity
|
||||
|
||||

|
||||
@@ -85,25 +66,39 @@ Support this project by becoming a sponsor. Your logo will show up in this READM
|
||||
<a href="https://opencollective.com/tabler/tiers/sponsor/8/website" target="_blank"><img src="https://opencollective.com/tabler/tiers/sponsor/8/avatar.svg" /></a>
|
||||
<a href="https://opencollective.com/tabler/tiers/sponsor/9/website" target="_blank"><img src="https://opencollective.com/tabler/tiers/sponsor/9/avatar.svg" /></a>
|
||||
|
||||
|
||||
## 📦 Setup environment
|
||||
|
||||
To use our build system and run our documentation locally, you'll need a copy of Tabler's source files. Follow the steps below:
|
||||
|
||||
1. [Install Node.js](https://nodejs.org/download/), which we use to manage our dependencies.
|
||||
2. Navigate to the root `/tabler` directory and run `pnpm install` to install our local dependencies listed in `package.json`.
|
||||
3. [Install Ruby](https://www.ruby-lang.org/en/documentation/installation/) - the recommended version is [2.7.6](https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.6.tar.gz).
|
||||
4. [Install Bundler](https://bundler.io) with `gem install bundler` and finally run `bundle install`. It will install all Ruby dependencies, such as [Jekyll and plugins](https://jekyllrb.com).
|
||||
|
||||
**OSX users**:
|
||||
|
||||
```pnpm install```
|
||||
|
||||
and then
|
||||
|
||||
```npm run start```
|
||||
1. NPM ```pnpm install```
|
||||
2. install Ruby (2.5.* recommended)
|
||||
```brew install ruby @2.5```
|
||||
3. install bundler
|
||||
```gem install bundler```
|
||||
4. install
|
||||
```bundle install```
|
||||
- if bundler get any errors try
|
||||
```
|
||||
sudo rm -rf /Library/Developer/CommandLineTools
|
||||
sudo xcode-select --install
|
||||
```
|
||||
5. Run NPM
|
||||
```npm run start```
|
||||
|
||||
|
||||
**Windows users**:
|
||||
|
||||
[Install Git](https://git-scm.com/download/win) in `C:\Program Files\git\bin` directory and run `npm config set script-shell "C:\\Program Files\\git\\bin\\bash.exe"` to change the default shell.
|
||||
1. [Install Git](https://git-scm.com/download/win) in `C:\Program Files\git\bin` directory and run `npm config set script-shell "C:\\Program Files\\git\\bin\\bash.exe"` to change the default shell.
|
||||
2. [Install Ruby+Devkit](https://rubyinstaller.org/downloads/) - the recommended version is [2.7.6](https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.6-1/rubyinstaller-devkit-2.7.6-1-x64.exe).
|
||||
3. [Read guide](https://jekyllrb.com/docs/installation/windows/) to get Jekyll up and running without problems.
|
||||
|
||||
Once you complete the setup, you'll be able to run the various commands provided from the command line.
|
||||
|
||||
@@ -112,8 +107,10 @@ Once you complete the setup, you'll be able to run the various commands provided
|
||||
|
||||
You need to have `pnpm` and `bundler` installed.
|
||||
|
||||
1. From the root `/tabler` directory, run installation in the command line: `pnpm install`
|
||||
2. Then execute `pnpm run start` to start up the application stack.
|
||||
1. From the root `/tabler` directory, run installation in the command line:
|
||||
- `pnpm install`
|
||||
- `bundler install`
|
||||
2. Then execute `pnpm run start-plugins` to start up the application stack.
|
||||
3. Open [http://localhost:3000](http://localhost:3000) in your browser, and voilà.
|
||||
4. Any change in the `/src` directory will build the application and refresh the page.
|
||||
|
||||
@@ -131,9 +128,7 @@ npm install --save @tabler/core
|
||||
|
||||
## Running with Docker
|
||||
|
||||
**Plain Docker**
|
||||
|
||||
If you don't want to install node/npm and the dependencies on your local environment, you can use the provided Dockerfile to build a docker image.
|
||||
If you don't want to install node/npm/ruby and the dependencies on your local environment, you can use the provided Dockerfile to build a docker image.
|
||||
This Dockerfile is provided as an example to spin-up a container running Tabler.
|
||||
|
||||
Example of how to use this image:
|
||||
@@ -150,9 +145,6 @@ docker run -p 3000:3000 -p 3001:3001 -v $(pwd)/src:/app/src -v $(pwd)/_config.ym
|
||||
|
||||
Now open your browser to [http://localhost:3000](http://localhost:3000). Edit anything in the `src/` folder and watch your browser refresh the page after it has been rebuilt.
|
||||
|
||||
**Docker Compose**
|
||||
|
||||
You can also use the docker compose config from this repo. Use `docker compose build && docker compose up` or `docker compose up --build` to build and start the container. Edit anything in the `src/` folder the same way as with plain docker and access the same URLs and ports in your browser.
|
||||
|
||||
### CDN support
|
||||
|
||||
@@ -201,6 +193,12 @@ Thank you to all our backers! 🙏 [Become a backer](https://opencollective.com/
|
||||
|
||||
<a href="https://opencollective.com/tabler#backers" target="_blank"><img src="https://opencollective.com/tabler/tiers/backer.svg?width=890&button=false" /></a>
|
||||
|
||||
## ❤️ Thanks
|
||||
|
||||
<a href="https://www.chromatic.com/"><img src="https://user-images.githubusercontent.com/321738/84662277-e3db4f80-af1b-11ea-88f5-91d67a5e59f6.png" width="153" height="30" alt="Chromatic" /></a>
|
||||
|
||||
Thanks to [Chromatic](https://www.chromatic.com/) for providing the visual testing platform that helps us review UI changes and catch visual regressions.
|
||||
|
||||
## License
|
||||
|
||||
See the [LICENSE](https://github.com/tabler/tabler/blob/master/LICENSE) file.
|
||||
|
||||
@@ -11,6 +11,6 @@ We take security very seriously and ask that you follow the following process.
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
If you think you may have found a security bug, We ask that you privately send the details to support@tabler.io.
|
||||
If you think you may have found a security bug we ask that you privately send the details to support@tabler.io.
|
||||
Please make sure to use a descriptive title in the email.
|
||||
|
||||
|
||||
233
_config.yml
Normal file
233
_config.yml
Normal file
@@ -0,0 +1,233 @@
|
||||
source: src/pages
|
||||
destination: tmp
|
||||
|
||||
keep_files:
|
||||
- css
|
||||
- js
|
||||
- img
|
||||
- dist
|
||||
- static
|
||||
- playground.html
|
||||
|
||||
use-iconfont: false
|
||||
rtl: false
|
||||
|
||||
title: Tabler
|
||||
description: Premium and Open Source dashboard template with responsive and high quality UI.
|
||||
theme-color: "#0054a6"
|
||||
|
||||
email: support@tabler.io
|
||||
homepage: https://tabler.io
|
||||
github-url: https://github.com/tabler/tabler
|
||||
github-sponsors-url: https://github.com/sponsors/codecalm
|
||||
changelog-url: https://github.com/tabler/tabler/releases
|
||||
sponsor-url: https://github.com/sponsors/codecalm
|
||||
preview-url: https://tabler.io/demo
|
||||
docs-url: https://tabler.io/docs
|
||||
|
||||
mapbox-key: pk.eyJ1IjoiY29kZWNhbG0iLCJhIjoiSzRiOVJvQSJ9.BUVkTT6IYs83xSUs4H7bjQ
|
||||
google-maps-key: AIzaSyAr5mRB4U1KRkVznIrDWEvZjroYcD202DI
|
||||
google-maps-dev-key: AIzaSyCL-BY8-sq12m0S9H-S_yMqDmcun3A9znw
|
||||
npm-package: "@tabler/core"
|
||||
|
||||
random-date-from: "2018-01-01"
|
||||
random-date-to: "2022-01-01"
|
||||
|
||||
debug: false
|
||||
|
||||
layout-dark: false
|
||||
|
||||
plugins:
|
||||
- jekyll-random
|
||||
- jekyll-tidy
|
||||
- jekyll-timeago
|
||||
- jekyll-redirect-from
|
||||
|
||||
tabler-css-plugins:
|
||||
- tabler-flags
|
||||
- tabler-payments
|
||||
- tabler-vendors
|
||||
|
||||
exclude:
|
||||
- .jekyll-cache
|
||||
- redirects.json
|
||||
|
||||
markdown: kramdown
|
||||
kramdown:
|
||||
input: GFM
|
||||
syntax_highlighter: rouge
|
||||
|
||||
jekyll_tidy:
|
||||
compress_html: false
|
||||
ignore_env: development
|
||||
|
||||
defaults:
|
||||
- scope:
|
||||
type: "pages"
|
||||
path: "*.md"
|
||||
values:
|
||||
layout: markdown
|
||||
- scope:
|
||||
type: "pages"
|
||||
values:
|
||||
layout: default
|
||||
|
||||
colors:
|
||||
blue:
|
||||
class: blue
|
||||
hex: '#0054a6'
|
||||
title: Blue
|
||||
azure:
|
||||
class: azure
|
||||
hex: '#45aaf2'
|
||||
title: Azure
|
||||
indigo:
|
||||
class: indigo
|
||||
hex: '#6574cd'
|
||||
title: Indigo
|
||||
purple:
|
||||
class: purple
|
||||
hex: '#a55eea'
|
||||
title: Purple
|
||||
pink:
|
||||
class: pink
|
||||
hex: '#f66d9b'
|
||||
title: Pink
|
||||
red:
|
||||
class: red
|
||||
hex: '#fa4654'
|
||||
title: Red
|
||||
orange:
|
||||
class: orange
|
||||
hex: '#fd9644'
|
||||
title: Orange
|
||||
yellow:
|
||||
class: yellow
|
||||
hex: '#f1c40f'
|
||||
title: Yellow
|
||||
lime:
|
||||
class: lime
|
||||
hex: '#7bd235'
|
||||
title: Lime
|
||||
green:
|
||||
class: green
|
||||
hex: '#5eba00'
|
||||
title: Green
|
||||
teal:
|
||||
class: teal
|
||||
hex: '#2bcbba'
|
||||
title: Teal
|
||||
cyan:
|
||||
class: cyan
|
||||
hex: '#17a2b8'
|
||||
title: Cyan
|
||||
|
||||
colors-extra:
|
||||
white:
|
||||
hex: '#ffffff'
|
||||
title: White
|
||||
dark:
|
||||
hex: '#303645'
|
||||
title: Dark
|
||||
gray:
|
||||
hex: '#868e96'
|
||||
title: Gray
|
||||
|
||||
variants:
|
||||
- name: success
|
||||
icon: check
|
||||
- name: info
|
||||
icon: info-circle
|
||||
- name: warning
|
||||
icon: alert-triangle
|
||||
- name: danger
|
||||
icon: alert-circle
|
||||
|
||||
theme-colors:
|
||||
primary:
|
||||
class: primary
|
||||
title: Primary
|
||||
secondary:
|
||||
class: secondary
|
||||
title: Secondary
|
||||
success:
|
||||
class: success
|
||||
title: Success
|
||||
warning:
|
||||
class: warning
|
||||
title: Warning
|
||||
danger:
|
||||
class: danger
|
||||
title: Danger
|
||||
info:
|
||||
class: info
|
||||
title: Info
|
||||
dark:
|
||||
class: dark
|
||||
title: Dark
|
||||
light:
|
||||
class: light
|
||||
title: Light
|
||||
|
||||
button-states:
|
||||
- class:
|
||||
title: Normal
|
||||
- class: active
|
||||
title: Active state
|
||||
- class: disabled
|
||||
title: Disabled
|
||||
|
||||
socials:
|
||||
facebook:
|
||||
icon: brand-facebook
|
||||
title: Facebook
|
||||
twitter:
|
||||
icon: brand-twitter
|
||||
title: Twitter
|
||||
google:
|
||||
icon: brand-google
|
||||
title: Google
|
||||
youtube:
|
||||
icon: brand-youtube
|
||||
title: Youtube
|
||||
vimeo:
|
||||
icon: brand-vimeo
|
||||
title: Vimeo
|
||||
dribbble:
|
||||
icon: brand-dribbble
|
||||
title: Dribbble
|
||||
github:
|
||||
icon: brand-github
|
||||
title: Github
|
||||
instagram:
|
||||
icon: brand-instagram
|
||||
title: Instagram
|
||||
pinterest:
|
||||
icon: brand-pinterest
|
||||
title: Pinterest
|
||||
vk:
|
||||
icon: brand-vk
|
||||
title: VK
|
||||
rss:
|
||||
icon: rss
|
||||
title: RSS
|
||||
flickr:
|
||||
icon: brand-flickr
|
||||
title: Flickr
|
||||
bitbucket:
|
||||
icon: brand-bitbucket
|
||||
title: Bitbucket
|
||||
tabler:
|
||||
icon: brand-tabler
|
||||
title: Tabler
|
||||
|
||||
months-short: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
|
||||
months-long: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
|
||||
|
||||
icons:
|
||||
link: https://tabler-icons.io
|
||||
|
||||
emails:
|
||||
price: "$29"
|
||||
count: 54
|
||||
buy_link: https://tabler.io/buy-emails
|
||||
4
_config_prod.yml
Normal file
4
_config_prod.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
exclude:
|
||||
- redirects.json
|
||||
- playground.html
|
||||
- playground-*.html
|
||||
58
build/download-images.js
Normal file
58
build/download-images.js
Normal file
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict'
|
||||
|
||||
const YAML = require('yaml')
|
||||
const fs = require('node:fs')
|
||||
const path = require('node:path')
|
||||
const request = require('request')
|
||||
const filePath = path.join(__dirname, '../src/pages/_data/photos.yml')
|
||||
|
||||
const photos = YAML.parse(fs.readFileSync(filePath, 'utf8'))
|
||||
|
||||
const urlTitle = (str) => {
|
||||
str = str
|
||||
.toLowerCase()
|
||||
.replaceAll('&', 'and')
|
||||
.replace(/[^[a-z0-9-]/g, '-')
|
||||
.replace(/-+/g, '-')
|
||||
|
||||
return str
|
||||
}
|
||||
|
||||
const download = function(uri, filename, callback, error) {
|
||||
request.head(uri, function(err, res, body) {
|
||||
request(uri).pipe(fs.createWriteStream(filename))
|
||||
.on('close', callback)
|
||||
.on('error', error)
|
||||
})
|
||||
}
|
||||
|
||||
async function downloadPhotos() {
|
||||
for (const key in photos) {
|
||||
const photo = photos[key]
|
||||
|
||||
let filename, i = 1;
|
||||
|
||||
do {
|
||||
filename = `${urlTitle(photo['title'])}${i > 1 ? `-${i}` : ''}.jpg`
|
||||
i++
|
||||
} while (fs.existsSync(path.join(__dirname, `../src/static/photos/${filename}`)))
|
||||
|
||||
await new Promise((resolve, reject) => {
|
||||
download(photo['path'], path.join(__dirname, `../src/static/photos/${filename}`), function(){
|
||||
resolve()
|
||||
}, function() {
|
||||
reject()
|
||||
});
|
||||
})
|
||||
|
||||
photos[key]['file'] = filename
|
||||
photos[key]['horizontal'] = photo['width'] > photo['height']
|
||||
}
|
||||
|
||||
fs.writeFileSync(filePath, YAML.stringify(photos))
|
||||
}
|
||||
|
||||
downloadPhotos();
|
||||
|
||||
129
demo/2-step-verification-code.html
Normal file
129
demo/2-step-verification-code.html
Normal file
@@ -0,0 +1,129 @@
|
||||
<!doctype html>
|
||||
<!--
|
||||
* Tabler - Premium and Open Source dashboard template with responsive and high quality UI.
|
||||
* @version 1.0.0-beta20
|
||||
* @link https://tabler.io
|
||||
* Copyright 2018-2023 The Tabler Authors
|
||||
* Copyright 2018-2023 codecalm.net Paweł Kuna
|
||||
* Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
|
||||
-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
|
||||
<title>2-Step Verification - Tabler - Premium and Open Source dashboard template with responsive and high quality UI.</title>
|
||||
<!-- CSS files -->
|
||||
<link href="./dist/css/tabler.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-flags.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-payments.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-vendors.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/demo.min.css?1692870487" rel="stylesheet"/>
|
||||
<style>
|
||||
@import url('https://rsms.me/inter/inter.css');
|
||||
:root {
|
||||
--tblr-font-sans-serif: 'Inter Var', -apple-system, BlinkMacSystemFont, San Francisco, Segoe UI, Roboto, Helvetica Neue, sans-serif;
|
||||
}
|
||||
body {
|
||||
font-feature-settings: "cv03", "cv04", "cv11";
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body class=" d-flex flex-column">
|
||||
<script src="./dist/js/demo-theme.min.js?1692870487"></script>
|
||||
<div class="page page-center">
|
||||
<div class="container container-tight py-4">
|
||||
<div class="text-center mb-4">
|
||||
<a href="." class="navbar-brand navbar-brand-autodark">
|
||||
<img src="./static/logo.svg" width="110" height="32" alt="Tabler" class="navbar-brand-image">
|
||||
</a>
|
||||
</div>
|
||||
<form
|
||||
class="card card-md"
|
||||
action="./"
|
||||
method="get"
|
||||
autocomplete="off"
|
||||
novalidate
|
||||
>
|
||||
<div class="card-body">
|
||||
<h2 class="card-title card-title-lg text-center mb-4">Authenticate Your Account</h2>
|
||||
<p class="my-4 text-center">Please confirm your account by entering the authorization code sent to <strong>+1 856-672-8552</strong>.</p>
|
||||
<div class="my-5">
|
||||
<div class="row g-4">
|
||||
<div class="col">
|
||||
<div class="row g-2">
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="row g-2">
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" class="form-control form-control-lg text-center py-3" maxlength="1" inputmode="numeric" pattern="[0-9]*" data-code-input />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="my-4">
|
||||
<label class="form-check">
|
||||
<input type="checkbox" class="form-check-input" />
|
||||
Dont't ask for codes again on this device
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-footer">
|
||||
<div class="btn-list flex-nowrap">
|
||||
<a href="./2-step-verification.html" class="btn w-100">
|
||||
Cancel
|
||||
</a>
|
||||
<a href="#" class="btn btn-primary w-100">
|
||||
Verify
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="text-center text-secondary mt-3">
|
||||
It may take a minute to receive your code. Haven't received it? <a href="./">Resend a new code.</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Libs JS -->
|
||||
<!-- Tabler Core -->
|
||||
<script src="./dist/js/tabler.min.js?1692870487" defer></script>
|
||||
<script src="./dist/js/demo.min.js?1692870487" defer></script>
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var inputs = document.querySelectorAll('[data-code-input]');
|
||||
// Attach an event listener to each input element
|
||||
for(let i = 0; i < inputs.length; i++) {
|
||||
inputs[i].addEventListener('input', function(e) {
|
||||
// If the input field has a character, and there is a next input field, focus it
|
||||
if(e.target.value.length === e.target.maxLength && i + 1 < inputs.length) {
|
||||
inputs[i + 1].focus();
|
||||
}
|
||||
});
|
||||
inputs[i].addEventListener('keydown', function(e) {
|
||||
// If the input field is empty and the keyCode for Backspace (8) is detected, and there is a previous input field, focus it
|
||||
if(e.target.value.length === 0 && e.keyCode === 8 && i > 0) {
|
||||
inputs[i - 1].focus();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
331
demo/2-step-verification.html
Normal file
331
demo/2-step-verification.html
Normal file
@@ -0,0 +1,331 @@
|
||||
<!doctype html>
|
||||
<!--
|
||||
* Tabler - Premium and Open Source dashboard template with responsive and high quality UI.
|
||||
* @version 1.0.0-beta20
|
||||
* @link https://tabler.io
|
||||
* Copyright 2018-2023 The Tabler Authors
|
||||
* Copyright 2018-2023 codecalm.net Paweł Kuna
|
||||
* Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
|
||||
-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
|
||||
<title>2-Step Verification - Tabler - Premium and Open Source dashboard template with responsive and high quality UI.</title>
|
||||
<!-- CSS files -->
|
||||
<link href="./dist/css/tabler.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-flags.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-payments.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/tabler-vendors.min.css?1692870487" rel="stylesheet"/>
|
||||
<link href="./dist/css/demo.min.css?1692870487" rel="stylesheet"/>
|
||||
<style>
|
||||
@import url('https://rsms.me/inter/inter.css');
|
||||
:root {
|
||||
--tblr-font-sans-serif: 'Inter Var', -apple-system, BlinkMacSystemFont, San Francisco, Segoe UI, Roboto, Helvetica Neue, sans-serif;
|
||||
}
|
||||
body {
|
||||
font-feature-settings: "cv03", "cv04", "cv11";
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body class=" d-flex flex-column">
|
||||
<script src="./dist/js/demo-theme.min.js?1692870487"></script>
|
||||
<div class="page page-center">
|
||||
<div class="container container-tight py-4">
|
||||
<div class="text-center mb-4">
|
||||
<a href="." class="navbar-brand navbar-brand-autodark">
|
||||
<img src="./static/logo.svg" width="110" height="32" alt="Tabler" class="navbar-brand-image">
|
||||
</a>
|
||||
</div>
|
||||
<form
|
||||
class="card card-md"
|
||||
action="./2-step-verification-code.html"
|
||||
method="get"
|
||||
autocomplete="off"
|
||||
novalidate
|
||||
>
|
||||
<div class="card-body">
|
||||
<h2 class="card-title text-center mb-4">2-Step Verification</h2>
|
||||
<div class="mb-3">
|
||||
<label class="form-label">Country</label>
|
||||
<select class="form-select">
|
||||
<option value="">Andorra</option>
|
||||
<option value="">United Arab Emirates</option>
|
||||
<option value="">Afghanistan</option>
|
||||
<option value="">Antigua</option>
|
||||
<option value="">Anguilla</option>
|
||||
<option value="">Armenia</option>
|
||||
<option value="">Angolan</option>
|
||||
<option value="">Antarctica</option>
|
||||
<option value="">Argentina</option>
|
||||
<option value="">American Samoa</option>
|
||||
<option value="">Austria</option>
|
||||
<option value="">Australia</option>
|
||||
<option value="">Aruba</option>
|
||||
<option value="">Aslan Islands</option>
|
||||
<option value="">Azerbaijan</option>
|
||||
<option value="">Bosnian</option>
|
||||
<option value="">Barbados</option>
|
||||
<option value="">Belgium</option>
|
||||
<option value="">Burkina Faso</option>
|
||||
<option value="">Bulgaria</option>
|
||||
<option value="">Bahrain</option>
|
||||
<option value="">Burundi</option>
|
||||
<option value="">Benin</option>
|
||||
<option value="">Saint-Barthélemy</option>
|
||||
<option value="">Bermuda</option>
|
||||
<option value="">Bruneian</option>
|
||||
<option value="">Bolivia</option>
|
||||
<option value="">Bonaire</option>
|
||||
<option value="">Brazil</option>
|
||||
<option value="">Bahamas</option>
|
||||
<option value="">Bhutan</option>
|
||||
<option value="">Bouvet Island</option>
|
||||
<option value="">Batswana</option>
|
||||
<option value="">Belarus</option>
|
||||
<option value="">Belize</option>
|
||||
<option value="">Canada</option>
|
||||
<option value="">Cocos Island</option>
|
||||
<option value="">Democratic Republic of Congo</option>
|
||||
<option value="">Central African Republic</option>
|
||||
<option value="">Republic of the Congo</option>
|
||||
<option value="">Switzerland</option>
|
||||
<option value="">Ivory Coast</option>
|
||||
<option value="">Cook Island</option>
|
||||
<option value="">Chile</option>
|
||||
<option value="">Cameroon</option>
|
||||
<option value="">China</option>
|
||||
<option value="">Colombia</option>
|
||||
<option value="">Costa Rica</option>
|
||||
<option value="">Cuba</option>
|
||||
<option value="">Cape Verde</option>
|
||||
<option value="">Curacao</option>
|
||||
<option value="">Christmas Island</option>
|
||||
<option value="">Cyprus</option>
|
||||
<option value="">Czech Republic</option>
|
||||
<option value="">Germany</option>
|
||||
<option value="">Djibouti</option>
|
||||
<option value="">Denmark</option>
|
||||
<option value="">Dominica</option>
|
||||
<option value="">Dominican Republic</option>
|
||||
<option value="">Algeria</option>
|
||||
<option value="">Ecuador</option>
|
||||
<option value="">Estonia</option>
|
||||
<option value="">Egypt</option>
|
||||
<option value="">Sahrawi</option>
|
||||
<option value="">Eritrea</option>
|
||||
<option value="">Spain</option>
|
||||
<option value="">Catalonia</option>
|
||||
<option value="">Ethiopia</option>
|
||||
<option value="">European Union</option>
|
||||
<option value="">Finland</option>
|
||||
<option value="">Fiji</option>
|
||||
<option value="">Falkland Islands</option>
|
||||
<option value="">Federate States of Micronesia</option>
|
||||
<option value="">Faroe Islands</option>
|
||||
<option value="">France</option>
|
||||
<option value="">Gabon</option>
|
||||
<option value="">Great Britain</option>
|
||||
<option value="">England</option>
|
||||
<option value="">Nothern Ireland</option>
|
||||
<option value="">Scotland</option>
|
||||
<option value="">Wales</option>
|
||||
<option value="">Grenada</option>
|
||||
<option value="">Georgia</option>
|
||||
<option value="">Guyana</option>
|
||||
<option value="">Guernsey</option>
|
||||
<option value="">Ghana</option>
|
||||
<option value="">Gibraltar</option>
|
||||
<option value="">Greenland</option>
|
||||
<option value="">Gambia</option>
|
||||
<option value="">Guinea</option>
|
||||
<option value="">Guadeloupe</option>
|
||||
<option value="">Equatorial Guinea</option>
|
||||
<option value="">Greece</option>
|
||||
<option value="">South Georgia</option>
|
||||
<option value="">Guatemala</option>
|
||||
<option value="">Guam</option>
|
||||
<option value="">Guinea-Bissau</option>
|
||||
<option value="">Guyana</option>
|
||||
<option value="">Hong Kong</option>
|
||||
<option value="">Heard and McDonald Islands</option>
|
||||
<option value="">Honduras</option>
|
||||
<option value="">Croatia</option>
|
||||
<option value="">Haiti</option>
|
||||
<option value="">Hungary</option>
|
||||
<option value="">Indonesia</option>
|
||||
<option value="">Ireland</option>
|
||||
<option value="">Israel</option>
|
||||
<option value="">Isle of Man</option>
|
||||
<option value="">India</option>
|
||||
<option value="">British Indian Ocean Territory</option>
|
||||
<option value="">Iraq</option>
|
||||
<option value="">Iran</option>
|
||||
<option value="">Iceland</option>
|
||||
<option value="">Italy</option>
|
||||
<option value="">Jersey</option>
|
||||
<option value="">Jamaica</option>
|
||||
<option value="">Jordan</option>
|
||||
<option value="">Japan</option>
|
||||
<option value="">Kenya</option>
|
||||
<option value="">Kyrgyzstan</option>
|
||||
<option value="">Cambodia</option>
|
||||
<option value="">Kiribati</option>
|
||||
<option value="">Comoros</option>
|
||||
<option value="">Saint Kitts and Nevis</option>
|
||||
<option value="">North Korea</option>
|
||||
<option value="">South Korea</option>
|
||||
<option value="">Kuwait</option>
|
||||
<option value="">Cayman Islands</option>
|
||||
<option value="">Kazakhstan</option>
|
||||
<option value="">Laos</option>
|
||||
<option value="">Lebanese</option>
|
||||
<option value="">Saint Lucia</option>
|
||||
<option value="">Liechtenstein</option>
|
||||
<option value="">Sri Lanka</option>
|
||||
<option value="">Liberia</option>
|
||||
<option value="">Lesotho</option>
|
||||
<option value="">Lithuania</option>
|
||||
<option value="">Luxembourg</option>
|
||||
<option value="">Latvia</option>
|
||||
<option value="">Libya</option>
|
||||
<option value="">Morocco</option>
|
||||
<option value="">Monaco</option>
|
||||
<option value="">Moldova</option>
|
||||
<option value="">Montenegro</option>
|
||||
<option value="">Saint Martin</option>
|
||||
<option value="">Madagascar</option>
|
||||
<option value="">Marshall Islands</option>
|
||||
<option value="">Macedonia</option>
|
||||
<option value="">Mali</option>
|
||||
<option value="">Myanmar</option>
|
||||
<option value="">Mongolia</option>
|
||||
<option value="">Macao</option>
|
||||
<option value="">Nothern Mariana Islands</option>
|
||||
<option value="">Martinique</option>
|
||||
<option value="">Mauritania</option>
|
||||
<option value="">Montserrat</option>
|
||||
<option value="">Malta</option>
|
||||
<option value="">Mauritius</option>
|
||||
<option value="">Maldives</option>
|
||||
<option value="">Malawi</option>
|
||||
<option value="">Mexico</option>
|
||||
<option value="">Malaysia</option>
|
||||
<option value="">Mozambique</option>
|
||||
<option value="">Namibia</option>
|
||||
<option value="">New Caledonia</option>
|
||||
<option value="">Niger</option>
|
||||
<option value="">Norfolk Island</option>
|
||||
<option value="">Nigeria</option>
|
||||
<option value="">Nicaragua</option>
|
||||
<option value="">Norway</option>
|
||||
<option value="">Nepal</option>
|
||||
<option value="">Nauruan</option>
|
||||
<option value="">Niger</option>
|
||||
<option value="">New Zealand</option>
|
||||
<option value="">Oman</option>
|
||||
<option value="">Panama</option>
|
||||
<option value="">Peru</option>
|
||||
<option value="">French Polynesia</option>
|
||||
<option value="">Papua New Guinea</option>
|
||||
<option value="">Philippines</option>
|
||||
<option value="">Pakistan</option>
|
||||
<option value="">Poland</option>
|
||||
<option value="">Saint Pierre</option>
|
||||
<option value="">Pitcairn Islands</option>
|
||||
<option value="">Puerto Rico</option>
|
||||
<option value="">Palestine</option>
|
||||
<option value="">Portugal</option>
|
||||
<option value="">Palau</option>
|
||||
<option value="">Paraguay</option>
|
||||
<option value="">Qatar</option>
|
||||
<option value="">Reunion Island</option>
|
||||
<option value="">Romania</option>
|
||||
<option value="">Serbia</option>
|
||||
<option value="">Russia</option>
|
||||
<option value="">Rwanda</option>
|
||||
<option value="">Saudi Arabia</option>
|
||||
<option value="">Solomon Islands</option>
|
||||
<option value="">Seychelles</option>
|
||||
<option value="">Sudan</option>
|
||||
<option value="">Sweden</option>
|
||||
<option value="">Singapore</option>
|
||||
<option value="">Saint Helena</option>
|
||||
<option value="">Slovenia</option>
|
||||
<option value="">Svalbard Island</option>
|
||||
<option value="">Slovakia</option>
|
||||
<option value="">Sierra Leone</option>
|
||||
<option value="">San Marino</option>
|
||||
<option value="">Senegal</option>
|
||||
<option value="">Somalia</option>
|
||||
<option value="">Suriname</option>
|
||||
<option value="">South Sudan</option>
|
||||
<option value="">Sao Tome</option>
|
||||
<option value="">El Salvador</option>
|
||||
<option value="">Sint Maarten</option>
|
||||
<option value="">Syria</option>
|
||||
<option value="">Swaziland</option>
|
||||
<option value="">Turks and Caicos</option>
|
||||
<option value="">Chad</option>
|
||||
<option value="">French Southern and Antarctic Lands</option>
|
||||
<option value="">Togo</option>
|
||||
<option value="">Thailand</option>
|
||||
<option value="">Tajikistan</option>
|
||||
<option value="">Tokelau</option>
|
||||
<option value="">Timor Leste</option>
|
||||
<option value="">Turkmenistan</option>
|
||||
<option value="">Tunisia</option>
|
||||
<option value="">Tonga</option>
|
||||
<option value="">Turkey</option>
|
||||
<option value="">Trinidad and Tobago</option>
|
||||
<option value="">Tuvalu</option>
|
||||
<option value="">Tanzania</option>
|
||||
<option value="">Ukraine</option>
|
||||
<option value="">Uganda</option>
|
||||
<option value="">United States Minor Islands</option>
|
||||
<option value="">United Nations</option>
|
||||
<option value="">United States of America</option>
|
||||
<option value="">Uruguay</option>
|
||||
<option value="">Uzbekistan</option>
|
||||
<option value="">Vatican City</option>
|
||||
<option value="">Saint Vincent</option>
|
||||
<option value="">Venezuela</option>
|
||||
<option value="">British Virgin Islands</option>
|
||||
<option value="">Virgiin Islands</option>
|
||||
<option value="">Vietnam</option>
|
||||
<option value="">Vanuatu</option>
|
||||
<option value="">Wallis and Futuna</option>
|
||||
<option value="">Samoa</option>
|
||||
<option value="">Yemen</option>
|
||||
<option value="">South Africa</option>
|
||||
<option value="">Zambia</option>
|
||||
<option value="">Zimbabwe</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="mb-4">
|
||||
<label class="form-label">Your Phone Number</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">+1</span>
|
||||
<input type="text" class="form-control" placeholder="Enter phone number" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-secondary">
|
||||
Security is critical in Tabler. to help keep your account safe, we'll
|
||||
text you a verification code when you sign in on a new device
|
||||
</div>
|
||||
<div class="form-footer">
|
||||
<button type="submit" class="btn btn-primary w-100">
|
||||
Send code
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Libs JS -->
|
||||
<!-- Tabler Core -->
|
||||
<script src="./dist/js/tabler.min.js?1692870487" defer></script>
|
||||
<script src="./dist/js/demo.min.js?1692870487" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user