1
0
mirror of https://github.com/tabler/tabler.git synced 2025-12-21 17:34:25 +04:00

Move additional libraries to Tabler core (#2385)

This commit is contained in:
Paweł Kuna
2025-05-19 20:35:01 +02:00
committed by GitHub
parent 9007e73cb6
commit ad54f61429
22 changed files with 305 additions and 271 deletions

33
core/.build/copy-libs.mjs Normal file
View File

@@ -0,0 +1,33 @@
#!/usr/bin/env node
'use strict'
import { existsSync, mkdirSync, lstatSync } from 'fs'
import { emptyDirSync, copySync } from 'fs-extra/esm'
import libs from '../libs.json' with { type: 'json' }
import { fileURLToPath } from 'url'
import { join, dirname } from 'node:path';
const __dirname = dirname(fileURLToPath(import.meta.url))
emptyDirSync(join(__dirname, '..', 'dist/libs'))
for(const name in libs) {
const { npm } = libs[name]
if (npm) {
const from = join(__dirname, '..', `node_modules/${npm}`)
const to = join(__dirname, '..', `dist/libs/${npm}`)
// create dir in dist/libs
if (!existsSync(to)) {
mkdirSync(to, { recursive: true })
}
copySync(from, to, {
dereference: true,
})
console.log(`Successfully copied ${npm}`)
}
}

164
core/libs.json Normal file
View File

@@ -0,0 +1,164 @@
{
"imask": {
"npm": "imask",
"js": [
"dist/imask.min.js"
]
},
"autosize": {
"npm": "autosize",
"js": [
"dist/autosize.min.js"
]
},
"apexcharts": {
"npm": "apexcharts",
"js": [
"dist/apexcharts.min.js"
]
},
"nouislider": {
"npm": "nouislider",
"js": [
"dist/nouislider.min.js"
],
"css": [
"dist/nouislider.min.css"
]
},
"countup": {
"npm": "countup.js",
"js": [
"dist/countUp.umd.js"
]
},
"lists": {
"npm": "list.js",
"js": [
"dist/list.min.js"
]
},
"masonry": {
"js": [
"https://cdnjs.cloudflare.com/ajax/libs/masonry/4.2.2/masonry.pkgd.min.js"
]
},
"mapbox": {
"js": [
"https://api.mapbox.com/mapbox-gl-js/v1.8.0/mapbox-gl.js"
],
"css": [
"https://api.mapbox.com/mapbox-gl-js/v1.8.0/mapbox-gl.css"
]
},
"google-maps": {
"js": [
"https://maps.googleapis.com/maps/api/js?key=GOOGLE_MAPS_KEY"
]
},
"litepicker": {
"npm": "litepicker",
"js": [
"dist/litepicker.js"
]
},
"tom-select": {
"npm": "tom-select",
"js": [
"dist/js/tom-select.base.min.js"
],
"css": [
"dist/css/tom-select.bootstrap5.min.css"
]
},
"jsvectormap": {
"npm": "jsvectormap",
"js": [
"dist/jsvectormap.min.js",
"dist/maps/world.js",
"dist/maps/world-merc.js"
],
"css": [
"dist/jsvectormap.css"
]
},
"fslightbox": {
"npm": "fslightbox",
"js": [
"index.js"
]
},
"hugerte": {
"npm": "hugerte",
"js": [
"hugerte.min.js"
]
},
"plyr": {
"npm": "plyr",
"js": [
"dist/plyr.min.js"
],
"css": [
"dist/plyr.css"
]
},
"dropzone": {
"npm": "dropzone",
"js": [
"dist/dropzone-min.js"
],
"css": [
"dist/dropzone.css"
]
},
"star-rating.js": {
"npm": "star-rating.js",
"js": [
"dist/star-rating.min.js"
],
"css": [
"dist/star-rating.min.css"
]
},
"coloris.js": {
"npm": "@melloware/coloris",
"js": [
"dist/umd/coloris.min.js"
],
"css": [
"dist/coloris.min.css"
]
},
"typed.js": {
"npm": "typed.js",
"js": [
"dist/typed.umd.js"
]
},
"signature_pad": {
"npm": "signature_pad",
"js": [
"dist/signature_pad.umd.min.js"
]
},
"clipboard": {
"npm": "clipboard",
"js": [
"dist/clipboard.min.js"
]
},
"fullcalendar": {
"npm": "fullcalendar",
"js": [
"index.global.min.js"
]
},
"turbo": {
"npm": "@hotwired/turbo",
"js": [
"dist/turbo.es2017-umd.js"
],
"head": true
}
}

View File

@@ -4,7 +4,7 @@
"description": "Premium and Open Source dashboard template with responsive and high quality UI.",
"homepage": "https://tabler.io",
"scripts": {
"dev": "pnpm run watch",
"dev": "pnpm run clean && pnpm run copy && pnpm run watch",
"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",
@@ -26,8 +26,9 @@
"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": "pnpm run copy-img && pnpm run copy-libs",
"copy-img": "shx mkdir -p dist/img && shx cp -rf img/* dist/img",
"copy-libs": "node .build/copy-libs.mjs",
"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\"",
@@ -66,7 +67,8 @@
"dist/**/*",
"js/**/*.{js,map}",
"img/**/*.{svg}",
"scss/**/*.scss"
"scss/**/*.scss",
"libs.json"
],
"style": "dist/css/tabler.css",
"sass": "scss/tabler.scss",
@@ -146,6 +148,30 @@
"@popperjs/core": "^2.11.8",
"bootstrap": "5.3.6"
},
"devDependencies": {
"@hotwired/turbo": "^8.0.13",
"@melloware/coloris": "^0.24.2",
"apexcharts": "3.54.1",
"autosize": "^6.0.1",
"choices.js": "^11.1.0",
"clipboard": "^2.0.11",
"countup.js": "^2.8.2",
"dropzone": "^6.0.0-beta.2",
"flatpickr": "^4.6.13",
"fslightbox": "^3.6.0",
"fullcalendar": "^6.1.17",
"hugerte": "^1.0.9",
"imask": "^7.6.1",
"jsvectormap": "^1.6.0",
"list.js": "^2.3.1",
"litepicker": "^2.0.12",
"nouislider": "^15.8.1",
"plyr": "^3.7.8",
"signature_pad": "^5.0.7",
"star-rating.js": "^4.3.1",
"tom-select": "^2.4.3",
"typed.js": "^2.1.0"
},
"directories": {
"doc": "docs"
}