@memobit/libs 3.8.3 → 3.10.0

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.
Files changed (33) hide show
  1. package/README.md +96 -95
  2. package/dist/components/Confetti/Confetti2.js +26 -25
  3. package/dist/components/ErrorBoundary/ErrorBoundary2.js +9 -8
  4. package/dist/components/Icon/Icon2.js +34 -17
  5. package/dist/components/IconPicker/IconPicker2.js +43 -29
  6. package/dist/components/InputDate/InputDate2.js +16 -15
  7. package/dist/components/InputEmail/InputEmail2.js +22 -21
  8. package/dist/components/InputFile/InputFile2.js +9 -8
  9. package/dist/components/InputNumber/InputNumber2.js +7 -6
  10. package/dist/components/InputPassword/InputPassword2.js +6 -5
  11. package/dist/components/InputSearch/InputSearch2.js +18 -17
  12. package/dist/components/InputText/InputText2.js +6 -5
  13. package/dist/components/InputTextarea/InputTextarea2.js +11 -10
  14. package/dist/components/InputTime/InputTime2.js +35 -34
  15. package/dist/components/InputUrl/InputUrl2.js +20 -19
  16. package/dist/components/QuantitySelector/QuantitySelector2.js +19 -18
  17. package/dist/errors.d.ts +78 -0
  18. package/dist/errors.js +9 -0
  19. package/dist/helpers/ErrorReporting.js +179 -0
  20. package/dist/helpers/Logger.js +31 -0
  21. package/dist/helpers/VersionInfo.js +1 -1
  22. package/dist/index.d.ts +3 -3
  23. package/dist/memobit-icons.json +1 -41
  24. package/dist/styles/base.scss +36 -36
  25. package/dist/styles/effects.scss +72 -72
  26. package/dist/styles/highlight.scss +6 -6
  27. package/dist/styles/scrollbars.scss +30 -30
  28. package/dist/styles/utilities.scss +238 -238
  29. package/dist/styles/utility-classes.scss +93 -93
  30. package/dist/styles/variables.scss +73 -73
  31. package/dist/version.js +2 -2
  32. package/dist/version.json +4 -4
  33. package/package.json +148 -142
