@iqworksai/common-components 0.1.24 → 0.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +27 -27
  2. package/README.md +513 -513
  3. package/dist/.gitkeep +3 -3
  4. package/dist/_virtual/jquery.mjs +25 -2
  5. package/dist/_virtual/jquery2.mjs +4 -0
  6. package/dist/assets/logos/comply-iq-logo.svg2.mjs +18 -0
  7. package/dist/assets/logos/iqworks-icon.svg.mjs +6 -6
  8. package/dist/assets/logos/iqworks-logo.svg2.mjs +17 -0
  9. package/dist/assets/logos/light/iqworks-icon-light.svg.mjs +6 -6
  10. package/dist/components/Charts/CustomLegends/CustomLegends.stories.d.ts.map +1 -1
  11. package/dist/components/Charts/GaugeChart/GaugeChart.stories.d.ts.map +1 -1
  12. package/dist/components/Charts/GaugeChart/index.mjs +7 -7
  13. package/dist/components/FileBrowser/index.mjs +1 -1
  14. package/dist/context/ThemeContext.d.ts +6 -0
  15. package/dist/context/ThemeContext.d.ts.map +1 -1
  16. package/dist/context/ThemeContext.mjs +44 -35
  17. package/dist/{index-DtVOjJk3.cjs → index-B6pnxgoH.cjs} +1 -1
  18. package/dist/{index-CUUuCzyM.cjs → index-C3yesVHM.cjs} +66 -39
  19. package/dist/index.cjs +1 -1
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.mjs +72 -66
  23. package/dist/jquery-CtmXEsE4.cjs +13 -0
  24. package/dist/jquery-Db0l-djT.cjs +1 -0
  25. package/dist/{jstree-CtrCtuMv.cjs → jstree-LoZW-W_p.cjs} +3 -3
  26. package/dist/node_modules/jquery/dist/jquery.mjs +3429 -3449
  27. package/dist/node_modules/jstree/dist/jstree.mjs +13 -13
  28. package/dist/utils/htmlUtils.d.ts +16 -0
  29. package/dist/utils/htmlUtils.d.ts.map +1 -0
  30. package/dist/utils/htmlUtils.mjs +24 -0
  31. package/dist/utils/pdfAssets.d.ts +23 -0
  32. package/dist/utils/pdfAssets.d.ts.map +1 -0
  33. package/dist/utils/pdfAssets.mjs +21 -0
  34. package/package.json +141 -134
  35. package/dist/jquery-BKuE7Afe.cjs +0 -13
@@ -1,8 +1,8 @@
1
1
  import { __module as te } from "../../../_virtual/jstree.mjs";
