@nice2dev/ui-erp 1.1.6 → 1.1.9

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/dist/index.cjs CHANGED
@@ -1,7 +1,1984 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const React = require("react");
4
+ const he = require("react");
5
+ const se = {
6
+ radius: "md",
7
+ shadow: "md",
8
+ fill: "solid",
9
+ buttonStyle: "flat",
10
+ inputStyle: "bordered",
11
+ cardStyle: "elevated",
12
+ badgeStyle: "solid",
13
+ tabStyle: "underline",
14
+ toggleStyle: "default",
15
+ tooltipStyle: "dark",
16
+ modalStyle: "default",
17
+ tableStyle: "default",
18
+ menuStyle: "default",
19
+ animation: "normal",
20
+ density: "normal"
21
+ };
22
+ he.createContext({
23
+ displayStyle: "default",
24
+ variantConfig: se,
25
+ setDisplayStyle: () => {
26
+ }
27
+ });
28
+ const er = {
29
+ // Navigation
30
+ "chevron-down": "M6 9l6 6 6-6",
31
+ "chevron-up": "M18 15l-6-6-6 6",
32
+ "chevron-left": "M15 18l-6-6 6-6",
33
+ "chevron-right": "M9 6l6 6-6 6",
34
+ "arrow-left": "M19 12H5m0 0l7 7m-7-7l7-7",
35
+ "arrow-right": "M5 12h14m0 0l-7-7m7 7l-7 7",
36
+ "arrow-up": "M12 19V5m0 0l-7 7m7-7l7 7",
37
+ "arrow-down": "M12 5v14m0 0l7-7m-7 7l-7-7",
38
+ // Actions
39
+ close: "M18 6L6 18M6 6l12 12",
40
+ plus: "M12 5v14m-7-7h14",
41
+ minus: "M5 12h14",
42
+ check: "M5 13l4 4L19 7",
43
+ edit: "M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7M18.5 2.5a2.121 2.121 0 113 3L12 15l-4 1 1-4 9.5-9.5z",
44
+ trash: "M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16",
45
+ copy: "M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z",
46
+ download: "M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4",
47
+ upload: "M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12",
48
+ refresh: "M4 4v5h5M20 20v-5h-5M20.49 9A9 9 0 005.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 013.51 15",
49
+ // UI
50
+ search: "M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z",
51
+ filter: "M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z",
52
+ "sort-asc": "M3 4h13M3 8h9m-9 4h6m4 0l4-4m0 0l4 4m-4-4v12",
53
+ "sort-desc": "M3 4h13M3 8h9m-9 4h9m5-4v12m0 0l-4-4m4 4l4-4",
54
+ // Neutral "sortable" indicator: a small up-chevron over a down-chevron.
55
+ sort: "M6 10l6-6 6 6M6 14l6 6 6-6",
56
+ menu: "M4 6h16M4 12h16M4 18h16",
57
+ "more-vertical": "M12 5v.01M12 12v.01M12 19v.01",
58
+ "more-horizontal": "M5 12h.01M12 12h.01M19 12h.01",
59
+ settings: "M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.066 2.573c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.573 1.066c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.066-2.573c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z M15 12a3 3 0 11-6 0 3 3 0 016 0z",
60
+ eye: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z M15 12a3 3 0 11-6 0 3 3 0 016 0z",
61
+ "eye-off": "M17.94 17.94A10.07 10.07 0 0112 20c-7 0-11-8-11-8a18.45 18.45 0 015.06-5.94M9.9 4.24A9.12 9.12 0 0112 4c7 0 11 8 11 8a18.5 18.5 0 01-2.16 3.19m-6.72-1.07a3 3 0 11-4.24-4.24 M1 1l22 22",
62
+ lock: "M19 11H5a2 2 0 00-2 2v7a2 2 0 002 2h14a2 2 0 002-2v-7a2 2 0 00-2-2zm-3-4a4 4 0 10-8 0v4h8V7z",
63
+ // Status
64
+ info: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",
65
+ warning: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z",
66
+ error: "M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z",
67
+ success: "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z",
68
+ help: "M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",
69
+ // Content
70
+ calendar: "M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z",
71
+ clock: "M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z",
72
+ file: "M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z",
73
+ folder: "M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",
74
+ image: "M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z",
75
+ link: "M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1",
76
+ mail: "M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z",
77
+ phone: "M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z",
78
+ user: "M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z",
79
+ users: "M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z",
80
+ home: "M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6",
81
+ star: "M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z",
82
+ heart: "M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z",
83
+ bell: "M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9",
84
+ grip: "M4 6h2m4 0h2m4 0h2M4 12h2m4 0h2m4 0h2M4 18h2m4 0h2m4 0h2",
85
+ hash: "M4 9h16M4 15h16M10 3L8 21M16 3l-2 18",
86
+ list: "M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01",
87
+ circle: "M12 21a9 9 0 100-18 9 9 0 000 18z",
88
+ // UI component / element types (palettes, builders)
89
+ box: "M21 8a2 2 0 00-1-1.73l-7-4a2 2 0 00-2 0l-7 4A2 2 0 003 8v8a2 2 0 001 1.73l7 4a2 2 0 002 0l7-4A2 2 0 0021 16V8z M3.27 6.96L12 12.01l8.73-5.05 M12 22.08V12",
90
+ tabs: "M3 9h18v10H3z M7 9V5h6v4",
91
+ columns: "M4 4h7v16H4z M13 4h7v16h-7z",
92
+ grid: "M3 3h7v7H3z M14 3h7v7h-7z M14 14h7v7h-7z M3 14h7v7H3z",
93
+ table: "M3 5h18v14H3z M3 10h18M3 15h18M9 5v14M15 5v14",
94
+ heading: "M6 4v16M18 4v16M6 12h12",
95
+ type: "M4 7V4h16v3M9 20h6M12 4v16",
96
+ "align-left": "M3 6h18M3 12h12M3 18h15",
97
+ input: "M4 9h16a1 1 0 011 1v4a1 1 0 01-1 1H4a1 1 0 01-1-1v-4a1 1 0 011-1z M7 12h5",
98
+ button: "M5 9h14a2 2 0 012 2v2a2 2 0 01-2 2H5a2 2 0 01-2-2v-2a2 2 0 012-2z",
99
+ select: "M4 6h16a1 1 0 011 1v10a1 1 0 01-1 1H4a1 1 0 01-1-1V7a1 1 0 011-1z M15 11l-3 3-3-3",
100
+ "check-square": "M9 11l3 3L22 4 M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11",
101
+ video: "M23 7l-7 5 7 5V7z M16 5H3a2 2 0 00-2 2v10a2 2 0 002 2h13a2 2 0 002-2V7a2 2 0 00-2-2z",
102
+ card: "M3 5h18a1 1 0 011 1v12a1 1 0 01-1 1H3a1 1 0 01-1-1V6a1 1 0 011-1z M3 10h18",
103
+ // App / infra / media concepts
104
+ "bar-chart": "M6 20v-6M12 20V4M18 20v-10",
105
+ "line-chart": "M3 3v18h18 M7 15l4-4 3 3 5-6",
106
+ "area-chart": "M3 3v18h18 M7 17v-3l4-4 3 3 5-6v10z",
107
+ "pie-chart": "M21.21 15.89A10 10 0 118 2.83 M22 12A10 10 0 0012 2v10z",
108
+ "donut-chart": "M12 3a9 9 0 100 18 9 9 0 000-18z M12 8a4 4 0 100 8 4 4 0 000-8z",
109
+ "scatter-chart": "M3 3v18h18 M8 16h.01 M11 11h.01 M15 14h.01 M18 8h.01",
110
+ "bars-vertical": "M6 5v14M12 5v14M18 5v14",
111
+ globe: "M12 3a9 9 0 100 18 9 9 0 000-18z M3 12h18 M12 3a14 14 0 010 18 M12 3a14 14 0 000 18",
112
+ monitor: "M3 4h18a1 1 0 011 1v11a1 1 0 01-1 1H3a1 1 0 01-1-1V5a1 1 0 011-1z M8 21h8 M12 17v4",
113
+ camera: "M23 19a2 2 0 01-2 2H3a2 2 0 01-2-2V8a2 2 0 012-2h3l2-3h6l2 3h3a2 2 0 012 2z M12 17a4 4 0 100-8 4 4 0 000 8z",
114
+ plug: "M9 2v5 M15 2v5 M7 7h10v3a5 5 0 01-10 0V7z M12 15v7",
115
+ save: "M19 21H5a2 2 0 01-2-2V5a2 2 0 012-2h11l5 5v11a2 2 0 01-2 2z M17 21v-8H7v8 M7 3v5h8",
116
+ tag: "M20.59 13.41l-7.17 7.17a2 2 0 01-2.83 0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z M7 7h.01",
117
+ palette: "M12 2a10 10 0 000 20 2 2 0 002-2c0-.5-.2-1-.5-1.3a2 2 0 01-.5-1.2 2 2 0 012-2H17a5 5 0 005-5c0-5-4.5-9-10-9z M6.5 11.5h.01 M9.5 7.5h.01 M14.5 7.5h.01",
118
+ book: "M4 19.5A2.5 2.5 0 016.5 17H20 M6.5 2H20v20H6.5A2.5 2.5 0 014 19.5v-15A2.5 2.5 0 016.5 2z",
119
+ cloud: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z",
120
+ target: "M12 3a9 9 0 100 18 9 9 0 000-18z M12 7a5 5 0 100 10 5 5 0 000-10z M12 11a1 1 0 100 2 1 1 0 000-2z",
121
+ message: "M21 11.5a8.5 8.5 0 01-8.5 8.5 8.4 8.4 0 01-3.8-.9L3 21l1.9-5.7a8.4 8.4 0 01-.9-3.8A8.5 8.5 0 0112.5 3 8.5 8.5 0 0121 11.5z",
122
+ flask: "M9 2h6 M10 2v6.5L4.5 19a1 1 0 00.9 1.5h13.2a1 1 0 00.9-1.5L14 8.5V2 M7 15h10",
123
+ rocket: "M12 15l-3-3a22 22 0 012-3.95A12.88 12.88 0 0122 2c0 2.72-.78 7.5-6 11a22 22 0 01-3.95 2z M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0 M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5 M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 00-2.91-.09z",
124
+ music: "M9 18V5l12-2v13 M9 18a3 3 0 11-6 0 3 3 0 016 0z M21 16a3 3 0 11-6 0 3 3 0 016 0z",
125
+ wifi: "M5 12.55a11 11 0 0114 0 M8.5 16.11a6 6 0 017 0 M12 20h.01 M2 8.82a15 15 0 0120 0",
126
+ database: "M12 8c4.97 0 9-1.34 9-3s-4.03-3-9-3-9 1.34-9 3 4.03 3 9 3z M21 5v6c0 1.66-4.03 3-9 3s-9-1.34-9-3V5 M21 11v6c0 1.66-4.03 3-9 3s-9-1.34-9-3v-6",
127
+ slash: "M12 3a9 9 0 100 18 9 9 0 000-18z M5.6 5.6l12.8 12.8",
128
+ puzzle: "M19.4 13.6a1.6 1.6 0 10.2-3.2H19V7a2 2 0 00-2-2h-3.4v-.4a1.6 1.6 0 10-3.2 0V5H7a2 2 0 00-2 2v3.4h.4a1.6 1.6 0 100 3.2H5V17a2 2 0 002 2h3.4v.4a1.6 1.6 0 103.2 0V19H17a2 2 0 002-2v-3.4z",
129
+ dollar: "M12 1v22 M17 5H9.5a3.5 3.5 0 000 7h5a3.5 3.5 0 010 7H6",
130
+ printer: "M6 9V2h12v7 M6 18H4a2 2 0 01-2-2v-5a2 2 0 012-2h16a2 2 0 012 2v5a2 2 0 01-2 2h-2 M6 14h12v8H6z",
131
+ scale: "M12 3v18 M5 21h14 M5 7l7-2 7 2 M2 13a3 3 0 006 0L5 7zm14 0a3 3 0 006 0L19 7z",
132
+ accessibility: "M12 3a9 9 0 100 18 9 9 0 000-18z M12 9a1.5 1.5 0 100-3 1.5 1.5 0 000 3z M7.5 10.5l4.5 1 4.5-1 M12 11.5v3.5l-2 3.5 M12 15l2 3.5",
133
+ window: "M3 4h18a1 1 0 011 1v14a1 1 0 01-1 1H3a1 1 0 01-1-1V5a1 1 0 011-1z M2 9h20 M6 6.5h.01 M9 6.5h.01",
134
+ "map-pin": "M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z M12 13a3 3 0 100-6 3 3 0 000 6z",
135
+ cursor: "M5 3l14 7-6 2-2 6-6-15z",
136
+ shuffle: "M16 3h5v5 M4 20L21 3 M21 16v5h-5 M15 15l6 6 M4 4l5 5",
137
+ lightbulb: "M9 18h6 M10 22h4 M12 2a7 7 0 00-4 12.7c.6.5 1 1.3 1 2.1V18h6v-1.2c0-.8.4-1.6 1-2.1A7 7 0 0012 2z",
138
+ server: "M3 4h18a1 1 0 011 1v4a1 1 0 01-1 1H3a1 1 0 01-1-1V5a1 1 0 011-1z M3 14h18a1 1 0 011 1v4a1 1 0 01-1 1H3a1 1 0 01-1-1v-4a1 1 0 011-1z M7 7h.01 M7 17h.01",
139
+ terminal: "M4 17l6-6-6-6 M12 19h8",
140
+ "git-branch": "M6 3v12 M18 9a3 3 0 100-6 3 3 0 000 6z M6 21a3 3 0 100-6 3 3 0 000 6z M18 9a9 9 0 01-9 9",
141
+ send: "M22 2L11 13 M22 2l-7 20-4-9-9-4 20-7z",
142
+ // Media
143
+ play: "M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z M21 12a9 9 0 11-18 0 9 9 0 0118 0z",
144
+ pause: "M10 9v6m4-6v6m7-3a9 9 0 11-18 0 9 9 0 0118 0z",
145
+ stop: "M21 12a9 9 0 11-18 0 9 9 0 0118 0z M9 10a1 1 0 011-1h4a1 1 0 011 1v4a1 1 0 01-1 1h-4a1 1 0 01-1-1v-4z",
146
+ mic: "M12 1a3 3 0 00-3 3v8a3 3 0 006 0V4a3 3 0 00-3-3zM19 10v2a7 7 0 01-14 0v-2M12 19v4M8 23h8",
147
+ volume: "M11 5L6 9H2v6h4l5 4V5z M15.54 8.46a5 5 0 010 7.07 M19.07 4.93a10 10 0 010 14.14",
148
+ "volume-off": "M11 5L6 9H2v6h4l5 4V5z M23 9l-6 6 M17 9l6 6",
149
+ "skip-back": "M19 20L9 12l10-8v16z M5 19V5",
150
+ // Toggle
151
+ expand: "M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4",
152
+ collapse: "M9 9V5m0 4H5m4 0L4 4m11 5h4m-4 0V5m0 4l5-5M9 15v4m0-4H5m4 0l-5 5m15-5h-4m4 0v4m0-4l-5 5",
153
+ "external-link": "M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14",
154
+ // Extended set (entities, gamification, status)
155
+ briefcase: "M20 7H4a2 2 0 00-2 2v9a2 2 0 002 2h16a2 2 0 002-2V9a2 2 0 00-2-2zM16 7V5a2 2 0 00-2-2h-4a2 2 0 00-2 2v2M2 12h20",
156
+ building: "M4 22V4a2 2 0 012-2h12a2 2 0 012 2v18M4 22h16M9 22v-4h6v4M9 6h.01M15 6h.01M9 10h.01M15 10h.01M9 14h.01M15 14h.01",
157
+ medal: "M15.477 12.89L17 22l-5-3-5 3 1.523-9.11M12 15a6 6 0 100-12 6 6 0 000 12z",
158
+ clipboard: "M9 2h6a1 1 0 011 1v1a1 1 0 01-1 1H9a1 1 0 01-1-1V3a1 1 0 011-1zM16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2",
159
+ "skip-forward": "M5 4l10 8-10 8V4zM19 5v14",
160
+ "at-sign": "M12 16a4 4 0 100-8 4 4 0 000 8zM16 12v1.5a2.5 2.5 0 005 0V12a9 9 0 10-3.5 7.14",
161
+ gift: "M20 12v10H4V12M2 7h20v5H2zM12 22V7M12 7H7.5a2.5 2.5 0 010-5C11 2 12 7 12 7zM12 7h4.5a2.5 2.5 0 000-5C13 2 12 7 12 7z",
162
+ archive: "M21 8v13H3V8M1 3h22v5H1zM10 12h4",
163
+ reply: "M9 17l-5-5 5-5M4 12h11a4 4 0 014 4v2",
164
+ forward: "M15 17l5-5-5-5M20 12H9a4 4 0 00-4 4v2",
165
+ paperclip: "M21.44 11.05l-9.19 9.19a6 6 0 01-8.49-8.49l9.19-9.19a4 4 0 015.66 5.66l-9.2 9.19a2 2 0 01-2.83-2.83l8.49-8.48",
166
+ zap: "M13 2L3 14h9l-1 8 10-12h-9l1-8z",
167
+ // Graphics / drawing tools (vector / pixel / photo / game editors)
168
+ square: "M4 4h16v16H4z",
169
+ triangle: "M12 4L3 20h18z",
170
+ hexagon: "M7.5 3h9l4.5 9-4.5 9h-9L3 12z",
171
+ diamond: "M12 2l10 10-10 10L2 12z",
172
+ line: "M5 19L19 5",
173
+ pen: "M12 19l7-7 3 3-7 7-3-3z M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z M11 11a2 2 0 100-4 2 2 0 000 4z",
174
+ brush: "M9.06 11.9l8.07-8.06a2.85 2.85 0 114.03 4.03l-8.06 8.08 M7.07 14.94c-1.66 0-3 1.35-3 3.02 0 1.33-2.5 1.52-2 2.02 1.08 1.1 2.49 2.02 4 2.02 2.2 0 4-1.8 4-4.04a3.01 3.01 0 00-3-3.02z",
175
+ droplet: "M12 2.69l5.66 5.66a8 8 0 11-11.31 0z",
176
+ bucket: "M5 8h14l-1.5 11a2 2 0 01-2 1.8H8.5a2 2 0 01-2-1.8L5 8z M5 8l2-4h10l2 4",
177
+ scissors: "M6 9a3 3 0 100-6 3 3 0 000 6z M6 21a3 3 0 100-6 3 3 0 000 6z M20 4L8.12 15.88 M14.47 14.48L20 20 M8.12 8.12L12 12",
178
+ layers: "M12 2l9 5-9 5-9-5 9-5z M3 12l9 5 9-5 M3 17l9 5 9-5",
179
+ crop: "M6 2v14a2 2 0 002 2h14 M2 6h14a2 2 0 012 2v14",
180
+ eyedropper: "M2 22l1-1h3l9-9 M3 21v-3l9-9 M15 6l3.5-3.5a2.12 2.12 0 013 3L18 9l-3-3z",
181
+ ruler: "M21.3 8.7l-6-6a1 1 0 00-1.4 0L2.7 13.9a1 1 0 000 1.4l6 6a1 1 0 001.4 0L21.3 10.1a1 1 0 000-1.4z M7.5 10.5l2 2 M11 7l2 2 M14.5 3.5l2 2",
182
+ wand: "M15 4V2 M15 16v-2 M8 9h2 M20 9h2 M3 21l9-9 M12.2 6.2L11 5 M17.8 6.2L19 5 M17.8 11.8L19 13",
183
+ move: "M5 9l-3 3 3 3 M9 5l3-3 3 3 M15 19l-3 3-3-3 M19 9l3 3-3 3 M2 12h20 M12 2v20",
184
+ gamepad: "M6 12h4 M8 10v4 M15 13h.01 M18 11h.01 M2 12a4 4 0 014-4h12a4 4 0 014 4l-1.5 6a2 2 0 01-2 1.5H5.5a2 2 0 01-2-1.5L2 12z",
185
+ eraser: "M7 21l-4.3-4.3a1 1 0 010-1.4l9.6-9.6a2 2 0 012.8 0l4.6 4.6a2 2 0 010 2.8L13 21H7z M22 21H7 M5 12l5 5",
186
+ // Buildings / interior / fixtures (spatial / floor-plan / smart-home / real-estate editors)
187
+ thermometer: "M14 14.76V3.5a2.5 2.5 0 00-5 0v11.26a4.5 4.5 0 105 0z",
188
+ door: "M18 20V5a1 1 0 00-1-1H7a1 1 0 00-1 1v15 M3 20h18 M13 11.5h.01",
189
+ stairs: "M3 20h3v-3h3v-3h3v-3h3v-3h3",
190
+ elevator: "M5 3h14a1 1 0 011 1v16a1 1 0 01-1 1H5a1 1 0 01-1-1V4a1 1 0 011-1z M9.5 9L12 6.5 14.5 9 M9.5 15l2.5 2.5 2.5-2.5",
191
+ bed: "M2 4v16 M2 8h18a2 2 0 012 2v10 M22 17H2 M6 8v4 M2 12h4",
192
+ sofa: "M3 9V7a2 2 0 012-2h14a2 2 0 012 2v2 M21 9a2 2 0 00-2 2v3H5v-3a2 2 0 00-2-2 2 2 0 00-2 2v4a1 1 0 001 1h18a1 1 0 001-1v-4a2 2 0 00-2-2 M5 18v2 M19 18v2",
193
+ chair: "M6 11V5a2 2 0 012-2h8a2 2 0 012 2v6 M5 11h14 M6 11l-1 8h14l-1-8 M6 19v2 M18 19v2",
194
+ utensils: "M3 2v7a2 2 0 002 2 2 2 0 002-2V2 M5 2v20 M21 2v9c0 1-1 1.8-2 1.8h-1V20 M18 2v9",
195
+ mountain: "M8 3l4 8 5-5 5 15H2L8 3z",
196
+ tree: "M12 2L7 11h10L12 2z M9 11l3 5 3-5 M12 16v6",
197
+ sun: "M12 17a5 5 0 100-10 5 5 0 000 10z M12 1v2 M12 21v2 M4.22 4.22l1.42 1.42 M18.36 18.36l1.42 1.42 M1 12h2 M21 12h2 M4.22 19.78l1.42-1.42 M18.36 5.64l1.42-1.42",
198
+ moon: "M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z",
199
+ // Rich-text editing (NiceHtmlEditor toolbar, document editors)
200
+ "list-ordered": "M10 6h11M10 12h11M10 18h11M4 6h1v4M4 10h2M6 18H4c0-1 2-2 2-3s-1-1.5-2-1",
201
+ unlink: "M18.84 12.25l1.72-1.71a5 5 0 0 0-7.07-7.07L11 5.78M3 3l18 18M9 15l3-3M14 11l3 3M14 21l-1.72-1.72a5 5 0 0 1-7.07-7.07L7 10.49",
202
+ code: "M16 18l6-6-6-6M8 6l-6 6 6 6",
203
+ quote: "M3 21c3-3 3-9 0-12M21 21c-3-3-3-9 0-12M9 7h6v6H9zM15 7h6v6h-6z",
204
+ indent: "M3 8l4 4-4 4M7 6h14M7 12h14M3 18h18",
205
+ outdent: "M7 8l-4 4 4 4M21 6H3M21 12H7M21 18H3",
206
+ "align-center": "M3 6h18M6 12h12M3 18h18",
207
+ "align-right": "M3 6h18M9 12h12M3 18h18",
208
+ "align-justify": "M3 6h18M3 12h18M3 18h18",
209
+ "align-top": "M4 4h16M9 8v12M15 8v7",
210
+ "align-middle": "M4 12h16M9 5v14M15 8v8",
211
+ "align-bottom": "M4 20h16M9 4v12M15 9v7",
212
+ "distribute-h": "M4 4v16M20 4v16M10 7h4v10h-4z",
213
+ "distribute-v": "M4 4h16M4 20h16M7 10h10v4H7z",
214
+ parallelogram: "M7 5h14l-4 14H3z",
215
+ barcode: "M4 5v14M6.5 5v14M10 5v14M13 5v14M15.5 5v14M19 5v14M20.5 5v14",
216
+ "qr-code": "M4 4h6v6H4z M14 4h6v6h-6z M4 14h6v6H4z M14 14h2v2h-2z M18 14h2v2h-2z M14 18h2v2h-2z M18 18h2v2h-2z",
217
+ smile: "M12 22a10 10 0 1 1 0-20 10 10 0 0 1 0 20zM8 14s1.5 2 4 2 4-2 4-2M9 9h.01M15 9h.01",
218
+ undo: "M9 14L4 9l5-5M4 9h10.5a5.5 5.5 0 010 11H11",
219
+ redo: "M15 14l5-5-5-5M20 9H9.5a5.5 5.5 0 000 11H13",
220
+ unlock: "M19 11H5a2 2 0 00-2 2v7a2 2 0 002 2h14a2 2 0 002-2v-7a2 2 0 00-2-2z M7 11V7a5 5 0 019.9-1",
221
+ keyboard: "M4 6h16a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V8a2 2 0 012-2z M6 10h.01 M10 10h.01 M14 10h.01 M18 10h.01 M8 14h8",
222
+ "page-break": "M6 3v5h12V3 M6 21v-5h12v5 M2 12h3 M8 12h3 M13 12h3 M19 12h3",
223
+ shield: "M12 2l8 3v6c0 5-3.4 9.4-8 11-4.6-1.6-8-6-8-11V5z",
224
+ repeat: "M17 2l4 4-4 4 M3 11V9a4 4 0 014-4h14 M7 22l-4-4 4-4 M21 13v2a4 4 0 01-4 4H3"
225
+ }, ca = {
226
+ xs: 12,
227
+ sm: 16,
228
+ md: 20,
229
+ lg: 24,
230
+ xl: 32
231
+ }, gt = he.createContext({});
232
+ function la({
233
+ path: e,
234
+ size: t,
235
+ className: r,
236
+ style: a,
237
+ color: n,
238
+ title: o,
239
+ onClick: i
240
+ }) {
241
+ return /* @__PURE__ */ jsxRuntime.jsxs(
242
+ "svg",
243
+ {
244
+ xmlns: "http://www.w3.org/2000/svg",
245
+ width: t,
246
+ height: t,
247
+ viewBox: "0 0 24 24",
248
+ fill: "none",
249
+ stroke: n || "currentColor",
250
+ strokeWidth: 2,
251
+ strokeLinecap: "round",
252
+ strokeLinejoin: "round",
253
+ className: `nice-icon ${r || ""}`,
254
+ style: a,
255
+ role: o ? "img" : "presentation",
256
+ "aria-label": o,
257
+ "aria-hidden": !o,
258
+ onClick: i,
259
+ children: [
260
+ o && /* @__PURE__ */ jsxRuntime.jsx("title", { children: o }),
261
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: e })
262
+ ]
263
+ }
264
+ );
265
+ }
266
+ const Ae = ({
267
+ name: e,
268
+ size: t = "md",
269
+ className: r,
270
+ style: a,
271
+ color: n,
272
+ title: o,
273
+ onClick: i
274
+ }) => {
275
+ const { resolver: s } = he.useContext(gt), c = typeof t == "number" ? t : ca[t];
276
+ if (s) {
277
+ const d = s(e, c);
278
+ if (d)
279
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: `nice-icon-wrap ${r || ""}`, style: a, onClick: i, children: d });
280
+ }
281
+ const l = er[e];
282
+ return l ? /* @__PURE__ */ jsxRuntime.jsx(
283
+ la,
284
+ {
285
+ path: l,
286
+ size: c,
287
+ className: r,
288
+ style: a,
289
+ color: n,
290
+ title: o,
291
+ onClick: i
292
+ }
293
+ ) : null;
294
+ };
295
+ he.createContext({
296
+ direction: "ltr",
297
+ isRTL: false,
298
+ flip: (e) => e,
299
+ flipStyle: (e, t) => ({ [e]: t })
300
+ });
301
+ he.createContext({
302
+ permissions: {},
303
+ getAccessMode: () => "full"
304
+ });
305
+ he.createContext(null);
306
+ he.createContext(null);
307
+ const Ce = {
308
+ space1: "4px",
309
+ space2: "8px",
310
+ space3: "12px",
311
+ space4: "16px",
312
+ space5: "20px",
313
+ space6: "24px",
314
+ space8: "32px"
315
+ }, Le = {
316
+ fontFamily: "'Inter', system-ui, -apple-system, sans-serif",
317
+ fontSizeXs: "0.75rem",
318
+ fontSizeSm: "0.8125rem",
319
+ fontSizeMd: "0.875rem",
320
+ fontSizeLg: "1rem",
321
+ fontSizeXl: "1.125rem",
322
+ fontWeightNormal: 400,
323
+ fontWeightMedium: 500,
324
+ fontWeightSemibold: 600,
325
+ fontWeightBold: 700,
326
+ lineHeight: 1.5
327
+ }, Ne = { fast: "120ms ease", normal: "200ms ease", slow: "300ms ease" }, bt = (e) => ({
328
+ color: e,
329
+ radiusSm: "4px",
330
+ radiusMd: "6px",
331
+ radiusLg: "8px",
332
+ radiusXl: "12px",
333
+ radiusFull: "9999px"
334
+ }), fr = {
335
+ sm: "0 1px 2px rgba(0,0,0,0.05)",
336
+ md: "0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",
337
+ lg: "0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",
338
+ xl: "0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)"
339
+ }, _a = {
340
+ sm: "0 1px 2px rgba(0,0,0,0.3)",
341
+ md: "0 4px 6px -1px rgba(0,0,0,0.4)",
342
+ lg: "0 10px 15px -3px rgba(0,0,0,0.4)",
343
+ xl: "0 20px 25px -5px rgba(0,0,0,0.4)"
344
+ };
345
+ function F(e, t, r, a, n) {
346
+ return {
347
+ name: e,
348
+ darkMode: "light",
349
+ colors: {
350
+ ...t,
351
+ surface: t.surface ?? r.primary,
352
+ surfaceHover: t.surfaceHover ?? r.secondary
353
+ },
354
+ backgrounds: {
355
+ ...r,
356
+ elevated: r.elevated ?? r.primary,
357
+ inset: r.inset ?? r.tertiary,
358
+ canvas: r.canvas ?? r.primary
359
+ },
360
+ text: { ...a, inverse: a.inverse ?? "#ffffff" },
361
+ borders: bt(n),
362
+ shadows: fr,
363
+ spacing: Ce,
364
+ typography: Le,
365
+ transitions: Ne
366
+ };
367
+ }
368
+ function j(e, t, r, a, n) {
369
+ return {
370
+ name: e,
371
+ darkMode: "dark",
372
+ colors: {
373
+ ...t,
374
+ surface: t.surface ?? r.secondary,
375
+ surfaceHover: t.surfaceHover ?? r.tertiary
376
+ },
377
+ backgrounds: {
378
+ ...r,
379
+ elevated: r.elevated ?? r.secondary,
380
+ inset: r.inset ?? r.primary,
381
+ canvas: r.canvas ?? r.primary
382
+ },
383
+ text: { ...a, inverse: a.inverse ?? "#0f172a" },
384
+ borders: bt(n),
385
+ shadows: _a,
386
+ spacing: Ce,
387
+ typography: Le,
388
+ transitions: Ne
389
+ };
390
+ }
391
+ F(
392
+ "Slate",
393
+ {
394
+ primary: "#64748b",
395
+ primaryHover: "#475569",
396
+ success: "#10b981",
397
+ warning: "#f59e0b",
398
+ error: "#ef4444",
399
+ info: "#06b6d4"
400
+ },
401
+ { primary: "#f8fafc", secondary: "#f1f5f9", tertiary: "#e2e8f0", hover: "#e2e8f0" },
402
+ { primary: "#1e293b", secondary: "#475569", muted: "#94a3b8" },
403
+ "#cbd5e1"
404
+ );
405
+ F(
406
+ "Zinc",
407
+ {
408
+ primary: "#71717a",
409
+ primaryHover: "#52525b",
410
+ success: "#22c55e",
411
+ warning: "#eab308",
412
+ error: "#ef4444",
413
+ info: "#06b6d4"
414
+ },
415
+ { primary: "#fafafa", secondary: "#f4f4f5", tertiary: "#e4e4e7", hover: "#e4e4e7" },
416
+ { primary: "#18181b", secondary: "#3f3f46", muted: "#a1a1aa" },
417
+ "#d4d4d8"
418
+ );
419
+ F(
420
+ "Stone",
421
+ {
422
+ primary: "#78716c",
423
+ primaryHover: "#57534e",
424
+ success: "#16a34a",
425
+ warning: "#ca8a04",
426
+ error: "#dc2626",
427
+ info: "#0891b2"
428
+ },
429
+ { primary: "#fafaf9", secondary: "#f5f5f4", tertiary: "#e7e5e4", hover: "#e7e5e4" },
430
+ { primary: "#1c1917", secondary: "#44403c", muted: "#a8a29e" },
431
+ "#d6d3d1"
432
+ );
433
+ F(
434
+ "Cool Gray",
435
+ {
436
+ primary: "#6b7280",
437
+ primaryHover: "#4b5563",
438
+ success: "#10b981",
439
+ warning: "#f59e0b",
440
+ error: "#ef4444",
441
+ info: "#3b82f6"
442
+ },
443
+ { primary: "#f9fafb", secondary: "#f3f4f6", tertiary: "#e5e7eb", hover: "#e5e7eb" },
444
+ { primary: "#111827", secondary: "#374151", muted: "#9ca3af" },
445
+ "#d1d5db"
446
+ );
447
+ F(
448
+ "Warm Gray",
449
+ {
450
+ primary: "#7c7568",
451
+ primaryHover: "#5c564c",
452
+ success: "#4d7c0f",
453
+ warning: "#a16207",
454
+ error: "#b91c1c",
455
+ info: "#0e7490"
456
+ },
457
+ { primary: "#faf9f7", secondary: "#f5f4f0", tertiary: "#e8e6e1", hover: "#e8e6e1" },
458
+ { primary: "#1f1d19", secondary: "#4a463d", muted: "#a09888" },
459
+ "#d4d0c8"
460
+ );
461
+ F(
462
+ "Silver",
463
+ {
464
+ primary: "#94a3b8",
465
+ primaryHover: "#64748b",
466
+ success: "#10b981",
467
+ warning: "#f59e0b",
468
+ error: "#ef4444",
469
+ info: "#38bdf8"
470
+ },
471
+ { primary: "#f8fafc", secondary: "#f1f5f9", tertiary: "#e2e8f0", hover: "#e2e8f0" },
472
+ { primary: "#334155", secondary: "#64748b", muted: "#94a3b8" },
473
+ "#cbd5e1"
474
+ );
475
+ F(
476
+ "Charcoal",
477
+ {
478
+ primary: "#374151",
479
+ primaryHover: "#1f2937",
480
+ success: "#059669",
481
+ warning: "#d97706",
482
+ error: "#dc2626",
483
+ info: "#0284c7"
484
+ },
485
+ { primary: "#f9fafb", secondary: "#f3f4f6", tertiary: "#e5e7eb", hover: "#e5e7eb" },
486
+ { primary: "#111827", secondary: "#374151", muted: "#6b7280" },
487
+ "#d1d5db"
488
+ );
489
+ F(
490
+ "Ivory",
491
+ {
492
+ primary: "#92876d",
493
+ primaryHover: "#7a6f55",
494
+ success: "#4d7c0f",
495
+ warning: "#a16207",
496
+ error: "#b91c1c",
497
+ info: "#0e7490"
498
+ },
499
+ { primary: "#fffef7", secondary: "#faf6eb", tertiary: "#f0ead6", hover: "#f0ead6" },
500
+ { primary: "#2b2517", secondary: "#5c5340", muted: "#9c9280" },
501
+ "#ddd8c4"
502
+ );
503
+ F(
504
+ "Rose",
505
+ {
506
+ primary: "#e11d48",
507
+ primaryHover: "#be123c",
508
+ success: "#16a34a",
509
+ warning: "#ea580c",
510
+ error: "#dc2626",
511
+ info: "#0891b2"
512
+ },
513
+ { primary: "#fff1f2", secondary: "#ffe4e6", tertiary: "#fecdd3", hover: "#ffe4e6" },
514
+ { primary: "#4c0519", secondary: "#881337", muted: "#f43f5e" },
515
+ "#fda4af"
516
+ );
517
+ F(
518
+ "Emerald",
519
+ {
520
+ primary: "#059669",
521
+ primaryHover: "#047857",
522
+ success: "#16a34a",
523
+ warning: "#d97706",
524
+ error: "#dc2626",
525
+ info: "#0891b2"
526
+ },
527
+ { primary: "#ecfdf5", secondary: "#d1fae5", tertiary: "#a7f3d0", hover: "#d1fae5" },
528
+ { primary: "#064e3b", secondary: "#065f46", muted: "#34d399" },
529
+ "#6ee7b7"
530
+ );
531
+ F(
532
+ "Amber",
533
+ {
534
+ primary: "#d97706",
535
+ primaryHover: "#b45309",
536
+ success: "#16a34a",
537
+ warning: "#ca8a04",
538
+ error: "#dc2626",
539
+ info: "#0284c7"
540
+ },
541
+ { primary: "#fffbeb", secondary: "#fef3c7", tertiary: "#fde68a", hover: "#fef3c7" },
542
+ { primary: "#451a03", secondary: "#78350f", muted: "#f59e0b" },
543
+ "#fcd34d"
544
+ );
545
+ F(
546
+ "Violet",
547
+ {
548
+ primary: "#7c3aed",
549
+ primaryHover: "#6d28d9",
550
+ success: "#10b981",
551
+ warning: "#f59e0b",
552
+ error: "#ef4444",
553
+ info: "#06b6d4"
554
+ },
555
+ { primary: "#f5f3ff", secondary: "#ede9fe", tertiary: "#ddd6fe", hover: "#ede9fe" },
556
+ { primary: "#2e1065", secondary: "#4c1d95", muted: "#a78bfa" },
557
+ "#c4b5fd"
558
+ );
559
+ F(
560
+ "Teal",
561
+ {
562
+ primary: "#0d9488",
563
+ primaryHover: "#0f766e",
564
+ success: "#16a34a",
565
+ warning: "#d97706",
566
+ error: "#dc2626",
567
+ info: "#0284c7"
568
+ },
569
+ { primary: "#f0fdfa", secondary: "#ccfbf1", tertiary: "#99f6e4", hover: "#ccfbf1" },
570
+ { primary: "#134e4a", secondary: "#115e59", muted: "#2dd4bf" },
571
+ "#5eead4"
572
+ );
573
+ F(
574
+ "Indigo",
575
+ {
576
+ primary: "#4f46e5",
577
+ primaryHover: "#4338ca",
578
+ success: "#10b981",
579
+ warning: "#f59e0b",
580
+ error: "#ef4444",
581
+ info: "#06b6d4"
582
+ },
583
+ { primary: "#eef2ff", secondary: "#e0e7ff", tertiary: "#c7d2fe", hover: "#e0e7ff" },
584
+ { primary: "#1e1b4b", secondary: "#312e81", muted: "#818cf8" },
585
+ "#a5b4fc"
586
+ );
587
+ F(
588
+ "Cyan",
589
+ {
590
+ primary: "#0891b2",
591
+ primaryHover: "#0e7490",
592
+ success: "#10b981",
593
+ warning: "#f59e0b",
594
+ error: "#ef4444",
595
+ info: "#0284c7"
596
+ },
597
+ { primary: "#ecfeff", secondary: "#cffafe", tertiary: "#a5f3fc", hover: "#cffafe" },
598
+ { primary: "#164e63", secondary: "#155e75", muted: "#22d3ee" },
599
+ "#67e8f9"
600
+ );
601
+ F(
602
+ "Lime",
603
+ {
604
+ primary: "#65a30d",
605
+ primaryHover: "#4d7c0f",
606
+ success: "#16a34a",
607
+ warning: "#ca8a04",
608
+ error: "#dc2626",
609
+ info: "#0891b2"
610
+ },
611
+ { primary: "#f7fee7", secondary: "#ecfccb", tertiary: "#d9f99d", hover: "#ecfccb" },
612
+ { primary: "#1a2e05", secondary: "#365314", muted: "#84cc16" },
613
+ "#bef264"
614
+ );
615
+ F(
616
+ "Pink",
617
+ {
618
+ primary: "#db2777",
619
+ primaryHover: "#be185d",
620
+ success: "#10b981",
621
+ warning: "#f59e0b",
622
+ error: "#dc2626",
623
+ info: "#06b6d4"
624
+ },
625
+ { primary: "#fdf2f8", secondary: "#fce7f3", tertiary: "#fbcfe8", hover: "#fce7f3" },
626
+ { primary: "#500724", secondary: "#831843", muted: "#f472b6" },
627
+ "#f9a8d4"
628
+ );
629
+ F(
630
+ "Orange",
631
+ {
632
+ primary: "#ea580c",
633
+ primaryHover: "#c2410c",
634
+ success: "#16a34a",
635
+ warning: "#ca8a04",
636
+ error: "#dc2626",
637
+ info: "#0891b2"
638
+ },
639
+ { primary: "#fff7ed", secondary: "#ffedd5", tertiary: "#fed7aa", hover: "#ffedd5" },
640
+ { primary: "#431407", secondary: "#7c2d12", muted: "#fb923c" },
641
+ "#fdba74"
642
+ );
643
+ F(
644
+ "Fuchsia",
645
+ {
646
+ primary: "#c026d3",
647
+ primaryHover: "#a21caf",
648
+ success: "#10b981",
649
+ warning: "#eab308",
650
+ error: "#ef4444",
651
+ info: "#06b6d4"
652
+ },
653
+ { primary: "#fdf4ff", secondary: "#fae8ff", tertiary: "#f5d0fe", hover: "#fae8ff" },
654
+ { primary: "#4a044e", secondary: "#701a75", muted: "#d946ef" },
655
+ "#e879f9"
656
+ );
657
+ F(
658
+ "Sky",
659
+ {
660
+ primary: "#0284c7",
661
+ primaryHover: "#0369a1",
662
+ success: "#10b981",
663
+ warning: "#f59e0b",
664
+ error: "#ef4444",
665
+ info: "#06b6d4"
666
+ },
667
+ { primary: "#f0f9ff", secondary: "#e0f2fe", tertiary: "#bae6fd", hover: "#e0f2fe" },
668
+ { primary: "#0c4a6e", secondary: "#075985", muted: "#38bdf8" },
669
+ "#7dd3fc"
670
+ );
671
+ F(
672
+ "Ruby",
673
+ {
674
+ primary: "#be123c",
675
+ primaryHover: "#9f1239",
676
+ success: "#059669",
677
+ warning: "#d97706",
678
+ error: "#dc2626",
679
+ info: "#0284c7"
680
+ },
681
+ { primary: "#fff1f2", secondary: "#ffe4e6", tertiary: "#fecdd3", hover: "#ffe4e6" },
682
+ { primary: "#4c0519", secondary: "#881337", muted: "#fb7185" },
683
+ "#fda4af"
684
+ );
685
+ F(
686
+ "Coral",
687
+ {
688
+ primary: "#f97316",
689
+ primaryHover: "#ea580c",
690
+ success: "#10b981",
691
+ warning: "#eab308",
692
+ error: "#ef4444",
693
+ info: "#06b6d4"
694
+ },
695
+ { primary: "#fff7ed", secondary: "#ffedd5", tertiary: "#fed7aa", hover: "#ffedd5" },
696
+ { primary: "#431407", secondary: "#9a3412", muted: "#fb923c" },
697
+ "#fdba74"
698
+ );
699
+ j(
700
+ "Midnight",
701
+ {
702
+ primary: "#818cf8",
703
+ primaryHover: "#6366f1",
704
+ success: "#34d399",
705
+ warning: "#fbbf24",
706
+ error: "#f87171",
707
+ info: "#22d3ee"
708
+ },
709
+ { primary: "#020617", secondary: "#0f172a", tertiary: "#1e293b", hover: "#1e293b" },
710
+ { primary: "#f1f5f9", secondary: "#94a3b8", muted: "#475569" },
711
+ "#1e293b"
712
+ );
713
+ j(
714
+ "Obsidian",
715
+ {
716
+ primary: "#a78bfa",
717
+ primaryHover: "#8b5cf6",
718
+ success: "#4ade80",
719
+ warning: "#facc15",
720
+ error: "#fb7185",
721
+ info: "#38bdf8"
722
+ },
723
+ { primary: "#09090b", secondary: "#18181b", tertiary: "#27272a", hover: "#27272a" },
724
+ { primary: "#fafafa", secondary: "#a1a1aa", muted: "#52525b" },
725
+ "#3f3f46"
726
+ );
727
+ j(
728
+ "Eclipse",
729
+ {
730
+ primary: "#c084fc",
731
+ primaryHover: "#a855f7",
732
+ success: "#34d399",
733
+ warning: "#fbbf24",
734
+ error: "#f87171",
735
+ info: "#67e8f9"
736
+ },
737
+ { primary: "#0c0a1d", secondary: "#1a1533", tertiary: "#2a2248", hover: "#2a2248" },
738
+ { primary: "#f5f3ff", secondary: "#a78bfa", muted: "#6d5eac" },
739
+ "#3b3266"
740
+ );
741
+ j(
742
+ "Onyx",
743
+ {
744
+ primary: "#60a5fa",
745
+ primaryHover: "#3b82f6",
746
+ success: "#4ade80",
747
+ warning: "#fbbf24",
748
+ error: "#f87171",
749
+ info: "#22d3ee"
750
+ },
751
+ { primary: "#000000", secondary: "#0a0a0a", tertiary: "#171717", hover: "#171717" },
752
+ { primary: "#ffffff", secondary: "#a3a3a3", muted: "#525252" },
753
+ "#262626"
754
+ );
755
+ j(
756
+ "Carbon",
757
+ {
758
+ primary: "#38bdf8",
759
+ primaryHover: "#0ea5e9",
760
+ success: "#4ade80",
761
+ warning: "#facc15",
762
+ error: "#f87171",
763
+ info: "#67e8f9"
764
+ },
765
+ { primary: "#161616", secondary: "#262626", tertiary: "#393939", hover: "#393939" },
766
+ { primary: "#f4f4f4", secondary: "#c6c6c6", muted: "#6f6f6f" },
767
+ "#525252"
768
+ );
769
+ j(
770
+ "Cosmos",
771
+ {
772
+ primary: "#6366f1",
773
+ primaryHover: "#4f46e5",
774
+ success: "#34d399",
775
+ warning: "#fbbf24",
776
+ error: "#f87171",
777
+ info: "#22d3ee"
778
+ },
779
+ { primary: "#030712", secondary: "#111827", tertiary: "#1f2937", hover: "#1f2937" },
780
+ { primary: "#e5e7eb", secondary: "#9ca3af", muted: "#4b5563" },
781
+ "#374151"
782
+ );
783
+ j(
784
+ "Nebula",
785
+ {
786
+ primary: "#e879f9",
787
+ primaryHover: "#d946ef",
788
+ success: "#4ade80",
789
+ warning: "#fbbf24",
790
+ error: "#fb7185",
791
+ info: "#67e8f9"
792
+ },
793
+ { primary: "#0d0117", secondary: "#1a0533", tertiary: "#2d0a52", hover: "#2d0a52" },
794
+ { primary: "#fae8ff", secondary: "#d8b4fe", muted: "#7c3aed" },
795
+ "#581c87"
796
+ );
797
+ j(
798
+ "Abyss",
799
+ {
800
+ primary: "#22d3ee",
801
+ primaryHover: "#06b6d4",
802
+ success: "#34d399",
803
+ warning: "#fbbf24",
804
+ error: "#f87171",
805
+ info: "#38bdf8"
806
+ },
807
+ { primary: "#001219", secondary: "#002a3a", tertiary: "#003e54", hover: "#003e54" },
808
+ { primary: "#e0f2fe", secondary: "#7dd3fc", muted: "#0369a1" },
809
+ "#075985"
810
+ );
811
+ j(
812
+ "Shadow",
813
+ {
814
+ primary: "#a3a3a3",
815
+ primaryHover: "#737373",
816
+ success: "#4ade80",
817
+ warning: "#facc15",
818
+ error: "#f87171",
819
+ info: "#38bdf8"
820
+ },
821
+ { primary: "#171717", secondary: "#1f1f1f", tertiary: "#2a2a2a", hover: "#2a2a2a" },
822
+ { primary: "#e5e5e5", secondary: "#a3a3a3", muted: "#525252" },
823
+ "#404040"
824
+ );
825
+ j(
826
+ "Emerald Dark",
827
+ {
828
+ primary: "#34d399",
829
+ primaryHover: "#10b981",
830
+ success: "#4ade80",
831
+ warning: "#fbbf24",
832
+ error: "#f87171",
833
+ info: "#22d3ee"
834
+ },
835
+ { primary: "#022c22", secondary: "#064e3b", tertiary: "#065f46", hover: "#065f46" },
836
+ { primary: "#ecfdf5", secondary: "#6ee7b7", muted: "#047857" },
837
+ "#047857"
838
+ );
839
+ F(
840
+ "Forest",
841
+ {
842
+ primary: "#166534",
843
+ primaryHover: "#14532d",
844
+ success: "#22c55e",
845
+ warning: "#ca8a04",
846
+ error: "#dc2626",
847
+ info: "#0891b2"
848
+ },
849
+ { primary: "#f0fdf4", secondary: "#dcfce7", tertiary: "#bbf7d0", hover: "#dcfce7" },
850
+ { primary: "#052e16", secondary: "#166534", muted: "#4ade80" },
851
+ "#86efac"
852
+ );
853
+ F(
854
+ "Ocean",
855
+ {
856
+ primary: "#0369a1",
857
+ primaryHover: "#075985",
858
+ success: "#059669",
859
+ warning: "#d97706",
860
+ error: "#dc2626",
861
+ info: "#0284c7"
862
+ },
863
+ { primary: "#f0f9ff", secondary: "#e0f2fe", tertiary: "#bae6fd", hover: "#e0f2fe" },
864
+ { primary: "#0c4a6e", secondary: "#0369a1", muted: "#38bdf8" },
865
+ "#7dd3fc"
866
+ );
867
+ F(
868
+ "Desert",
869
+ {
870
+ primary: "#b45309",
871
+ primaryHover: "#92400e",
872
+ success: "#4d7c0f",
873
+ warning: "#a16207",
874
+ error: "#b91c1c",
875
+ info: "#0e7490"
876
+ },
877
+ { primary: "#fefce8", secondary: "#fef9c3", tertiary: "#fef08a", hover: "#fef9c3" },
878
+ { primary: "#422006", secondary: "#713f12", muted: "#ca8a04" },
879
+ "#fde047"
880
+ );
881
+ F(
882
+ "Sunset",
883
+ {
884
+ primary: "#ea580c",
885
+ primaryHover: "#c2410c",
886
+ success: "#16a34a",
887
+ warning: "#d97706",
888
+ error: "#dc2626",
889
+ info: "#0891b2"
890
+ },
891
+ { primary: "#fff7ed", secondary: "#ffedd5", tertiary: "#fed7aa", hover: "#ffedd5" },
892
+ { primary: "#431407", secondary: "#9a3412", muted: "#f97316" },
893
+ "#fdba74"
894
+ );
895
+ F(
896
+ "Aurora",
897
+ {
898
+ primary: "#0d9488",
899
+ primaryHover: "#0f766e",
900
+ success: "#22c55e",
901
+ warning: "#eab308",
902
+ error: "#ef4444",
903
+ info: "#06b6d4"
904
+ },
905
+ { primary: "#f0fdfa", secondary: "#ccfbf1", tertiary: "#99f6e4", hover: "#ccfbf1" },
906
+ { primary: "#134e4a", secondary: "#115e59", muted: "#2dd4bf" },
907
+ "#5eead4"
908
+ );
909
+ F(
910
+ "Lavender",
911
+ {
912
+ primary: "#7e22ce",
913
+ primaryHover: "#6b21a8",
914
+ success: "#16a34a",
915
+ warning: "#d97706",
916
+ error: "#dc2626",
917
+ info: "#0891b2"
918
+ },
919
+ { primary: "#faf5ff", secondary: "#f3e8ff", tertiary: "#e9d5ff", hover: "#f3e8ff" },
920
+ { primary: "#3b0764", secondary: "#581c87", muted: "#a855f7" },
921
+ "#d8b4fe"
922
+ );
923
+ F(
924
+ "Autumn",
925
+ {
926
+ primary: "#c2410c",
927
+ primaryHover: "#9a3412",
928
+ success: "#4d7c0f",
929
+ warning: "#a16207",
930
+ error: "#b91c1c",
931
+ info: "#0e7490"
932
+ },
933
+ { primary: "#fef2f2", secondary: "#fee2e2", tertiary: "#fecaca", hover: "#fee2e2" },
934
+ { primary: "#450a0a", secondary: "#7f1d1d", muted: "#f87171" },
935
+ "#fca5a5"
936
+ );
937
+ F(
938
+ "Spring",
939
+ {
940
+ primary: "#16a34a",
941
+ primaryHover: "#15803d",
942
+ success: "#22c55e",
943
+ warning: "#eab308",
944
+ error: "#ef4444",
945
+ info: "#06b6d4"
946
+ },
947
+ { primary: "#f0fdf4", secondary: "#dcfce7", tertiary: "#bbf7d0", hover: "#dcfce7" },
948
+ { primary: "#14532d", secondary: "#166534", muted: "#4ade80" },
949
+ "#86efac"
950
+ );
951
+ F(
952
+ "Arctic",
953
+ {
954
+ primary: "#0ea5e9",
955
+ primaryHover: "#0284c7",
956
+ success: "#10b981",
957
+ warning: "#f59e0b",
958
+ error: "#ef4444",
959
+ info: "#06b6d4"
960
+ },
961
+ { primary: "#f0f9ff", secondary: "#e0f2fe", tertiary: "#bae6fd", hover: "#e0f2fe" },
962
+ { primary: "#0c4a6e", secondary: "#0369a1", muted: "#7dd3fc" },
963
+ "#bae6fd"
964
+ );
965
+ F(
966
+ "Tropical",
967
+ {
968
+ primary: "#0d9488",
969
+ primaryHover: "#0f766e",
970
+ success: "#16a34a",
971
+ warning: "#f59e0b",
972
+ error: "#ef4444",
973
+ info: "#06b6d4"
974
+ },
975
+ { primary: "#ecfdf5", secondary: "#d1fae5", tertiary: "#a7f3d0", hover: "#d1fae5" },
976
+ { primary: "#064e3b", secondary: "#065f46", muted: "#6ee7b7" },
977
+ "#a7f3d0"
978
+ );
979
+ F(
980
+ "Pastel Rose",
981
+ {
982
+ primary: "#f472b6",
983
+ primaryHover: "#ec4899",
984
+ success: "#4ade80",
985
+ warning: "#fcd34d",
986
+ error: "#fb7185",
987
+ info: "#67e8f9"
988
+ },
989
+ { primary: "#fdf2f8", secondary: "#fce7f3", tertiary: "#fbcfe8", hover: "#fce7f3" },
990
+ { primary: "#831843", secondary: "#9d174d", muted: "#f9a8d4" },
991
+ "#f9a8d4"
992
+ );
993
+ F(
994
+ "Pastel Sky",
995
+ {
996
+ primary: "#38bdf8",
997
+ primaryHover: "#0ea5e9",
998
+ success: "#4ade80",
999
+ warning: "#fcd34d",
1000
+ error: "#fb7185",
1001
+ info: "#67e8f9"
1002
+ },
1003
+ { primary: "#f0f9ff", secondary: "#e0f2fe", tertiary: "#bae6fd", hover: "#e0f2fe" },
1004
+ { primary: "#075985", secondary: "#0369a1", muted: "#7dd3fc" },
1005
+ "#bae6fd"
1006
+ );
1007
+ F(
1008
+ "Pastel Mint",
1009
+ {
1010
+ primary: "#34d399",
1011
+ primaryHover: "#10b981",
1012
+ success: "#4ade80",
1013
+ warning: "#fcd34d",
1014
+ error: "#fb7185",
1015
+ info: "#67e8f9"
1016
+ },
1017
+ { primary: "#ecfdf5", secondary: "#d1fae5", tertiary: "#a7f3d0", hover: "#d1fae5" },
1018
+ { primary: "#065f46", secondary: "#047857", muted: "#6ee7b7" },
1019
+ "#a7f3d0"
1020
+ );
1021
+ F(
1022
+ "Pastel Peach",
1023
+ {
1024
+ primary: "#fb923c",
1025
+ primaryHover: "#f97316",
1026
+ success: "#4ade80",
1027
+ warning: "#fcd34d",
1028
+ error: "#fb7185",
1029
+ info: "#67e8f9"
1030
+ },
1031
+ { primary: "#fff7ed", secondary: "#ffedd5", tertiary: "#fed7aa", hover: "#ffedd5" },
1032
+ { primary: "#7c2d12", secondary: "#9a3412", muted: "#fdba74" },
1033
+ "#fed7aa"
1034
+ );
1035
+ F(
1036
+ "Pastel Lavender",
1037
+ {
1038
+ primary: "#a78bfa",
1039
+ primaryHover: "#8b5cf6",
1040
+ success: "#4ade80",
1041
+ warning: "#fcd34d",
1042
+ error: "#fb7185",
1043
+ info: "#67e8f9"
1044
+ },
1045
+ { primary: "#f5f3ff", secondary: "#ede9fe", tertiary: "#ddd6fe", hover: "#ede9fe" },
1046
+ { primary: "#4c1d95", secondary: "#5b21b6", muted: "#c4b5fd" },
1047
+ "#ddd6fe"
1048
+ );
1049
+ F(
1050
+ "Pastel Lemon",
1051
+ {
1052
+ primary: "#facc15",
1053
+ primaryHover: "#eab308",
1054
+ success: "#4ade80",
1055
+ warning: "#fcd34d",
1056
+ error: "#fb7185",
1057
+ info: "#67e8f9"
1058
+ },
1059
+ { primary: "#fefce8", secondary: "#fef9c3", tertiary: "#fef08a", hover: "#fef9c3" },
1060
+ { primary: "#713f12", secondary: "#854d0e", muted: "#fde047" },
1061
+ "#fef08a"
1062
+ );
1063
+ F(
1064
+ "Pastel Sage",
1065
+ {
1066
+ primary: "#86efac",
1067
+ primaryHover: "#4ade80",
1068
+ success: "#22c55e",
1069
+ warning: "#fcd34d",
1070
+ error: "#fb7185",
1071
+ info: "#67e8f9"
1072
+ },
1073
+ { primary: "#f0fdf4", secondary: "#dcfce7", tertiary: "#bbf7d0", hover: "#dcfce7" },
1074
+ { primary: "#166534", secondary: "#15803d", muted: "#86efac" },
1075
+ "#bbf7d0"
1076
+ );
1077
+ F(
1078
+ "Pastel Coral",
1079
+ {
1080
+ primary: "#fb7185",
1081
+ primaryHover: "#f43f5e",
1082
+ success: "#4ade80",
1083
+ warning: "#fcd34d",
1084
+ error: "#ef4444",
1085
+ info: "#67e8f9"
1086
+ },
1087
+ { primary: "#fff1f2", secondary: "#ffe4e6", tertiary: "#fecdd3", hover: "#ffe4e6" },
1088
+ { primary: "#881337", secondary: "#9f1239", muted: "#fda4af" },
1089
+ "#fecdd3"
1090
+ );
1091
+ F(
1092
+ "Banking",
1093
+ {
1094
+ primary: "#1e3a5f",
1095
+ primaryHover: "#152c4a",
1096
+ success: "#059669",
1097
+ warning: "#d97706",
1098
+ error: "#dc2626",
1099
+ info: "#0891b2"
1100
+ },
1101
+ { primary: "#f8fafc", secondary: "#f1f5f9", tertiary: "#e2e8f0", hover: "#e2e8f0" },
1102
+ { primary: "#0f172a", secondary: "#334155", muted: "#94a3b8" },
1103
+ "#cbd5e1"
1104
+ );
1105
+ F(
1106
+ "Healthcare",
1107
+ {
1108
+ primary: "#0891b2",
1109
+ primaryHover: "#0e7490",
1110
+ success: "#059669",
1111
+ warning: "#d97706",
1112
+ error: "#dc2626",
1113
+ info: "#0284c7"
1114
+ },
1115
+ { primary: "#f0fdfa", secondary: "#e0f7fa", tertiary: "#b2ebf2", hover: "#e0f7fa" },
1116
+ { primary: "#134e4a", secondary: "#1a6b6a", muted: "#80cbc4" },
1117
+ "#b2dfdb"
1118
+ );
1119
+ F(
1120
+ "Legal",
1121
+ {
1122
+ primary: "#1e293b",
1123
+ primaryHover: "#0f172a",
1124
+ success: "#059669",
1125
+ warning: "#d97706",
1126
+ error: "#dc2626",
1127
+ info: "#0284c7"
1128
+ },
1129
+ { primary: "#fafaf9", secondary: "#f5f5f4", tertiary: "#e7e5e4", hover: "#e7e5e4" },
1130
+ { primary: "#0f172a", secondary: "#44403c", muted: "#a8a29e" },
1131
+ "#d6d3d1"
1132
+ );
1133
+ F(
1134
+ "Tech Startup",
1135
+ {
1136
+ primary: "#7c3aed",
1137
+ primaryHover: "#6d28d9",
1138
+ success: "#10b981",
1139
+ warning: "#f59e0b",
1140
+ error: "#ef4444",
1141
+ info: "#06b6d4"
1142
+ },
1143
+ { primary: "#faf5ff", secondary: "#f3e8ff", tertiary: "#e9d5ff", hover: "#f3e8ff" },
1144
+ { primary: "#1e1b4b", secondary: "#4c1d95", muted: "#a78bfa" },
1145
+ "#c4b5fd"
1146
+ );
1147
+ F(
1148
+ "Enterprise",
1149
+ {
1150
+ primary: "#1e40af",
1151
+ primaryHover: "#1e3a8a",
1152
+ success: "#059669",
1153
+ warning: "#d97706",
1154
+ error: "#dc2626",
1155
+ info: "#0891b2"
1156
+ },
1157
+ { primary: "#eff6ff", secondary: "#dbeafe", tertiary: "#bfdbfe", hover: "#dbeafe" },
1158
+ { primary: "#1e3a5f", secondary: "#1e40af", muted: "#60a5fa" },
1159
+ "#93c5fd"
1160
+ );
1161
+ F(
1162
+ "Government",
1163
+ {
1164
+ primary: "#1d4ed8",
1165
+ primaryHover: "#1e40af",
1166
+ success: "#059669",
1167
+ warning: "#d97706",
1168
+ error: "#dc2626",
1169
+ info: "#0891b2"
1170
+ },
1171
+ { primary: "#f8fafc", secondary: "#f1f5f9", tertiary: "#e2e8f0", hover: "#e2e8f0" },
1172
+ { primary: "#0f172a", secondary: "#1e293b", muted: "#64748b" },
1173
+ "#cbd5e1"
1174
+ );
1175
+ F(
1176
+ "Education",
1177
+ {
1178
+ primary: "#059669",
1179
+ primaryHover: "#047857",
1180
+ success: "#16a34a",
1181
+ warning: "#f59e0b",
1182
+ error: "#ef4444",
1183
+ info: "#0891b2"
1184
+ },
1185
+ { primary: "#f0fdf9", secondary: "#d1fae5", tertiary: "#a7f3d0", hover: "#d1fae5" },
1186
+ { primary: "#064e3b", secondary: "#065f46", muted: "#6ee7b7" },
1187
+ "#a7f3d0"
1188
+ );
1189
+ F(
1190
+ "Real Estate",
1191
+ {
1192
+ primary: "#92400e",
1193
+ primaryHover: "#78350f",
1194
+ success: "#059669",
1195
+ warning: "#b45309",
1196
+ error: "#dc2626",
1197
+ info: "#0891b2"
1198
+ },
1199
+ { primary: "#fffbeb", secondary: "#fef3c7", tertiary: "#fde68a", hover: "#fef3c7" },
1200
+ { primary: "#422006", secondary: "#713f12", muted: "#d97706" },
1201
+ "#fcd34d"
1202
+ );
1203
+ F(
1204
+ "Nord",
1205
+ {
1206
+ primary: "#5e81ac",
1207
+ primaryHover: "#4c6b90",
1208
+ success: "#a3be8c",
1209
+ warning: "#ebcb8b",
1210
+ error: "#bf616a",
1211
+ info: "#88c0d0"
1212
+ },
1213
+ { primary: "#eceff4", secondary: "#e5e9f0", tertiary: "#d8dee9", hover: "#d8dee9" },
1214
+ { primary: "#2e3440", secondary: "#3b4252", muted: "#4c566a" },
1215
+ "#d8dee9"
1216
+ );
1217
+ j(
1218
+ "Dracula",
1219
+ {
1220
+ primary: "#bd93f9",
1221
+ primaryHover: "#9d79d9",
1222
+ success: "#50fa7b",
1223
+ warning: "#f1fa8c",
1224
+ error: "#ff5555",
1225
+ info: "#8be9fd"
1226
+ },
1227
+ { primary: "#282a36", secondary: "#343746", tertiary: "#44475a", hover: "#44475a" },
1228
+ { primary: "#f8f8f2", secondary: "#c0c0c0", muted: "#6272a4" },
1229
+ "#44475a"
1230
+ );
1231
+ F(
1232
+ "Solarized Light",
1233
+ {
1234
+ primary: "#268bd2",
1235
+ primaryHover: "#1a6da0",
1236
+ success: "#859900",
1237
+ warning: "#b58900",
1238
+ error: "#dc322f",
1239
+ info: "#2aa198"
1240
+ },
1241
+ { primary: "#fdf6e3", secondary: "#eee8d5", tertiary: "#e0dbc7", hover: "#eee8d5" },
1242
+ { primary: "#073642", secondary: "#586e75", muted: "#93a1a1" },
1243
+ "#eee8d5"
1244
+ );
1245
+ j(
1246
+ "Solarized Dark",
1247
+ {
1248
+ primary: "#268bd2",
1249
+ primaryHover: "#3d98db",
1250
+ success: "#859900",
1251
+ warning: "#b58900",
1252
+ error: "#dc322f",
1253
+ info: "#2aa198"
1254
+ },
1255
+ { primary: "#002b36", secondary: "#073642", tertiary: "#0a4858", hover: "#073642" },
1256
+ { primary: "#eee8d5", secondary: "#93a1a1", muted: "#586e75" },
1257
+ "#073642"
1258
+ );
1259
+ j(
1260
+ "Monokai",
1261
+ {
1262
+ primary: "#66d9ef",
1263
+ primaryHover: "#45c0d6",
1264
+ success: "#a6e22e",
1265
+ warning: "#e6db74",
1266
+ error: "#f92672",
1267
+ info: "#66d9ef"
1268
+ },
1269
+ { primary: "#272822", secondary: "#34352e", tertiary: "#3e3d32", hover: "#3e3d32" },
1270
+ { primary: "#f8f8f2", secondary: "#cfcfc2", muted: "#75715e" },
1271
+ "#3e3d32"
1272
+ );
1273
+ j(
1274
+ "One Dark",
1275
+ {
1276
+ primary: "#61afef",
1277
+ primaryHover: "#4b9ee0",
1278
+ success: "#98c379",
1279
+ warning: "#e5c07b",
1280
+ error: "#e06c75",
1281
+ info: "#56b6c2"
1282
+ },
1283
+ { primary: "#282c34", secondary: "#2c313a", tertiary: "#353b45", hover: "#353b45" },
1284
+ { primary: "#abb2bf", secondary: "#828997", muted: "#545862" },
1285
+ "#3e4452"
1286
+ );
1287
+ j(
1288
+ "Synthwave",
1289
+ {
1290
+ primary: "#ff7edb",
1291
+ primaryHover: "#e660c2",
1292
+ success: "#72f1b8",
1293
+ warning: "#fede5d",
1294
+ error: "#fe4450",
1295
+ info: "#36f9f6"
1296
+ },
1297
+ { primary: "#241b2f", secondary: "#2d2140", tertiary: "#362a50", hover: "#362a50" },
1298
+ { primary: "#f0e4fc", secondary: "#b4a0cc", muted: "#6c5c84" },
1299
+ "#4a3866"
1300
+ );
1301
+ F(
1302
+ "Vaporwave",
1303
+ {
1304
+ primary: "#ff71ce",
1305
+ primaryHover: "#e655b5",
1306
+ success: "#78dcca",
1307
+ warning: "#ffb86c",
1308
+ error: "#ff5555",
1309
+ info: "#76e8fc"
1310
+ },
1311
+ { primary: "#fce4f7", secondary: "#e8d0f4", tertiary: "#d4bcf0", hover: "#e8d0f4" },
1312
+ { primary: "#4a1a4e", secondary: "#7b3f7d", muted: "#c080c0" },
1313
+ "#d8a8e8"
1314
+ );
1315
+ j(
1316
+ "Terminal Green",
1317
+ {
1318
+ primary: "#00ff41",
1319
+ primaryHover: "#00cc34",
1320
+ success: "#00ff41",
1321
+ warning: "#ffff00",
1322
+ error: "#ff0000",
1323
+ info: "#00ffff"
1324
+ },
1325
+ { primary: "#0a0a0a", secondary: "#0d1a0d", tertiary: "#1a2e1a", hover: "#1a2e1a" },
1326
+ { primary: "#00ff41", secondary: "#00cc33", muted: "#008822" },
1327
+ "#003300"
1328
+ );
1329
+ F(
1330
+ "Sepia",
1331
+ {
1332
+ primary: "#8b6914",
1333
+ primaryHover: "#704f10",
1334
+ success: "#6b8e23",
1335
+ warning: "#cd853f",
1336
+ error: "#b22222",
1337
+ info: "#5f9ea0"
1338
+ },
1339
+ { primary: "#faf0e6", secondary: "#f5e6d3", tertiary: "#eddcc7", hover: "#f5e6d3" },
1340
+ { primary: "#3e2723", secondary: "#5d4037", muted: "#a1887f" },
1341
+ "#d7ccc8"
1342
+ );
1343
+ F(
1344
+ "Vintage",
1345
+ {
1346
+ primary: "#8d6e63",
1347
+ primaryHover: "#6d4c41",
1348
+ success: "#66bb6a",
1349
+ warning: "#ffb300",
1350
+ error: "#e53935",
1351
+ info: "#29b6f6"
1352
+ },
1353
+ { primary: "#efebe9", secondary: "#d7ccc8", tertiary: "#bcaaa4", hover: "#d7ccc8" },
1354
+ { primary: "#3e2723", secondary: "#5d4037", muted: "#a1887f" },
1355
+ "#bcaaa4"
1356
+ );
1357
+ j(
1358
+ "Cyberpunk",
1359
+ {
1360
+ primary: "#00f0ff",
1361
+ primaryHover: "#00c8d4",
1362
+ success: "#39ff14",
1363
+ warning: "#ffff00",
1364
+ error: "#ff003c",
1365
+ info: "#bf00ff"
1366
+ },
1367
+ { primary: "#0a0e17", secondary: "#131824", tertiary: "#1c2333", hover: "#1c2333" },
1368
+ { primary: "#e0fbfc", secondary: "#80d4dd", muted: "#3a6b72" },
1369
+ "#1c3a44"
1370
+ );
1371
+ j(
1372
+ "Neon",
1373
+ {
1374
+ primary: "#ff00ff",
1375
+ primaryHover: "#cc00cc",
1376
+ success: "#00ff00",
1377
+ warning: "#ffff00",
1378
+ error: "#ff0000",
1379
+ info: "#00ffff"
1380
+ },
1381
+ { primary: "#0d0d0d", secondary: "#1a1a1a", tertiary: "#262626", hover: "#262626" },
1382
+ { primary: "#ffffff", secondary: "#cccccc", muted: "#666666" },
1383
+ "#333333"
1384
+ );
1385
+ j(
1386
+ "Retrowave",
1387
+ {
1388
+ primary: "#f77fbe",
1389
+ primaryHover: "#e462a3",
1390
+ success: "#72f1b8",
1391
+ warning: "#ffe261",
1392
+ error: "#ff4444",
1393
+ info: "#79e8fb"
1394
+ },
1395
+ { primary: "#1b0a2e", secondary: "#261440", tertiary: "#321e52", hover: "#321e52" },
1396
+ { primary: "#ffe6f7", secondary: "#c9a0c9", muted: "#6b4c7a" },
1397
+ "#4a2d66"
1398
+ );
1399
+ F(
1400
+ "Christmas",
1401
+ {
1402
+ primary: "#c41e3a",
1403
+ primaryHover: "#a01830",
1404
+ success: "#228b22",
1405
+ warning: "#ffd700",
1406
+ error: "#dc2626",
1407
+ info: "#0891b2"
1408
+ },
1409
+ { primary: "#fef2f2", secondary: "#fde8e8", tertiary: "#f8d0d0", hover: "#fde8e8" },
1410
+ { primary: "#3b0a0a", secondary: "#7f1d1d", muted: "#dc6868" },
1411
+ "#e8a0a0"
1412
+ );
1413
+ j(
1414
+ "Halloween",
1415
+ {
1416
+ primary: "#ff6600",
1417
+ primaryHover: "#e05500",
1418
+ success: "#4ade80",
1419
+ warning: "#fbbf24",
1420
+ error: "#ff0000",
1421
+ info: "#9333ea"
1422
+ },
1423
+ { primary: "#1a0a00", secondary: "#2d1500", tertiary: "#402000", hover: "#402000" },
1424
+ { primary: "#ffedd5", secondary: "#fdba74", muted: "#9a5c28" },
1425
+ "#5c3400"
1426
+ );
1427
+ F(
1428
+ "Valentine",
1429
+ {
1430
+ primary: "#e11d48",
1431
+ primaryHover: "#be123c",
1432
+ success: "#10b981",
1433
+ warning: "#f59e0b",
1434
+ error: "#dc2626",
1435
+ info: "#ec4899"
1436
+ },
1437
+ { primary: "#fff1f2", secondary: "#ffe4e6", tertiary: "#fecdd3", hover: "#ffe4e6" },
1438
+ { primary: "#4c0519", secondary: "#881337", muted: "#f9a8d4" },
1439
+ "#fda4af"
1440
+ );
1441
+ F(
1442
+ "Easter",
1443
+ {
1444
+ primary: "#a78bfa",
1445
+ primaryHover: "#8b5cf6",
1446
+ success: "#4ade80",
1447
+ warning: "#fcd34d",
1448
+ error: "#fb7185",
1449
+ info: "#67e8f9"
1450
+ },
1451
+ { primary: "#fef9ff", secondary: "#f3e8ff", tertiary: "#e8d5ff", hover: "#f3e8ff" },
1452
+ { primary: "#581c87", secondary: "#6d28d9", muted: "#c4b5fd" },
1453
+ "#ddd6fe"
1454
+ );
1455
+ F(
1456
+ "Summer Beach",
1457
+ {
1458
+ primary: "#0ea5e9",
1459
+ primaryHover: "#0284c7",
1460
+ success: "#10b981",
1461
+ warning: "#f59e0b",
1462
+ error: "#ef4444",
1463
+ info: "#06b6d4"
1464
+ },
1465
+ { primary: "#fffbeb", secondary: "#fef3c7", tertiary: "#fde68a", hover: "#fef3c7" },
1466
+ { primary: "#0c4a6e", secondary: "#0369a1", muted: "#7dd3fc" },
1467
+ "#fcd34d"
1468
+ );
1469
+ F(
1470
+ "Winter Frost",
1471
+ {
1472
+ primary: "#3b82f6",
1473
+ primaryHover: "#2563eb",
1474
+ success: "#10b981",
1475
+ warning: "#f59e0b",
1476
+ error: "#ef4444",
1477
+ info: "#06b6d4"
1478
+ },
1479
+ { primary: "#f0f9ff", secondary: "#e0f2fe", tertiary: "#bae6fd", hover: "#e0f2fe" },
1480
+ { primary: "#1e3a5f", secondary: "#1e40af", muted: "#93c5fd" },
1481
+ "#bfdbfe"
1482
+ );
1483
+ F(
1484
+ "Cherry Blossom",
1485
+ {
1486
+ primary: "#ec4899",
1487
+ primaryHover: "#db2777",
1488
+ success: "#10b981",
1489
+ warning: "#f59e0b",
1490
+ error: "#ef4444",
1491
+ info: "#06b6d4"
1492
+ },
1493
+ { primary: "#fdf2f8", secondary: "#fce7f3", tertiary: "#fbcfe8", hover: "#fce7f3" },
1494
+ { primary: "#831843", secondary: "#9d174d", muted: "#f9a8d4" },
1495
+ "#fbcfe8"
1496
+ );
1497
+ F(
1498
+ "Harvest",
1499
+ {
1500
+ primary: "#b45309",
1501
+ primaryHover: "#92400e",
1502
+ success: "#4d7c0f",
1503
+ warning: "#a16207",
1504
+ error: "#b91c1c",
1505
+ info: "#0e7490"
1506
+ },
1507
+ { primary: "#fffbeb", secondary: "#fef3c7", tertiary: "#fde68a", hover: "#fef3c7" },
1508
+ { primary: "#451a03", secondary: "#78350f", muted: "#d97706" },
1509
+ "#fcd34d"
1510
+ );
1511
+ F(
1512
+ "Japanese Zen",
1513
+ {
1514
+ primary: "#6b7280",
1515
+ primaryHover: "#4b5563",
1516
+ success: "#6b8e23",
1517
+ warning: "#d4a017",
1518
+ error: "#c0392b",
1519
+ info: "#5f9ea0"
1520
+ },
1521
+ { primary: "#faf9f6", secondary: "#f0ece3", tertiary: "#e6e0d4", hover: "#f0ece3" },
1522
+ { primary: "#2c2c2c", secondary: "#5c5c5c", muted: "#a0998a" },
1523
+ "#d5cec0"
1524
+ );
1525
+ F(
1526
+ "Moroccan",
1527
+ {
1528
+ primary: "#c2410c",
1529
+ primaryHover: "#9a3412",
1530
+ success: "#15803d",
1531
+ warning: "#ca8a04",
1532
+ error: "#b91c1c",
1533
+ info: "#0e7490"
1534
+ },
1535
+ { primary: "#fffbf0", secondary: "#fef3e0", tertiary: "#fde6c4", hover: "#fef3e0" },
1536
+ { primary: "#3a1a00", secondary: "#7c2d12", muted: "#d97706" },
1537
+ "#f5d0a0"
1538
+ );
1539
+ F(
1540
+ "Scandinavian",
1541
+ {
1542
+ primary: "#4b5563",
1543
+ primaryHover: "#374151",
1544
+ success: "#059669",
1545
+ warning: "#d97706",
1546
+ error: "#dc2626",
1547
+ info: "#0891b2"
1548
+ },
1549
+ { primary: "#ffffff", secondary: "#f9fafb", tertiary: "#f3f4f6", hover: "#f3f4f6" },
1550
+ { primary: "#111827", secondary: "#374151", muted: "#9ca3af" },
1551
+ "#e5e7eb"
1552
+ );
1553
+ F(
1554
+ "Mediterranean",
1555
+ {
1556
+ primary: "#1e40af",
1557
+ primaryHover: "#1e3a8a",
1558
+ success: "#059669",
1559
+ warning: "#d97706",
1560
+ error: "#dc2626",
1561
+ info: "#0891b2"
1562
+ },
1563
+ { primary: "#eff6ff", secondary: "#dbeafe", tertiary: "#bfdbfe", hover: "#dbeafe" },
1564
+ { primary: "#1e3a5f", secondary: "#2563eb", muted: "#93c5fd" },
1565
+ "#bfdbfe"
1566
+ );
1567
+ F(
1568
+ "Chinese New Year",
1569
+ {
1570
+ primary: "#dc2626",
1571
+ primaryHover: "#b91c1c",
1572
+ success: "#16a34a",
1573
+ warning: "#d4a017",
1574
+ error: "#ef4444",
1575
+ info: "#0891b2"
1576
+ },
1577
+ { primary: "#fef2f2", secondary: "#fee2e2", tertiary: "#fecaca", hover: "#fee2e2" },
1578
+ { primary: "#450a0a", secondary: "#991b1b", muted: "#f87171" },
1579
+ "#fca5a5"
1580
+ );
1581
+ F(
1582
+ "Indian Festive",
1583
+ {
1584
+ primary: "#d97706",
1585
+ primaryHover: "#b45309",
1586
+ success: "#16a34a",
1587
+ warning: "#ca8a04",
1588
+ error: "#dc2626",
1589
+ info: "#7c3aed"
1590
+ },
1591
+ { primary: "#fffbeb", secondary: "#fef3c7", tertiary: "#fde68a", hover: "#fef3c7" },
1592
+ { primary: "#451a03", secondary: "#92400e", muted: "#f59e0b" },
1593
+ "#fcd34d"
1594
+ );
1595
+ F(
1596
+ "Brazilian Carnival",
1597
+ {
1598
+ primary: "#16a34a",
1599
+ primaryHover: "#15803d",
1600
+ success: "#22c55e",
1601
+ warning: "#facc15",
1602
+ error: "#ef4444",
1603
+ info: "#0ea5e9"
1604
+ },
1605
+ { primary: "#f0fdf4", secondary: "#dcfce7", tertiary: "#bbf7d0", hover: "#dcfce7" },
1606
+ { primary: "#052e16", secondary: "#166534", muted: "#4ade80" },
1607
+ "#86efac"
1608
+ );
1609
+ F(
1610
+ "African Earth",
1611
+ {
1612
+ primary: "#92400e",
1613
+ primaryHover: "#78350f",
1614
+ success: "#4d7c0f",
1615
+ warning: "#a16207",
1616
+ error: "#b91c1c",
1617
+ info: "#0e7490"
1618
+ },
1619
+ { primary: "#faf5f0", secondary: "#f0e6d6", tertiary: "#e6d5bb", hover: "#f0e6d6" },
1620
+ { primary: "#2b1a0e", secondary: "#5c3d1e", muted: "#a08060" },
1621
+ "#d4b896"
1622
+ );
1623
+ j(
1624
+ "High Contrast Dark",
1625
+ {
1626
+ primary: "#ffff00",
1627
+ primaryHover: "#cccc00",
1628
+ success: "#00ff00",
1629
+ warning: "#ff8c00",
1630
+ error: "#ff0000",
1631
+ info: "#00ffff"
1632
+ },
1633
+ { primary: "#000000", secondary: "#1a1a1a", tertiary: "#333333", hover: "#333333" },
1634
+ { primary: "#ffffff", secondary: "#ffffff", muted: "#cccccc" },
1635
+ "#ffffff"
1636
+ );
1637
+ F(
1638
+ "Monochrome",
1639
+ {
1640
+ primary: "#404040",
1641
+ primaryHover: "#262626",
1642
+ success: "#4d7c0f",
1643
+ warning: "#a16207",
1644
+ error: "#b91c1c",
1645
+ info: "#0e7490"
1646
+ },
1647
+ { primary: "#fafafa", secondary: "#f0f0f0", tertiary: "#e0e0e0", hover: "#e0e0e0" },
1648
+ { primary: "#1a1a1a", secondary: "#404040", muted: "#808080" },
1649
+ "#c0c0c0"
1650
+ );
1651
+ F(
1652
+ "Enhanced Contrast",
1653
+ {
1654
+ primary: "#0050b3",
1655
+ primaryHover: "#003d8c",
1656
+ success: "#006400",
1657
+ warning: "#cc7000",
1658
+ error: "#cc0000",
1659
+ info: "#006680"
1660
+ },
1661
+ { primary: "#ffffff", secondary: "#f5f5f5", tertiary: "#ebebeb", hover: "#ebebeb" },
1662
+ { primary: "#000000", secondary: "#1a1a1a", muted: "#595959" },
1663
+ "#8c8c8c"
1664
+ );
1665
+ F(
1666
+ "Minimalist",
1667
+ {
1668
+ primary: "#18181b",
1669
+ primaryHover: "#27272a",
1670
+ success: "#22c55e",
1671
+ warning: "#eab308",
1672
+ error: "#ef4444",
1673
+ info: "#3b82f6"
1674
+ },
1675
+ { primary: "#ffffff", secondary: "#fafafa", tertiary: "#f5f5f5", hover: "#f5f5f5" },
1676
+ { primary: "#0a0a0a", secondary: "#404040", muted: "#a3a3a3" },
1677
+ "#e5e5e5"
1678
+ );
1679
+ j(
1680
+ "Warm Dark",
1681
+ {
1682
+ primary: "#f59e0b",
1683
+ primaryHover: "#d97706",
1684
+ success: "#10b981",
1685
+ warning: "#fbbf24",
1686
+ error: "#f87171",
1687
+ info: "#38bdf8"
1688
+ },
1689
+ { primary: "#1c1917", secondary: "#292524", tertiary: "#44403c", hover: "#44403c" },
1690
+ { primary: "#fafaf9", secondary: "#d6d3d1", muted: "#78716c" },
1691
+ "#57534e"
1692
+ );
1693
+ j(
1694
+ "Soft Dark",
1695
+ {
1696
+ primary: "#a78bfa",
1697
+ primaryHover: "#8b5cf6",
1698
+ success: "#34d399",
1699
+ warning: "#fcd34d",
1700
+ error: "#fb7185",
1701
+ info: "#67e8f9"
1702
+ },
1703
+ { primary: "#1e1e2e", secondary: "#262637", tertiary: "#313147", hover: "#313147" },
1704
+ { primary: "#e8e8f0", secondary: "#a0a0b8", muted: "#5c5c74" },
1705
+ "#3e3e58"
1706
+ );
1707
+ F(
1708
+ "Coffee",
1709
+ {
1710
+ primary: "#6f4e37",
1711
+ primaryHover: "#5c3d28",
1712
+ success: "#4d7c0f",
1713
+ warning: "#a16207",
1714
+ error: "#b91c1c",
1715
+ info: "#0e7490"
1716
+ },
1717
+ { primary: "#faf6f1", secondary: "#f0e8dc", tertiary: "#e6d8c6", hover: "#f0e8dc" },
1718
+ { primary: "#2c1a0e", secondary: "#5c3d28", muted: "#a08868" },
1719
+ "#d4c4a8"
1720
+ );
1721
+ F(
1722
+ "Wine",
1723
+ {
1724
+ primary: "#7f1d1d",
1725
+ primaryHover: "#641717",
1726
+ success: "#059669",
1727
+ warning: "#d97706",
1728
+ error: "#dc2626",
1729
+ info: "#0891b2"
1730
+ },
1731
+ { primary: "#fef2f2", secondary: "#fde8e8", tertiary: "#f8d0d0", hover: "#fde8e8" },
1732
+ { primary: "#3b0a0a", secondary: "#7f1d1d", muted: "#dc6868" },
1733
+ "#e8a0a0"
1734
+ );
1735
+ const gr = process.env.NODE_ENV === "development";
1736
+ let V = {
1737
+ enabled: gr,
1738
+ slowRenderThreshold: 16
1739
+ };
1740
+ const We = [], te = /* @__PURE__ */ new Map(), _e = /* @__PURE__ */ new Map();
1741
+ function yr() {
1742
+ We.length = 0, te.clear(), _e.clear();
1743
+ }
1744
+ function hr(e) {
1745
+ const t = V.slowRenderThreshold;
1746
+ return We.filter((r) => r.actualDuration > t);
1747
+ }
1748
+ function ee(e) {
1749
+ return e < 1 ? `${(e * 1e3).toFixed(0)}μs` : e < 1e3 ? `${e.toFixed(2)}ms` : `${(e / 1e3).toFixed(2)}s`;
1750
+ }
1751
+ function Zo() {
1752
+ const e = Array.from(te.values()), t = hr(), r = e.reduce((o, i) => o + i.renderCount, 0), a = e.length > 0 ? e.reduce((o, i) => o + i.avgRenderTime, 0) / e.length : 0, n = Array.from(_e.values());
1753
+ return { stats: e, slowRenders: t, totalRenders: r, avgRenderTime: a, marks: n };
1754
+ }
1755
+ function br() {
1756
+ const e = Zo();
1757
+ console.group(
1758
+ "%c[Nice2Dev Performance Report]",
1759
+ "color: var(--nice-info, #6366f1); font-weight: bold; font-size: 14px"
1760
+ ), console.log(`Total renders: ${e.totalRenders}`), console.log(`Average render time: ${ee(e.avgRenderTime)}`), console.log(`Slow renders: ${e.slowRenders.length}`), console.group("Component Stats"), console.table(
1761
+ e.stats.sort((t, r) => r.totalRenderTime - t.totalRenderTime).map((t) => ({
1762
+ Name: t.componentName,
1763
+ Renders: t.renderCount,
1764
+ "Avg Time": ee(t.avgRenderTime),
1765
+ "Max Time": ee(t.maxRenderTime),
1766
+ "Total Time": ee(t.totalRenderTime),
1767
+ "Slow Renders": t.slowRenderCount
1768
+ }))
1769
+ ), console.groupEnd(), e.slowRenders.length > 0 && (console.group("Slow Renders (last 10)"), console.table(
1770
+ e.slowRenders.slice(-10).map((t) => ({
1771
+ Component: t.componentName,
1772
+ Phase: t.phase,
1773
+ Duration: ee(t.actualDuration),
1774
+ Time: new Date(t.timestamp).toLocaleTimeString()
1775
+ }))
1776
+ ), console.groupEnd()), e.marks.length > 0 && (console.group("Custom Marks"), console.table(
1777
+ e.marks.filter((t) => t.duration).map((t) => ({
1778
+ Name: t.name,
1779
+ Duration: ee(t.duration)
1780
+ }))
1781
+ ), console.groupEnd()), console.groupEnd();
1782
+ }
1783
+ const ri = he.memo(
1784
+ ({ position: e = "bottom-right", defaultCollapsed: t = true }) => {
1785
+ const [r, a] = he.useState(t), [n, o] = he.useState([]), [i, s] = he.useState({ used: 0, total: 0 });
1786
+ if (he.useEffect(() => {
1787
+ const l = () => {
1788
+ const u = Array.from(te.values());
1789
+ o(u.sort((y, f) => f.totalRenderTime - y.totalRenderTime).slice(0, 10));
1790
+ const m = window.performance;
1791
+ m.memory && s({
1792
+ used: m.memory.usedJSHeapSize / 1024 / 1024,
1793
+ total: m.memory.totalJSHeapSize / 1024 / 1024
1794
+ });
1795
+ };
1796
+ l();
1797
+ const d = setInterval(l, 2e3);
1798
+ return () => clearInterval(d);
1799
+ }, []), !V.enabled)
1800
+ return null;
1801
+ const c = {
1802
+ position: "fixed",
1803
+ zIndex: 99999,
1804
+ ...e.includes("top") ? { top: 8 } : { bottom: 8 },
1805
+ ...e.includes("left") ? { left: 8 } : { right: 8 }
1806
+ };
1807
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1808
+ "div",
1809
+ {
1810
+ style: {
1811
+ ...c,
1812
+ background: "var(--nice-overlay-85, rgba(0, 0, 0, 0.85))",
1813
+ color: "var(--nice-text-on-primary, #fff)",
1814
+ borderRadius: 8,
1815
+ fontSize: 11,
1816
+ fontFamily: "Monaco, Consolas, monospace",
1817
+ padding: r ? "4px 8px" : 8,
1818
+ maxWidth: r ? "auto" : 300,
1819
+ maxHeight: r ? "auto" : 400,
1820
+ overflow: "auto"
1821
+ },
1822
+ children: [
1823
+ /* @__PURE__ */ jsxRuntime.jsxs(
1824
+ "div",
1825
+ {
1826
+ style: { cursor: "pointer", display: "flex", alignItems: "center", gap: 8 },
1827
+ onClick: () => a((l) => !l),
1828
+ children: [
1829
+ /* @__PURE__ */ jsxRuntime.jsx(
1830
+ "span",
1831
+ {
1832
+ "aria-hidden": "true",
1833
+ style: {
1834
+ width: 8,
1835
+ height: 8,
1836
+ borderRadius: "50%",
1837
+ background: "var(--nice-color-success, #22c55e)"
1838
+ }
1839
+ }
1840
+ ),
1841
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Profiler" }),
1842
+ i.used > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
1843
+ "span",
1844
+ {
1845
+ style: {
1846
+ color: i.used > 100 ? "var(--nice-color-warning, #f59e0b)" : "var(--nice-text-muted, #64748b)"
1847
+ },
1848
+ children: [
1849
+ i.used.toFixed(0),
1850
+ "MB"
1851
+ ]
1852
+ }
1853
+ ),
1854
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { marginLeft: "auto", opacity: 0.5, display: "inline-flex" }, children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: r ? "chevron-down" : "chevron-up", size: 12 }) })
1855
+ ]
1856
+ }
1857
+ ),
1858
+ !r && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { marginTop: 8 }, children: [
1859
+ /* @__PURE__ */ jsxRuntime.jsx(
1860
+ "div",
1861
+ {
1862
+ style: {
1863
+ borderBottom: "1px solid var(--nice-border-color, #333)",
1864
+ paddingBottom: 4,
1865
+ marginBottom: 8
1866
+ },
1867
+ children: /* @__PURE__ */ jsxRuntime.jsx("strong", { children: "Top Components" })
1868
+ }
1869
+ ),
1870
+ n.map((l) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { marginBottom: 4, display: "flex", gap: 8 }, children: [
1871
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { flex: 1, overflow: "hidden", textOverflow: "ellipsis" }, children: l.componentName }),
1872
+ /* @__PURE__ */ jsxRuntime.jsx(
1873
+ "span",
1874
+ {
1875
+ style: {
1876
+ color: l.avgRenderTime > 16 ? "var(--nice-color-warning, #f59e0b)" : "var(--nice-color-success, #22c55e)"
1877
+ },
1878
+ children: ee(l.avgRenderTime)
1879
+ }
1880
+ ),
1881
+ /* @__PURE__ */ jsxRuntime.jsxs(
1882
+ "span",
1883
+ {
1884
+ style: {
1885
+ color: "var(--nice-text-muted, #64748b)",
1886
+ minWidth: 30,
1887
+ textAlign: "right"
1888
+ },
1889
+ children: [
1890
+ "x",
1891
+ l.renderCount
1892
+ ]
1893
+ }
1894
+ )
1895
+ ] }, l.componentName)),
1896
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { marginTop: 8, display: "flex", gap: 8 }, children: [
1897
+ /* @__PURE__ */ jsxRuntime.jsx(
1898
+ "button",
1899
+ {
1900
+ onClick: br,
1901
+ style: {
1902
+ flex: 1,
1903
+ padding: "4px 8px",
1904
+ background: "var(--nice-bg-tertiary, #333)",
1905
+ border: "none",
1906
+ borderRadius: 4,
1907
+ color: "var(--nice-text-primary, #fff)",
1908
+ cursor: "pointer",
1909
+ fontSize: 10
1910
+ },
1911
+ children: "Print Report"
1912
+ }
1913
+ ),
1914
+ /* @__PURE__ */ jsxRuntime.jsx(
1915
+ "button",
1916
+ {
1917
+ onClick: yr,
1918
+ style: {
1919
+ flex: 1,
1920
+ padding: "4px 8px",
1921
+ background: "var(--nice-bg-tertiary, #333)",
1922
+ border: "none",
1923
+ borderRadius: 4,
1924
+ color: "var(--nice-text-primary, #fff)",
1925
+ cursor: "pointer",
1926
+ fontSize: 10
1927
+ },
1928
+ children: "Clear"
1929
+ }
1930
+ )
1931
+ ] })
1932
+ ] })
1933
+ ]
1934
+ }
1935
+ );
1936
+ }
1937
+ );
1938
+ ri.displayName = "ProfilerOverlay";
1939
+ process.env.NODE_ENV === "development";
1940
+ he.createContext(null);
1941
+ he.createContext({
1942
+ enabled: true,
1943
+ active: false,
1944
+ run: () => {
1945
+ }
1946
+ });
1947
+ const Dt = "nice-tutorial-button-styles";
1948
+ if (typeof document < "u" && !document.getElementById(Dt)) {
1949
+ const e = document.createElement("style");
1950
+ e.id = Dt, e.textContent = `
1951
+ .nice-tutorial-button {
1952
+ display: inline-flex;
1953
+ align-items: center;
1954
+ justify-content: center;
1955
+ border: 1px solid var(--nice-border, #cbd5e1);
1956
+ background: var(--nice-bg, #fff);
1957
+ color: var(--nice-text-secondary, #475569);
1958
+ border-radius: var(--nice-radius-full, 9999px);
1959
+ cursor: help;
1960
+ font-weight: 700;
1961
+ line-height: 1;
1962
+ padding: 0;
1963
+ transition: background var(--nice-transition, 200ms ease), color var(--nice-transition, 200ms ease), border-color var(--nice-transition, 200ms ease);
1964
+ }
1965
+ .nice-tutorial-button:hover {
1966
+ background: var(--nice-primary, #2563eb);
1967
+ border-color: var(--nice-primary, #2563eb);
1968
+ color: var(--nice-text-inverse, #fff);
1969
+ }
1970
+ .nice-tutorial-button:focus-visible {
1971
+ outline: none;
1972
+ box-shadow: 0 0 0 2px var(--nice-bg, #fff), 0 0 0 4px var(--nice-primary, #2563eb);
1973
+ }
1974
+ .nice-tutorial-button--sm { width: 16px; height: 16px; font-size: 11px; }
1975
+ .nice-tutorial-button--md { width: 20px; height: 20px; font-size: 12px; }
1976
+ `, document.head.appendChild(e);
1977
+ }
1978
+ he.createContext(null);
1979
+ he.createContext(null);
1980
+ he.createContext(null);
1981
+ he.createContext(null);
5
1982
  const DEFAULT_VIEW_CONFIG$1 = {
6
1983
  timeUnit: "day",
7
1984
  showUtilization: true,
@@ -29,17 +2006,17 @@ const NiceResourceAllocation = ({
29
2006
  readOnly = false,
30
2007
  className = ""
31
2008
  }) => {
32
- var _a, _b;
2009
+ var _a2, _b;
33
2010
  const config = { ...DEFAULT_VIEW_CONFIG$1, ...externalConfig };
34
- const [selectedAllocation, setSelectedAllocation] = React.useState(null);
35
- const [hoveredCell, setHoveredCell] = React.useState(null);
36
- const [timeUnit, setTimeUnit] = React.useState(config.timeUnit);
37
- const [expandedResources, setExpandedResources] = React.useState(
2011
+ const [selectedAllocation, setSelectedAllocation] = he.useState(null);
2012
+ const [hoveredCell, setHoveredCell] = he.useState(null);
2013
+ const [timeUnit, setTimeUnit] = he.useState(config.timeUnit);
2014
+ const [expandedResources, setExpandedResources] = he.useState(
38
2015
  new Set(resources.map((r) => r.id))
39
2016
  );
40
- const [showAllocationModal, setShowAllocationModal] = React.useState(false);
41
- const [newAllocation, setNewAllocation] = React.useState({});
42
- const timePeriods = React.useMemo(() => {
2017
+ const [showAllocationModal, setShowAllocationModal] = he.useState(false);
2018
+ const [newAllocation, setNewAllocation] = he.useState({});
2019
+ const timePeriods = he.useMemo(() => {
43
2020
  const periods = [];
44
2021
  const increment = TIME_INCREMENTS[timeUnit];
45
2022
  let current = new Date(dateRange.start);
@@ -49,7 +2026,7 @@ const NiceResourceAllocation = ({
49
2026
  }
50
2027
  return periods;
51
2028
  }, [dateRange.start, dateRange.end, timeUnit]);
52
- const utilizationMap = React.useMemo(() => {
2029
+ const utilizationMap = he.useMemo(() => {
53
2030
  const map = /* @__PURE__ */ new Map();
54
2031
  resources.forEach((resource) => {
55
2032
  const resourceMap = /* @__PURE__ */ new Map();
@@ -80,7 +2057,7 @@ const NiceResourceAllocation = ({
80
2057
  });
81
2058
  return map;
82
2059
  }, [resources, allocations, timePeriods, timeUnit]);
83
- const conflicts = React.useMemo(() => {
2060
+ const conflicts = he.useMemo(() => {
84
2061
  const conflictList = [];
85
2062
  utilizationMap.forEach((resourceMap, resourceId) => {
86
2063
  const resource = resources.find((r) => r.id === resourceId);
@@ -108,7 +2085,7 @@ const NiceResourceAllocation = ({
108
2085
  });
109
2086
  return conflictList;
110
2087
  }, [utilizationMap, allocations, resources, timeUnit]);
111
- const getCellAllocations = React.useCallback(
2088
+ const getCellAllocations = he.useCallback(
112
2089
  (resourceId, date) => {
113
2090
  const periodStart = date.getTime();
114
2091
  const periodEnd = periodStart + TIME_INCREMENTS[timeUnit];
@@ -124,8 +2101,8 @@ const NiceResourceAllocation = ({
124
2101
  [allocations, timeUnit]
125
2102
  );
126
2103
  const getCellColor = (resourceId, date) => {
127
- var _a2;
128
- const util = (_a2 = utilizationMap.get(resourceId)) == null ? void 0 : _a2.get(date.getTime());
2104
+ var _a3;
2105
+ const util = (_a3 = utilizationMap.get(resourceId)) == null ? void 0 : _a3.get(date.getTime());
129
2106
  if (!util) {
130
2107
  return "transparent";
131
2108
  }
@@ -155,7 +2132,7 @@ const NiceResourceAllocation = ({
155
2132
  }
156
2133
  };
157
2134
  const handleCellClick = (resourceId, date) => {
158
- var _a2;
2135
+ var _a3;
159
2136
  if (readOnly) {
160
2137
  return;
161
2138
  }
@@ -163,7 +2140,7 @@ const NiceResourceAllocation = ({
163
2140
  resourceId,
164
2141
  start: date,
165
2142
  end: new Date(date.getTime() + TIME_INCREMENTS[timeUnit]),
166
- hoursPerDay: ((_a2 = resources.find((r) => r.id === resourceId)) == null ? void 0 : _a2.maxCapacity) || 8,
2143
+ hoursPerDay: ((_a3 = resources.find((r) => r.id === resourceId)) == null ? void 0 : _a3.maxCapacity) || 8,
167
2144
  status: "tentative"
168
2145
  });
169
2146
  setShowAllocationModal(true);
@@ -196,17 +2173,17 @@ const NiceResourceAllocation = ({
196
2173
  const getResourceTypeIcon = (type) => {
197
2174
  switch (type) {
198
2175
  case "human":
199
- return "👤";
2176
+ return "user";
200
2177
  case "equipment":
201
- return "🔧";
2178
+ return "settings";
202
2179
  case "room":
203
- return "🏢";
2180
+ return "building";
204
2181
  case "vehicle":
205
- return "🚗";
2182
+ return "map-pin";
206
2183
  case "material":
207
- return "📦";
2184
+ return "box";
208
2185
  default:
209
- return "📋";
2186
+ return "clipboard";
210
2187
  }
211
2188
  };
212
2189
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `nice-resource-allocation ${className}`, children: [
@@ -229,7 +2206,7 @@ const NiceResourceAllocation = ({
229
2206
  unit
230
2207
  )) }) }),
231
2208
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "toolbar__right", children: config.showConflicts && conflicts.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "conflicts-badge", children: [
232
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "badge-icon", children: "⚠️" }),
2209
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "badge-icon", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "warning", size: 14 }) }),
233
2210
  conflicts.length,
234
2211
  " Conflict",
235
2212
  conflicts.length !== 1 ? "s" : ""
@@ -237,11 +2214,23 @@ const NiceResourceAllocation = ({
237
2214
  ] }),
238
2215
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "allocation__legend", children: [
239
2216
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "legend-item", children: [
240
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "legend-color", style: { backgroundColor: "var(--nice-success-tint-20, rgba(34, 197, 94, 0.2))" } }),
2217
+ /* @__PURE__ */ jsxRuntime.jsx(
2218
+ "span",
2219
+ {
2220
+ className: "legend-color",
2221
+ style: { backgroundColor: "var(--nice-success-tint-20, rgba(34, 197, 94, 0.2))" }
2222
+ }
2223
+ ),
241
2224
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Allocated" })
242
2225
  ] }),
243
2226
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "legend-item", children: [
244
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "legend-color", style: { backgroundColor: "var(--nice-warning-tint-30, rgba(245, 158, 11, 0.3))" } }),
2227
+ /* @__PURE__ */ jsxRuntime.jsx(
2228
+ "span",
2229
+ {
2230
+ className: "legend-color",
2231
+ style: { backgroundColor: "var(--nice-warning-tint-30, rgba(245, 158, 11, 0.3))" }
2232
+ }
2233
+ ),
245
2234
  /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
246
2235
  "High Utilization (",
247
2236
  ">",
@@ -251,7 +2240,13 @@ const NiceResourceAllocation = ({
251
2240
  ] })
252
2241
  ] }),
253
2242
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "legend-item", children: [
254
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "legend-color", style: { backgroundColor: "var(--nice-danger-tint-40, rgba(239, 68, 68, 0.4))" } }),
2243
+ /* @__PURE__ */ jsxRuntime.jsx(
2244
+ "span",
2245
+ {
2246
+ className: "legend-color",
2247
+ style: { backgroundColor: "var(--nice-danger-tint-40, rgba(239, 68, 68, 0.4))" }
2248
+ }
2249
+ ),
255
2250
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Overallocated" })
256
2251
  ] })
257
2252
  ] }),