@@ -1,73 +1,73 @@
1
- :root {
2
- --radius-sm: 4px;
3
- --radius: 8px;
4
- --radius-full: 9999px;
5
-
6
- --checkbox-size: 18px;
7
- --radio-size: 18px;
8
-
9
- // Optional ambient background overlay, painted as a fixed body::before layer.
10
- // Themes only set this when they want a radial glow behind app content;
11
- // otherwise it stays `none` and the overlay is inert.
12
- --body-background-glow: none;
13
-
14
- --spacing-1: 1px;
15
- --spacing-2: 2px;
16
- --spacing-4: 4px;
17
- --spacing-6: 6px;
18
- --spacing-8: 8px;
19
- --spacing-12: 12px;
20
- --spacing-16: 16px;
21
- --spacing-20: 20px;
22
- --spacing-24: 24px;
23
- --spacing-32: 32px;
24
- --spacing-40: 40px;
25
- --spacing-48: 48px;
26
- --spacing-60: 60px;
27
- --spacing-64: 64px;
28
- --spacing-80: 80px;
29
- --spacing-100: 100px;
30
- --spacing-200: 200px;
31
- --spacing-300: 300px;
32
- --spacing-400: 400px;
33
-
34
- --font-size-xxs: 0.625rem; // ~10px
35
- --font-size-xs: 0.75rem; // ~12px
36
- --font-size-sm: 0.875rem; // ~14px
37
- --font-size-md: 1rem; // ~16px
38
- --font-size-lg: 1.25rem; // ~20px
39
- --font-size-xl: 1.5rem; // ~24px
40
- --font-size-xxl: 2rem; // ~32px
41
- --font-size-xxxl: 3rem; // ~48px
42
-
43
- // Display/title font. Themes only need to set this when they want a second
44
- // font for component titles (Card, Modal, Drawer, EmptyState, DataView).
45
- // Otherwise it inherits the theme's body --font-family automatically.
46
- --font-family-display: var(--font-family, sans-serif);
47
-
48
- --font-family-mono: ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;
49
-
50
- // Font used by form inputs (inherits body by default). Override to
51
- // var(--font-family-mono) if you want a terminal/data feel on inputs.
52
- --form-control-font-family: var(--font-family, sans-serif);
53
-
54
- --font-weight-light: 300;
55
- --font-weight-normal: 400;
56
- --font-weight-medium: 500;
57
- --font-weight-semibold: 600;
58
- --font-weight-bold: 700;
59
-
60
- --line-height-none: 1;
61
- --line-height-tight: 1.2;
62
- --line-height-normal: 1.5;
63
- --line-height-loose: 1.8;
64
-
65
- // animations
66
- --duration-hover: 0.2s;
67
- --duration-fade: 0.3s;
68
- --duration-slide: 0.4s;
69
-
70
- --transition-fast: 150ms ease-in-out;
71
- --transition-moderate: 300ms ease-in-out;
72
- --transition-slow: 500ms ease-in-out;
73
- }
1
+ :root {
2
+ --radius-sm: 4px;
3
+ --radius: 8px;
4
+ --radius-full: 9999px;
5
+
6
+ --checkbox-size: 18px;
7
+ --radio-size: 18px;
8
+
9
+ // Optional ambient background overlay, painted as a fixed body::before layer.
10
+ // Themes only set this when they want a radial glow behind app content;
11
+ // otherwise it stays `none` and the overlay is inert.
12
+ --body-background-glow: none;
13
+
14
+ --spacing-1: 1px;
15
+ --spacing-2: 2px;
16
+ --spacing-4: 4px;
17
+ --spacing-6: 6px;
18
+ --spacing-8: 8px;
19
+ --spacing-12: 12px;
20
+ --spacing-16: 16px;
21
+ --spacing-20: 20px;
22
+ --spacing-24: 24px;
23
+ --spacing-32: 32px;
24
+ --spacing-40: 40px;
25
+ --spacing-48: 48px;
26
+ --spacing-60: 60px;
27
+ --spacing-64: 64px;
28
+ --spacing-80: 80px;
29
+ --spacing-100: 100px;
30
+ --spacing-200: 200px;
31
+ --spacing-300: 300px;
32
+ --spacing-400: 400px;
33
+
34
+ --font-size-xxs: 0.625rem; // ~10px
35
+ --font-size-xs: 0.75rem; // ~12px
36
+ --font-size-sm: 0.875rem; // ~14px
37
+ --font-size-md: 1rem; // ~16px
38
+ --font-size-lg: 1.25rem; // ~20px
39
+ --font-size-xl: 1.5rem; // ~24px
40
+ --font-size-xxl: 2rem; // ~32px
41
+ --font-size-xxxl: 3rem; // ~48px
42
+
43
+ // Display/title font. Themes only need to set this when they want a second
44
+ // font for component titles (Card, Modal, Drawer, EmptyState, DataView).
45
+ // Otherwise it inherits the theme's body --font-family automatically.
46
+ --font-family-display: var(--font-family, sans-serif);
47
+
48
+ --font-family-mono: ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;
49
+
50
+ // Font used by form inputs (inherits body by default). Override to
51
+ // var(--font-family-mono) if you want a terminal/data feel on inputs.
52
+ --form-control-font-family: var(--font-family, sans-serif);
53
+
54
+ --font-weight-light: 300;
55
+ --font-weight-normal: 400;
56
+ --font-weight-medium: 500;
57
+ --font-weight-semibold: 600;
58
+ --font-weight-bold: 700;
59
+
60
+ --line-height-none: 1;
61
+ --line-height-tight: 1.2;
62
+ --line-height-normal: 1.5;
63
+ --line-height-loose: 1.8;
64
+
65
+ // animations
66
+ --duration-hover: 0.2s;
67
+ --duration-fade: 0.3s;
68
+ --duration-slide: 0.4s;
69
+
70
+ --transition-fast: 150ms ease-in-out;
71
+ --transition-moderate: 300ms ease-in-out;
72
+ --transition-slow: 500ms ease-in-out;
73
+ }
package/dist/version.js CHANGED
@@ -1,7 +1,7 @@
1
- var I = "3.8.3", B = 3, L = "5ce5e3d", _ = "2026-10-14T07:35:58.471Z", r = "3";
1
+ var I = "3.10.0", B = 501, L = "a4994d2", _ = "2026-10-14T19:49:58.413Z", a = "501";
2
2
  export {
3
3
  _ as LIB_BUILD_DATE,
4
- r as LIB_BUILD_ID,
4
+ a as LIB_BUILD_ID,
5
5
  B as LIB_BUILD_NUMBER,
6
6
  L as LIB_COMMIT,
7
7
  I as LIB_VERSION
package/dist/version.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "3.8.3",
3
- "buildNumber": 3,
4
- "commit": "5ce5e3d",
5
- "buildDate": "2026-10-14T07:35:58.471Z"
2
+ "version": "3.10.0",
3
+ "buildNumber": 501,
4
+ "commit": "a4994d2",
5
+ "buildDate": "2026-10-14T19:49:58.413Z"
6
6
  }
