feature/IO-3096-GlobalNotifications - Package updates, prepare scenario builder for app notifications, redo header to have right aligned items.

This commit is contained in:
Dave Richer
2025-02-20 17:41:52 -05:00
parent eca7ff4a42
commit a077cf0820
4 changed files with 382 additions and 369 deletions

View File

@@ -1,6 +1,7 @@
import Icon, { import Icon, {
BankFilled, BankFilled,
BarChartOutlined, BarChartOutlined,
BellFilled,
CarFilled, CarFilled,
CheckCircleOutlined, CheckCircleOutlined,
ClockCircleFilled, ClockCircleFilled,
@@ -44,6 +45,11 @@ import { selectBodyshop, selectCurrentUser } from "../../redux/user/user.selecto
import InstanceRenderManager from "../../utils/instanceRenderMgr"; import InstanceRenderManager from "../../utils/instanceRenderMgr";
import { HasFeatureAccess } from "../feature-wrapper/feature-wrapper.component"; import { HasFeatureAccess } from "../feature-wrapper/feature-wrapper.component";
import LockWrapper from "../lock-wrapper/lock-wrapper.component"; import LockWrapper from "../lock-wrapper/lock-wrapper.component";
import { useState, useEffect } from "react";
import { debounce } from "lodash";
// Used to Determine if the Header is in Mobile Mode, and to toggle the multiple menus
const HEADER_MOBILE_BREAKPOINT = 576;
const mapStateToProps = createStructuredSelector({ const mapStateToProps = createStructuredSelector({
currentUser: selectCurrentUser, currentUser: selectCurrentUser,
@@ -116,18 +122,28 @@ function Header({
const { t } = useTranslation(); const { t } = useTranslation();
// const deleteBetaCookie = () => { const [isMobile, setIsMobile] = useState(() => {
// const cookieExists = document.cookie.split("; ").some((row) => row.startsWith(`betaSwitchImex=`)); const effectiveWidth = window.innerWidth / (window.devicePixelRatio || 1);
// if (cookieExists) { return effectiveWidth <= HEADER_MOBILE_BREAKPOINT;
// const domain = window.location.hostname.split(".").slice(-2).join("."); });
// document.cookie = `betaSwitchImex=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=.${domain}`;
// }
// };
//
// deleteBetaCookie();
const handleResize = debounce(() => {
const effectiveWidth = window.innerWidth / (window.devicePixelRatio || 1);
setIsMobile(effectiveWidth <= HEADER_MOBILE_BREAKPOINT);
}, 200);
useEffect(() => {
window.addEventListener("resize", handleResize);
window.addEventListener("orientationchange", handleResize);
return () => {
window.removeEventListener("resize", handleResize);
window.removeEventListener("orientationchange", handleResize);
handleResize.cancel(); // Cancel any pending debounced calls on cleanup
};
}, [handleResize]);
// Accounting children setup (unchanged)
const accountingChildren = []; const accountingChildren = [];
accountingChildren.push( accountingChildren.push(
{ {
key: "bills", key: "bills",
@@ -350,6 +366,7 @@ function Header({
children: accountingExportChildren children: accountingExportChildren
}); });
// Define all menu items
const menuItems = [ const menuItems = [
{ {
key: "home", key: "home",
@@ -419,7 +436,6 @@ function Header({
icon: <ScheduleOutlined />, icon: <ScheduleOutlined />,
label: <Link to="/manage/production/list">{t("menus.header.productionlist")}</Link> label: <Link to="/manage/production/list">{t("menus.header.productionlist")}</Link>
}, },
{ {
key: "productionboard", key: "productionboard",
id: "header-production-board", id: "header-production-board",
@@ -432,7 +448,6 @@ function Header({
</Link> </Link>
) )
}, },
{ {
type: "divider", type: "divider",
id: "header-jobs-divider3" id: "header-jobs-divider3"
@@ -519,7 +534,6 @@ function Header({
} }
] ]
}, },
...(accountingChildren.length > 0 ...(accountingChildren.length > 0
? [ ? [
{ {
@@ -537,7 +551,6 @@ function Header({
icon: <PhoneOutlined />, icon: <PhoneOutlined />,
label: <Link to="/manage/phonebook">{t("menus.header.phonebook")}</Link> label: <Link to="/manage/phonebook">{t("menus.header.phonebook")}</Link>
}, },
{ {
key: "temporarydocs", key: "temporarydocs",
id: "header-temporarydocs", id: "header-temporarydocs",
@@ -550,7 +563,6 @@ function Header({
</Link> </Link>
) )
}, },
{ {
key: "tasks", key: "tasks",
id: "tasks", id: "tasks",
@@ -623,7 +635,6 @@ function Header({
icon: <Icon component={IoBusinessOutline} />, icon: <Icon component={IoBusinessOutline} />,
label: <Link to="/manage/shop/vendors">{t("menus.header.shop_vendors")}</Link> label: <Link to="/manage/shop/vendors">{t("menus.header.shop_vendors")}</Link>
}, },
{ {
key: "shop-csi", key: "shop-csi",
id: "header-shop-csi", id: "header-shop-csi",
@@ -638,9 +649,26 @@ function Header({
} }
] ]
}, },
// Right-aligned items on desktop, merged on mobile
{
key: "notifications",
icon: <BellFilled />,
id: "header-notifications"
},
{
key: "recent",
icon: <ClockCircleFilled />,
id: "header-recent",
children: recentItems.map((i, idx) => ({
key: idx,
id: `header-recent-${idx}`,
label: <Link to={i.url}>{i.label}</Link>
}))
},
{ {
key: "user", key: "user",
label: currentUser.displayName || currentUser.email || t("general.labels.unknown"), icon: <UserOutlined />,
// label: currentUser.displayName || currentUser.email || t("general.labels.unknown"),
children: [ children: [
{ {
key: "signout", key: "signout",
@@ -675,7 +703,6 @@ function Header({
} }
] ]
: []), : []),
{ {
key: "shiftclock", key: "shiftclock",
id: "header-shiftclock", id: "header-shiftclock",
@@ -688,64 +715,67 @@ function Header({
</Link> </Link>
) )
}, },
{ {
key: "profile", key: "profile",
id: "header-profile", id: "header-profile",
icon: <UserOutlined />, icon: <UserOutlined />,
label: <Link to="/manage/profile">{t("menus.currentuser.profile")}</Link> label: <Link to="/manage/profile">{t("menus.currentuser.profile")}</Link>
} }
// {
// key: 'langselecter',
// label: t("menus.currentuser.languageselector"),
// children: [
// {
// key: 'en-US',
// label: t("general.languages.english"),
// onClick: () => {
// window.location.href = "/?lang=en-US";
// }
// },
// {
// key: 'fr-CA',
// label: t("general.languages.french"),
// onClick: () => {
// window.location.href = "/?lang=fr-CA";
// }
// },
// {
// key: 'es-MX',
// label: t("general.languages.spanish"),
// onClick: () => {
// window.location.href = "/?lang=es-MX";
// }
// },
// ]
// },
] ]
},
{
key: "recent",
icon: <ClockCircleFilled />,
id: "header-recent",
children: recentItems.map((i, idx) => ({
key: idx,
id: `header-recent-${idx}`,
label: <Link to={i.url}>{i.label}</Link>
}))
} }
]; ];
return ( return (
<Layout.Header> <Layout.Header style={{ padding: 0 }}>
<Menu {isMobile ? (
mode="horizontal" <Menu
theme={"dark"} mode="horizontal"
selectedKeys={[selectedHeader]} theme="dark"
onClick={handleMenuClick} selectedKeys={[selectedHeader]}
subMenuCloseDelay={0.3} onClick={handleMenuClick}
items={menuItems} subMenuCloseDelay={0.3}
/> items={menuItems}
style={{ width: "100%" }}
/>
) : (
<div
style={{
display: "flex",
justifyContent: "space-between",
alignItems: "center",
width: "100%"
}}
>
<Menu
mode="horizontal"
theme="dark"
selectedKeys={[selectedHeader]}
onClick={handleMenuClick}
subMenuCloseDelay={0.3}
items={menuItems.slice(0, -3)}
style={{
flex: "0 1 auto",
justifyContent: "flex-start",
minWidth: 0,
overflow: "visible"
}}
/>
<div style={{ flex: "1 0 0" }} />
<Menu
mode="horizontal"
theme="dark"
selectedKeys={[selectedHeader]}
onClick={handleMenuClick}
subMenuCloseDelay={0.3}
items={menuItems.slice(-3)}
style={{
flex: "0 0 auto",
justifyContent: "flex-end",
overflow: "visible"
}}
/>
</div>
)}
</Layout.Header> </Layout.Header>
); );
} }

446
package-lock.json generated
View File

@@ -9,12 +9,12 @@
"version": "0.2.0", "version": "0.2.0",
"license": "UNLICENSED", "license": "UNLICENSED",
"dependencies": { "dependencies": {
"@aws-sdk/client-cloudwatch-logs": "^3.744.0", "@aws-sdk/client-cloudwatch-logs": "^3.750.0",
"@aws-sdk/client-elasticache": "^3.744.0", "@aws-sdk/client-elasticache": "^3.750.0",
"@aws-sdk/client-s3": "^3.744.0", "@aws-sdk/client-s3": "^3.750.0",
"@aws-sdk/client-secrets-manager": "^3.744.0", "@aws-sdk/client-secrets-manager": "^3.750.0",
"@aws-sdk/client-ses": "^3.744.0", "@aws-sdk/client-ses": "^3.750.0",
"@aws-sdk/credential-provider-node": "^3.744.0", "@aws-sdk/credential-provider-node": "^3.750.0",
"@opensearch-project/opensearch": "^2.13.0", "@opensearch-project/opensearch": "^2.13.0",
"@socket.io/admin-ui": "^0.5.1", "@socket.io/admin-ui": "^0.5.1",
"@socket.io/redis-adapter": "^8.3.0", "@socket.io/redis-adapter": "^8.3.0",
@@ -32,7 +32,7 @@
"cors": "2.8.5", "cors": "2.8.5",
"crisp-status-reporter": "^1.2.2", "crisp-status-reporter": "^1.2.2",
"csrf": "^3.1.0", "csrf": "^3.1.0",
"dd-trace": "^5.36.0", "dd-trace": "^5.37.1",
"dinero.js": "^1.9.1", "dinero.js": "^1.9.1",
"dotenv": "^16.4.5", "dotenv": "^16.4.5",
"express": "^4.21.1", "express": "^4.21.1",
@@ -56,7 +56,7 @@
"redis": "^4.7.0", "redis": "^4.7.0",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"skia-canvas": "^2.0.2", "skia-canvas": "^2.0.2",
"soap": "^1.1.7", "soap": "^1.1.8",
"socket.io": "^4.8.1", "socket.io": "^4.8.1",
"socket.io-adapter": "^2.5.5", "socket.io-adapter": "^2.5.5",
"ssh2-sftp-client": "^11.0.0", "ssh2-sftp-client": "^11.0.0",
@@ -286,26 +286,26 @@
} }
}, },
"node_modules/@aws-sdk/client-cloudwatch-logs": { "node_modules/@aws-sdk/client-cloudwatch-logs": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.750.0.tgz",
"integrity": "sha512-f2Xw9/pPA2kpCB0P36wl4nQEIe7VdBuxMtu0rV1q3JuJpMdE/FuUrT77Yj3wvZSU2IchzOSaL7g0Bqdewe2DJw==", "integrity": "sha512-nXzQ+x6tPKSzXE9eo4IMuxQr/Cc+R53CFBqnmq3WKJEUao7cXxLKmxC/6NiJg89Vif9QEeuP4T0hTjyIHsYezg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-node": "3.744.0", "@aws-sdk/credential-provider-node": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/eventstream-serde-browser": "^4.0.1", "@smithy/eventstream-serde-browser": "^4.0.1",
"@smithy/eventstream-serde-config-resolver": "^4.0.1", "@smithy/eventstream-serde-config-resolver": "^4.0.1",
"@smithy/eventstream-serde-node": "^4.0.1", "@smithy/eventstream-serde-node": "^4.0.1",
@@ -313,21 +313,21 @@
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -354,45 +354,45 @@
} }
}, },
"node_modules/@aws-sdk/client-elasticache": { "node_modules/@aws-sdk/client-elasticache": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-elasticache/-/client-elasticache-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-elasticache/-/client-elasticache-3.750.0.tgz",
"integrity": "sha512-WvpK8GhBNDJnux0Oxy3x55KB2XPdKOtV4Rl5T6POlyWBMNnZgCMq1yXg9dzP+PPj73V/sBoLrChlANgAjiSAhA==", "integrity": "sha512-3fd8yNV0I8zllHN1Q270y0+/16TDcLdwTd8nw0p4ndSiXgen+/MjbPCY5ZTkyxgvuCHF5wD67fuz0SQ/wiBrXQ==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-node": "3.744.0", "@aws-sdk/credential-provider-node": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -405,35 +405,35 @@
} }
}, },
"node_modules/@aws-sdk/client-s3": { "node_modules/@aws-sdk/client-s3": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.750.0.tgz",
"integrity": "sha512-UuiqxVI5FKlnNcWoDP8bsyJcMJa7XjGcCbVCfKSpSboNeBM4tQS3ZIViSYuz+BeO8/MuwCy7hKn7+Zjivit1nA==", "integrity": "sha512-S9G9noCeBxchoMVkHYrRi1A1xW/VOTP2W7X34lP+Y7Wpl32yMA7IJo0fAGAuTc0q1Nu6/pXDm+oDG7rhTCA1tg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha1-browser": "5.2.0",
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-node": "3.744.0", "@aws-sdk/credential-provider-node": "3.750.0",
"@aws-sdk/middleware-bucket-endpoint": "3.734.0", "@aws-sdk/middleware-bucket-endpoint": "3.734.0",
"@aws-sdk/middleware-expect-continue": "3.734.0", "@aws-sdk/middleware-expect-continue": "3.734.0",
"@aws-sdk/middleware-flexible-checksums": "3.744.0", "@aws-sdk/middleware-flexible-checksums": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-location-constraint": "3.734.0", "@aws-sdk/middleware-location-constraint": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-sdk-s3": "3.744.0", "@aws-sdk/middleware-sdk-s3": "3.750.0",
"@aws-sdk/middleware-ssec": "3.734.0", "@aws-sdk/middleware-ssec": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/signature-v4-multi-region": "3.744.0", "@aws-sdk/signature-v4-multi-region": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@aws-sdk/xml-builder": "3.734.0", "@aws-sdk/xml-builder": "3.734.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/eventstream-serde-browser": "^4.0.1", "@smithy/eventstream-serde-browser": "^4.0.1",
"@smithy/eventstream-serde-config-resolver": "^4.0.1", "@smithy/eventstream-serde-config-resolver": "^4.0.1",
"@smithy/eventstream-serde-node": "^4.0.1", "@smithy/eventstream-serde-node": "^4.0.1",
@@ -444,25 +444,25 @@
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/md5-js": "^4.0.1", "@smithy/md5-js": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"@smithy/util-utf8": "^4.0.0", "@smithy/util-utf8": "^4.0.0",
"@smithy/util-waiter": "^4.0.2", "@smithy/util-waiter": "^4.0.2",
"tslib": "^2.6.2" "tslib": "^2.6.2"
@@ -472,45 +472,45 @@
} }
}, },
"node_modules/@aws-sdk/client-secrets-manager": { "node_modules/@aws-sdk/client-secrets-manager": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.750.0.tgz",
"integrity": "sha512-AF5Db4vmy+aWk++d6afxv+DI8YLtWq76AIlFcHv+E9Omb7/Fgzrf9AfevjLTgg8BLK51l+uSdAEfC60K3aD3RA==", "integrity": "sha512-5JrrOQECJtcUFodKqBNKTk82WycIu/4cVFYf6QXsZQ/0bJ8zlp3vDyTeAjLriZXRXrb8HZlWqOsPCPT3wEBYdg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-node": "3.744.0", "@aws-sdk/credential-provider-node": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -537,45 +537,45 @@
} }
}, },
"node_modules/@aws-sdk/client-ses": { "node_modules/@aws-sdk/client-ses": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-ses/-/client-ses-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-ses/-/client-ses-3.750.0.tgz",
"integrity": "sha512-nMshH8HrZddO+PBPIxocmRoM7rNc71iQtuwISwtTXAX7Fe4v3REv9DBWK46bgtNyBLSUbe3lvaPM8CCAPYOtgQ==", "integrity": "sha512-0apX2PEzT/09XiO42jNHjkszz/k2RLcIiaLbl1ngcKY1lWzMzIiGIqXw7Emei8iye2o6EsWuBG1p3k30iSyjhg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-node": "3.744.0", "@aws-sdk/credential-provider-node": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -588,44 +588,44 @@
} }
}, },
"node_modules/@aws-sdk/client-sso": { "node_modules/@aws-sdk/client-sso": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.750.0.tgz",
"integrity": "sha512-mzJxPQ9mcnNY50pi7+pxB34/Dt7PUn0OgkashHdJPTnavoriLWvPcaQCG1NEVAtyzxNdowhpi4KjC+aN1EwAeA==", "integrity": "sha512-y0Rx6pTQXw0E61CaptpZF65qNggjqOgymq/RYZU5vWba5DGQ+iqGt8Yq8s+jfBoBBNXshxq8l8Dl5Uq/JTY1wg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -637,18 +637,18 @@
} }
}, },
"node_modules/@aws-sdk/core": { "node_modules/@aws-sdk/core": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.750.0.tgz",
"integrity": "sha512-R0XLfDDq7MAXYyDf7tPb+m0R7gmzTRRDtPNQ5jvuq8dbkefph5gFMkxZ2zSx7dfTsfYHhBPuTBsQ0c5Xjal3Vg==", "integrity": "sha512-bZ5K7N5L4+Pa2epbVpUQqd1XLG2uU8BGs/Sd+2nbgTf+lNQJyIxAg/Qsrjz9MzmY8zzQIeRQEkNmR6yVAfCmmQ==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/signature-v4": "^5.0.1", "@smithy/signature-v4": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"fast-xml-parser": "4.4.1", "fast-xml-parser": "4.4.1",
@@ -659,12 +659,12 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-env": { "node_modules/@aws-sdk/credential-provider-env": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.750.0.tgz",
"integrity": "sha512-hyjC7xqzAeERorYYjhQG1ivcr1XlxgfBpa+r4pG29toFG60mACyVzaR7+og3kgzjRFAB7D1imMxPQyEvQ1QokA==", "integrity": "sha512-In6bsG0p/P31HcH4DBRKBbcDS/3SHvEPjfXV8ODPWZO/l3/p7IRoYBdQ07C9R+VMZU2D0+/Sc/DWK/TUNDk1+Q==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
@@ -675,20 +675,20 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-http": { "node_modules/@aws-sdk/credential-provider-http": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.750.0.tgz",
"integrity": "sha512-k+P1Tl5ewBvVByR6hB726qFIzANgQVf2cY87hZ/e09pQYlH4bfBcyY16VJhkqYnKmv6HMdWxKHX7D8nwlc8Obg==", "integrity": "sha512-wFB9qqfa20AB0dElsQz5ZlZT5o+a+XzpEpmg0erylmGYqEOvh8NQWfDUVpRmQuGq9VbvW/8cIbxPoNqEbPtuWQ==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
"engines": { "engines": {
@@ -696,18 +696,18 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-ini": { "node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.750.0.tgz",
"integrity": "sha512-hjEWgkF86tkvg8PIsDiB3KkTj7z8ZFGR0v0OLQYD47o17q1qfoMzZmg9wae3wXp9KzU+lZETo+8oMqX9a+7aVQ==", "integrity": "sha512-2YIZmyEr5RUd3uxXpxOLD9G67Bibm4I/65M6vKFP17jVMUT+R1nL7mKqmhEVO2p+BoeV+bwMyJ/jpTYG368PCg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/credential-provider-env": "3.744.0", "@aws-sdk/credential-provider-env": "3.750.0",
"@aws-sdk/credential-provider-http": "3.744.0", "@aws-sdk/credential-provider-http": "3.750.0",
"@aws-sdk/credential-provider-process": "3.744.0", "@aws-sdk/credential-provider-process": "3.750.0",
"@aws-sdk/credential-provider-sso": "3.744.0", "@aws-sdk/credential-provider-sso": "3.750.0",
"@aws-sdk/credential-provider-web-identity": "3.744.0", "@aws-sdk/credential-provider-web-identity": "3.750.0",
"@aws-sdk/nested-clients": "3.744.0", "@aws-sdk/nested-clients": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/credential-provider-imds": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
@@ -720,17 +720,17 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-node": { "node_modules/@aws-sdk/credential-provider-node": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.750.0.tgz",
"integrity": "sha512-4oUfRd6pe/VGmKoav17pPoOO0WP0L6YXmHqtJHSDmFUOAa+Vh0ZRljTj/yBdleRgdO6rOfdWqoGLFSFiAZDrsQ==", "integrity": "sha512-THWHHAceLwsOiowPEmKyhWVDlEUxH07GHSw5AQFDvNQtGKOQl0HSIFO1mKObT2Q2Vqzji9Bq8H58SO5BFtNPRw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/credential-provider-env": "3.744.0", "@aws-sdk/credential-provider-env": "3.750.0",
"@aws-sdk/credential-provider-http": "3.744.0", "@aws-sdk/credential-provider-http": "3.750.0",
"@aws-sdk/credential-provider-ini": "3.744.0", "@aws-sdk/credential-provider-ini": "3.750.0",
"@aws-sdk/credential-provider-process": "3.744.0", "@aws-sdk/credential-provider-process": "3.750.0",
"@aws-sdk/credential-provider-sso": "3.744.0", "@aws-sdk/credential-provider-sso": "3.750.0",
"@aws-sdk/credential-provider-web-identity": "3.744.0", "@aws-sdk/credential-provider-web-identity": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/credential-provider-imds": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
@@ -743,12 +743,12 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-process": { "node_modules/@aws-sdk/credential-provider-process": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.750.0.tgz",
"integrity": "sha512-m0d/pDBIaiEAAxWXt/c79RHsKkUkyPOvF2SAMRddVhhOt1GFZI4ml+3f4drmAZfXldIyJmvJTJJqWluVPwTIqQ==", "integrity": "sha512-Q78SCH1n0m7tpu36sJwfrUSxI8l611OyysjQeMiIOliVfZICEoHcLHLcLkiR+tnIpZ3rk7d2EQ6R1jwlXnalMQ==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1",
@@ -760,14 +760,14 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-sso": { "node_modules/@aws-sdk/credential-provider-sso": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.750.0.tgz",
"integrity": "sha512-xdMufTZOvpbDoDPI2XLu0/Rg3qJ/txpS8IJR63NsCGotHJZ/ucLNKwTcGS40hllZB8qSHTlvmlOzElDahTtx/A==", "integrity": "sha512-FGYrDjXN/FOQVi/t8fHSv8zCk+NEvtFnuc4cZUj5OIbM4vrfFc5VaPyn41Uza3iv6Qq9rZg0QOwWnqK8lNrqUw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/client-sso": "3.744.0", "@aws-sdk/client-sso": "3.750.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/token-providers": "3.744.0", "@aws-sdk/token-providers": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1",
@@ -779,13 +779,13 @@
} }
}, },
"node_modules/@aws-sdk/credential-provider-web-identity": { "node_modules/@aws-sdk/credential-provider-web-identity": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.750.0.tgz",
"integrity": "sha512-cNk93GZxORzqEojWfXdrPBF6a7Nu3LpPCWG5mV+lH2tbuGsmw6XhKkwpt7o+OiIP4tKCpHlvqOD8f1nmhe1KDA==", "integrity": "sha512-Nz8zs3YJ+GOTSrq+LyzbbC1Ffpt7pK38gcOyNZv76pP5MswKTUKNYBJehqwa+i7FcFQHsCk3TdhR8MT1ZR23uA==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/nested-clients": "3.744.0", "@aws-sdk/nested-clients": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
@@ -829,22 +829,22 @@
} }
}, },
"node_modules/@aws-sdk/middleware-flexible-checksums": { "node_modules/@aws-sdk/middleware-flexible-checksums": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.750.0.tgz",
"integrity": "sha512-4AuBdvkwfwagZQt3kt1b0x2dtC54cOrN5gt96V2b4wIjHBRxB/IfAyynahOgx3fd7Zjf74xwmxasjs7iJ8yglg==", "integrity": "sha512-ach0d2buDnX2TUausUbiXXFWFo3IegLnCrA+Rw8I9AYVpLN9lTaRwAYJwYC6zEuW9Golff8MwkYsp/OaC5tKMw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32": "5.2.0",
"@aws-crypto/crc32c": "5.2.0", "@aws-crypto/crc32c": "5.2.0",
"@aws-crypto/util": "5.2.0", "@aws-crypto/util": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/is-array-buffer": "^4.0.0", "@smithy/is-array-buffer": "^4.0.0",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"@smithy/util-utf8": "^4.0.0", "@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
@@ -911,23 +911,23 @@
} }
}, },
"node_modules/@aws-sdk/middleware-sdk-s3": { "node_modules/@aws-sdk/middleware-sdk-s3": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.750.0.tgz",
"integrity": "sha512-zE0kNjMV7B8pC2ClhrV2gCj/gWLiinRkfPeiUevfjl+Hdke9zcAWVNHLeGV54FJjXQEdwIAjeE7WJdHo7hio7g==", "integrity": "sha512-3H6Z46cmAQCHQ0z8mm7/cftY5ifiLfCjbObrbyyp2fhQs9zk6gCKzIX8Zjhw0RMd93FZi3ebRuKJWmMglf4Itw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-arn-parser": "3.723.0", "@aws-sdk/util-arn-parser": "3.723.0",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/signature-v4": "^5.0.1", "@smithy/signature-v4": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-config-provider": "^4.0.0", "@smithy/util-config-provider": "^4.0.0",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"@smithy/util-utf8": "^4.0.0", "@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
@@ -950,15 +950,15 @@
} }
}, },
"node_modules/@aws-sdk/middleware-user-agent": { "node_modules/@aws-sdk/middleware-user-agent": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.750.0.tgz",
"integrity": "sha512-ROUbDQHfVWiBHXd4m9E9mKj1Azby8XCs8RC8OCf9GVH339GSE6aMrPJSzMlsV1LmzPdPIypgp5qqh5NfSrKztg==", "integrity": "sha512-YYcslDsP5+2NZoN3UwuhZGkhAHPSli7HlJHBafBrvjGV/I9f8FuOO1d1ebxGdEP4HyRXUGyh+7Ur4q+Psk0ryw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
@@ -968,44 +968,44 @@
} }
}, },
"node_modules/@aws-sdk/nested-clients": { "node_modules/@aws-sdk/nested-clients": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.750.0.tgz",
"integrity": "sha512-Mnrlh4lRY1gZQnKvN2Lh/5WXcGkzC41NM93mtn2uaqOh+DZLCXCttNCfbUesUvYJLOo3lYaOpiDsjTkPVB1yjw==", "integrity": "sha512-OH68BRF0rt9nDloq4zsfeHI0G21lj11a66qosaljtEP66PWm7tQ06feKbFkXHT5E1K3QhJW3nVyK8v2fEBY5fg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0", "@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.744.0", "@aws-sdk/core": "3.750.0",
"@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-host-header": "3.734.0",
"@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0",
"@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0",
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/region-config-resolver": "3.734.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-endpoints": "3.743.0",
"@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-browser": "3.734.0",
"@aws-sdk/util-user-agent-node": "3.744.0", "@aws-sdk/util-user-agent-node": "3.750.0",
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
"@smithy/hash-node": "^4.0.1", "@smithy/hash-node": "^4.0.1",
"@smithy/invalid-dependency": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1",
"@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-retry": "^4.0.4", "@smithy/middleware-retry": "^4.0.6",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/node-http-handler": "^4.0.2", "@smithy/node-http-handler": "^4.0.2",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/url-parser": "^4.0.1", "@smithy/url-parser": "^4.0.1",
"@smithy/util-base64": "^4.0.0", "@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0",
"@smithy/util-defaults-mode-browser": "^4.0.4", "@smithy/util-defaults-mode-browser": "^4.0.6",
"@smithy/util-defaults-mode-node": "^4.0.4", "@smithy/util-defaults-mode-node": "^4.0.6",
"@smithy/util-endpoints": "^3.0.1", "@smithy/util-endpoints": "^3.0.1",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -1034,12 +1034,12 @@
} }
}, },
"node_modules/@aws-sdk/signature-v4-multi-region": { "node_modules/@aws-sdk/signature-v4-multi-region": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.750.0.tgz",
"integrity": "sha512-QyrAevGGwceM+knGfV5r2NvSAjI94PETu6u+Fxalf8F/ybpK7qn1va0w3cGDU68oRqC0JHfo53JXjm9yQokj9Q==", "integrity": "sha512-RA9hv1Irro/CrdPcOEXKwJ0DJYJwYCsauGEdRXihrRfy8MNSR9E+mD5/Fr5Rxjaq5AHM05DYnN3mg/DU6VwzSw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/middleware-sdk-s3": "3.744.0", "@aws-sdk/middleware-sdk-s3": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/signature-v4": "^5.0.1", "@smithy/signature-v4": "^5.0.1",
@@ -1051,12 +1051,12 @@
} }
}, },
"node_modules/@aws-sdk/token-providers": { "node_modules/@aws-sdk/token-providers": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.750.0.tgz",
"integrity": "sha512-v/1+lWkDCd60Ei6oyhJqli6mTsPEVepLoSMB50vHUVlJP0fzXu/3FMje90/RzeUoh/VugZQJCEv/NNpuC6wztg==", "integrity": "sha512-X/KzqZw41iWolwNdc8e3RMcNSMR364viHv78u6AefXOO5eRM40c4/LuST1jDzq35/LpnqRhL7/MuixOetw+sFw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/nested-clients": "3.744.0", "@aws-sdk/nested-clients": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1",
@@ -1132,12 +1132,12 @@
} }
}, },
"node_modules/@aws-sdk/util-user-agent-node": { "node_modules/@aws-sdk/util-user-agent-node": {
"version": "3.744.0", "version": "3.750.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.744.0.tgz", "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.750.0.tgz",
"integrity": "sha512-BJURjwIXhNa4heXkLC0+GcL+8wVXaU7JoyW6ckdvp93LL+sVHeR1d5FxXZHQW/pMI4E3gNlKyBqjKaT75tObNQ==", "integrity": "sha512-84HJj9G9zbrHX2opLk9eHfDceB+UIHVrmflMzWHpsmo9fDuro/flIBqaVDlE021Osj6qIM0SJJcnL6s23j7JEw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@aws-sdk/middleware-user-agent": "3.744.0", "@aws-sdk/middleware-user-agent": "3.750.0",
"@aws-sdk/types": "3.734.0", "@aws-sdk/types": "3.734.0",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
@@ -1370,9 +1370,9 @@
} }
}, },
"node_modules/@datadog/native-iast-taint-tracking": { "node_modules/@datadog/native-iast-taint-tracking": {
"version": "3.2.0", "version": "3.3.0",
"resolved": "https://registry.npmjs.org/@datadog/native-iast-taint-tracking/-/native-iast-taint-tracking-3.2.0.tgz", "resolved": "https://registry.npmjs.org/@datadog/native-iast-taint-tracking/-/native-iast-taint-tracking-3.3.0.tgz",
"integrity": "sha512-Mc6FzCoyvU5yXLMsMS9yKnEqJMWoImAukJXolNWCTm+JQYCMf2yMsJ8pBAm7KyZKliamM9rCn7h7Tr2H3lXwjA==", "integrity": "sha512-OzmjOncer199ATSYeCAwSACCRyQimo77LKadSHDUcxa/n9FYU+2U/bYQTYsK3vquSA2E47EbSVq9rytrlTdvnA==",
"hasInstallScript": true, "hasInstallScript": true,
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
@@ -2438,9 +2438,9 @@
} }
}, },
"node_modules/@smithy/core": { "node_modules/@smithy/core": {
"version": "3.1.2", "version": "3.1.4",
"resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.1.2.tgz", "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.1.4.tgz",
"integrity": "sha512-htwQXkbdF13uwwDevz9BEzL5ABK+1sJpVQXywwGSH973AVOvisHNfpcB8A8761G6XgHoS2kHPqc9DqHJ2gp+/Q==", "integrity": "sha512-wFExFGK+7r2wYriOqe7RRIBNpvxwiS95ih09+GSLRBdoyK/O1uZA7K7pKesj5CBvwJuSBeXwLyR88WwIAY+DGA==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
@@ -2448,7 +2448,7 @@
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"@smithy/util-utf8": "^4.0.0", "@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
@@ -2656,12 +2656,12 @@
} }
}, },
"node_modules/@smithy/middleware-endpoint": { "node_modules/@smithy/middleware-endpoint": {
"version": "4.0.3", "version": "4.0.5",
"resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.0.3.tgz", "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.0.5.tgz",
"integrity": "sha512-YdbmWhQF5kIxZjWqPIgboVfi8i5XgiYMM7GGKFMTvBei4XjNQfNv8sukT50ITvgnWKKKpOtp0C0h7qixLgb77Q==", "integrity": "sha512-cPzGZV7qStHwboFrm6GfrzQE+YDiCzWcTh4+7wKrP/ZQ4gkw+r7qDjV8GjM4N0UYsuUyLfpzLGg5hxsYTU11WA==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-serde": "^4.0.2",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1",
@@ -2675,15 +2675,15 @@
} }
}, },
"node_modules/@smithy/middleware-retry": { "node_modules/@smithy/middleware-retry": {
"version": "4.0.4", "version": "4.0.6",
"resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.0.4.tgz", "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.0.6.tgz",
"integrity": "sha512-wmxyUBGHaYUqul0wZiset4M39SMtDBOtUr2KpDuftKNN74Do9Y36Go6Eqzj9tL0mIPpr31ulB5UUtxcsCeGXsQ==", "integrity": "sha512-s8QzuOQnbdvRymD9Gt9c9zMq10wUQAHQ3z72uirrBHCwZcLTrL5iCOuVTMdka2IXOYhQE890WD5t6G24+F+Qcg==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/service-error-classification": "^4.0.1", "@smithy/service-error-classification": "^4.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-middleware": "^4.0.1", "@smithy/util-middleware": "^4.0.1",
"@smithy/util-retry": "^4.0.1", "@smithy/util-retry": "^4.0.1",
@@ -2862,17 +2862,17 @@
} }
}, },
"node_modules/@smithy/smithy-client": { "node_modules/@smithy/smithy-client": {
"version": "4.1.3", "version": "4.1.5",
"resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.1.3.tgz", "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.1.5.tgz",
"integrity": "sha512-A2Hz85pu8BJJaYFdX8yb1yocqigyqBzn+OVaVgm+Kwi/DkN8vhN2kbDVEfADo6jXf5hPKquMLGA3UINA64UZ7A==", "integrity": "sha512-DMXYoYeL4QkElr216n1yodTFeATbfb4jwYM9gKn71Rw/FNA1/Sm36tkTSCsZEs7mgpG3OINmkxL9vgVFzyGPaw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/core": "^3.1.2", "@smithy/core": "^3.1.4",
"@smithy/middleware-endpoint": "^4.0.3", "@smithy/middleware-endpoint": "^4.0.5",
"@smithy/middleware-stack": "^4.0.1", "@smithy/middleware-stack": "^4.0.1",
"@smithy/protocol-http": "^5.0.1", "@smithy/protocol-http": "^5.0.1",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"@smithy/util-stream": "^4.0.2", "@smithy/util-stream": "^4.1.1",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
"engines": { "engines": {
@@ -2969,13 +2969,13 @@
} }
}, },
"node_modules/@smithy/util-defaults-mode-browser": { "node_modules/@smithy/util-defaults-mode-browser": {
"version": "4.0.4", "version": "4.0.6",
"resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.4.tgz", "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.6.tgz",
"integrity": "sha512-Ej1bV5sbrIfH++KnWxjjzFNq9nyP3RIUq2c9Iqq7SmMO/idUR24sqvKH2LUQFTSPy/K7G4sB2m8n7YYlEAfZaw==", "integrity": "sha512-N8+VCt+piupH1A7DgSVDNrVHqRLz8r6DvBkpS7EWHiIxsUk4jqGuQLjqC/gnCzmwGkVBdNruHoYAzzaSQ8e80w==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"bowser": "^2.11.0", "bowser": "^2.11.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
@@ -2985,16 +2985,16 @@
} }
}, },
"node_modules/@smithy/util-defaults-mode-node": { "node_modules/@smithy/util-defaults-mode-node": {
"version": "4.0.4", "version": "4.0.6",
"resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.4.tgz", "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.6.tgz",
"integrity": "sha512-HE1I7gxa6yP7ZgXPCFfZSDmVmMtY7SHqzFF55gM/GPegzZKaQWZZ+nYn9C2Cc3JltCMyWe63VPR3tSFDEvuGjw==", "integrity": "sha512-9zhx1shd1VwSSVvLZB8CM3qQ3RPD3le7A3h/UPuyh/PC7g4OaWDi2xUNzamsVoSmCGtmUBONl56lM2EU6LcH7A==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/config-resolver": "^4.0.1", "@smithy/config-resolver": "^4.0.1",
"@smithy/credential-provider-imds": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1",
"@smithy/node-config-provider": "^4.0.1", "@smithy/node-config-provider": "^4.0.1",
"@smithy/property-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1",
"@smithy/smithy-client": "^4.1.3", "@smithy/smithy-client": "^4.1.5",
"@smithy/types": "^4.1.0", "@smithy/types": "^4.1.0",
"tslib": "^2.6.2" "tslib": "^2.6.2"
}, },
@@ -3056,9 +3056,9 @@
} }
}, },
"node_modules/@smithy/util-stream": { "node_modules/@smithy/util-stream": {
"version": "4.0.2", "version": "4.1.1",
"resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.0.2.tgz", "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.1.1.tgz",
"integrity": "sha512-0eZ4G5fRzIoewtHtwaYyl8g2C+osYOT4KClXgfdNEDAgkbe2TYPqcnw4GAWabqkZCax2ihRGPe9LZnsPdIUIHA==", "integrity": "sha512-+Xvh8nhy0Wjv1y71rBVyV3eJU3356XsFQNI8dEZVNrQju7Eib8G31GWtO+zMa9kTCGd41Mflu+ZKfmQL/o2XzQ==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@smithy/fetch-http-handler": "^5.0.1", "@smithy/fetch-http-handler": "^5.0.1",
@@ -4861,16 +4861,16 @@
} }
}, },
"node_modules/dd-trace": { "node_modules/dd-trace": {
"version": "5.36.0", "version": "5.37.1",
"resolved": "https://registry.npmjs.org/dd-trace/-/dd-trace-5.36.0.tgz", "resolved": "https://registry.npmjs.org/dd-trace/-/dd-trace-5.37.1.tgz",
"integrity": "sha512-okaqSKaDKLynUt9Jgpoj/0g7FXk5sFNHP5ZelB84g/vmQdDmpzZYXPo6HFY6ZbQT7NOHMZ/vNV46LZIjZc0Tvg==", "integrity": "sha512-RiaP1N2jgt+XEw1+Wx7I3FVpP+lOIkLxq08Li27nZYtWE1oa2fN3TLFOsxW47BzaCTg5gWJfGdLsEqUR9Od/Ew==",
"hasInstallScript": true, "hasInstallScript": true,
"license": "(Apache-2.0 OR BSD-3-Clause)", "license": "(Apache-2.0 OR BSD-3-Clause)",
"dependencies": { "dependencies": {
"@datadog/libdatadog": "^0.4.0", "@datadog/libdatadog": "^0.4.0",
"@datadog/native-appsec": "8.4.0", "@datadog/native-appsec": "8.4.0",
"@datadog/native-iast-rewriter": "2.8.0", "@datadog/native-iast-rewriter": "2.8.0",
"@datadog/native-iast-taint-tracking": "3.2.0", "@datadog/native-iast-taint-tracking": "3.3.0",
"@datadog/native-metrics": "^3.1.0", "@datadog/native-metrics": "^3.1.0",
"@datadog/pprof": "5.5.1", "@datadog/pprof": "5.5.1",
"@datadog/sketches-js": "^2.1.0", "@datadog/sketches-js": "^2.1.0",
@@ -4894,7 +4894,7 @@
"protobufjs": "^7.2.5", "protobufjs": "^7.2.5",
"retry": "^0.13.1", "retry": "^0.13.1",
"rfdc": "^1.3.1", "rfdc": "^1.3.1",
"semver": "^7.5.4", "semifies": "^1.0.0",
"shell-quote": "^1.8.1", "shell-quote": "^1.8.1",
"source-map": "^0.7.4", "source-map": "^0.7.4",
"tlhunter-sorted-set": "^0.1.0", "tlhunter-sorted-set": "^0.1.0",
@@ -9564,6 +9564,12 @@
"integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==", "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==",
"license": "BSD-3-Clause" "license": "BSD-3-Clause"
}, },
"node_modules/semifies": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/semifies/-/semifies-1.0.0.tgz",
"integrity": "sha512-xXR3KGeoxTNWPD4aBvL5NUpMTT7WMANr3EWnaS190QVkY52lqqcVRD7Q05UVbBhiWDGWMlJEUam9m7uFFGVScw==",
"license": "Apache-2.0"
},
"node_modules/semver": { "node_modules/semver": {
"version": "7.6.3", "version": "7.6.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
@@ -9926,9 +9932,9 @@
} }
}, },
"node_modules/soap": { "node_modules/soap": {
"version": "1.1.7", "version": "1.1.8",
"resolved": "https://registry.npmjs.org/soap/-/soap-1.1.7.tgz", "resolved": "https://registry.npmjs.org/soap/-/soap-1.1.8.tgz",
"integrity": "sha512-zKNMtlZhnqhW0jv5z8qVE5A/1Vw/HKXnIFe2bss8s/+tqub4uLU9r20A4mTfiluePHABvm7p2YQjyvFBJjIf9A==", "integrity": "sha512-fDNGyGsPkQP3bZX/366Ud5Kpjo9mCMh7ZKYIc3uipBEPPM2ZqCNkv1Z2/w0qpzpYFLL7do8WWwVUAjAwuUe1AQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"axios": "^1.7.9", "axios": "^1.7.9",
@@ -9943,7 +9949,7 @@
"xml-crypto": "^6.0.0" "xml-crypto": "^6.0.0"
}, },
"engines": { "engines": {
"node": ">=14.0.0" "node": ">=14.17.0"
} }
}, },
"node_modules/socket.io": { "node_modules/socket.io": {

View File

@@ -19,12 +19,12 @@
"makeitpretty": "prettier --write \"**/*.{css,js,json,jsx,scss}\"" "makeitpretty": "prettier --write \"**/*.{css,js,json,jsx,scss}\""
}, },
"dependencies": { "dependencies": {
"@aws-sdk/client-cloudwatch-logs": "^3.744.0", "@aws-sdk/client-cloudwatch-logs": "^3.750.0",
"@aws-sdk/client-elasticache": "^3.744.0", "@aws-sdk/client-elasticache": "^3.750.0",
"@aws-sdk/client-s3": "^3.744.0", "@aws-sdk/client-s3": "^3.750.0",
"@aws-sdk/client-secrets-manager": "^3.744.0", "@aws-sdk/client-secrets-manager": "^3.750.0",
"@aws-sdk/client-ses": "^3.744.0", "@aws-sdk/client-ses": "^3.750.0",
"@aws-sdk/credential-provider-node": "^3.744.0", "@aws-sdk/credential-provider-node": "^3.750.0",
"@opensearch-project/opensearch": "^2.13.0", "@opensearch-project/opensearch": "^2.13.0",
"@socket.io/admin-ui": "^0.5.1", "@socket.io/admin-ui": "^0.5.1",
"@socket.io/redis-adapter": "^8.3.0", "@socket.io/redis-adapter": "^8.3.0",
@@ -42,7 +42,7 @@
"cors": "2.8.5", "cors": "2.8.5",
"crisp-status-reporter": "^1.2.2", "crisp-status-reporter": "^1.2.2",
"csrf": "^3.1.0", "csrf": "^3.1.0",
"dd-trace": "^5.36.0", "dd-trace": "^5.37.1",
"dinero.js": "^1.9.1", "dinero.js": "^1.9.1",
"dotenv": "^16.4.5", "dotenv": "^16.4.5",
"express": "^4.21.1", "express": "^4.21.1",
@@ -66,7 +66,7 @@
"redis": "^4.7.0", "redis": "^4.7.0",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"skia-canvas": "^2.0.2", "skia-canvas": "^2.0.2",
"soap": "^1.1.7", "soap": "^1.1.8",
"socket.io": "^4.8.1", "socket.io": "^4.8.1",
"socket.io-adapter": "^2.5.5", "socket.io-adapter": "^2.5.5",
"ssh2-sftp-client": "^11.0.0", "ssh2-sftp-client": "^11.0.0",

View File

@@ -9,29 +9,25 @@ const { getJobAssignmentType } = require("./stringHelpers");
const populateWatchers = (data, result) => { const populateWatchers = (data, result) => {
data.scenarioWatchers.forEach((recipients) => { data.scenarioWatchers.forEach((recipients) => {
const { user, app, fcm, email, firstName, lastName } = recipients; const { user, app, fcm, email, firstName, lastName } = recipients;
// Add user to app recipients with bodyShopId if app notification is enabled
if (app === true) result.app.recipients.push({ user, bodyShopId: data.bodyShopId }); if (app === true) result.app.recipients.push({ user, bodyShopId: data.bodyShopId });
// Add user to FCM recipients if FCM notification is enabled
if (fcm === true) result.fcm.recipients.push(user); if (fcm === true) result.fcm.recipients.push(user);
// Add user to email recipients if email notification is enabled
if (email === true) result.email.recipients.push({ user, firstName, lastName }); if (email === true) result.email.recipients.push({ user, firstName, lastName });
}); });
}; };
/** /**
* Builds notification data for changes to alternate transport. * Builds notification data for changes to alternate transport.
*
* @param {Object} data - The data object containing job details and alternate transport changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const alternateTransportChangedBuilder = (data) => { const alternateTransportChangedBuilder = (data) => {
const body = `The alternate transport status has been updated from ${data?.changedFields?.altTransport?.old}.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.alternateTransportChanged", key: "notifications.job.alternateTransportChanged",
body, // Same as email body
variables: { variables: {
alternateTransport: data.data.alt_transport, alternateTransport: data.changedFields.alt_transport?.new,
oldAlternateTransport: data.changedFields.alt_transport?.old oldAlternateTransport: data.changedFields.alt_transport?.old
}, },
recipients: [] recipients: []
@@ -40,8 +36,7 @@ const alternateTransportChangedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
// subject: `Alternate transport for ${data?.jobRoNumber} (${data.bodyShopName}) changed to ${data.data.alt_transport || "None"}`, body,
body: `The alternate transport status has been updated.`,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -53,16 +48,15 @@ const alternateTransportChangedBuilder = (data) => {
/** /**
* Builds notification data for bill posted events. * Builds notification data for bill posted events.
*
* @param {Object} data - The data object containing job and billing details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const billPostedHandler = (data) => { const billPostedHandler = (data) => {
const body = `A bill of $${data.data.clm_total} has been posted.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.billPosted", key: "notifications.job.billPosted",
body,
variables: { variables: {
clmTotal: data.data.clm_total clmTotal: data.data.clm_total
}, },
@@ -72,8 +66,7 @@ const billPostedHandler = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
// subject: `Bill posted for ${data?.jobRoNumber} (${data.bodyShopName})`, body,
body: `A bill of $${data.data.clm_total} has been posted.`,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -85,16 +78,15 @@ const billPostedHandler = (data) => {
/** /**
* Builds notification data for changes to critical parts status. * Builds notification data for changes to critical parts status.
*
* @param {Object} data - The data object containing job details and critical parts status changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const criticalPartsStatusChangedBuilder = (data) => { const criticalPartsStatusChangedBuilder = (data) => {
const body = `The critical parts status has changed to ${data.data.queued_for_parts ? "queued" : "not queued"}.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.criticalPartsStatusChanged", key: "notifications.job.criticalPartsStatusChanged",
body,
variables: { variables: {
queuedForParts: data.data.queued_for_parts, queuedForParts: data.data.queued_for_parts,
oldQueuedForParts: data.changedFields.queued_for_parts?.old oldQueuedForParts: data.changedFields.queued_for_parts?.old
@@ -105,7 +97,7 @@ const criticalPartsStatusChangedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `The critical parts status has changed to ${data.data.queued_for_parts ? "queued" : "not queued"}.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -117,18 +109,16 @@ const criticalPartsStatusChangedBuilder = (data) => {
/** /**
* Builds notification data for completed intake or delivery checklists. * Builds notification data for completed intake or delivery checklists.
*
* @param {Object} data - The data object containing job details and checklist changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const intakeDeliveryChecklistCompletedBuilder = (data) => { const intakeDeliveryChecklistCompletedBuilder = (data) => {
// Determine checklist type based on which field was changed
const checklistType = data.changedFields.intakechecklist ? "intake" : "delivery"; const checklistType = data.changedFields.intakechecklist ? "intake" : "delivery";
const body = `The ${checklistType.charAt(0).toUpperCase() + checklistType.slice(1)} checklist has been completed.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.checklistCompleted", key: "notifications.job.checklistCompleted",
body,
variables: { variables: {
checklistType, checklistType,
completed: true completed: true
@@ -136,10 +126,10 @@ const intakeDeliveryChecklistCompletedBuilder = (data) => {
recipients: [] recipients: []
}, },
email: { email: {
jobRoNumber: data.jobRoNumber,
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `The ${checklistType.charAt(0).toUpperCase() + checklistType.slice(1)} checklist has been completed.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -151,16 +141,15 @@ const intakeDeliveryChecklistCompletedBuilder = (data) => {
/** /**
* Builds notification data for job assignment events. * Builds notification data for job assignment events.
*
* @param {Object} data - The data object containing job details and scenario fields.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const jobAssignedToMeBuilder = (data) => { const jobAssignedToMeBuilder = (data) => {
const body = `You have been assigned to [${getJobAssignmentType(data.scenarioFields?.[0])}]`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.assigned", key: "notifications.job.assigned",
body,
variables: { variables: {
type: data.scenarioFields?.[0] type: data.scenarioFields?.[0]
}, },
@@ -170,7 +159,7 @@ const jobAssignedToMeBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `You have been assigned to [${getJobAssignmentType(data.scenarioFields?.[0])}]`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -182,16 +171,15 @@ const jobAssignedToMeBuilder = (data) => {
/** /**
* Builds notification data for jobs added to production. * Builds notification data for jobs added to production.
*
* @param {Object} data - The data object containing job details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const jobsAddedToProductionBuilder = (data) => { const jobsAddedToProductionBuilder = (data) => {
const body = `Job has been added to production.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.addedToProduction", key: "notifications.job.addedToProduction",
body,
variables: {}, variables: {},
recipients: [] recipients: []
}, },
@@ -199,7 +187,7 @@ const jobsAddedToProductionBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `Job has been added to production.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -211,18 +199,17 @@ const jobsAddedToProductionBuilder = (data) => {
/** /**
* Builds notification data for job status changes. * Builds notification data for job status changes.
*
* @param {Object} data - The data object containing job details and status changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const jobStatusChangeBuilder = (data) => { const jobStatusChangeBuilder = (data) => {
const body = `The status has changed from ${data.changedFields.status.old} to ${data.changedFields.status.new}`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.statusChanged", key: "notifications.job.statusChanged",
body,
variables: { variables: {
status: data.data.status, status: data.changedFields.status.new,
oldStatus: data.changedFields.status.old oldStatus: data.changedFields.status.old
}, },
recipients: [] recipients: []
@@ -231,7 +218,7 @@ const jobStatusChangeBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `The status has changed from ${data.changedFields.status.old} to ${data.data.status}`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -243,16 +230,15 @@ const jobStatusChangeBuilder = (data) => {
/** /**
* Builds notification data for new media added or reassigned events. * Builds notification data for new media added or reassigned events.
*
* @param {Object} data - The data object containing job details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const newMediaAddedReassignedBuilder = (data) => { const newMediaAddedReassignedBuilder = (data) => {
const body = `New media has been added.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.newMediaAdded", key: "notifications.job.newMediaAdded",
body,
variables: {}, variables: {},
recipients: [] recipients: []
}, },
@@ -260,7 +246,7 @@ const newMediaAddedReassignedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `New media has been added.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -272,16 +258,15 @@ const newMediaAddedReassignedBuilder = (data) => {
/** /**
* Builds notification data for new notes added to a job. * Builds notification data for new notes added to a job.
*
* @param {Object} data - The data object containing job details and note text.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const newNoteAddedBuilder = (data) => { const newNoteAddedBuilder = (data) => {
const body = `A new note has been added: "${data.data.text}"`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.newNoteAdded", key: "notifications.job.newNoteAdded",
body,
variables: { variables: {
text: data.data.text text: data.data.text
}, },
@@ -291,7 +276,7 @@ const newNoteAddedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `A new note has been added: "${data.data.text}"`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -303,16 +288,15 @@ const newNoteAddedBuilder = (data) => {
/** /**
* Builds notification data for new time tickets posted. * Builds notification data for new time tickets posted.
*
* @param {Object} data - The data object containing job details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const newTimeTicketPostedBuilder = (data) => { const newTimeTicketPostedBuilder = (data) => {
const body = `A new time ticket has been posted.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.newTimeTicketPosted", key: "notifications.job.newTimeTicketPosted",
body,
variables: {}, variables: {},
recipients: [] recipients: []
}, },
@@ -320,7 +304,7 @@ const newTimeTicketPostedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `A new time ticket has been posted.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -332,18 +316,17 @@ const newTimeTicketPostedBuilder = (data) => {
/** /**
* Builds notification data for parts marked as back-ordered. * Builds notification data for parts marked as back-ordered.
*
* @param {Object} data - The data object containing job details and parts status changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const partMarkedBackOrderedBuilder = (data) => { const partMarkedBackOrderedBuilder = (data) => {
const body = `A part has been marked as back-ordered.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.partBackOrdered", key: "notifications.job.partBackOrdered",
body,
variables: { variables: {
queuedForParts: data.data.queued_for_parts, queuedForParts: data.changedFields.queued_for_parts?.new,
oldQueuedForParts: data.changedFields.queued_for_parts?.old oldQueuedForParts: data.changedFields.queued_for_parts?.old
}, },
recipients: [] recipients: []
@@ -352,8 +335,7 @@ const partMarkedBackOrderedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
// subject: `Part marked back-ordered for ${data?.jobRoNumber} (${data.bodyShopName})`, body,
body: `A part has been marked as back-ordered.`,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -365,16 +347,15 @@ const partMarkedBackOrderedBuilder = (data) => {
/** /**
* Builds notification data for payment collection events. * Builds notification data for payment collection events.
*
* @param {Object} data - The data object containing job and payment details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const paymentCollectedCompletedBuilder = (data) => { const paymentCollectedCompletedBuilder = (data) => {
const body = `Payment of $${data.data.clm_total} has been collected.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.paymentCollected", key: "notifications.job.paymentCollected",
body,
variables: { variables: {
clmTotal: data.data.clm_total clmTotal: data.data.clm_total
}, },
@@ -384,7 +365,7 @@ const paymentCollectedCompletedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `Payment of $${data.data.clm_total} has been collected.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -396,22 +377,21 @@ const paymentCollectedCompletedBuilder = (data) => {
/** /**
* Builds notification data for changes to scheduled dates. * Builds notification data for changes to scheduled dates.
*
* @param {Object} data - The data object containing job details and scheduling changes.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const scheduledDatesChangedBuilder = (data) => { const scheduledDatesChangedBuilder = (data) => {
const body = `Scheduled dates have been updated.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.scheduledDatesChanged", key: "notifications.job.scheduledDatesChanged",
body,
variables: { variables: {
scheduledIn: data.data.scheduled_in, scheduledIn: data.changedFields.scheduled_in?.new,
oldScheduledIn: data.changedFields.scheduled_in?.old, oldScheduledIn: data.changedFields.scheduled_in?.old,
scheduledCompletion: data.data.scheduled_completion, scheduledCompletion: data.changedFields.scheduled_completion?.new,
oldScheduledCompletion: data.changedFields.scheduled_completion?.old, oldScheduledCompletion: data.changedFields.scheduled_completion?.old,
scheduledDelivery: data.data.scheduled_delivery, scheduledDelivery: data.changedFields.scheduled_delivery?.new,
oldScheduledDelivery: data.changedFields.scheduled_delivery?.old oldScheduledDelivery: data.changedFields.scheduled_delivery?.old
}, },
recipients: [] recipients: []
@@ -420,8 +400,7 @@ const scheduledDatesChangedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
// subject: `Scheduled dates updated for ${data?.jobRoNumber} (${data.bodyShopName})`, body,
body: `Scheduled dates have been updated.`,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -433,16 +412,15 @@ const scheduledDatesChangedBuilder = (data) => {
/** /**
* Builds notification data for supplement imported events. * Builds notification data for supplement imported events.
*
* @param {Object} data - The data object containing job and supplement details.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const supplementImportedBuilder = (data) => { const supplementImportedBuilder = (data) => {
const body = `A supplement of $${data.data.cieca_ttl?.data?.supp_amt || 0} has been imported.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: "notifications.job.supplementImported", key: "notifications.job.supplementImported",
body,
variables: { variables: {
suppAmt: data.data.cieca_ttl?.data?.supp_amt suppAmt: data.data.cieca_ttl?.data?.supp_amt
}, },
@@ -452,7 +430,7 @@ const supplementImportedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `A supplement of $${data.data.cieca_ttl?.data?.supp_amt || 0} has been imported.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }
@@ -464,18 +442,17 @@ const supplementImportedBuilder = (data) => {
/** /**
* Builds notification data for tasks updated or created. * Builds notification data for tasks updated or created.
*
* @param {Object} data - The data object containing job details and task event type.
* @returns {Object} Notification data structured for app, email, and FCM channels.
*/ */
const tasksUpdatedCreatedBuilder = (data) => { const tasksUpdatedCreatedBuilder = (data) => {
const body = `Tasks have been ${data.isNew ? "created" : "updated"}.`;
const result = { const result = {
app: { app: {
jobId: data.jobId, jobId: data.jobId,
bodyShopId: data.bodyShopId, bodyShopId: data.bodyShopId,
key: data.isNew ? "notifications.job.taskCreated" : "notifications.job.taskUpdated", key: data.isNew ? "notifications.job.taskCreated" : "notifications.job.taskUpdated",
body,
variables: { variables: {
type: data.isNew ? "created" : "updated", isNew: data.isNew,
roNumber: data.jobRoNumber roNumber: data.jobRoNumber
}, },
recipients: [] recipients: []
@@ -484,7 +461,7 @@ const tasksUpdatedCreatedBuilder = (data) => {
jobId: data.jobId, jobId: data.jobId,
jobRoNumber: data.jobRoNumber, jobRoNumber: data.jobRoNumber,
bodyShopName: data.bodyShopName, bodyShopName: data.bodyShopName,
body: `Tasks have been ${data.isNew ? "created" : "updated"}.`, body,
recipients: [] recipients: []
}, },
fcm: { recipients: [] } fcm: { recipients: [] }