2
- import { a as ie } from "../../jquery/dist/jquery.mjs";
2
+ import { __require as ie } from "../../jquery/dist/jquery.mjs";
3
3
  (function(G) {
4
4
  (function(l) {
5
- G.exports ? G.exports = l(ie) : l(jQuery);
5
+ G.exports ? G.exports = l(ie()) : l(jQuery);
6
6
  })(function(l, y) {
7
7
  /*!
8
8
  * jsTree 3.3.17
@@ -18,7 +18,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
18
18
  * jslint: loopfunc: true, browser: true, ass: true, bitwise: true, continue: true, nomen: true, plusplus: true, regexp: true, unparam: true, todo: true, white: true
19
19
  */
20
20
  if (!l.jstree) {
21
- var ee = 0, D = !1, q = !1, X = !1, Z = [], R = l("script:last").attr("src"), T = window.document, W = window.setImmediate, b = window.Promise;
21
+ var ee = 0, D = !1, q = !1, J = !1, Z = [], R = l("script:last").attr("src"), T = window.document, W = window.setImmediate, b = window.Promise;
22
22
  !W && b && (W = function(e, s) {
23
23
  b.resolve(s).then(e);
24
24
  }), l.jstree = {
@@ -1089,7 +1089,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
1089
1089
  for (v && v.children && v.children === !0 && (k.state.loaded = !1, k.children = [], k.children_d = []), x[k.id] = k, w = 0, B = k.children.length; w < B; w++)
1090
1090
  z = F(x[k.children[w]], k.id, E), Y = x[z], k.children_d.push(z), Y.children_d.length && (k.children_d = k.children_d.concat(Y.children_d));
1091
1091
  return delete v.data, delete v.children, x[k.id].original = v, k.state.selected && p.push(k.id), k.id;
1092
- }, J = function(v, j, E) {
1092
+ }, X = function(v, j, E) {
1093
1093
  E ? E = E.concat() : E = [], j && E.unshift(j);
1094
1094
  var H = !1, w, B, z, Y, k;
1095
1095
  do
@@ -1125,7 +1125,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
1125
1125
  v.a_attr.hasOwnProperty(w) && (k.a_attr[w] = v.a_attr[w]);
1126
1126
  if (v && v.children && v.children.length) {
1127
1127
  for (w = 0, B = v.children.length; w < B; w++)
1128
- z = J(v.children[w], k.id, E), Y = x[z], k.children.push(z), Y.children_d.length && (k.children_d = k.children_d.concat(Y.children_d));
1128
+ z = X(v.children[w], k.id, E), Y = x[z], k.children.push(z), Y.children_d.length && (k.children_d = k.children_d.concat(Y.children_d));
1129
1129
  k.children_d = k.children_d.concat(k.children);
1130
1130
  }
1131
1131
  return v && v.children && v.children === !0 && (k.state.loaded = !1, k.children = [], k.children_d = []), delete v.data, delete v.children, k.original = v, x[k.id] = k, k.state.selected && p.push(k.id), k.id;
@@ -1154,7 +1154,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
1154
1154
  };
1155
1155
  } else {
1156
1156
  for (C = 0, S = f.length; C < S; C++)
1157
- P = J(f[C], _, A.parents.concat()), P && (u.push(P), g.push(P), x[P].children_d.length && (g = g.concat(x[P].children_d)));
1157
+ P = X(f[C], _, A.parents.concat()), P && (u.push(P), g.push(P), x[P].children_d.length && (g = g.concat(x[P].children_d)));
1158
1158
  for (A.children = u, A.children_d = g, C = 0, S = A.parents.length; C < S; C++)
1159
1159
  x[A.parents[C]].children_d = x[A.parents[C]].children_d.concat(g);
1160
1160
  L = {
@@ -2311,7 +2311,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
2311
2311
  t = this.get_node(e[i]), t && (t.id || t.id === 0) && t.id !== l.jstree.root && s.push(t);
2312
2312
  if (!s.length)
2313
2313
  return !1;
2314
- D = s, X = this, q = "move_node", this.trigger("cut", { node: e });
2314
+ D = s, J = this, q = "move_node", this.trigger("cut", { node: e });
2315
2315
  },
2316
2316
  /**
2317
2317
  * copy a node (a later call to `paste(obj)` would copy the node)
@@ -2327,7 +2327,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
2327
2327
  t = this.get_node(e[i]), t && t.id !== y && t.id !== l.jstree.root && s.push(t);
2328
2328
  if (!s.length)
2329
2329
  return !1;
2330
- D = s, X = this, q = "copy_node", this.trigger("copy", { node: e });
2330
+ D = s, J = this, q = "copy_node", this.trigger("copy", { node: e });
2331
2331
  },
2332
2332
  /**
2333
2333
  * get the current buffer (any nodes that are waiting for a paste operation)
@@ -2335,7 +2335,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
2335
2335
  * @return {Object} an object consisting of `mode` ("copy_node" or "move_node"), `node` (an array of objects) and `inst` (the instance)
2336
2336
  */
2337
2337
  get_buffer: function() {
2338
- return { mode: q, node: D, inst: X };
2338
+ return { mode: q, node: D, inst: J };
2339
2339
  },
2340
2340
  /**
2341
2341
  * check if there is something in the buffer to paste
@@ -2355,7 +2355,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
2355
2355
  paste: function(e, s) {
2356
2356
  if (e = this.get_node(e), !e || !q || !q.match(/^(copy_node|move_node)$/) || !D)
2357
2357
  return !1;
2358
- this[q](D, e, s, !1, !1, !1, X) && this.trigger("paste", { parent: e.id, node: D, mode: q }), D = !1, q = !1, X = !1;
2358
+ this[q](D, e, s, !1, !1, !1, J) && this.trigger("paste", { parent: e.id, node: D, mode: q }), D = !1, q = !1, J = !1;
2359
2359
  },
2360
2360
  /**
2361
2361
  * clear the buffer of previously copied or cut nodes
@@ -2363,7 +2363,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
2363
2363
  * @trigger clear_buffer.jstree
2364
2364
  */
2365
2365
  clear_buffer: function() {
2366
- D = !1, q = !1, X = !1, this.trigger("clear_buffer");
2366
+ D = !1, q = !1, J = !1, this.trigger("clear_buffer");
2367
2367
  },
2368
2368
  /**
2369
2369
  * put a node in edit mode (input field to rename the node)
@@ -3493,7 +3493,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
3493
3493
  var c = n.event.target !== t.target;
3494
3494
  if (i && (!n.event || n.event.type !== "dragover" || c) && clearTimeout(i), !(!n || !n.data || !n.data.jstree) && !(n.event.target.id && n.event.target.id === "jstree-marker")) {
3495
3495
  t = n.event;
3496
- var d = l.jstree.reference(n.event.target), h = !1, o = !1, f = !1, _, u, g, p, m, N, O, x, A, K, P, C, S, L, F, J, v;
3496
+ var d = l.jstree.reference(n.event.target), h = !1, o = !1, f = !1, _, u, g, p, m, N, O, x, A, K, P, C, S, L, F, X, v;
3497
3497
  if (d && d._data && d._data.dnd) {
3498
3498
  if (r.attr("class", "jstree-" + d.get_theme() + (d.settings.core.themes.responsive ? " jstree-dnd-responsive" : "")), F = n.data.origin && (n.data.origin.settings.dnd.always_copy || n.data.origin.settings.dnd.copy && (n.event.metaKey || n.event.ctrlKey)), n.helper.children().attr("class", "jstree-" + d.get_theme() + " jstree-" + d.get_theme() + "-" + d.get_theme_variant() + " " + (d.settings.core.themes.responsive ? " jstree-dnd-responsive" : "")).find(".jstree-copy").first()[F ? "show" : "hide"](), (n.event.target === d.element[0] || n.event.target === d.get_container_ul()[0]) && (d.get_container_ul().children().length === 0 || d.settings.dnd.blank_space_drop)) {
3499
3499
  for (O = !0, x = 0, A = n.data.nodes.length; x < A && (O = O && d.check(n.data.origin && (n.data.origin.settings.dnd.always_copy || n.data.origin.settings.dnd.copy && (n.event.metaKey || n.event.ctrlKey)) ? "copy_node" : "move_node", n.data.origin && n.data.origin !== d ? n.data.origin.get_node(n.data.nodes[x]) : n.data.nodes[x], l.jstree.root, "last", { dnd: !0, ref: d.get_node(l.jstree.root), pos: "i", origin: n.data.origin, is_multi: n.data.origin && n.data.origin !== d, is_foreign: !n.data.origin }), !!O); x++)
@@ -3524,7 +3524,7 @@ import { a as ie } from "../../jquery/dist/jquery.mjs";
3524
3524
  H.open_node(w);
3525
3525
  };
3526
3526
  }(d, h), d.settings.dnd.open_timeout)), O)
3527
- return J = d.get_node(p, !0), J.hasClass(".jstree-dnd-parent") || (l(".jstree-dnd-parent").removeClass("jstree-dnd-parent"), J.addClass("jstree-dnd-parent")), e = { ins: d, par: p, pos: E === "i" && S === "last" && m === 0 && !d.is_loaded(L) ? "last" : m }, r.css({ left: _ + "px", top: u + "px" }).show(), r.removeClass("jstree-above jstree-inside jstree-below").addClass(v), n.helper.find(".jstree-icon").first().removeClass("jstree-er").addClass("jstree-ok"), n.event.originalEvent && n.event.originalEvent.dataTransfer && (n.event.originalEvent.dataTransfer.dropEffect = F ? "copy" : "move"), s = {}, N = !0, !1;
3527
+ return X = d.get_node(p, !0), X.hasClass(".jstree-dnd-parent") || (l(".jstree-dnd-parent").removeClass("jstree-dnd-parent"), X.addClass("jstree-dnd-parent")), e = { ins: d, par: p, pos: E === "i" && S === "last" && m === 0 && !d.is_loaded(L) ? "last" : m }, r.css({ left: _ + "px", top: u + "px" }).show(), r.removeClass("jstree-above jstree-inside jstree-below").addClass(v), n.helper.find(".jstree-icon").first().removeClass("jstree-er").addClass("jstree-ok"), n.event.originalEvent && n.event.originalEvent.dataTransfer && (n.event.originalEvent.dataTransfer.dropEffect = F ? "copy" : "move"), s = {}, N = !0, !1;
3528
3528
  }), N === !0))
3529
3529
  return;
3530
3530
  }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * HTML utilities for safe string handling
3
+ */
4
+ /**
5
+ * Escape HTML special characters to prevent XSS
6
+ * @param text - The text to escape
7
+ * @returns The escaped text safe for HTML insertion
8
+ */
9
+ export declare function escapeHtml(text: string): string;
10
+ /**
11
+ * Unescape HTML entities back to their original characters
12
+ * @param text - The escaped text
13
+ * @returns The unescaped text
14
+ */
15
+ export declare function unescapeHtml(text: string): string;
16
+ //# sourceMappingURL=htmlUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"htmlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/htmlUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASjD"}
@@ -0,0 +1,24 @@
1
+ const c = {
2
+ "&": "&amp;",
3
+ "<": "&lt;",
4
+ ">": "&gt;",
5
+ '"': "&quot;",
6
+ "'": "&#39;"
7
+ };
8
+ function n(e) {
9
+ return e.replace(/[&<>"']/g, (t) => c[t] || t);
10
+ }
11
+ function o(e) {
12
+ const t = {
13
+ "&amp;": "&",
14
+ "&lt;": "<",
15
+ "&gt;": ">",
16
+ "&quot;": '"',
17
+ "&#39;": "'"
18
+ };
19
+ return e.replace(/&(amp|lt|gt|quot|#39);/g, (p) => t[p] || p);
20
+ }
21
+ export {
22
+ n as escapeHtml,
23
+ o as unescapeHtml
24
+ };
@@ -0,0 +1,23 @@
1
+ /**
2
+ * PDF Assets - Raw SVG content strings for server-side PDF generation
3
+ * These are imported as raw strings and can be embedded directly in HTML templates
4
+ */
5
+ export type PDFAssetKey = 'iqworks-icon' | 'iqworks-logo' | 'comply-iq-logo';
6
+ export interface PDFAssets {
7
+ /** IQWorks icon (small logo mark) for watermarks */
8
+ icon: string;
9
+ /** IQWorks full logo */
10
+ iqworksLogo: string;
11
+ /** ComplyIQ full logo */
12
+ complyIqLogo: string;
13
+ }
14
+ /**
15
+ * Get raw SVG content strings for PDF generation
16
+ * These can be embedded directly in HTML templates
17
+ */
18
+ export declare function getPDFAssetContent(): PDFAssets;
19
+ /**
20
+ * Get a specific PDF asset by key
21
+ */
22
+ export declare function getPDFAsset(key: PDFAssetKey): string;
23
+ //# sourceMappingURL=pdfAssets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdfAssets.d.ts","sourceRoot":"","sources":["../../src/utils/pdfAssets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAE7E,MAAM,WAAW,SAAS;IACtB,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,SAAS,CAM9C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAOpD"}
@@ -0,0 +1,21 @@
1
+ import o from "../assets/logos/iqworks-icon.svg.mjs";
2
+ import t from "../assets/logos/iqworks-logo.svg2.mjs";
3
+ import r from "../assets/logos/comply-iq-logo.svg2.mjs";
4
+ function c() {
5
+ return {
6
+ icon: o,
7
+ iqworksLogo: t,
8
+ complyIqLogo: r
9
+ };
10
+ }
11
+ function m(s) {
12
+ return {
13
+ "iqworks-icon": o,
14
+ "iqworks-logo": t,
15
+ "comply-iq-logo": r
16
+ }[s] || "";
17
+ }
18
+ export {
19
+ m as getPDFAsset,
20
+ c as getPDFAssetContent
21
+ };
package/package.json CHANGED
@@ -1,134 +1,141 @@
1
- {
2
- "name": "@iqworksai/common-components",
3
- "version": "0.1.24",
4
- "type": "module",
5
- "description": "A reusable React component library and utilities package for IQWorks applications. Provides 46+ UI components, custom hooks, context providers, and utility functions extracted from DiscoverIQ Desktop.",
6
- "main": "./dist/index.cjs",
7
- "module": "./dist/index.mjs",
8
- "types": "./dist/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/index.d.ts",
12
- "import": "./dist/index.mjs",
13
- "require": "./dist/index.cjs"
14
- },
15
- "./styles": "./dist/style.css"
16
- },
17
- "sideEffects": [
18
- "*.css",
19
- "./dist/style.css"
20
- ],
21
- "files": [
22
- "dist",
23
- "README.md",
24
- "CHANGELOG.md"
25
- ],
26
- "repository": {
27
- "type": "git",
28
- "url": "https://github.com/iqworksai/common-components.git"
29
- },
30
- "keywords": [
31
- "react",
32
- "typescript",
33
- "component-library",
34
- "storybook",
35
- "vite",
36
- "ui-components",
37
- "design-system",
38
- "npm-package",
39
- "iqworks"
40
- ],
41
- "author": "IQWorks",
42
- "license": "PROPRIETARY",
43
- "publishConfig": {
44
- "access": "public"
45
- },
46
- "scripts": {
47
- "build": "vite build",
48
- "build:watch": "vite build --watch",
49
- "typecheck": "tsc --noEmit",
50
- "test": "jest",
51
- "test:watch": "jest --watch",
52
- "test:coverage": "jest --coverage",
53
- "lint": "eslint src --ext .ts,.tsx",
54
- "lint:fix": "eslint src --ext .ts,.tsx --fix",
55
- "storybook": "storybook dev -p 6006",
56
- "build-storybook": "storybook build",
57
- "prepublishOnly": "npm run build"
58
- },
59
- "peerDependencies": {
60
- "react": "^18.0.0 || ^19.0.0",
61
- "react-dom": "^18.0.0 || ^19.0.0"
62
- },
63
- "peerDependenciesMeta": {
64
- "react": {
65
- "optional": false
66
- },
67
- "react-dom": {
68
- "optional": false
69
- },
70
- "@reduxjs/toolkit": {
71
- "optional": true
72
- },
73
- "react-redux": {
74
- "optional": true
75
- },
76
- "react-router-dom": {
77
- "optional": true
78
- }
79
- },
80
- "dependencies": {
81
- "@headlessui/react": "^2.2.9",
82
- "@tanstack/react-table": "^8.21.3",
83
- "chart.js": "^4.4.8",
84
- "chartjs-chart-geo": "^4.3.4",
85
- "chartjs-plugin-datalabels": "^2.2.0",
86
- "chartjs-plugin-zoom": "^2.2.0",
87
- "dayjs": "^1.11.19",
88
- "jquery": "^3.7.1",
89
- "jstree": "^3.3.16",
90
- "papaparse": "^5.5.2",
91
- "react-chartjs-2": "^5.3.0",
92
- "react-icons": "^5.4.0",
93
- "react-select": "^5.9.0",
94
- "reactflow": "^11.11.4"
95
- },
96
- "devDependencies": {
97
- "@reduxjs/toolkit": "^2.11.2",
98
- "@storybook/addon-a11y": "^8.6.15",
99
- "@storybook/addon-backgrounds": "^8.6.15",
100
- "@storybook/addon-controls": "^8.6.15",
101
- "@storybook/addon-docs": "^8.6.15",
102
- "@storybook/addon-essentials": "^8.6.15",
103
- "@storybook/addon-interactions": "^8.6.15",
104
- "@storybook/addon-measure": "^8.6.15",
105
- "@storybook/addon-outline": "^8.6.15",
106
- "@storybook/addon-viewport": "^8.6.15",
107
- "@storybook/blocks": "^8.6.15",
108
- "@storybook/react": "^8.6.15",
109
- "@storybook/react-vite": "^8.6.15",
110
- "@storybook/theming": "^8.6.15",
111
- "@swc/jest": "^0.2.38",
112
- "@testing-library/jest-dom": "^6.6.3",
113
- "@testing-library/react": "^16.3.0",
114
- "@testing-library/user-event": "^14.6.1",
115
- "@types/jquery": "^3.5.33",
116
- "@types/jstree": "^3.3.16",
117
- "@types/node": "^20.14.8",
118
- "@types/papaparse": "^5.5.2",
119
- "@types/react": "^18.3.18",
120
- "@types/react-dom": "^18.3.0",
121
- "@vitejs/plugin-react": "^4.3.1",
122
- "autoprefixer": "^10.4.23",
123
- "chromatic": "^12.0.0",
124
- "jest": "^30.0.0",
125
- "postcss": "^8.5.6",
126
- "react": "^18.3.1",
127
- "react-dom": "^18.3.1",
128
- "react-redux": "^9.2.0",
129
- "tailwindcss": "^3.4.19",
130
- "typescript": "^5.5.2",
131
- "vite": "^5.3.1",
132
- "vite-plugin-dts": "^3.0.0"
133
- }
134
- }
1
+ {
2
+ "name": "@iqworksai/common-components",
3
+ "version": "0.1.26",
4
+ "type": "module",
5
+ "description": "A reusable React component library and utilities package for IQWorks applications. Provides 46+ UI components, custom hooks, context providers, and utility functions extracted from DiscoverIQ Desktop.",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.mjs",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.mjs",
13
+ "require": "./dist/index.cjs"
14
+ },
15
+ "./styles": "./dist/style.css"
16
+ },
17
+ "sideEffects": [
18
+ "*.css",
19
+ "./dist/style.css"
20
+ ],
21
+ "files": [
22
+ "dist",
23
+ "README.md",
24
+ "CHANGELOG.md"
25
+ ],
26
+ "repository": {
27
+ "type": "git",
28
+ "url": "https://github.com/iqworksai/common-components.git"
29
+ },
30
+ "keywords": [
31
+ "react",
32
+ "typescript",
33
+ "component-library",
34
+ "storybook",
35
+ "vite",
36
+ "ui-components",
37
+ "design-system",
38
+ "npm-package",
39
+ "iqworks"
40
+ ],
41
+ "author": "IQWorks",
42
+ "license": "PROPRIETARY",
43
+ "publishConfig": {
44
+ "access": "public"
45
+ },
46
+ "scripts": {
47
+ "build": "vite build",
48
+ "build:watch": "vite build --watch",
49
+ "typecheck": "tsc --noEmit",
50
+ "test": "jest",
51
+ "test:watch": "jest --watch",
52
+ "test:coverage": "jest --coverage",
53
+ "lint": "eslint . --max-warnings 0",
54
+ "lint:fix": "eslint . --fix",
55
+ "precheck": "npm run lint && npm run build",
56
+ "storybook": "storybook dev -p 6006",
57
+ "build-storybook": "storybook build",
58
+ "prepublishOnly": "npm run build",
59
+ "prepare": "husky"
60
+ },
61
+ "peerDependencies": {
62
+ "react": "^18.0.0 || ^19.0.0",
63
+ "react-dom": "^18.0.0 || ^19.0.0"
64
+ },
65
+ "peerDependenciesMeta": {
66
+ "react": {
67
+ "optional": false
68
+ },
69
+ "react-dom": {
70
+ "optional": false
71
+ },
72
+ "@reduxjs/toolkit": {
73
+ "optional": true
74
+ },
75
+ "react-redux": {
76
+ "optional": true
77
+ },
78
+ "react-router-dom": {
79
+ "optional": true
80
+ }
81
+ },
82
+ "dependencies": {
83
+ "@headlessui/react": "^2.2.9",
84
+ "@tanstack/react-table": "^8.21.3",
85
+ "chart.js": "^4.4.8",
86
+ "chartjs-chart-geo": "^4.3.4",
87
+ "chartjs-plugin-datalabels": "^2.2.0",
88
+ "chartjs-plugin-zoom": "^2.2.0",
89
+ "dayjs": "^1.11.19",
90
+ "jquery": "^3.7.1",
91
+ "jstree": "^3.3.16",
92
+ "papaparse": "^5.5.2",
93
+ "react-chartjs-2": "^5.3.0",
94
+ "react-icons": "^5.4.0",
95
+ "react-select": "^5.9.0",
96
+ "reactflow": "^11.11.4"
97
+ },
98
+ "devDependencies": {
99
+ "@reduxjs/toolkit": "^2.11.2",
100
+ "@storybook/addon-a11y": "^8.6.15",
101
+ "@storybook/addon-backgrounds": "^8.6.15",
102
+ "@storybook/addon-controls": "^8.6.15",
103
+ "@storybook/addon-docs": "^8.6.15",
104
+ "@storybook/addon-essentials": "^8.6.15",
105
+ "@storybook/addon-interactions": "^8.6.15",
106
+ "@storybook/addon-measure": "^8.6.15",
107
+ "@storybook/addon-outline": "^8.6.15",
108
+ "@storybook/addon-viewport": "^8.6.15",
109
+ "@storybook/blocks": "^8.6.15",
110
+ "@storybook/react": "^8.6.15",
111
+ "@storybook/react-vite": "^8.6.15",
112
+ "@storybook/theming": "^8.6.15",
113
+ "@swc/jest": "^0.2.38",
114
+ "@testing-library/jest-dom": "^6.6.3",
115
+ "@testing-library/react": "^16.3.0",
116
+ "@testing-library/user-event": "^14.6.1",
117
+ "@types/jquery": "^3.5.33",
118
+ "@types/jstree": "^3.3.16",
119
+ "@types/node": "^20.14.8",
120
+ "@types/papaparse": "^5.5.2",
121
+ "@types/react": "^18.3.18",
122
+ "@types/react-dom": "^18.3.0",
123
+ "@vitejs/plugin-react": "^4.3.1",
124
+ "autoprefixer": "^10.4.23",
125
+ "chromatic": "^12.0.0",
126
+ "eslint": "^9.39.2",
127
+ "eslint-plugin-react": "^7.37.5",
128
+ "eslint-plugin-react-hooks": "^7.0.1",
129
+ "husky": "^9.1.7",
130
+ "jest": "^30.0.0",
131
+ "postcss": "^8.5.6",
132
+ "react": "^18.3.1",
133
+ "react-dom": "^18.3.1",
134
+ "react-redux": "^9.2.0",
135
+ "tailwindcss": "^3.4.19",
136
+ "typescript": "^5.5.2",
137
+ "typescript-eslint": "^8.54.0",
138
+ "vite": "^5.3.1",
139
+ "vite-plugin-dts": "^3.0.0"
140
+ }
141
+ }