package/package.json CHANGED
@@ -1,142 +1,148 @@
1
- {
2
- "name": "@memobit/libs",
3
- "version": "3.8.3",
4
- "description": "React component library powering the Memobit apps — 100+ components, helpers and hooks. Icons ship as @memobit/icons and themes as @memobit/themes. TypeScript-first, ESM-only, React 19.",
5
- "keywords": [
6
- "react",
7
- "react-components",
8
- "component-library",
9
- "ui",
10
- "ui-kit",
11
- "design-system",
12
- "typescript",
13
- "hooks",
14
- "memobit"
15
- ],
16
- "author": "Iulian Cristea <iulianx@gmail.com>",
17
- "license": "Apache-2.0",
18
- "homepage": "https://react.memobit.ro/",
19
- "repository": {
20
- "type": "git",
21
- "url": "git+https://github.com/CristeaIulian/memobit-react-library.git"
22
- },
23
- "bugs": {
24
- "url": "https://github.com/CristeaIulian/memobit-react-library/issues"
25
- },
26
- "publishConfig": {
27
- "access": "public"
28
- },
29
- "sideEffects": [
30
- "**/*.css",
31
- "**/*.scss"
32
- ],
33
- "type": "module",
34
- "main": "dist/index.js",
35
- "module": "dist/index.js",
36
- "types": "dist/index.d.ts",
37
- "exports": {
38
- ".": {
39
- "types": "./dist/index.d.ts",
40
- "import": "./dist/index.js"
41
- },
42
- "./dist/index.css": "./dist/index.css",
43
- "./mfa": {
44
- "types": "./dist/mfa.d.ts",
45
- "import": "./dist/mfa.js"
46
- },
47
- "./http": {
48
- "types": "./dist/http.d.ts",
49
- "import": "./dist/http.js"
50
- },
51
- "./router": {
52
- "types": "./dist/router.d.ts",
53
- "import": "./dist/router.js"
54
- },
55
- "./dist/styles/variables.scss": "./dist/styles/variables.scss",
56
- "./dist/styles/base.scss": "./dist/styles/base.scss",
57
- "./dist/styles/effects.scss": "./dist/styles/effects.scss",
58
- "./dist/styles/highlight.scss": "./dist/styles/highlight.scss",
59
- "./dist/styles/scrollbars.scss": "./dist/styles/scrollbars.scss",
60
- "./dist/styles/utilities.scss": "./dist/styles/utilities.scss",
61
- "./dist/styles/utility-classes.scss": "./dist/styles/utility-classes.scss",
62
- "./dist/components/*": "./dist/components/*"
63
- },
64
- "files": [
65
- "dist"
66
- ],
67
- "scripts": {
68
- "build": "vite build && npm pack",
69
- "release": "npm run build && npm publish",
70
- "check:npm-auth": "node scripts/check-npm-auth.mjs",
71
- "ship": "npm run check:npm-auth && npm version patch && npm run release && git push --follow-tags",
72
- "ship:minor": "npm run check:npm-auth && npm version minor && npm run release && git push --follow-tags",
73
- "ship:major": "npm run check:npm-auth && npm version major && npm run release && git push --follow-tags",
74
- "prepublishOnly": "vite build",
75
- "dev": "vite build --watch",
76
- "playground": "vite serve playground --config playground/vite.config.ts",
77
- "lint": "eslint src --ext .ts,.tsx",
78
- "lint:fix": "eslint src --ext .ts,.tsx --fix",
79
- "format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css}\"",
80
- "format:check": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json,css}\""
81
- },
82
- "peerDependencies": {
83
- "@memobit/icons": "^1.0.0",
84
- "@memobit/themes": "^1.0.0",
85
- "react": "19.3.0",
86
- "react-dom": "19.3.0",
87
- "react-router": "8.4.0"
88
- },
89
- "peerDependenciesMeta": {
90
- "react-router": {
91
- "optional": true
92
- }
93
- },
94
- "devDependencies": {
95
- "@eslint/js": "9.39.4",
96
- "@memobit/icons": "file:../memobit-react-icons",
97
- "@memobit/themes": "file:../memobit-react-themes",
98
- "@microsoft/api-extractor": "7.59.2",
99
- "@types/react": "19.3.0",
100
- "@types/react-dom": "19.3.0",
101
- "@vitejs/plugin-react": "6.1.1",
102
- "esbuild": "0.28.2",
103
- "eslint": "9.39.4",
104
- "eslint-config-prettier": "10.1.8",
105
- "eslint-plugin-import-x": "4.17.1",
106
- "eslint-plugin-prettier": "5.5.6",
107
- "eslint-plugin-react": "7.37.5",
108
- "eslint-plugin-simple-import-sort": "14.0.0",
109
- "globals": "17.12.0",
110
- "prettier": "3.9.9",
111
- "qrcode.react": "4.2.0",
112
- "react": "19.3.0",
113
- "react-dom": "19.3.0",
114
- "react-router": "8.4.0",
115
- "sass": "1.105.0",
116
- "terser": "5.51.2",
117
- "typescript": "6.0.3",
118
- "typescript-eslint": "8.70.1",
119
- "vite": "8.3.1",
120
- "vite-plugin-dts": "5.1.1",
121
- "vite-plugin-static-copy": "4.1.1"
122
- },
123
- "overrides": {
124
- "@rushstack/ts-command-line": {
125
- "argparse": "2.0.1"
126
- },
127
- "brace-expansion@1": "1.1.21",
128
- "brace-expansion@5": "5.0.12",
129
- "esbuild": "0.28.2",
130
- "fast-uri@3": "3.1.8",
131
- "immutable": "5.1.9",
132
- "js-yaml": "4.3.2",
133
- "minimatch@10": "10.2.6",
134
- "nanoid@3": "3.3.18",
135
- "picomatch@2": "2.3.2",
136
- "postcss": "8.5.28",
137
- "source-map-js": "1.2.2",
138
- "vite-plugin-static-copy": {
139
- "chokidar": "5.0.0"
140
- }
141
- }
142
- }
1
+ {
2
+ "name": "@memobit/libs",
3
+ "version": "3.10.0",
4
+ "description": "React component library powering the Memobit apps — 100+ components, helpers and hooks. Icons ship as @memobit/icons and themes as @memobit/themes. TypeScript-first, ESM-only, React 19.",
5
+ "keywords": [
6
+ "react",
7
+ "react-components",
8
+ "component-library",
9
+ "ui",
10
+ "ui-kit",
11
+ "design-system",
12
+ "typescript",
13
+ "hooks",
14
+ "memobit"
15
+ ],
16
+ "author": "Iulian Cristea <iulianx@gmail.com>",
17
+ "license": "Apache-2.0",
18
+ "homepage": "https://react.memobit.ro/",
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/CristeaIulian/memobit-react-library.git"
22
+ },
23
+ "bugs": {
24
+ "url": "https://github.com/CristeaIulian/memobit-react-library/issues"
25
+ },
26
+ "publishConfig": {
27
+ "access": "public"
28
+ },
29
+ "sideEffects": [
30
+ "**/*.css",
31
+ "**/*.scss"
32
+ ],
33
+ "type": "module",
34
+ "main": "dist/index.js",
35
+ "module": "dist/index.js",
36
+ "types": "dist/index.d.ts",
37
+ "exports": {
38
+ ".": {
39
+ "types": "./dist/index.d.ts",
40
+ "import": "./dist/index.js"
41
+ },
42
+ "./dist/index.css": "./dist/index.css",
43
+ "./mfa": {
44
+ "types": "./dist/mfa.d.ts",
45
+ "import": "./dist/mfa.js"
46
+ },
47
+ "./http": {
48
+ "types": "./dist/http.d.ts",
49
+ "import": "./dist/http.js"
50
+ },
51
+ "./errors": {
52
+ "types": "./dist/errors.d.ts",
53
+ "import": "./dist/errors.js"
54
+ },
55
+ "./router": {
56
+ "types": "./dist/router.d.ts",
57
+ "import": "./dist/router.js"
58
+ },
59
+ "./dist/styles/variables.scss": "./dist/styles/variables.scss",
60
+ "./dist/styles/base.scss": "./dist/styles/base.scss",
61
+ "./dist/styles/effects.scss": "./dist/styles/effects.scss",
62
+ "./dist/styles/highlight.scss": "./dist/styles/highlight.scss",
63
+ "./dist/styles/scrollbars.scss": "./dist/styles/scrollbars.scss",
64
+ "./dist/styles/utilities.scss": "./dist/styles/utilities.scss",
65
+ "./dist/styles/utility-classes.scss": "./dist/styles/utility-classes.scss",
66
+ "./dist/components/*": "./dist/components/*"
67
+ },
68
+ "files": [
69
+ "dist"
70
+ ],
71
+ "scripts": {
72
+ "build": "vite build && npm pack",
73
+ "release": "npm run build && npm publish",
74
+ "check:npm-auth": "node scripts/check-npm-auth.mjs",
75
+ "ship": "npm run check:npm-auth && npm version patch && npm run release && git push --follow-tags",
76
+ "ship:minor": "npm run check:npm-auth && npm version minor && npm run release && git push --follow-tags",
77
+ "ship:major": "npm run check:npm-auth && npm version major && npm run release && git push --follow-tags",
78
+ "prepublishOnly": "vite build",
79
+ "dev": "vite build --watch",
80
+ "playground": "vite serve playground --config playground/vite.config.ts",
81
+ "lint": "eslint .",
82
+ "lint:fix": "eslint . --fix",
83
+ "format": "prettier --write \"**/*.{ts,tsx,js,jsx,mjs,cjs,css,scss}\"",
84
+ "format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,mjs,cjs,css,scss}\""
85
+ },
86
+ "peerDependencies": {
87
+ "@memobit/icons": "^1.5.0",
88
+ "@memobit/themes": "^1.0.0",
89
+ "react": "19.3.0",
90
+ "react-dom": "19.3.0",
91
+ "react-router": "8.4.0"
92
+ },
93
+ "peerDependenciesMeta": {
94
+ "react-router": {
95
+ "optional": true
96
+ }
97
+ },
98
+ "devDependencies": {
99
+ "@eslint/js": "9.39.4",
100
+ "@memobit/icons": "file:../memobit-react-icons",
101
+ "@memobit/themes": "file:../memobit-react-themes",
102
+ "@microsoft/api-extractor": "7.59.2",
103
+ "@types/react": "19.3.0",
104
+ "@types/react-dom": "19.3.0",
105
+ "@vitejs/plugin-react": "6.1.1",
106
+ "esbuild": "0.28.2",
107
+ "eslint": "9.39.4",
108
+ "eslint-config-prettier": "10.1.8",
109
+ "eslint-plugin-import": "2.32.0",
110
+ "eslint-plugin-prettier": "5.5.6",
111
+ "eslint-plugin-react": "7.37.5",
112
+ "eslint-plugin-react-hooks": "7.1.1",
113
+ "eslint-plugin-react-refresh": "0.5.7",
114
+ "eslint-plugin-simple-import-sort": "14.0.0",
115
+ "globals": "17.12.0",
116
+ "prettier": "3.9.9",
117
+ "qrcode.react": "4.2.0",
118
+ "react": "19.3.0",
119
+ "react-dom": "19.3.0",
120
+ "react-router": "8.4.0",
121
+ "sass": "1.105.0",
122
+ "terser": "5.51.2",
123
+ "typescript": "6.0.3",
124
+ "typescript-eslint": "8.70.1",
125
+ "vite": "8.3.1",
126
+ "vite-plugin-dts": "5.1.1",
127
+ "vite-plugin-static-copy": "4.1.1"
128
+ },
129
+ "overrides": {
130
+ "@rushstack/ts-command-line": {
131
+ "argparse": "2.0.1"
132
+ },
133
+ "brace-expansion@1": "1.1.21",
134
+ "brace-expansion@5": "5.0.12",
135
+ "esbuild": "0.28.2",
136
+ "fast-uri@3": "3.1.8",
137
+ "immutable": "5.1.9",
138
+ "js-yaml": "4.3.2",
139
+ "minimatch@10": "10.2.6",
140
+ "nanoid@3": "3.3.18",
141
+ "picomatch@2": "2.3.2",
142
+ "postcss": "8.5.28",
143
+ "source-map-js": "1.2.2",
144
+ "vite-plugin-static-copy": {
145
+ "chokidar": "5.0.0"
146
+ }
147
+ }
148
+ }