adminator-admin-dashboard 2.7.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adminator-admin-dashboard",
3
- "version": "2.7.0",
3
+ "version": "2.7.1",
4
4
  "private": false,
5
5
  "description": "Modern jQuery-free Bootstrap 5 Admin Dashboard Template with Dark Mode",
6
6
  "main": "dist/index.html",
@@ -38,7 +38,7 @@
38
38
  "src/**/*",
39
39
  "webpack.config.js",
40
40
  "CLAUDE.md",
41
- "RELEASE_NOTES.md",
41
+ "CHANGELOG.md",
42
42
  "README.md"
43
43
  ],
44
44
  "engines": {
@@ -52,10 +52,14 @@
52
52
  "release:minified": "npm run clean && NODE_ENV=production MINIFY=true cross-env webpack",
53
53
  "release:unminified": "npm run clean && NODE_ENV=production MINIFY=false cross-env webpack",
54
54
  "preview": "cross-env webpack server",
55
+ "type-check": "tsc --noEmit",
56
+ "type-check:watch": "tsc --noEmit --watch",
57
+ "build:types": "tsc --emitDeclarationOnly --outDir types",
55
58
  "lint:js": "eslint ./src ./webpack ./*.js -f table --ext .js --ext .jsx",
59
+ "lint:ts": "eslint ./src ./webpack ./*.ts -f table --ext .ts --ext .tsx",
56
60
  "lint:scss": "stylelint ./src/**/*.scss",
57
- "lint": "npm run lint:js && npm run lint:scss",
58
- "prepublishOnly": "npm run build",
61
+ "lint": "npm run lint:js && npm run lint:ts && npm run lint:scss",
62
+ "prepublishOnly": "npm run type-check && npm run build",
59
63
  "postpublish": "echo 'Package published successfully! View at: https://www.npmjs.com/package/adminator-admin-dashboard'"
60
64
  },
61
65
  "devDependencies": {
@@ -65,6 +69,11 @@
65
69
  "@babel/preset-env": "^7.27.2",
66
70
  "@babel/runtime": "^7.27.6",
67
71
  "@eslint/js": "^9.29.0",
72
+ "@types/lodash": "^4.17.20",
73
+ "@types/masonry-layout": "^4.2.8",
74
+ "@types/node": "^24.0.12",
75
+ "@typescript-eslint/eslint-plugin": "^8.36.0",
76
+ "@typescript-eslint/parser": "^8.36.0",
68
77
  "babel-loader": "^10.0.0",
69
78
  "case-sensitive-paths-webpack-plugin": "^2.4.0",
70
79
  "copy-webpack-plugin": "^13.0.0",
@@ -85,6 +94,8 @@
85
94
  "style-loader": "^4.0.0",
86
95
  "stylelint": "^16.21.0",
87
96
  "stylelint-config-standard": "^38.0.0",
97
+ "ts-loader": "^9.5.2",
98
+ "typescript": "^5.8.3",
88
99
  "webpack": "^5.99.9",
89
100
  "webpack-cli": "^6.0.1",
90
101
  "webpack-dashboard": "^3.3.8",
@@ -5,11 +5,11 @@
5
5
 
6
6
  // Note: Bootstrap 5 CSS is still available via SCSS imports
7
7
  // Bootstrap JS components removed to eliminate jQuery dependency
8
- import DOM from './utils/dom';
8
+ import { DOM } from './utils/dom';
9
9
  import DateUtils from './utils/date';
10
- import Theme from './utils/theme';
11
- import Sidebar from './components/Sidebar';
12
- import ChartComponent from './components/Chart';
10
+ import { ThemeManager } from './utils/theme';
11
+ import { Sidebar } from './components/Sidebar';
12
+ import { ChartComponent } from './components/Chart';
13
13
 
14
14
  // Import styles
15
15
  import '../styles/index.scss';
@@ -31,6 +31,7 @@ class AdminatorApp {
31
31
  constructor() {
32
32
  this.components = new Map();
33
33
  this.isInitialized = false;
34
+ this.themeManager = ThemeManager;
34
35
 
35
36
  // Initialize when DOM is ready
36
37
  DOM.ready(() => {
@@ -212,7 +213,7 @@ class AdminatorApp {
212
213
  // Initializing theme system
213
214
 
214
215
  // Initialize theme system first
215
- Theme.init();
216
+ this.themeManager.init();
216
217
 
217
218
  // Inject theme toggle if missing - with retry mechanism
218
219
  setTimeout(() => {
@@ -249,11 +250,11 @@ class AdminatorApp {
249
250
  const toggle = DOM.select('#theme-toggle');
250
251
  if (toggle) {
251
252
  // Set initial state
252
- const currentTheme = Theme.current();
253
+ const currentTheme = this.themeManager.current();
253
254
  toggle.checked = currentTheme === 'dark';
254
255
 
255
256
  DOM.on(toggle, 'change', () => {
256
- Theme.apply(toggle.checked ? 'dark' : 'light');
257
+ this.themeManager.apply(toggle.checked ? 'dark' : 'light');
257
258
  });
258
259
 
259
260
  // Listen for theme changes from other sources