@@ -270,10 +2265,16 @@ const NiceResourceAllocation = ({
270
2265
  e.stopPropagation();
271
2266
  toggleResource(resource.id);
272
2267
  },
273
- children: expandedResources.has(resource.id) ? "▾" : "▸"
2268
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2269
+ Ae,
2270
+ {
2271
+ name: expandedResources.has(resource.id) ? "chevron-down" : "chevron-right",
2272
+ size: 14
2273
+ }
2274
+ )
274
2275
  }
275
2276
  ),
276
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "resource-icon", children: getResourceTypeIcon(resource.type) }),
2277
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "resource-icon", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: getResourceTypeIcon(resource.type), size: 16 }) }),
277
2278
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "resource-info", children: [
278
2279
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "resource-name", children: resource.name }),
279
2280
  resource.department && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "resource-dept", children: resource.department })
@@ -284,9 +2285,9 @@ const NiceResourceAllocation = ({
284
2285
  ] })
285
2286
  ] }),
286
2287
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "time-cells", children: timePeriods.map((period, idx) => {
287
- var _a2;
2288
+ var _a3;
288
2289
  const cellAllocations = getCellAllocations(resource.id, period);
289
- const util = (_a2 = utilizationMap.get(resource.id)) == null ? void 0 : _a2.get(period.getTime());
2290
+ const util = (_a3 = utilizationMap.get(resource.id)) == null ? void 0 : _a3.get(period.getTime());
290
2291
  const isHovered = (hoveredCell == null ? void 0 : hoveredCell.resourceId) === resource.id && (hoveredCell == null ? void 0 : hoveredCell.date.getTime()) === period.getTime();
291
2292
  return /* @__PURE__ */ jsxRuntime.jsxs(
292
2293
  "div",
@@ -391,7 +2392,7 @@ const NiceResourceAllocation = ({
391
2392
  "input",
392
2393
  {
393
2394
  type: "date",
394
- value: ((_a = newAllocation.start) == null ? void 0 : _a.toISOString().split("T")[0]) || "",
2395
+ value: ((_a2 = newAllocation.start) == null ? void 0 : _a2.toISOString().split("T")[0]) || "",
395
2396
  onChange: (e) => setNewAllocation((prev) => ({ ...prev, start: new Date(e.target.value) }))
396
2397
  }
397
2398
  )
@@ -480,35 +2481,35 @@ const NiceInventoryManager = ({
480
2481
  readOnly = false,
481
2482
  className = ""
482
2483
  }) => {
483
- var _a, _b;
2484
+ var _a2, _b;
484
2485
  const config = { ...DEFAULT_VIEW_CONFIG, ...externalConfig };
485
- const [filters, setFilters] = React.useState({});
486
- const [view, setView] = React.useState(config.view);
487
- const [sortBy, setSortBy] = React.useState(config.sortBy);
488
- const [sortOrder, setSortOrder] = React.useState(config.sortOrder);
489
- const [page, setPage] = React.useState(1);
490
- const [selectedItems, setSelectedItems] = React.useState(/* @__PURE__ */ new Set());
491
- const [showItemModal, setShowItemModal] = React.useState(false);
492
- const [showTransactionModal, setShowTransactionModal] = React.useState(false);
493
- const [editingItem, setEditingItem] = React.useState(null);
494
- const [newTransaction, setNewTransaction] = React.useState({});
495
- const [activeTab, setActiveTab] = React.useState("inventory");
496
- const categories = React.useMemo(() => {
2486
+ const [filters, setFilters] = he.useState({});
2487
+ const [view, setView] = he.useState(config.view);
2488
+ const [sortBy, setSortBy] = he.useState(config.sortBy);
2489
+ const [sortOrder, setSortOrder] = he.useState(config.sortOrder);
2490
+ const [page, setPage] = he.useState(1);
2491
+ const [selectedItems, setSelectedItems] = he.useState(/* @__PURE__ */ new Set());
2492
+ const [showItemModal, setShowItemModal] = he.useState(false);
2493
+ const [showTransactionModal, setShowTransactionModal] = he.useState(false);
2494
+ const [editingItem, setEditingItem] = he.useState(null);
2495
+ const [newTransaction, setNewTransaction] = he.useState({});
2496
+ const [activeTab, setActiveTab] = he.useState("inventory");
2497
+ const categories = he.useMemo(() => {
497
2498
  return Array.from(new Set(items.map((item) => item.category))).sort();
498
2499
  }, [items]);
499
- const filteredItems = React.useMemo(() => {
500
- var _a2, _b2;
2500
+ const filteredItems = he.useMemo(() => {
2501
+ var _a3, _b2;
501
2502
  let result = [...items];
502
2503
  if (filters.searchQuery) {
503
2504
  const query = filters.searchQuery.toLowerCase();
504
2505
  result = result.filter(
505
2506
  (item) => {
506
- var _a3;
507
- return item.name.toLowerCase().includes(query) || item.sku.toLowerCase().includes(query) || ((_a3 = item.description) == null ? void 0 : _a3.toLowerCase().includes(query));
2507
+ var _a4;
2508
+ return item.name.toLowerCase().includes(query) || item.sku.toLowerCase().includes(query) || ((_a4 = item.description) == null ? void 0 : _a4.toLowerCase().includes(query));
508
2509
  }
509
2510
  );
510
2511
  }
511
- if ((_a2 = filters.categories) == null ? void 0 : _a2.length) {
2512
+ if ((_a3 = filters.categories) == null ? void 0 : _a3.length) {
512
2513
  result = result.filter((item) => filters.categories.includes(item.category));
513
2514
  }
514
2515
  if ((_b2 = filters.statuses) == null ? void 0 : _b2.length) {
@@ -518,7 +2519,7 @@ const NiceInventoryManager = ({
518
2519
  result = result.filter((item) => item.quantity <= item.reorderLevel);
519
2520
  }
520
2521
  result.sort((a, b) => {
521
- var _a3, _b3;
2522
+ var _a4, _b3;
522
2523
  let comparison = 0;
523
2524
  switch (sortBy) {
524
2525
  case "name":
@@ -534,25 +2535,25 @@ const NiceInventoryManager = ({
534
2535
  comparison = a.quantity * a.cost.amount - b.quantity * b.cost.amount;
535
2536
  break;
536
2537
  case "lastUpdated":
537
- comparison = (((_a3 = a.lastCountDate) == null ? void 0 : _a3.getTime()) || 0) - (((_b3 = b.lastCountDate) == null ? void 0 : _b3.getTime()) || 0);
2538
+ comparison = (((_a4 = a.lastCountDate) == null ? void 0 : _a4.getTime()) || 0) - (((_b3 = b.lastCountDate) == null ? void 0 : _b3.getTime()) || 0);
538
2539
  break;
539
2540
  }
540
2541
  return sortOrder === "asc" ? comparison : -comparison;
541
2542
  });
542
2543
  return result;
543
2544
  }, [items, filters, sortBy, sortOrder]);
544
- const paginatedItems = React.useMemo(() => {
2545
+ const paginatedItems = he.useMemo(() => {
545
2546
  const start = (page - 1) * config.pageSize;
546
2547
  return filteredItems.slice(start, start + config.pageSize);
547
2548
  }, [filteredItems, page, config.pageSize]);
548
2549
  const totalPages = Math.ceil(filteredItems.length / config.pageSize);
549
- const reorderItems = React.useMemo(() => {
2550
+ const reorderItems = he.useMemo(() => {
550
2551
  return items.filter((item) => item.quantity <= item.reorderLevel);
551
2552
  }, [items]);
552
- const recentTransactions = React.useMemo(() => {
2553
+ const recentTransactions = he.useMemo(() => {
553
2554
  return [...transactions].sort((a, b) => b.date.getTime() - a.date.getTime()).slice(0, 50);
554
2555
  }, [transactions]);
555
- const kanbanGroups = React.useMemo(() => {
2556
+ const kanbanGroups = he.useMemo(() => {
556
2557
  if (view !== "kanban") {
557
2558
  return null;
558
2559
  }
@@ -566,8 +2567,8 @@ const NiceInventoryManager = ({
566
2567
  ];
567
2568
  statuses.forEach((status) => groups.set(status, []));
568
2569
  filteredItems.forEach((item) => {
569
- var _a2;
570
- (_a2 = groups.get(item.status)) == null ? void 0 : _a2.push(item);
2570
+ var _a3;
2571
+ (_a3 = groups.get(item.status)) == null ? void 0 : _a3.push(item);
571
2572
  });
572
2573
  return groups;
573
2574
  }, [filteredItems, view]);
@@ -590,21 +2591,21 @@ const NiceInventoryManager = ({
590
2591
  const getTransactionIcon = (type) => {
591
2592
  switch (type) {
592
2593
  case "receipt":
593
- return "📥";
2594
+ return "download";
594
2595
  case "issue":
595
- return "📤";
2596
+ return "upload";
596
2597
  case "transfer":
597
- return "🔄";
2598
+ return "shuffle";
598
2599
  case "adjustment":
599
- return "✏️";
2600
+ return "edit";
600
2601
  case "return":
601
- return "↩️";
2602
+ return "undo";
602
2603
  case "count":
603
- return "📊";
2604
+ return "bar-chart";
604
2605
  case "write-off":
605
- return "❌";
2606
+ return "close";
606
2607
  default:
607
- return "📋";
2608
+ return "clipboard";
608
2609
  }
609
2610
  };
610
2611
  const formatCurrency = (amount, symbol = "$") => {
@@ -660,12 +2661,12 @@ const NiceInventoryManager = ({
660
2661
  onChange: (e) => setFilters((prev) => ({ ...prev, searchQuery: e.target.value }))
661
2662
  }
662
2663
  ),
663
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "search-icon", children: "🔍" })
2664
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "search-icon", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "search", size: 14 }) })
664
2665
  ] }),
665
2666
  /* @__PURE__ */ jsxRuntime.jsxs(
666
2667
  "select",
667
2668
  {
668
- value: ((_a = filters.categories) == null ? void 0 : _a[0]) || "",
2669
+ value: ((_a2 = filters.categories) == null ? void 0 : _a2[0]) || "",
669
2670
  onChange: (e) => setFilters((prev) => ({
670
2671
  ...prev,
671
2672
  categories: e.target.value ? [e.target.value] : void 0
@@ -694,7 +2695,13 @@ const NiceInventoryManager = ({
694
2695
  {
695
2696
  className: `view-button ${view === v ? "view-button--active" : ""}`,
696
2697
  onClick: () => setView(v),
697
- children: v === "grid" ? "⊞" : v === "list" ? "☰" : "▦"
2698
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2699
+ Ae,
2700
+ {
2701
+ name: v === "grid" ? "grid" : v === "list" ? "list" : "table",
2702
+ size: 14
2703
+ }
2704
+ )
698
2705
  },
699
2706
  v
700
2707
  )) }),
@@ -759,7 +2766,7 @@ const NiceInventoryManager = ({
759
2766
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inventory__content", children: [
760
2767
  activeTab === "inventory" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
761
2768
  view === "grid" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "items-grid", children: paginatedItems.map((item) => {
762
- var _a2;
2769
+ var _a3;
763
2770
  return /* @__PURE__ */ jsxRuntime.jsxs(
764
2771
  "div",
765
2772
  {
@@ -776,7 +2783,7 @@ const NiceInventoryManager = ({
776
2783
  onClick: (e) => e.stopPropagation()
777
2784
  }
778
2785
  ),
779
- config.showImages && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "item-image", children: ((_a2 = item.images) == null ? void 0 : _a2[0]) ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: item.images[0], alt: item.name }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "placeholder-image", children: "📦" }) }),
2786
+ config.showImages && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "item-image", children: ((_a3 = item.images) == null ? void 0 : _a3[0]) ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: item.images[0], alt: item.name }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "placeholder-image", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "box", size: 32 }) }) }),
780
2787
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "item-info", children: [
781
2788
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "item-sku", children: item.sku }),
782
2789
  /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "item-name", children: item.name }),
@@ -796,7 +2803,10 @@ const NiceInventoryManager = ({
796
2803
  " ",
797
2804
  item.unit
798
2805
  ] }),
799
- item.quantity <= item.reorderLevel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "reorder-alert", children: "⚠️ Low Stock" })
2806
+ item.quantity <= item.reorderLevel && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "reorder-alert", children: [
2807
+ /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "warning", size: 12 }),
2808
+ " Low Stock"
2809
+ ] })
800
2810
  ] }),
