rte-utils 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ interface HistogrammeProps {
3
+ /** Maximum value for the bar chart */
4
+ maxValue: number;
5
+ /** Relative/current value to compare against max */
6
+ relativeValue: number;
7
+ /** Value to display in text */
8
+ value: number;
9
+ /** Unit label (e.g., "MWh") */
10
+ unit: string;
11
+ /** Description label (e.g., "Soutirage") */
12
+ label: string;
13
+ /** Background color of the container */
14
+ backgroundColor?: string;
15
+ /** Height of the histogram bar in pixels */
16
+ barHeight?: number;
17
+ /** Width of the component in pixels */
18
+ width?: number;
19
+ }
20
+ export declare const Histogramme: React.FC<HistogrammeProps>;
21
+ export {};
@@ -0,0 +1 @@
1
+ export { Histogramme } from './Histogramme';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export * from './components';
2
+ export * from './hooks';
3
+ export * from './utils';
4
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{useState as t,useRef as n,useEffect as r}from"react";var a=function(a){var l=a.maxValue,o=a.relativeValue,c=a.value,h=a.unit,s=a.label,d=a.backgroundColor,p=void 0===d?"#005896":d,u=a.barHeight,m=void 0===u?103:u,f=a.width,x=void 0===f?54:f,g=t(0),v=g[0],F=g[1],y=t(!1),w=y[0],D=y[1],b=n(null),M=n(!0),S=Math.min(o/l*100,100),A=m,k=w?v:S/100*m;r(function(){var e=Math.min(o/l*100,100)/100*m;if(M.current){M.current=!1,D(!0),F(0),b.current=o;var i=Date.now(),t=function(){var n=Date.now()-i,r=Math.min(n/1e3,1),a=1-Math.pow(1-r,4);F(e*a),r<1?requestAnimationFrame(t):D(!1)};requestAnimationFrame(t)}else{if(null!==b.current&&b.current!==o){var n=Math.min(b.current/l*100,100)/100*m;D(!0),F(n);var r=Date.now(),a=function(){var i=Date.now()-r,t=Math.min(i/2e3,1),l=1-Math.pow(1-t,4);F(n+(e-n)*l),t<1?requestAnimationFrame(a):D(!1)};requestAnimationFrame(a)}else null===b.current&&F(e);b.current=o}},[o,l,m]);var q={backgroundColor:p,position:"relative",width:"".concat(x,"px"),height:"auto",padding:"34px 0"},C={height:"".concat(m,"px"),width:"32px",position:"relative"};return e("div",{style:q,children:i("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"16px",width:"100%"},children:[e("div",{style:C,children:i("svg",{width:"32",height:m,viewBox:"0 0 32 ".concat(m),style:{display:"block"},children:[e("rect",{x:"0",y:m-A,width:"32",height:A,fill:"#D3D64E",rx:"2"}),e("rect",{x:"0",y:m-k,width:"32",height:k,fill:"#C0C402",rx:"2"})]})}),i("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"2px",width:"100%"},children:[i("div",{style:{textAlign:"center",width:"40px"},children:[e("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"16px",lineHeight:"14px",color:"#FFFFFF",margin:0,display:"block"},children:c}),e("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"12px",color:"#FFFFFF",margin:0,display:"block"},children:h})]}),e("div",{children:e("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:400,fontSize:"12px",lineHeight:"18px",color:"#DDDFE0",textAlign:"left",whiteSpace:"nowrap",margin:0},children:s})})]})]})})};export{a as Histogramme};
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../src/components/Histogramme.tsx"],"sourcesContent":["import React, { useEffect, useState, useRef } from \"react\";\n\ninterface HistogrammeProps {\n /** Maximum value for the bar chart */\n maxValue: number;\n /** Relative/current value to compare against max */\n relativeValue: number;\n /** Value to display in text */\n value: number;\n /** Unit label (e.g., \"MWh\") */\n unit: string;\n /** Description label (e.g., \"Soutirage\") */\n label: string;\n /** Background color of the container */\n backgroundColor?: string;\n /** Height of the histogram bar in pixels */\n barHeight?: number;\n /** Width of the component in pixels */\n width?: number;\n}\n\nexport const Histogramme: React.FC<HistogrammeProps> = ({\n maxValue,\n relativeValue,\n value,\n unit,\n label,\n backgroundColor = \"#005896\",\n barHeight = 103,\n width = 54,\n}) => {\n // Animation state\n const [animatedHeight, setAnimatedHeight] = useState(0);\n const [isAnimating, setIsAnimating] = useState(false);\n const previousValueRef = useRef<number | null>(null);\n const isInitialMount = useRef(true);\n\n // Calculate the height percentages for the two bars\n const maxPercentage = 100;\n const relativePercentage = Math.min((relativeValue / maxValue) * 100, 100);\n\n // Calculate actual heights in pixels\n const maxBarHeight = barHeight;\n const targetRelativeBarHeight = (relativePercentage / 100) * barHeight;\n const currentRelativeBarHeight = isAnimating\n ? animatedHeight\n : targetRelativeBarHeight;\n\n // Animation effect\n useEffect(() => {\n const targetHeight =\n (Math.min((relativeValue / maxValue) * 100, 100) / 100) * barHeight;\n\n // On initial mount, start from 0\n if (isInitialMount.current) {\n isInitialMount.current = false;\n setIsAnimating(true);\n setAnimatedHeight(0);\n previousValueRef.current = relativeValue;\n\n const startTime = Date.now();\n const duration = 1000; // 2 seconds\n\n const animate = () => {\n const elapsed = Date.now() - startTime;\n const progress = Math.min(elapsed / duration, 1);\n\n // Chart.js-like easing function (easeOutQuart)\n const easeOutQuart = 1 - Math.pow(1 - progress, 4);\n\n const currentHeight = targetHeight * easeOutQuart;\n setAnimatedHeight(currentHeight);\n\n if (progress < 1) {\n requestAnimationFrame(animate);\n } else {\n setIsAnimating(false);\n }\n };\n\n requestAnimationFrame(animate);\n return;\n }\n\n // For subsequent updates, animate from previous value to new value\n if (\n previousValueRef.current !== null &&\n previousValueRef.current !== relativeValue\n ) {\n const previousHeight =\n (Math.min((previousValueRef.current / maxValue) * 100, 100) / 100) *\n barHeight;\n setIsAnimating(true);\n setAnimatedHeight(previousHeight);\n\n const startTime = Date.now();\n const duration = 2000; // 2 seconds\n\n const animate = () => {\n const elapsed = Date.now() - startTime;\n const progress = Math.min(elapsed / duration, 1);\n\n // Chart.js-like easing function (easeOutQuart)\n const easeOutQuart = 1 - Math.pow(1 - progress, 4);\n\n const currentHeight =\n previousHeight + (targetHeight - previousHeight) * easeOutQuart;\n setAnimatedHeight(currentHeight);\n\n if (progress < 1) {\n requestAnimationFrame(animate);\n } else {\n setIsAnimating(false);\n }\n };\n\n requestAnimationFrame(animate);\n } else if (previousValueRef.current === null) {\n // Set initial value without animation if no previous value\n setAnimatedHeight(targetHeight);\n }\n\n previousValueRef.current = relativeValue;\n }, [relativeValue, maxValue, barHeight]);\n const containerStyle: React.CSSProperties = {\n backgroundColor,\n position: \"relative\",\n width: `${width}px`,\n height: \"auto\",\n padding: \"34px 0\",\n };\n\n const contentStyle: React.CSSProperties = {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: \"16px\",\n width: \"100%\",\n };\n\n const histogramStyle: React.CSSProperties = {\n height: `${barHeight}px`,\n width: \"32px\",\n position: \"relative\",\n };\n\n const imageStyle: React.CSSProperties = {\n display: \"block\",\n maxWidth: \"none\",\n width: \"100%\",\n height: \"100%\",\n };\n\n const textContainerStyle: React.CSSProperties = {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: \"2px\",\n width: \"100%\",\n };\n\n const valueContainerStyle: React.CSSProperties = {\n textAlign: \"center\",\n width: \"40px\",\n };\n\n const valueStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 600,\n fontSize: \"16px\",\n lineHeight: \"14px\",\n color: \"#FFFFFF\",\n margin: 0,\n display: \"block\",\n };\n\n const unitStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 600,\n fontSize: \"12px\",\n color: \"#FFFFFF\",\n margin: 0,\n display: \"block\",\n };\n\n const labelStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 400,\n fontSize: \"12px\",\n lineHeight: \"18px\",\n color: \"#DDDFE0\",\n textAlign: \"left\",\n whiteSpace: \"nowrap\",\n margin: 0,\n };\n\n return (\n <div style={containerStyle}>\n <div style={contentStyle}>\n <div style={histogramStyle}>\n <svg\n width=\"32\"\n height={barHeight}\n viewBox={`0 0 32 ${barHeight}`}\n style={{ display: \"block\" }}\n >\n {/* Background bar (max value) */}\n <rect\n x=\"0\"\n y={barHeight - maxBarHeight}\n width=\"32\"\n height={maxBarHeight}\n fill=\"#D3D64E\"\n rx=\"2\"\n />\n {/* Foreground bar (relative value) with animation */}\n <rect\n x=\"0\"\n y={barHeight - currentRelativeBarHeight}\n width=\"32\"\n height={currentRelativeBarHeight}\n fill=\"#C0C402\"\n rx=\"2\"\n />\n </svg>\n </div>\n <div style={textContainerStyle}>\n <div style={valueContainerStyle}>\n <p style={valueStyle}>{value}</p>\n <p style={unitStyle}>{unit}</p>\n </div>\n <div>\n <p style={labelStyle}>{label}</p>\n </div>\n </div>\n </div>\n </div>\n );\n};\n"],"names":["Histogramme","_a","maxValue","relativeValue","value","unit","label","_b","backgroundColor","_c","barHeight","_d","width","_e","useState","animatedHeight","setAnimatedHeight","_f","isAnimating","setIsAnimating","previousValueRef","useRef","isInitialMount","relativePercentage","Math","min","maxBarHeight","currentRelativeBarHeight","useEffect","targetHeight","current","startTime_1","Date","now","animate_1","elapsed","progress","easeOutQuart","pow","requestAnimationFrame","previousHeight_1","startTime_2","animate_2","containerStyle","position","concat","height","padding","histogramStyle","_jsx","style","children","_jsxs","display","flexDirection","alignItems","gap","viewBox","x","y","fill","rx","textAlign","fontFamily","fontWeight","fontSize","lineHeight","color","margin","whiteSpace"],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("react");exports.Histogramme=function(i){var n=i.maxValue,r=i.relativeValue,a=i.value,l=i.unit,s=i.label,o=i.backgroundColor,c=void 0===o?"#005896":o,h=i.barHeight,u=void 0===h?103:h,x=i.width,d=void 0===x?54:x,p=t.useState(0),f=p[0],m=p[1],g=t.useState(!1),v=g[0],F=g[1],y=t.useRef(null),w=t.useRef(!0),j=Math.min(r/n*100,100),D=u,S=v?f:j/100*u;t.useEffect(function(){var e=Math.min(r/n*100,100)/100*u;if(w.current){w.current=!1,F(!0),m(0),y.current=r;var t=Date.now(),i=function(){var n=Date.now()-t,r=Math.min(n/1e3,1),a=1-Math.pow(1-r,4);m(e*a),r<1?requestAnimationFrame(i):F(!1)};requestAnimationFrame(i)}else{if(null!==y.current&&y.current!==r){var a=Math.min(y.current/n*100,100)/100*u;F(!0),m(a);var l=Date.now(),s=function(){var t=Date.now()-l,i=Math.min(t/2e3,1),n=1-Math.pow(1-i,4);m(a+(e-a)*n),i<1?requestAnimationFrame(s):F(!1)};requestAnimationFrame(s)}else null===y.current&&m(e);y.current=r}},[r,n,u]);var b={backgroundColor:c,position:"relative",width:"".concat(d,"px"),height:"auto",padding:"34px 0"},M={height:"".concat(u,"px"),width:"32px",position:"relative"};return e.jsx("div",{style:b,children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"16px",width:"100%"},children:[e.jsx("div",{style:M,children:e.jsxs("svg",{width:"32",height:u,viewBox:"0 0 32 ".concat(u),style:{display:"block"},children:[e.jsx("rect",{x:"0",y:u-D,width:"32",height:D,fill:"#D3D64E",rx:"2"}),e.jsx("rect",{x:"0",y:u-S,width:"32",height:S,fill:"#C0C402",rx:"2"})]})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"2px",width:"100%"},children:[e.jsxs("div",{style:{textAlign:"center",width:"40px"},children:[e.jsx("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"16px",lineHeight:"14px",color:"#FFFFFF",margin:0,display:"block"},children:a}),e.jsx("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:600,fontSize:"12px",color:"#FFFFFF",margin:0,display:"block"},children:l})]}),e.jsx("div",{children:e.jsx("p",{style:{fontFamily:"'Open Sans', sans-serif",fontWeight:400,fontSize:"12px",lineHeight:"18px",color:"#DDDFE0",textAlign:"left",whiteSpace:"nowrap",margin:0},children:s})})]})]})})};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../src/components/Histogramme.tsx"],"sourcesContent":["import React, { useEffect, useState, useRef } from \"react\";\n\ninterface HistogrammeProps {\n /** Maximum value for the bar chart */\n maxValue: number;\n /** Relative/current value to compare against max */\n relativeValue: number;\n /** Value to display in text */\n value: number;\n /** Unit label (e.g., \"MWh\") */\n unit: string;\n /** Description label (e.g., \"Soutirage\") */\n label: string;\n /** Background color of the container */\n backgroundColor?: string;\n /** Height of the histogram bar in pixels */\n barHeight?: number;\n /** Width of the component in pixels */\n width?: number;\n}\n\nexport const Histogramme: React.FC<HistogrammeProps> = ({\n maxValue,\n relativeValue,\n value,\n unit,\n label,\n backgroundColor = \"#005896\",\n barHeight = 103,\n width = 54,\n}) => {\n // Animation state\n const [animatedHeight, setAnimatedHeight] = useState(0);\n const [isAnimating, setIsAnimating] = useState(false);\n const previousValueRef = useRef<number | null>(null);\n const isInitialMount = useRef(true);\n\n // Calculate the height percentages for the two bars\n const maxPercentage = 100;\n const relativePercentage = Math.min((relativeValue / maxValue) * 100, 100);\n\n // Calculate actual heights in pixels\n const maxBarHeight = barHeight;\n const targetRelativeBarHeight = (relativePercentage / 100) * barHeight;\n const currentRelativeBarHeight = isAnimating\n ? animatedHeight\n : targetRelativeBarHeight;\n\n // Animation effect\n useEffect(() => {\n const targetHeight =\n (Math.min((relativeValue / maxValue) * 100, 100) / 100) * barHeight;\n\n // On initial mount, start from 0\n if (isInitialMount.current) {\n isInitialMount.current = false;\n setIsAnimating(true);\n setAnimatedHeight(0);\n previousValueRef.current = relativeValue;\n\n const startTime = Date.now();\n const duration = 1000; // 2 seconds\n\n const animate = () => {\n const elapsed = Date.now() - startTime;\n const progress = Math.min(elapsed / duration, 1);\n\n // Chart.js-like easing function (easeOutQuart)\n const easeOutQuart = 1 - Math.pow(1 - progress, 4);\n\n const currentHeight = targetHeight * easeOutQuart;\n setAnimatedHeight(currentHeight);\n\n if (progress < 1) {\n requestAnimationFrame(animate);\n } else {\n setIsAnimating(false);\n }\n };\n\n requestAnimationFrame(animate);\n return;\n }\n\n // For subsequent updates, animate from previous value to new value\n if (\n previousValueRef.current !== null &&\n previousValueRef.current !== relativeValue\n ) {\n const previousHeight =\n (Math.min((previousValueRef.current / maxValue) * 100, 100) / 100) *\n barHeight;\n setIsAnimating(true);\n setAnimatedHeight(previousHeight);\n\n const startTime = Date.now();\n const duration = 2000; // 2 seconds\n\n const animate = () => {\n const elapsed = Date.now() - startTime;\n const progress = Math.min(elapsed / duration, 1);\n\n // Chart.js-like easing function (easeOutQuart)\n const easeOutQuart = 1 - Math.pow(1 - progress, 4);\n\n const currentHeight =\n previousHeight + (targetHeight - previousHeight) * easeOutQuart;\n setAnimatedHeight(currentHeight);\n\n if (progress < 1) {\n requestAnimationFrame(animate);\n } else {\n setIsAnimating(false);\n }\n };\n\n requestAnimationFrame(animate);\n } else if (previousValueRef.current === null) {\n // Set initial value without animation if no previous value\n setAnimatedHeight(targetHeight);\n }\n\n previousValueRef.current = relativeValue;\n }, [relativeValue, maxValue, barHeight]);\n const containerStyle: React.CSSProperties = {\n backgroundColor,\n position: \"relative\",\n width: `${width}px`,\n height: \"auto\",\n padding: \"34px 0\",\n };\n\n const contentStyle: React.CSSProperties = {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: \"16px\",\n width: \"100%\",\n };\n\n const histogramStyle: React.CSSProperties = {\n height: `${barHeight}px`,\n width: \"32px\",\n position: \"relative\",\n };\n\n const imageStyle: React.CSSProperties = {\n display: \"block\",\n maxWidth: \"none\",\n width: \"100%\",\n height: \"100%\",\n };\n\n const textContainerStyle: React.CSSProperties = {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: \"2px\",\n width: \"100%\",\n };\n\n const valueContainerStyle: React.CSSProperties = {\n textAlign: \"center\",\n width: \"40px\",\n };\n\n const valueStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 600,\n fontSize: \"16px\",\n lineHeight: \"14px\",\n color: \"#FFFFFF\",\n margin: 0,\n display: \"block\",\n };\n\n const unitStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 600,\n fontSize: \"12px\",\n color: \"#FFFFFF\",\n margin: 0,\n display: \"block\",\n };\n\n const labelStyle: React.CSSProperties = {\n fontFamily: \"'Open Sans', sans-serif\",\n fontWeight: 400,\n fontSize: \"12px\",\n lineHeight: \"18px\",\n color: \"#DDDFE0\",\n textAlign: \"left\",\n whiteSpace: \"nowrap\",\n margin: 0,\n };\n\n return (\n <div style={containerStyle}>\n <div style={contentStyle}>\n <div style={histogramStyle}>\n <svg\n width=\"32\"\n height={barHeight}\n viewBox={`0 0 32 ${barHeight}`}\n style={{ display: \"block\" }}\n >\n {/* Background bar (max value) */}\n <rect\n x=\"0\"\n y={barHeight - maxBarHeight}\n width=\"32\"\n height={maxBarHeight}\n fill=\"#D3D64E\"\n rx=\"2\"\n />\n {/* Foreground bar (relative value) with animation */}\n <rect\n x=\"0\"\n y={barHeight - currentRelativeBarHeight}\n width=\"32\"\n height={currentRelativeBarHeight}\n fill=\"#C0C402\"\n rx=\"2\"\n />\n </svg>\n </div>\n <div style={textContainerStyle}>\n <div style={valueContainerStyle}>\n <p style={valueStyle}>{value}</p>\n <p style={unitStyle}>{unit}</p>\n </div>\n <div>\n <p style={labelStyle}>{label}</p>\n </div>\n </div>\n </div>\n </div>\n );\n};\n"],"names":["_a","maxValue","relativeValue","value","unit","label","_b","backgroundColor","_c","barHeight","_d","width","_e","useState","animatedHeight","setAnimatedHeight","_f","isAnimating","setIsAnimating","previousValueRef","useRef","isInitialMount","relativePercentage","Math","min","maxBarHeight","currentRelativeBarHeight","useEffect","targetHeight","current","startTime_1","Date","now","animate_1","elapsed","progress","easeOutQuart","pow","requestAnimationFrame","previousHeight_1","startTime_2","animate_2","containerStyle","position","concat","height","padding","histogramStyle","_jsx","jsx","style","children","_jsxs","display","flexDirection","alignItems","gap","viewBox","x","y","fill","rx","textAlign","fontFamily","fontWeight","fontSize","lineHeight","color","margin","whiteSpace"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
package/package.json ADDED
@@ -0,0 +1,416 @@
1
+ {
2
+ "name": "rte-utils",
3
+ "version": "1.0.0",
4
+ "description": "React components library in TypeScript for agigox projects",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "module": "dist/index.esm.js",
8
+ "types": "dist/index.d.ts",
9
+ "files": [
10
+ "dist"
11
+ ],
12
+ "scripts": {
13
+ "build": "rollup -c",
14
+ "dev": "rollup -c -w",
15
+ "test": "jest",
16
+ "lint": "eslint src --ext .ts,.tsx",
17
+ "typecheck": "tsc --noEmit",
18
+ "prepublishOnly": "npm run build"
19
+ },
20
+ "keywords": [
21
+ "react",
22
+ "typescript",
23
+ "components",
24
+ "ui",
25
+ "agigox"
26
+ ],
27
+ "author": "Amine Tabou",
28
+ "license": "MIT",
29
+ "peerDependencies": {
30
+ "react": ">=16.8.0",
31
+ "react-dom": ">=16.8.0"
32
+ },
33
+ "devDependencies": {
34
+ "@rollup/plugin-commonjs": "^25.0.0",
35
+ "@rollup/plugin-node-resolve": "^15.1.0",
36
+ "@rollup/plugin-terser": "^0.4.0",
37
+ "@rollup/plugin-typescript": "^11.1.0",
38
+ "@types/react": "^18.2.0",
39
+ "@types/react-dom": "^18.2.0",
40
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
41
+ "@typescript-eslint/parser": "^6.0.0",
42
+ "eslint": "^8.45.0",
43
+ "eslint-plugin-react": "^7.33.0",
44
+ "eslint-plugin-react-hooks": "^4.6.0",
45
+ "jest": "^29.6.0",
46
+ "rollup": "^3.26.0",
47
+ "rollup-plugin-peer-deps-external": "^2.2.4",
48
+ "tslib": "^2.8.1",
49
+ "typescript": "^5.1.0"
50
+ },
51
+ "dependencies": {
52
+ "acorn": "^8.15.0",
53
+ "acorn-jsx": "^5.3.2",
54
+ "ajv": "^6.12.6",
55
+ "ansi-escapes": "^4.3.2",
56
+ "ansi-regex": "^5.0.1",
57
+ "ansi-styles": "^4.3.0",
58
+ "anymatch": "^3.1.3",
59
+ "argparse": "^2.0.1",
60
+ "array-buffer-byte-length": "^1.0.2",
61
+ "array-includes": "^3.1.9",
62
+ "array-union": "^2.1.0",
63
+ "array.prototype.findlast": "^1.2.5",
64
+ "array.prototype.flat": "^1.3.3",
65
+ "array.prototype.flatmap": "^1.3.3",
66
+ "array.prototype.tosorted": "^1.1.4",
67
+ "arraybuffer.prototype.slice": "^1.0.4",
68
+ "async-function": "^1.0.0",
69
+ "available-typed-arrays": "^1.0.7",
70
+ "babel-jest": "^29.7.0",
71
+ "babel-plugin-istanbul": "^6.1.1",
72
+ "babel-plugin-jest-hoist": "^29.6.3",
73
+ "babel-preset-current-node-syntax": "^1.1.1",
74
+ "babel-preset-jest": "^29.6.3",
75
+ "balanced-match": "^1.0.2",
76
+ "brace-expansion": "^2.0.2",
77
+ "braces": "^3.0.3",
78
+ "browserslist": "^4.25.1",
79
+ "bser": "^2.1.1",
80
+ "buffer-from": "^1.1.2",
81
+ "call-bind": "^1.0.8",
82
+ "call-bind-apply-helpers": "^1.0.2",
83
+ "call-bound": "^1.0.4",
84
+ "callsites": "^3.1.0",
85
+ "camelcase": "^5.3.1",
86
+ "caniuse-lite": "^1.0.30001731",
87
+ "chalk": "^4.1.2",
88
+ "char-regex": "^1.0.2",
89
+ "ci-info": "^3.9.0",
90
+ "cjs-module-lexer": "^1.4.3",
91
+ "cliui": "^8.0.1",
92
+ "co": "^4.6.0",
93
+ "collect-v8-coverage": "^1.0.2",
94
+ "color-convert": "^2.0.1",
95
+ "color-name": "^1.1.4",
96
+ "commander": "^2.20.3",
97
+ "commondir": "^1.0.1",
98
+ "concat-map": "^0.0.1",
99
+ "convert-source-map": "^2.0.0",
100
+ "create-jest": "^29.7.0",
101
+ "cross-spawn": "^7.0.6",
102
+ "csstype": "^3.1.3",
103
+ "data-view-buffer": "^1.0.2",
104
+ "data-view-byte-length": "^1.0.2",
105
+ "data-view-byte-offset": "^1.0.1",
106
+ "debug": "^4.4.1",
107
+ "dedent": "^1.6.0",
108
+ "deep-is": "^0.1.4",
109
+ "deepmerge": "^4.3.1",
110
+ "define-data-property": "^1.1.4",
111
+ "define-properties": "^1.2.1",
112
+ "detect-newline": "^3.1.0",
113
+ "diff-sequences": "^29.6.3",
114
+ "dir-glob": "^3.0.1",
115
+ "doctrine": "^3.0.0",
116
+ "dunder-proto": "^1.0.1",
117
+ "electron-to-chromium": "^1.5.192",
118
+ "emittery": "^0.13.1",
119
+ "emoji-regex": "^8.0.0",
120
+ "error-ex": "^1.3.2",
121
+ "es-abstract": "^1.24.0",
122
+ "es-define-property": "^1.0.1",
123
+ "es-errors": "^1.3.0",
124
+ "es-iterator-helpers": "^1.2.1",
125
+ "es-object-atoms": "^1.1.1",
126
+ "es-set-tostringtag": "^2.1.0",
127
+ "es-shim-unscopables": "^1.1.0",
128
+ "es-to-primitive": "^1.3.0",
129
+ "escalade": "^3.2.0",
130
+ "escape-string-regexp": "^4.0.0",
131
+ "eslint-scope": "^7.2.2",
132
+ "eslint-visitor-keys": "^3.4.3",
133
+ "espree": "^9.6.1",
134
+ "esprima": "^4.0.1",
135
+ "esquery": "^1.6.0",
136
+ "esrecurse": "^4.3.0",
137
+ "estraverse": "^5.3.0",
138
+ "estree-walker": "^2.0.2",
139
+ "esutils": "^2.0.3",
140
+ "execa": "^5.1.1",
141
+ "exit": "^0.1.2",
142
+ "expect": "^29.7.0",
143
+ "fast-deep-equal": "^3.1.3",
144
+ "fast-glob": "^3.3.3",
145
+ "fast-json-stable-stringify": "^2.1.0",
146
+ "fast-levenshtein": "^2.0.6",
147
+ "fastq": "^1.19.1",
148
+ "fb-watchman": "^2.0.2",
149
+ "file-entry-cache": "^6.0.1",
150
+ "fill-range": "^7.1.1",
151
+ "find-up": "^5.0.0",
152
+ "flat-cache": "^3.2.0",
153
+ "flatted": "^3.3.3",
154
+ "for-each": "^0.3.5",
155
+ "fs.realpath": "^1.0.0",
156
+ "fsevents": "^2.3.3",
157
+ "function-bind": "^1.1.2",
158
+ "function.prototype.name": "^1.1.8",
159
+ "functions-have-names": "^1.2.3",
160
+ "gensync": "^1.0.0-beta.2",
161
+ "get-caller-file": "^2.0.5",
162
+ "get-intrinsic": "^1.3.0",
163
+ "get-package-type": "^0.1.0",
164
+ "get-proto": "^1.0.1",
165
+ "get-stream": "^6.0.1",
166
+ "get-symbol-description": "^1.1.0",
167
+ "glob": "^8.1.0",
168
+ "glob-parent": "^6.0.2",
169
+ "globals": "^13.24.0",
170
+ "globalthis": "^1.0.4",
171
+ "globby": "^11.1.0",
172
+ "gopd": "^1.2.0",
173
+ "graceful-fs": "^4.2.11",
174
+ "graphemer": "^1.4.0",
175
+ "has-bigints": "^1.1.0",
176
+ "has-flag": "^4.0.0",
177
+ "has-property-descriptors": "^1.0.2",
178
+ "has-proto": "^1.2.0",
179
+ "has-symbols": "^1.1.0",
180
+ "has-tostringtag": "^1.0.2",
181
+ "hasown": "^2.0.2",
182
+ "html-escaper": "^2.0.2",
183
+ "human-signals": "^2.1.0",
184
+ "ignore": "^5.3.2",
185
+ "import-fresh": "^3.3.1",
186
+ "import-local": "^3.2.0",
187
+ "imurmurhash": "^0.1.4",
188
+ "inflight": "^1.0.6",
189
+ "inherits": "^2.0.4",
190
+ "internal-slot": "^1.1.0",
191
+ "is-array-buffer": "^3.0.5",
192
+ "is-arrayish": "^0.2.1",
193
+ "is-async-function": "^2.1.1",
194
+ "is-bigint": "^1.1.0",
195
+ "is-boolean-object": "^1.2.2",
196
+ "is-callable": "^1.2.7",
197
+ "is-core-module": "^2.16.1",
198
+ "is-data-view": "^1.0.2",
199
+ "is-date-object": "^1.1.0",
200
+ "is-extglob": "^2.1.1",
201
+ "is-finalizationregistry": "^1.1.1",
202
+ "is-fullwidth-code-point": "^3.0.0",
203
+ "is-generator-fn": "^2.1.0",
204
+ "is-generator-function": "^1.1.0",
205
+ "is-glob": "^4.0.3",
206
+ "is-map": "^2.0.3",
207
+ "is-module": "^1.0.0",
208
+ "is-negative-zero": "^2.0.3",
209
+ "is-number": "^7.0.0",
210
+ "is-number-object": "^1.1.1",
211
+ "is-path-inside": "^3.0.3",
212
+ "is-reference": "^1.2.1",
213
+ "is-regex": "^1.2.1",
214
+ "is-set": "^2.0.3",
215
+ "is-shared-array-buffer": "^1.0.4",
216
+ "is-stream": "^2.0.1",
217
+ "is-string": "^1.1.1",
218
+ "is-symbol": "^1.1.1",
219
+ "is-typed-array": "^1.1.15",
220
+ "is-weakmap": "^2.0.2",
221
+ "is-weakref": "^1.1.1",
222
+ "is-weakset": "^2.0.4",
223
+ "isarray": "^2.0.5",
224
+ "isexe": "^2.0.0",
225
+ "istanbul-lib-coverage": "^3.2.2",
226
+ "istanbul-lib-instrument": "^6.0.3",
227
+ "istanbul-lib-report": "^3.0.1",
228
+ "istanbul-lib-source-maps": "^4.0.1",
229
+ "istanbul-reports": "^3.1.7",
230
+ "iterator.prototype": "^1.1.5",
231
+ "jest-changed-files": "^29.7.0",
232
+ "jest-circus": "^29.7.0",
233
+ "jest-cli": "^29.7.0",
234
+ "jest-config": "^29.7.0",
235
+ "jest-diff": "^29.7.0",
236
+ "jest-docblock": "^29.7.0",
237
+ "jest-each": "^29.7.0",
238
+ "jest-environment-node": "^29.7.0",
239
+ "jest-get-type": "^29.6.3",
240
+ "jest-haste-map": "^29.7.0",
241
+ "jest-leak-detector": "^29.7.0",
242
+ "jest-matcher-utils": "^29.7.0",
243
+ "jest-message-util": "^29.7.0",
244
+ "jest-mock": "^29.7.0",
245
+ "jest-pnp-resolver": "^1.2.3",
246
+ "jest-regex-util": "^29.6.3",
247
+ "jest-resolve": "^29.7.0",
248
+ "jest-resolve-dependencies": "^29.7.0",
249
+ "jest-runner": "^29.7.0",
250
+ "jest-runtime": "^29.7.0",
251
+ "jest-snapshot": "^29.7.0",
252
+ "jest-util": "^29.7.0",
253
+ "jest-validate": "^29.7.0",
254
+ "jest-watcher": "^29.7.0",
255
+ "jest-worker": "^29.7.0",
256
+ "js-tokens": "^4.0.0",
257
+ "js-yaml": "^4.1.0",
258
+ "jsesc": "^3.1.0",
259
+ "json-buffer": "^3.0.1",
260
+ "json-parse-even-better-errors": "^2.3.1",
261
+ "json-schema-traverse": "^0.4.1",
262
+ "json-stable-stringify-without-jsonify": "^1.0.1",
263
+ "json5": "^2.2.3",
264
+ "jsx-ast-utils": "^3.3.5",
265
+ "keyv": "^4.5.4",
266
+ "kleur": "^3.0.3",
267
+ "leven": "^3.1.0",
268
+ "levn": "^0.4.1",
269
+ "lines-and-columns": "^1.2.4",
270
+ "locate-path": "^6.0.0",
271
+ "lodash.merge": "^4.6.2",
272
+ "loose-envify": "^1.4.0",
273
+ "lru-cache": "^5.1.1",
274
+ "magic-string": "^0.30.17",
275
+ "make-dir": "^4.0.0",
276
+ "makeerror": "^1.0.12",
277
+ "math-intrinsics": "^1.1.0",
278
+ "merge-stream": "^2.0.0",
279
+ "merge2": "^1.4.1",
280
+ "micromatch": "^4.0.8",
281
+ "mimic-fn": "^2.1.0",
282
+ "minimatch": "^9.0.3",
283
+ "ms": "^2.1.3",
284
+ "natural-compare": "^1.4.0",
285
+ "node-int64": "^0.4.0",
286
+ "node-releases": "^2.0.19",
287
+ "normalize-path": "^3.0.0",
288
+ "npm-run-path": "^4.0.1",
289
+ "object-assign": "^4.1.1",
290
+ "object-inspect": "^1.13.4",
291
+ "object-keys": "^1.1.1",
292
+ "object.assign": "^4.1.7",
293
+ "object.entries": "^1.1.9",
294
+ "object.fromentries": "^2.0.8",
295
+ "object.values": "^1.2.1",
296
+ "once": "^1.4.0",
297
+ "onetime": "^5.1.2",
298
+ "optionator": "^0.9.4",
299
+ "own-keys": "^1.0.1",
300
+ "p-limit": "^3.1.0",
301
+ "p-locate": "^5.0.0",
302
+ "p-try": "^2.2.0",
303
+ "parent-module": "^1.0.1",
304
+ "parse-json": "^5.2.0",
305
+ "path-exists": "^4.0.0",
306
+ "path-is-absolute": "^1.0.1",
307
+ "path-key": "^3.1.1",
308
+ "path-parse": "^1.0.7",
309
+ "path-type": "^4.0.0",
310
+ "picocolors": "^1.1.1",
311
+ "picomatch": "^4.0.3",
312
+ "pirates": "^4.0.7",
313
+ "pkg-dir": "^4.2.0",
314
+ "possible-typed-array-names": "^1.1.0",
315
+ "prelude-ls": "^1.2.1",
316
+ "pretty-format": "^29.7.0",
317
+ "prompts": "^2.4.2",
318
+ "prop-types": "^15.8.1",
319
+ "punycode": "^2.3.1",
320
+ "pure-rand": "^6.1.0",
321
+ "queue-microtask": "^1.2.3",
322
+ "randombytes": "^2.1.0",
323
+ "react": "^19.1.1",
324
+ "react-dom": "^19.1.1",
325
+ "react-is": "^18.3.1",
326
+ "reflect.getprototypeof": "^1.0.10",
327
+ "regexp.prototype.flags": "^1.5.4",
328
+ "require-directory": "^2.1.1",
329
+ "resolve": "^1.22.10",
330
+ "resolve-cwd": "^3.0.0",
331
+ "resolve-from": "^4.0.0",
332
+ "resolve.exports": "^2.0.3",
333
+ "reusify": "^1.1.0",
334
+ "rimraf": "^3.0.2",
335
+ "run-parallel": "^1.2.0",
336
+ "safe-array-concat": "^1.1.3",
337
+ "safe-buffer": "^5.2.1",
338
+ "safe-push-apply": "^1.0.0",
339
+ "safe-regex-test": "^1.1.0",
340
+ "scheduler": "^0.26.0",
341
+ "semver": "^7.7.2",
342
+ "serialize-javascript": "^6.0.2",
343
+ "set-function-length": "^1.2.2",
344
+ "set-function-name": "^2.0.2",
345
+ "set-proto": "^1.0.0",
346
+ "shebang-command": "^2.0.0",
347
+ "shebang-regex": "^3.0.0",
348
+ "side-channel": "^1.1.0",
349
+ "side-channel-list": "^1.0.0",
350
+ "side-channel-map": "^1.0.1",
351
+ "side-channel-weakmap": "^1.0.2",
352
+ "signal-exit": "^3.0.7",
353
+ "sisteransi": "^1.0.5",
354
+ "slash": "^3.0.0",
355
+ "smob": "^1.5.0",
356
+ "source-map": "^0.6.1",
357
+ "source-map-support": "^0.5.13",
358
+ "sprintf-js": "^1.0.3",
359
+ "stack-utils": "^2.0.6",
360
+ "stop-iteration-iterator": "^1.1.0",
361
+ "string-length": "^4.0.2",
362
+ "string-width": "^4.2.3",
363
+ "string.prototype.matchall": "^4.0.12",
364
+ "string.prototype.repeat": "^1.0.0",
365
+ "string.prototype.trim": "^1.2.10",
366
+ "string.prototype.trimend": "^1.0.9",
367
+ "string.prototype.trimstart": "^1.0.8",
368
+ "strip-ansi": "^6.0.1",
369
+ "strip-bom": "^4.0.0",
370
+ "strip-final-newline": "^2.0.0",
371
+ "strip-json-comments": "^3.1.1",
372
+ "supports-color": "^7.2.0",
373
+ "supports-preserve-symlinks-flag": "^1.0.0",
374
+ "terser": "^5.43.1",
375
+ "test-exclude": "^6.0.0",
376
+ "text-table": "^0.2.0",
377
+ "tmpl": "^1.0.5",
378
+ "to-regex-range": "^5.0.1",
379
+ "ts-api-utils": "^1.4.3",
380
+ "type-check": "^0.4.0",
381
+ "type-detect": "^4.0.8",
382
+ "type-fest": "^0.20.2",
383
+ "typed-array-buffer": "^1.0.3",
384
+ "typed-array-byte-length": "^1.0.3",
385
+ "typed-array-byte-offset": "^1.0.4",
386
+ "typed-array-length": "^1.0.7",
387
+ "unbox-primitive": "^1.1.0",
388
+ "undici-types": "^7.8.0",
389
+ "update-browserslist-db": "^1.1.3",
390
+ "uri-js": "^4.4.1",
391
+ "v8-to-istanbul": "^9.3.0",
392
+ "walker": "^1.0.8",
393
+ "which": "^2.0.2",
394
+ "which-boxed-primitive": "^1.1.1",
395
+ "which-builtin-type": "^1.2.1",
396
+ "which-collection": "^1.0.2",
397
+ "which-typed-array": "^1.1.19",
398
+ "word-wrap": "^1.2.5",
399
+ "wrap-ansi": "^7.0.0",
400
+ "wrappy": "^1.0.2",
401
+ "write-file-atomic": "^4.0.2",
402
+ "y18n": "^5.0.8",
403
+ "yallist": "^3.1.1",
404
+ "yargs": "^17.7.2",
405
+ "yargs-parser": "^21.1.1",
406
+ "yocto-queue": "^0.1.0"
407
+ },
408
+ "repository": {
409
+ "type": "git",
410
+ "url": "git+https://github.com/agigox/rte-utils.git"
411
+ },
412
+ "bugs": {
413
+ "url": "https://github.com/agigox/rte-utils/issues"
414
+ },
415
+ "homepage": "https://github.com/agigox/rte-utils#readme"
416
+ }