801
2811
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "item-value", children: formatCurrency(item.quantity * item.cost.amount, item.cost.currency.symbol) })
802
2812
  ]
@@ -910,7 +2920,7 @@ const NiceInventoryManager = ({
910
2920
  setEditingItem(item);
911
2921
  setShowItemModal(true);
912
2922
  },
913
- children: "✏️"
2923
+ children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "edit", size: 14 })
914
2924
  }
915
2925
  ),
916
2926
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -922,7 +2932,7 @@ const NiceInventoryManager = ({
922
2932
  setNewTransaction({ itemId: item.id });
923
2933
  setShowTransactionModal(true);
924
2934
  },
925
- children: "📝"
2935
+ children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "clipboard", size: 14 })
926
2936
  }
927
2937
  ),
928
2938
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -933,7 +2943,7 @@ const NiceInventoryManager = ({
933
2943
  e.stopPropagation();
934
2944
  onItemDelete == null ? void 0 : onItemDelete(item.id);
935
2945
  },
936
- children: "🗑️"
2946
+ children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "trash", size: 14 })
937
2947
  }
938
2948
  )
939
2949
  ] })
@@ -995,7 +3005,7 @@ const NiceInventoryManager = ({
995
3005
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "transactions-list", children: recentTransactions.map((tx) => {
996
3006
  const item = items.find((i) => i.id === tx.itemId);
997
3007
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "transaction-item", children: [
998
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tx-icon", children: getTransactionIcon(tx.type) }),
3008
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tx-icon", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: getTransactionIcon(tx.type), size: 16 }) }),
999
3009
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tx-info", children: [
1000
3010
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tx-type", children: tx.type }),
1001
3011
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tx-item", children: (item == null ? void 0 : item.name) || tx.itemId })
@@ -1019,7 +3029,7 @@ const NiceInventoryManager = ({
1019
3029
  }) })
1020
3030
  ] }),
1021
3031
  activeTab === "reorder" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "reorder-tab", children: reorderItems.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "empty-state", children: [
1022
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "empty-icon", children: "✅" }),
3032
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "empty-icon", children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "success", size: 32 }) }),
1023
3033
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "All items are sufficiently stocked" })
1024
3034
  ] }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "reorder-list", children: reorderItems.map((item) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "reorder-item", children: [
1025
3035
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "reorder-info", children: [
@@ -1267,13 +3277,13 @@ const NiceInventoryManager = ({
1267
3277
  ] });
1268
3278
  };
1269
3279
  const STATUS_COLOR = {
1270
- draft: "var(--nice-color-muted, #6b7280)",
3280
+ draft: "var(--nice-text-muted, #6b7280)",
1271
3281
  issued: "var(--nice-color-info, #2563eb)",
1272
3282
  sent: "var(--nice-color-info, #2563eb)",
1273
3283
  paid: "var(--nice-color-success, #16a34a)",
1274
3284
  "partially-paid": "var(--nice-color-warning, #ca8a04)",
1275
3285
  overdue: "var(--nice-color-danger, #dc2626)",
1276
- cancelled: "var(--nice-color-muted, #6b7280)"
3286
+ cancelled: "var(--nice-text-muted, #6b7280)"
1277
3287
  };
1278
3288
  function lineNet(line) {
1279
3289
  const gross = line.quantity * line.unitPrice.amount;
@@ -1294,7 +3304,7 @@ function fmtDate$1(d, locale) {
1294
3304
  const dt = d instanceof Date ? d : new Date(d);
1295
3305
  return new Intl.DateTimeFormat(locale, { dateStyle: "medium" }).format(dt);
1296
3306
  }
1297
- const NiceInvoiceView = React.forwardRef(
3307
+ const NiceInvoiceView = he.forwardRef(
1298
3308
  function NiceInvoiceView2({
1299
3309
  invoice,
1300
3310
  locale,
@@ -1308,8 +3318,8 @@ const NiceInvoiceView = React.forwardRef(
1308
3318
  style,
1309
3319
  id
1310
3320
  }, ref) {
1311
- var _a;
1312
- const cur = currency ?? invoice.currency ?? ((_a = invoice.lines[0]) == null ? void 0 : _a.unitPrice.currency) ?? "EUR";
3321
+ var _a2;
3322
+ const cur = currency ?? invoice.currency ?? ((_a2 = invoice.lines[0]) == null ? void 0 : _a2.unitPrice.currency) ?? "EUR";
1313
3323
  const L = {
1314
3324
  invoiceNumber: "Invoice",
1315
3325
  issueDate: "Issue date",
@@ -1331,7 +3341,7 @@ const NiceInvoiceView = React.forwardRef(
1331
3341
  vatId: "VAT ID",
1332
3342
  ...labels
1333
3343
  };
1334
- const totals = React.useMemo(() => {
3344
+ const totals = he.useMemo(() => {
1335
3345
  let net = 0;
1336
3346
  let vat = 0;
1337
3347
  const byRate = /* @__PURE__ */ new Map();
@@ -1382,7 +3392,19 @@ const NiceInvoiceView = React.forwardRef(
1382
3392
  className: "nice-invoice-view__status",
1383
3393
  style: { color: STATUS_COLOR[invoice.status] },
1384
3394
  children: [
1385
- /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": true, children: "●" }),
3395
+ /* @__PURE__ */ jsxRuntime.jsx(
3396
+ "span",
3397
+ {
3398
+ "aria-hidden": true,
3399
+ style: {
3400
+ display: "inline-block",
3401
+ width: 8,
3402
+ height: 8,
3403
+ borderRadius: "50%",
3404
+ background: "currentColor"
3405
+ }
3406
+ }
3407
+ ),
1386
3408
  " ",
1387
3409
  invoice.status
1388
3410
  ]
@@ -1390,8 +3412,26 @@ const NiceInvoiceView = React.forwardRef(
1390
3412
  ),
1391
3413
  showActions && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "nice-invoice-view__actions", children: [
1392
3414
  /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: () => onAction == null ? void 0 : onAction("download"), children: "↓" }),
1393
- /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: () => onAction == null ? void 0 : onAction("print"), children: "⎙" }),
1394
- /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: () => onAction == null ? void 0 : onAction("send"), children: "✉" })
3415
+ /* @__PURE__ */ jsxRuntime.jsx(
3416
+ "button",
3417
+ {
3418
+ type: "button",
3419
+ onClick: () => onAction == null ? void 0 : onAction("print"),
3420
+ "aria-label": "Print",
3421
+ title: "Print",
3422
+ children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "printer", size: 14 })
3423
+ }
3424
+ ),
3425
+ /* @__PURE__ */ jsxRuntime.jsx(
3426
+ "button",
3427
+ {
3428
+ type: "button",
3429
+ onClick: () => onAction == null ? void 0 : onAction("send"),
3430
+ "aria-label": "Send",
3431
+ title: "Send",
3432
+ children: /* @__PURE__ */ jsxRuntime.jsx(Ae, { name: "mail", size: 14 })
3433
+ }
3434
+ )
1395
3435
  ] })
1396
3436
  ] }),
1397
3437
  !(hideSections == null ? void 0 : hideSections.header) && /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "nice-invoice-view__parties", children: [
@@ -1515,7 +3555,7 @@ function colorFor(occ, colors) {
1515
3555
  }
1516
3556
  return colors.high;
1517
3557
  }
1518
- const NiceWarehouseView = React.forwardRef(
3558
+ const NiceWarehouseView = he.forwardRef(
1519
3559
  function NiceWarehouseView2({
1520
3560
  warehouseName,
1521
3561
  cells,
@@ -1528,8 +3568,8 @@ const NiceWarehouseView = React.forwardRef(
1528
3568
  style,
1529
3569
  id
1530
3570
  }, ref) {
1531
- const [hovered, setHovered] = React.useState(null);
1532
- const grid = React.useMemo(() => {
3571
+ const [hovered, setHovered] = he.useState(null);
3572
+ const grid = he.useMemo(() => {
1533
3573
  const rows = /* @__PURE__ */ new Map();
1534
3574
  for (const c of cells) {
1535
3575
  const rowKey = c.row !== void 0 ? `r${c.row}` : c.location.rack ?? c.location.aisle ?? "0";
@@ -1557,7 +3597,7 @@ const NiceWarehouseView = React.forwardRef(
1557
3597
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "nice-warehouse-view__grid", role: "grid", "aria-label": warehouseName, children: grid.map(({ rowKey, cells: row }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "nice-warehouse-view__row", role: "row", children: row.map((c, idx) => {
1558
3598
  const key = [c.location.rack, c.location.aisle, c.location.shelf, c.location.bin].filter(Boolean).join("-") || String(idx);
1559
3599
  const aisleBreak = aisleEvery > 0 && idx > 0 && idx % aisleEvery === 0;
1560
- return /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
3600
+ return /* @__PURE__ */ jsxRuntime.jsxs(he.Fragment, { children: [
1561
3601
  aisleBreak && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "nice-warehouse-view__aisle", "aria-hidden": true }),
1562
3602
  /* @__PURE__ */ jsxRuntime.jsx(
1563
3603
  "button",
@@ -1631,7 +3671,7 @@ function fmtDate(d, locale) {
1631
3671
  const dt = d instanceof Date ? d : new Date(d);
1632
3672
  return new Intl.DateTimeFormat(locale, { dateStyle: "medium" }).format(dt);
1633
3673
  }
1634
- const NicePurchaseOrder = React.forwardRef(
3674
+ const NicePurchaseOrder = he.forwardRef(
1635
3675
  function NicePurchaseOrder2({
1636
3676
  orders,
1637
3677
  selectable = true,
@@ -1646,9 +3686,9 @@ const NicePurchaseOrder = React.forwardRef(
1646
3686
  style,
1647
3687
  id
1648
3688
  }, ref) {
1649
- var _a;
1650
- const [selectedId, setSelectedId] = React.useState(
1651
- initialSelectedId ?? ((_a = orders[0]) == null ? void 0 : _a.id)
3689
+ var _a2;
3690
+ const [selectedId, setSelectedId] = he.useState(
3691
+ initialSelectedId ?? ((_a2 = orders[0]) == null ? void 0 : _a2.id)
1652
3692
  );
1653
3693
  const L = {
1654
3694
  orderNumber: "PO #",
@@ -1668,7 +3708,7 @@ const NicePurchaseOrder = React.forwardRef(
1668
3708
  receive: "Receive all",
1669
3709
  ...labels
1670
3710
  };
1671
- const selected = React.useMemo(
3711
+ const selected = he.useMemo(
1672
3712
  () => orders.find((o) => o.id === selectedId),
1673
3713
  [orders, selectedId]
1674
3714
  );
@@ -1692,7 +3732,20 @@ const NicePurchaseOrder = React.forwardRef(
1692
3732
  /* @__PURE__ */ jsxRuntime.jsx("td", { children: o.orderNumber }),
1693
3733
  /* @__PURE__ */ jsxRuntime.jsx("td", { children: o.supplier.name }),
1694
3734
  /* @__PURE__ */ jsxRuntime.jsx("td", { children: /* @__PURE__ */ jsxRuntime.jsxs("span", { style: { color: STATUS_TINT[o.status] }, children: [
1695
- "● ",
3735
+ /* @__PURE__ */ jsxRuntime.jsx(
3736
+ "span",
3737
+ {
3738
+ "aria-hidden": true,
3739
+ style: {
3740
+ display: "inline-block",
3741
+ width: 8,
3742
+ height: 8,
3743
+ borderRadius: "50%",
3744
+ background: "currentColor"
3745
+ }
3746
+ }
3747
+ ),
3748
+ " ",
1696
3749
  o.status
1697
3750
  ] }) }),
1698
3751
  /* @__PURE__ */ jsxRuntime.jsx("td", { children: fmtDate(o.orderDate, locale) }),
@@ -1777,7 +3830,7 @@ const NicePurchaseOrder = React.forwardRef(
1777
3830
  ] });
1778
3831
  }
1779
3832
  );
1780
- const NiceHRDashboard = React.forwardRef(
3833
+ const NiceHRDashboard = he.forwardRef(
1781
3834
  function NiceHRDashboard2({
1782
3835
  employees,
1783
3836
  labels,
@@ -1798,7 +3851,7 @@ const NiceHRDashboard = React.forwardRef(
1798
3851
  activeEmployees: "Active",
1799
3852
  ...labels
1800
3853
  };
1801
- const stats = React.useMemo(() => {
3854
+ const stats = he.useMemo(() => {
1802
3855
  const active = employees.filter((e) => e.active !== false);
1803
3856
  const fte = active.reduce((s, e) => s + (e.fte ?? 1), 0);
1804
3857
  const vacationAvg = active.length === 0 ? 0 : active.reduce((s, e) => s + (e.vacationBalanceDays ?? 0), 0) / active.length;
@@ -1881,11 +3934,12 @@ const NiceHRDashboard = React.forwardRef(
1881
3934
  const wait = (ms) => new Promise((r) => setTimeout(r, ms));
1882
3935
  const NICE_VAT_PRESETS = {
1883
3936
  PL: [
1884
- { code: "PL-23", rate: 0.23, label: "23%", description: "Stawka podstawowa" },
1885
- { code: "PL-8", rate: 0.08, label: "8%", description: "Stawka obniżona" },
1886
- { code: "PL-5", rate: 0.05, label: "5%", description: "Stawka obniżona" },
1887
- { code: "PL-0", rate: 0, label: "0%", description: "Stawka zerowa (eksport)" },
1888
- { code: "PL-zw", rate: 0, label: "zw.", description: "Zwolnienie" }
3937
+ { code: "PL-23", rate: 0.23, label: "23%", description: "Standard rate" },
3938
+ { code: "PL-8", rate: 0.08, label: "8%", description: "Reduced rate" },
3939
+ { code: "PL-5", rate: 0.05, label: "5%", description: "Reduced rate" },
3940
+ { code: "PL-0", rate: 0, label: "0%", description: "Zero rate (export)" },
3941
+ // 'zw.' is the statutory marking printed on Polish invoices — not a UI string.
3942
+ { code: "PL-zw", rate: 0, label: "zw.", description: "Exempt" }
1889
3943
  ],
1890
3944
  EU: [
1891
3945
  { code: "EU-21", rate: 0.21, label: "21%" },
@@ -1910,11 +3964,11 @@ const DEFAULT_SEED = {
1910
3964
  };
1911
3965
  function useMockErpApi(options = {}) {
1912
3966
  const { latencyMs = 300, errorRate = 0, seed } = options;
1913
- const [loading, setLoading] = React.useState(true);
1914
- const [error, setError] = React.useState(null);
1915
- const [data, setData] = React.useState(() => ({ ...DEFAULT_SEED, ...seed }));
1916
- const settledRef = React.useRef(false);
1917
- const refresh = React.useCallback(async () => {
3967
+ const [loading, setLoading] = he.useState(true);
3968
+ const [error, setError] = he.useState(null);
3969
+ const [data, setData] = he.useState(() => ({ ...DEFAULT_SEED, ...seed }));
3970
+ const settledRef = he.useRef(false);
3971
+ const refresh = he.useCallback(async () => {
1918
3972
  setLoading(true);
1919
3973
  setError(null);
1920
3974
  await wait(latencyMs);
@@ -1925,14 +3979,14 @@ function useMockErpApi(options = {}) {
1925
3979
  }
1926
3980
  setLoading(false);
1927
3981
  }, [latencyMs, errorRate]);
1928
- React.useEffect(() => {
3982
+ he.useEffect(() => {
1929
3983
  if (settledRef.current) {
1930
3984
  return;
1931
3985
  }
1932
3986
  settledRef.current = true;
1933
3987
  void refresh();
1934
3988
  }, [refresh]);
1935
- const writeWith = React.useCallback(
3989
+ const writeWith = he.useCallback(
1936
3990
  async (key, item) => {
1937
3991
  await wait(latencyMs);
1938
3992
  if (Math.random() < errorRate) {
@@ -1951,7 +4005,7 @@ function useMockErpApi(options = {}) {
1951
4005
  },
1952
4006
  [latencyMs, errorRate]
1953
4007
  );
1954
- return React.useMemo(
4008
+ return he.useMemo(
1955
4009
  () => ({
1956
4010
  loading,
1957
4011
  error,
@@ -1970,7 +4024,7 @@ function useMockErpApi(options = {}) {
1970
4024
  [loading, error, data, refresh, writeWith]
1971
4025
  );
1972
4026
  }
1973
- const NiceVatTable = React.forwardRef(function NiceVatTable2({
4027
+ const NiceVatTable = he.forwardRef(function NiceVatTable2({
1974
4028
  country = "PL",
1975
4029
  rates,
1976
4030
  editable = false,
@@ -1983,7 +4037,7 @@ const NiceVatTable = React.forwardRef(function NiceVatTable2({
1983
4037
  style,
1984
4038
  id
1985
4039
  }, ref) {
1986
- const [internal, setInternal] = React.useState(rates ?? NICE_VAT_PRESETS[country]);
4040
+ const [internal, setInternal] = he.useState(rates ?? NICE_VAT_PRESETS[country]);
1987
4041
  const L = {
1988
4042
  code: "Code",
1989
4043
  rate: "Rate",
@@ -1993,7 +4047,7 @@ const NiceVatTable = React.forwardRef(function NiceVatTable2({
1993
4047
  remove: "Remove",
1994
4048
  ...labels
1995
4049
  };
1996
- const update = React.useCallback(
4050
+ const update = he.useCallback(
1997
4051
  (next) => {
1998
4052
  setInternal(next);
1999
4053
  onChange == null ? void 0 : onChange(next);
@@ -2127,7 +4181,7 @@ function defaultBuildXml(opts) {
2127
4181
  lines.push("</JPK>");
2128
4182
  return lines.join("\n");
2129
4183
  }
2130
- const NiceJpkExporter = React.forwardRef(
4184
+ const NiceJpkExporter = he.forwardRef(
2131
4185
  function NiceJpkExporter2({
2132
4186
  invoices,
2133
4187
  taxpayer,
@@ -2142,11 +4196,11 @@ const NiceJpkExporter = React.forwardRef(
2142
4196
  id
2143
4197
  }, ref) {
2144
4198
  const today = /* @__PURE__ */ new Date();
2145
- const [format, setFormat] = React.useState(defaultFormat);
2146
- const [from, setFrom] = React.useState(
4199
+ const [format, setFormat] = he.useState(defaultFormat);
4200
+ const [from, setFrom] = he.useState(
2147
4201
  isoDate((defaultPeriod == null ? void 0 : defaultPeriod.from) ?? new Date(today.getFullYear(), today.getMonth(), 1))
2148
4202
  );
2149
- const [to, setTo] = React.useState(
4203
+ const [to, setTo] = he.useState(
2150
4204
  isoDate((defaultPeriod == null ? void 0 : defaultPeriod.to) ?? new Date(today.getFullYear(), today.getMonth() + 1, 0))
2151
4205
  );
2152
4206
  const L = {
@@ -2156,7 +4210,7 @@ const NiceJpkExporter = React.forwardRef(
2156
4210
  export: "Export",
2157
4211
  ...labels
2158
4212
  };
2159
- const exportNow = React.useCallback(() => {
4213
+ const exportNow = he.useCallback(() => {
2160
4214
  const opts = {
2161
4215
  format,
2162
4216
  period: { from: new Date(from), to: new Date(to) },