@argusoft/medplat-core 1.0.28 → 1.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AccessRights-xrday-L1.js +1023 -0
- package/dist/AccessRights-xrday-L1.js.map +1 -0
- package/dist/AddEditQueryBuilder-D-iQiVIe.js +365 -0
- package/dist/AddEditQueryBuilder-D-iQiVIe.js.map +1 -0
- package/dist/{AddFeatures-C0Z29oSd.js → AddFeatures-D1sU8RjY.js} +2 -2
- package/dist/{AddFeatures-C0Z29oSd.js.map → AddFeatures-D1sU8RjY.js.map} +1 -1
- package/dist/AddLabelModal-Bq-wRqv9.js +631 -0
- package/dist/AddLabelModal-Bq-wRqv9.js.map +1 -0
- package/dist/AddMenuConfiguration-e5BVXhmw.js +8547 -0
- package/dist/AddMenuConfiguration-e5BVXhmw.js.map +1 -0
- package/dist/{AddRoleDrawer-CQdzQZLb.js → AddRoleDrawer-0gqAK8N0.js} +62 -63
- package/dist/AddRoleDrawer-0gqAK8N0.js.map +1 -0
- package/dist/AppModal-CCtrQ5Tr.js +394 -0
- package/dist/AppModal-CCtrQ5Tr.js.map +1 -0
- package/dist/BrandsPage-DmRW5bhm-Bk1szrjI.js +387 -0
- package/dist/BrandsPage-DmRW5bhm-Bk1szrjI.js.map +1 -0
- package/dist/CategoriesPage-BsS5IQh3-B03lWRY5.js +391 -0
- package/dist/CategoriesPage-BsS5IQh3-B03lWRY5.js.map +1 -0
- package/dist/{ChangePasswordModalCore-CDxkeIIM.js → ChangePasswordModalCore-BPsJquTS.js} +1606 -1611
- package/dist/ChangePasswordModalCore-BPsJquTS.js.map +1 -0
- package/dist/{ConditionConfig-DSsgGEXS.js → ConditionConfig-Ddz9halE.js} +2 -2
- package/dist/ConditionConfig-Ddz9halE.js.map +1 -0
- package/dist/DashboardPage-C3bKc5na-sBd9Yqbi.js +435 -0
- package/dist/DashboardPage-C3bKc5na-sBd9Yqbi.js.map +1 -0
- package/dist/{EntityManagement-GaYsBTvf.js → EntityManagement-CPQL6qBj.js} +2 -2
- package/dist/{EntityManagement-GaYsBTvf.js.map → EntityManagement-CPQL6qBj.js.map} +1 -1
- package/dist/EventConfig-BmLemzX3.js +26 -0
- package/dist/EventConfig-BmLemzX3.js.map +1 -0
- package/dist/{EventConfigurations-kNtAj_WM.js → EventConfigurations-Bzh1qWXU.js} +31 -30
- package/dist/{EventConfigurations-kNtAj_WM.js.map → EventConfigurations-Bzh1qWXU.js.map} +1 -1
- package/dist/{EventsExceptionModal-D4Bf1ilS.js → EventsExceptionModal-B2SRrnB1.js} +2 -2
- package/dist/{EventsExceptionModal-D4Bf1ilS.js.map → EventsExceptionModal-B2SRrnB1.js.map} +1 -1
- package/dist/EventsSkeleton-BIcPks4T.js +61 -0
- package/dist/EventsSkeleton-BIcPks4T.js.map +1 -0
- package/dist/FacilityPicker-BiZeupmP-CyPHmj6b.js +79 -0
- package/dist/FacilityPicker-BiZeupmP-CyPHmj6b.js.map +1 -0
- package/dist/FeatureMenu-DYJmDt7q.js +521 -0
- package/dist/FeatureMenu-DYJmDt7q.js.map +1 -0
- package/dist/Features-Dne21RWu.js +14 -0
- package/dist/Features-Dne21RWu.js.map +1 -0
- package/dist/{FhirServerList-Dkq7Kbes.js → FhirServerList-DuTwnngN.js} +19 -19
- package/dist/{FhirServerList-Dkq7Kbes.js.map → FhirServerList-DuTwnngN.js.map} +1 -1
- package/dist/{FhirServerWizard-Db6Hm4bQ.js → FhirServerWizard-DZI8Olku.js} +15 -15
- package/dist/{FhirServerWizard-Db6Hm4bQ.js.map → FhirServerWizard-DZI8Olku.js.map} +1 -1
- package/dist/FlywayQuery-CQygj51V.js +179 -0
- package/dist/FlywayQuery-CQygj51V.js.map +1 -0
- package/dist/{ManageNotification-CaBAOhji.js → Google-DQxMfbaL.js} +1725 -2652
- package/dist/{ManageNotification-CaBAOhji.js.map → Google-DQxMfbaL.js.map} +1 -1
- package/dist/GrantPermissionModal-BDN66Atn.js +236 -0
- package/dist/GrantPermissionModal-BDN66Atn.js.map +1 -0
- package/dist/ImmunizationConfigurationBase-Di1KO3oW.js +7639 -0
- package/dist/ImmunizationConfigurationBase-Di1KO3oW.js.map +1 -0
- package/dist/ImmunizationConfigurationBase.css +1 -1
- package/dist/ImmunizationConfigurationsList-TZcLDEci.js +369 -0
- package/dist/ImmunizationConfigurationsList-TZcLDEci.js.map +1 -0
- package/dist/InventoryPage-C_AxSy7A-QLvlL4rE.js +665 -0
- package/dist/InventoryPage-C_AxSy7A-QLvlL4rE.js.map +1 -0
- package/dist/LanguagesModal-B3NTebYT.js +352 -0
- package/dist/LanguagesModal-B3NTebYT.js.map +1 -0
- package/dist/ManageDynamicFeature-BU0I45dd.js +4475 -0
- package/dist/ManageDynamicFeature-BU0I45dd.js.map +1 -0
- package/dist/{ManageEventConfiguration-DV3I5POA.js → ManageEventConfiguration-CoYcpjR9.js} +465 -397
- package/dist/ManageEventConfiguration-CoYcpjR9.js.map +1 -0
- package/dist/ManageNotification-C5MhV77Q.js +934 -0
- package/dist/ManageNotification-C5MhV77Q.js.map +1 -0
- package/dist/{ManageRole-CGYfglpo.js → ManageRole-CNZBRKGU.js} +32 -30
- package/dist/ManageRole-CNZBRKGU.js.map +1 -0
- package/dist/ManageTranslation-vRiptUAP.js +833 -0
- package/dist/ManageTranslation-vRiptUAP.js.map +1 -0
- package/dist/ManageTranslation.css +1 -1
- package/dist/{ManageUser-AY1EUDLI.js → ManageUser-DCFkUMV9.js} +1722 -1586
- package/dist/ManageUser-DCFkUMV9.js.map +1 -0
- package/dist/MemberProfileCard-BdUNgHRB-VywqQdFF.js +272 -0
- package/dist/MemberProfileCard-BdUNgHRB-VywqQdFF.js.map +1 -0
- package/dist/MobileAnalytics-pQoE8cG1.js +16888 -0
- package/dist/MobileAnalytics-pQoE8cG1.js.map +1 -0
- package/dist/MobileMenuManagement-Cf8IZlla.js +108 -0
- package/dist/MobileMenuManagement-Cf8IZlla.js.map +1 -0
- package/dist/{MobileTypeEventConfigModal-BxLympIO.js → MobileTypeEventConfigModal-BeveaX0C.js} +2 -2
- package/dist/MobileTypeEventConfigModal-BeveaX0C.js.map +1 -0
- package/dist/NotificationFlywayQuery-BAHVjf6N.js +247 -0
- package/dist/NotificationFlywayQuery-BAHVjf6N.js.map +1 -0
- package/dist/{NotificationList-C3Vb_jKU.js → NotificationList-DEyRZEuM.js} +109 -110
- package/dist/NotificationList-DEyRZEuM.js.map +1 -0
- package/dist/{OtherTypeEventConfigModal-BeG1GrUi.js → OtherTypeEventConfigModal-CM6VkdmY.js} +570 -478
- package/dist/OtherTypeEventConfigModal-CM6VkdmY.js.map +1 -0
- package/dist/PaymentCreatePage-CIVe0P0p-25BQVpOX.js +482 -0
- package/dist/PaymentCreatePage-CIVe0P0p-25BQVpOX.js.map +1 -0
- package/dist/PaymentsPage-BvPe5Q9F-D2gfziwW.js +157 -0
- package/dist/PaymentsPage-BvPe5Q9F-D2gfziwW.js.map +1 -0
- package/dist/PermissionsModal-CCYkcKlC.js +151 -0
- package/dist/PermissionsModal-CCYkcKlC.js.map +1 -0
- package/dist/PickupBatchLinesEditor-DHmcAG23-DL2p6IKJ.js +119 -0
- package/dist/PickupBatchLinesEditor-DHmcAG23-DL2p6IKJ.js.map +1 -0
- package/dist/PickupCreatePage-CB0Sl0Hb-Mmj7zESG.js +783 -0
- package/dist/PickupCreatePage-CB0Sl0Hb-Mmj7zESG.js.map +1 -0
- package/dist/PickupsPage-Ctpghavs-CUp4uIZq.js +818 -0
- package/dist/PickupsPage-Ctpghavs-CUp4uIZq.js.map +1 -0
- package/dist/PmGuard-b10TGXEi-G3N0G_Wg.js +599 -0
- package/dist/PmGuard-b10TGXEi-G3N0G_Wg.js.map +1 -0
- package/dist/ProductEditPage-C1thoKHu-URQaZ6st.js +1302 -0
- package/dist/ProductEditPage-C1thoKHu-URQaZ6st.js.map +1 -0
- package/dist/ProductsPage-CupVmOD4-D45a_hf-.js +252 -0
- package/dist/ProductsPage-CupVmOD4-D45a_hf-.js.map +1 -0
- package/dist/PurchaseCreatePage-YD3NmhPQ-2j4etSjM.js +648 -0
- package/dist/PurchaseCreatePage-YD3NmhPQ-2j4etSjM.js.map +1 -0
- package/dist/PurchaseRequestDetailPage-Dg_MRY_N-D1bgTEAn.js +1577 -0
- package/dist/PurchaseRequestDetailPage-Dg_MRY_N-D1bgTEAn.js.map +1 -0
- package/dist/PurchaseRequestsPage-DPAPzpmm-mDH2IrTl.js +279 -0
- package/dist/PurchaseRequestsPage-DPAPzpmm-mDH2IrTl.js.map +1 -0
- package/dist/PurchasesPage-It1GHiXl-eH4IsF_U.js +293 -0
- package/dist/PurchasesPage-It1GHiXl-eH4IsF_U.js.map +1 -0
- package/dist/QueryBuilder-CXaBe6sr.js +478 -0
- package/dist/QueryBuilder-CXaBe6sr.js.map +1 -0
- package/dist/{RoleManagement-BPl2cE27.js → RoleManagement-s8iNx2Mu.js} +131 -142
- package/dist/RoleManagement-s8iNx2Mu.js.map +1 -0
- package/dist/Roles-BIyiic67.js +14 -0
- package/dist/Roles-BIyiic67.js.map +1 -0
- package/dist/SaleCreatePage-C9kFmTvm-B3Y0o4CX.js +544 -0
- package/dist/SaleCreatePage-C9kFmTvm-B3Y0o4CX.js.map +1 -0
- package/dist/SalesPage-D18DCseD-BxktGDRQ.js +315 -0
- package/dist/SalesPage-D18DCseD-BxktGDRQ.js.map +1 -0
- package/dist/{ServerSyncModal-D_oFpv3C.js → ServerSyncModal-92U3xtqI.js} +84 -85
- package/dist/ServerSyncModal-92U3xtqI.js.map +1 -0
- package/dist/SettingsPage-VsxI-ano-DcmtUUEj.js +747 -0
- package/dist/SettingsPage-VsxI-ano-DcmtUUEj.js.map +1 -0
- package/dist/ShowFlywayQuery-D10Olk5Z.js +154 -0
- package/dist/ShowFlywayQuery-D10Olk5Z.js.map +1 -0
- package/dist/{ShowFlywayQuery-DVRCd384.js → ShowFlywayQuery-D1y_4A1u.js} +161 -121
- package/dist/ShowFlywayQuery-D1y_4A1u.js.map +1 -0
- package/dist/ShowQueryHistory-DRBKYDKk.js +313 -0
- package/dist/ShowQueryHistory-DRBKYDKk.js.map +1 -0
- package/dist/StorageUnitsPage-7EqwuMOI-BwUso1Th.js +721 -0
- package/dist/StorageUnitsPage-7EqwuMOI-BwUso1Th.js.map +1 -0
- package/dist/SubMenu-eEDhZUvh.js +317 -0
- package/dist/SubMenu-eEDhZUvh.js.map +1 -0
- package/dist/{TableDetails-Cf_YfnY2.js → TableDetails-BtafRxXb.js} +1069 -831
- package/dist/TableDetails-BtafRxXb.js.map +1 -0
- package/dist/{TableList-D6jnIbnz.js → TableList-Dpo6dO7S.js} +2 -2
- package/dist/{TableList-D6jnIbnz.js.map → TableList-Dpo6dO7S.js.map} +1 -1
- package/dist/TransactionsPage-DrH53pVS-BkhIGB6C.js +746 -0
- package/dist/TransactionsPage-DrH53pVS-BkhIGB6C.js.map +1 -0
- package/dist/TransferCreatePage-CuvoMrYH-DTTfHjz-.js +315 -0
- package/dist/TransferCreatePage-CuvoMrYH-DTTfHjz-.js.map +1 -0
- package/dist/TransfersPage-Cf701t8s-BBbN7cBf.js +476 -0
- package/dist/TransfersPage-Cf701t8s-BBbN7cBf.js.map +1 -0
- package/dist/{TypeConfiguration-37wp-gsl.js → TypeConfiguration-3O6ABrK-.js} +2 -2
- package/dist/{TypeConfiguration-37wp-gsl.js.map → TypeConfiguration-3O6ABrK-.js.map} +1 -1
- package/dist/{UserList-Bc8gYxRL.js → UserList-DgPxsnj2.js} +253 -236
- package/dist/{UserList-Bc8gYxRL.js.map → UserList-DgPxsnj2.js.map} +1 -1
- package/dist/Users-Bpc4Sazd.js +41 -0
- package/dist/Users-Bpc4Sazd.js.map +1 -0
- package/dist/VialsPage-8oAc1yFv-Cl3FUXBJ.js +321 -0
- package/dist/VialsPage-8oAc1yFv-Cl3FUXBJ.js.map +1 -0
- package/dist/{WidgetList-Dw_FmbbE.js → WidgetList-D7YuWfDD.js} +2 -2
- package/dist/{WidgetList-Dw_FmbbE.js.map → WidgetList-D7YuWfDD.js.map} +1 -1
- package/dist/constants-ClZJY2x1-MkSWn6TZ.js +434 -0
- package/dist/constants-ClZJY2x1-MkSWn6TZ.js.map +1 -0
- package/dist/dashboardLayoutUtils-D1xCAxp3.js +405 -0
- package/dist/dashboardLayoutUtils-D1xCAxp3.js.map +1 -0
- package/dist/format-UOyOu75i-D0GyylyQ.js +63 -0
- package/dist/format-UOyOu75i-D0GyylyQ.js.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.js +4 -752
- package/dist/index.js.map +1 -1
- package/dist/index.lib-Dn8PMkeD.js +862 -0
- package/dist/index.lib-Dn8PMkeD.js.map +1 -0
- package/dist/useFieldErrors-hDG8ox_x-DbSAzrGo.js +28 -0
- package/dist/useFieldErrors-hDG8ox_x-DbSAzrGo.js.map +1 -0
- package/dist/validation-BzlHnL-r-CCJm2utQ.js +125 -0
- package/dist/validation-BzlHnL-r-CCJm2utQ.js.map +1 -0
- package/package.json +5 -4
- package/dist/AccessRights-CHu27ZOw.js +0 -1262
- package/dist/AccessRights-CHu27ZOw.js.map +0 -1
- package/dist/AddEditQueryBuilder-Brdnm6rQ.js +0 -313
- package/dist/AddEditQueryBuilder-Brdnm6rQ.js.map +0 -1
- package/dist/AddLabelModal-DFllBVcd.js +0 -734
- package/dist/AddLabelModal-DFllBVcd.js.map +0 -1
- package/dist/AddMenuConfiguration-BSQLl88V.js +0 -6570
- package/dist/AddMenuConfiguration-BSQLl88V.js.map +0 -1
- package/dist/AddRoleDrawer-CQdzQZLb.js.map +0 -1
- package/dist/AppModal-CtG2GjD_.js +0 -428
- package/dist/AppModal-CtG2GjD_.js.map +0 -1
- package/dist/ChangePasswordModalCore-CDxkeIIM.js.map +0 -1
- package/dist/ConditionConfig-DSsgGEXS.js.map +0 -1
- package/dist/EventsSkeleton-8iiETGcf.js +0 -76
- package/dist/EventsSkeleton-8iiETGcf.js.map +0 -1
- package/dist/FeatureMenu-jl7-Tk6y.js +0 -265
- package/dist/FeatureMenu-jl7-Tk6y.js.map +0 -1
- package/dist/Features-CObdzJp_.js +0 -13
- package/dist/Features-CObdzJp_.js.map +0 -1
- package/dist/FlywayQuery-Cx2sly6g.js +0 -169
- package/dist/FlywayQuery-Cx2sly6g.js.map +0 -1
- package/dist/ImmunizationConfigurationBase-DZGqwda2.js +0 -5910
- package/dist/ImmunizationConfigurationBase-DZGqwda2.js.map +0 -1
- package/dist/ImmunizationConfigurationsList-DdSZicTP.js +0 -344
- package/dist/ImmunizationConfigurationsList-DdSZicTP.js.map +0 -1
- package/dist/LanguagesModal-D6VfaGrl.js +0 -394
- package/dist/LanguagesModal-D6VfaGrl.js.map +0 -1
- package/dist/ManageDynamicFeature-BhONvfC_.js +0 -4189
- package/dist/ManageDynamicFeature-BhONvfC_.js.map +0 -1
- package/dist/ManageEventConfiguration-DV3I5POA.js.map +0 -1
- package/dist/ManageRole-CGYfglpo.js.map +0 -1
- package/dist/ManageTranslation-B4C9-lWD.js +0 -625
- package/dist/ManageTranslation-B4C9-lWD.js.map +0 -1
- package/dist/ManageUser-AY1EUDLI.js.map +0 -1
- package/dist/MobileMenuManagement-CVAKyKDa.js +0 -112
- package/dist/MobileMenuManagement-CVAKyKDa.js.map +0 -1
- package/dist/MobileTypeEventConfigModal-BxLympIO.js.map +0 -1
- package/dist/NotificationFlywayQuery-BY8Zzml_.js +0 -244
- package/dist/NotificationFlywayQuery-BY8Zzml_.js.map +0 -1
- package/dist/NotificationList-C3Vb_jKU.js.map +0 -1
- package/dist/OtherTypeEventConfigModal-BeG1GrUi.js.map +0 -1
- package/dist/QueryBuilder-z7eqfd7D.js +0 -383
- package/dist/QueryBuilder-z7eqfd7D.js.map +0 -1
- package/dist/RoleManagement-BPl2cE27.js.map +0 -1
- package/dist/ServerSyncModal-D_oFpv3C.js.map +0 -1
- package/dist/ShowFlywayQuery-DVRCd384.js.map +0 -1
- package/dist/ShowFlywayQuery-tj42YQAS.js +0 -130
- package/dist/ShowFlywayQuery-tj42YQAS.js.map +0 -1
- package/dist/ShowQueryHistory-BDN0tzHg.js +0 -190
- package/dist/ShowQueryHistory-BDN0tzHg.js.map +0 -1
- package/dist/SubMenu-DYxAPH2Z.js +0 -191
- package/dist/SubMenu-DYxAPH2Z.js.map +0 -1
- package/dist/TableDetails-Cf_YfnY2.js.map +0 -1
- package/dist/Users-CsJ08Kjm.js +0 -40
- package/dist/Users-CsJ08Kjm.js.map +0 -1
- package/dist/dashboardLayoutUtils-Bt5HA96J.js +0 -265
- package/dist/dashboardLayoutUtils-Bt5HA96J.js.map +0 -1
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import
|
|
4
|
-
import { Dialog as
|
|
1
|
+
import { jsxs as p, Fragment as k, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { useState as N, useCallback as B, useEffect as U } from "react";
|
|
3
|
+
import h from "prop-types";
|
|
4
|
+
import { Dialog as V, DialogTitle as W, Box as y, Typography as O, IconButton as j, DialogContent as P, DialogActions as z, Button as w } from "@mui/material";
|
|
5
|
+
import b from "@/common/fontAwesomeIcons/FontAwesomeIcons";
|
|
6
|
+
import H from "@/views/custom-components/PostgresEditor";
|
|
5
7
|
import { showToast as I } from "@/common/toaster/toaster";
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import { useTranslateProvider as
|
|
10
|
-
const
|
|
11
|
-
const [
|
|
12
|
-
var
|
|
13
|
-
const l = (
|
|
14
|
-
|
|
8
|
+
import G from "@/views/custom-components/CustomConfirmationModal";
|
|
9
|
+
import F from "moment/moment";
|
|
10
|
+
import Y from "@/hooks/useTrackEvent";
|
|
11
|
+
import { useTranslateProvider as K } from "@/common/languageTranslator/TranslationContext";
|
|
12
|
+
const X = ({ configuredQuery: t, open: S, onClose: r, dataTestId: T }) => {
|
|
13
|
+
const [_, R] = N(""), [x, A] = N(!1), { translate: s } = K(), [q, c] = N(!1), M = B(() => {
|
|
14
|
+
var i;
|
|
15
|
+
const l = (i = t == null ? void 0 : t.configJson) == null ? void 0 : i.includes("public");
|
|
16
|
+
A(l);
|
|
15
17
|
let e = `DELETE FROM EVENT_CONFIGURATION WHERE uuid = '${t.uuid}';
|
|
16
18
|
|
|
17
19
|
`;
|
|
@@ -19,10 +21,10 @@ const H = ({ configuredQuery: t, open: O, onClose: m, dataTestId: F }) => {
|
|
|
19
21
|
VALUES (
|
|
20
22
|
`, e += `${t.createdBy}, current_date, ${t.createdBy}, current_date, `, e += t.day !== void 0 && t.day !== null ? `${t.day}, ` : "null, ", e += t.description ? `'${t.description.replace(/'/g, "''")}', ` : "null, ", e += `'${t.eventType}', `, e += t.eventTypeDetailId !== void 0 && t.eventTypeDetailId !== null ? `${t.eventTypeDetailId}, ` : "null, ", e += t.formTypeId !== void 0 && t.formTypeId !== null ? `${t.formTypeId}, ` : "null, ", e += t.hour !== void 0 && t.hour !== null ? `${t.hour}, ` : "null, ", e += t.minute !== void 0 && t.minute !== null ? `${t.minute}, ` : "null, ", e += `'${t.name.replace(/'/g, "''")}', `, e += `'${t.configJson.replace(/'/g, "''")}', `, e += `'${t.state}', `, e += t.trigerWhen !== void 0 && t.trigerWhen !== null ? `'${t.trigerWhen}', ` : "null, ", e += t.eventTypeDetailCode !== void 0 && t.eventTypeDetailCode !== null ? `${t.eventTypeDetailCode}, ` : "null, ", e += `'${t.uuid}');
|
|
21
23
|
`, t.eventType === "TIMMER_BASED" && t.state !== "INACTIVE") {
|
|
22
|
-
let
|
|
24
|
+
let d = F();
|
|
23
25
|
switch (t.trigerWhen) {
|
|
24
26
|
case "MONTHLY":
|
|
25
|
-
|
|
27
|
+
d.add(1, "months").set({
|
|
26
28
|
date: t.day,
|
|
27
29
|
hour: t.hour || 0,
|
|
28
30
|
minute: t.minute || 0,
|
|
@@ -30,17 +32,17 @@ VALUES (
|
|
|
30
32
|
});
|
|
31
33
|
break;
|
|
32
34
|
case "DAILY":
|
|
33
|
-
|
|
35
|
+
d.add(v(t), "days").set({
|
|
34
36
|
hour: t.hour || 0,
|
|
35
37
|
minute: t.minute || 0,
|
|
36
38
|
second: 0
|
|
37
39
|
});
|
|
38
40
|
break;
|
|
39
41
|
case "HOURLY":
|
|
40
|
-
|
|
42
|
+
d.add(1, "hours").set({ minute: v(t), second: 0 });
|
|
41
43
|
break;
|
|
42
44
|
case "MINUTE":
|
|
43
|
-
|
|
45
|
+
d.add(t.minute, "minutes").set({ second: 0 });
|
|
44
46
|
break;
|
|
45
47
|
}
|
|
46
48
|
e += `
|
|
@@ -48,17 +50,17 @@ DELETE FROM TIMER_EVENT WHERE event_config_uuid = '${t.uuid}' AND status = 'NEW'
|
|
|
48
50
|
|
|
49
51
|
`, e += `INSERT INTO timer_event (event_config_uuid, processed, status, type, system_trigger_on)
|
|
50
52
|
VALUES (
|
|
51
|
-
`, e += `'${t.uuid}', false, 'NEW', 'TIMER_EVENT', '${
|
|
53
|
+
`, e += `'${t.uuid}', false, 'NEW', 'TIMER_EVENT', '${d.format("MM-DD-yyyy HH:mm:ss")}');
|
|
52
54
|
`;
|
|
53
55
|
}
|
|
54
56
|
if (t.configJson !== null) {
|
|
55
|
-
const
|
|
57
|
+
const d = JSON.parse(t.configJson);
|
|
56
58
|
let D = !0;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
59
|
+
d.forEach((u) => {
|
|
60
|
+
u.conditions !== null && u.conditions.length > 0 && u.conditions.forEach((E) => {
|
|
61
|
+
E.notificaitonConfigsType !== null && E.notificaitonConfigsType.length > 0 && (D && (e += `
|
|
60
62
|
DELETE FROM EVENT_CONFIGURATION_TYPE WHERE event_config_uuid = '${t.uuid}';
|
|
61
|
-
`, D = !1),
|
|
63
|
+
`, D = !1), E.notificaitonConfigsType.forEach((a) => {
|
|
62
64
|
e += `
|
|
63
65
|
INSERT INTO EVENT_CONFIGURATION_TYPE (id, base_date_field_name, event_config_uuid, day, email_subject, email_subject_parameter, hour, minute, mobile_notification_type, template, template_parameter, triger_when, type, user_field_name, family_field_name, member_field_name, query_master_id, query_master_param_json, query_code, sms_config_json, push_notification_config_json)
|
|
64
66
|
VALUES (
|
|
@@ -66,11 +68,11 @@ VALUES (
|
|
|
66
68
|
`, a.mobileNotificationConfigs && a.mobileNotificationConfigs.length > 0 && (e += `
|
|
67
69
|
DELETE FROM EVENT_MOBILE_CONFIGURATION WHERE notification_type_config_id = '${a.id}';
|
|
68
70
|
`, a.mobileNotificationConfigs.forEach(
|
|
69
|
-
(
|
|
71
|
+
(m) => {
|
|
70
72
|
e += `
|
|
71
73
|
INSERT INTO EVENT_MOBILE_CONFIGURATION (id, notification_code, notification_type_config_id, number_of_days_added_for_due_date, number_of_days_added_for_expiry_date, number_of_days_added_for_on_date)
|
|
72
74
|
VALUES (
|
|
73
|
-
`, e += `'${
|
|
75
|
+
`, e += `'${m.id}', '${m.notificationCode}', '${m.notificationTypeConfigId}', ${m.numberOfDaysAddedForDueDate}, ${m.numberOfDaysAddedForExpiryDate}, ${m.numberOfDaysAddedForOnDate});
|
|
74
76
|
`;
|
|
75
77
|
}
|
|
76
78
|
));
|
|
@@ -78,7 +80,7 @@ VALUES (
|
|
|
78
80
|
});
|
|
79
81
|
});
|
|
80
82
|
}
|
|
81
|
-
let
|
|
83
|
+
let n = {
|
|
82
84
|
id: t.id,
|
|
83
85
|
name: t.name,
|
|
84
86
|
description: t.description,
|
|
@@ -92,7 +94,7 @@ VALUES (
|
|
|
92
94
|
minute: t.minute,
|
|
93
95
|
state: t.state,
|
|
94
96
|
createdBy: t.createdBy,
|
|
95
|
-
createdOn:
|
|
97
|
+
createdOn: F().valueOf(),
|
|
96
98
|
notificationConfigDetails: JSON.parse(t.configJson),
|
|
97
99
|
status: null,
|
|
98
100
|
completionTime: null,
|
|
@@ -102,9 +104,9 @@ VALUES (
|
|
|
102
104
|
e += `
|
|
103
105
|
INSERT INTO SYNC_SYSTEM_CONFIGURATION_MASTER (feature_type, config_json, created_on, created_by, feature_uuid, feature_name)
|
|
104
106
|
VALUES (
|
|
105
|
-
`, e += `'EVENT_BUILDER', '${JSON.stringify(
|
|
106
|
-
`,
|
|
107
|
-
}, [t]),
|
|
107
|
+
`, e += `'EVENT_BUILDER', '${JSON.stringify(n).replace(/'/g, "''")}', current_date, ${t.createdBy}, '${t.uuid}', '${t.name}');
|
|
108
|
+
`, R(e);
|
|
109
|
+
}, [t]), v = function(l) {
|
|
108
110
|
const e = /* @__PURE__ */ new Date();
|
|
109
111
|
return new Date(
|
|
110
112
|
e.getFullYear(),
|
|
@@ -113,14 +115,14 @@ VALUES (
|
|
|
113
115
|
l.hour,
|
|
114
116
|
l.minute
|
|
115
117
|
) > e ? 0 : 1;
|
|
116
|
-
},
|
|
118
|
+
}, f = () => {
|
|
117
119
|
var l;
|
|
118
|
-
(l = navigator == null ? void 0 : navigator.clipboard) == null || l.writeText(
|
|
119
|
-
I({ message: "Query Copied", type: "success" }),
|
|
120
|
+
(l = navigator == null ? void 0 : navigator.clipboard) == null || l.writeText(_).then(() => {
|
|
121
|
+
I({ message: "Query Copied", type: "success" }), r();
|
|
120
122
|
});
|
|
121
|
-
},
|
|
122
|
-
|
|
123
|
-
},
|
|
123
|
+
}, J = () => {
|
|
124
|
+
C(), c((l) => !l);
|
|
125
|
+
}, $ = Y(), C = async () => {
|
|
124
126
|
if (window.showSaveFilePicker)
|
|
125
127
|
try {
|
|
126
128
|
const l = {
|
|
@@ -131,129 +133,167 @@ VALUES (
|
|
|
131
133
|
accept: { "text/plain": [".sql"] }
|
|
132
134
|
}
|
|
133
135
|
]
|
|
134
|
-
}, e = await window.showSaveFilePicker(l),
|
|
135
|
-
await
|
|
136
|
-
const
|
|
137
|
-
|
|
136
|
+
}, e = await window.showSaveFilePicker(l), n = await e.createWritable();
|
|
137
|
+
await n.write(_), await n.close();
|
|
138
|
+
const i = (new Blob([_], { type: "text/plain" }).size / 1024).toFixed(2);
|
|
139
|
+
$("file_download", {
|
|
138
140
|
file_type: "sql",
|
|
139
141
|
file_name: e.name,
|
|
140
|
-
file_size: `${
|
|
142
|
+
file_size: `${i} KB`,
|
|
141
143
|
download_status: "success"
|
|
142
144
|
}), I({
|
|
143
145
|
message: "Query Downloaded SuccessFully",
|
|
144
146
|
type: "success"
|
|
145
|
-
}),
|
|
147
|
+
}), r();
|
|
146
148
|
} catch (l) {
|
|
147
149
|
console.error("Something went wrong while downloading: ", l);
|
|
148
150
|
}
|
|
149
151
|
else {
|
|
150
|
-
const l = new Blob([
|
|
151
|
-
|
|
152
|
+
const l = new Blob([_], { type: "text/plain" }), e = (l.size / 1024).toFixed(2), n = URL.createObjectURL(l), i = document.createElement("a");
|
|
153
|
+
i.href = n, i.download = `V${(/* @__PURE__ */ new Date()).getTime()}__CHANGE_IN_${t.code}.sql`, document.body.appendChild(i), i.click(), $("file_download", {
|
|
152
154
|
file_type: "sql",
|
|
153
|
-
file_name:
|
|
155
|
+
file_name: i.download,
|
|
154
156
|
file_size: `${e} KB`,
|
|
155
157
|
download_status: "success"
|
|
156
|
-
}), document.body.removeChild(
|
|
158
|
+
}), document.body.removeChild(i), URL.revokeObjectURL(n), I({ message: "Query Downloaded SuccessFully", type: "success" }), r();
|
|
157
159
|
}
|
|
158
|
-
},
|
|
159
|
-
|
|
160
|
+
}, L = () => {
|
|
161
|
+
x ? c((l) => !l) : C();
|
|
160
162
|
};
|
|
161
163
|
return U(() => {
|
|
162
164
|
t && M();
|
|
163
|
-
}, [t]), /* @__PURE__ */
|
|
165
|
+
}, [t]), /* @__PURE__ */ p(k, { children: [
|
|
164
166
|
/* @__PURE__ */ o(
|
|
165
|
-
|
|
167
|
+
G,
|
|
166
168
|
{
|
|
167
169
|
description: "This Flyway contains keyword 'public'. Are you sure you want to download?",
|
|
168
170
|
title: "CONFIRM ACTION",
|
|
169
|
-
handleClick:
|
|
170
|
-
open:
|
|
171
|
-
handleClose: () =>
|
|
171
|
+
handleClick: J,
|
|
172
|
+
open: q,
|
|
173
|
+
handleClose: () => c((l) => !l),
|
|
172
174
|
dataTestId: "showflywayquery-customconfirmationmodal-confirmation-modal"
|
|
173
175
|
}
|
|
174
176
|
),
|
|
175
|
-
/* @__PURE__ */
|
|
176
|
-
|
|
177
|
+
/* @__PURE__ */ p(
|
|
178
|
+
V,
|
|
177
179
|
{
|
|
178
|
-
open:
|
|
179
|
-
onClose:
|
|
180
|
+
open: S,
|
|
181
|
+
onClose: r,
|
|
180
182
|
fullWidth: !0,
|
|
181
183
|
maxWidth: "md",
|
|
182
|
-
"data-testid":
|
|
184
|
+
"data-testid": T,
|
|
183
185
|
children: [
|
|
184
|
-
/* @__PURE__ */
|
|
185
|
-
|
|
186
|
-
V,
|
|
186
|
+
/* @__PURE__ */ p(
|
|
187
|
+
W,
|
|
187
188
|
{
|
|
188
|
-
multiline: !0,
|
|
189
|
-
rows: 10,
|
|
190
|
-
variant: "outlined",
|
|
191
|
-
fullWidth: !0,
|
|
192
|
-
value: r,
|
|
193
189
|
sx: {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
190
|
+
display: "flex",
|
|
191
|
+
alignItems: "flex-start",
|
|
192
|
+
justifyContent: "space-between",
|
|
193
|
+
gap: 2,
|
|
194
|
+
py: 1.5,
|
|
195
|
+
borderBottom: "1px solid",
|
|
196
|
+
borderColor: "divider"
|
|
201
197
|
},
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
198
|
+
children: [
|
|
199
|
+
/* @__PURE__ */ p(y, { children: [
|
|
200
|
+
/* @__PURE__ */ o(
|
|
201
|
+
O,
|
|
202
|
+
{
|
|
203
|
+
variant: "subtitle1",
|
|
204
|
+
component: "span",
|
|
205
|
+
sx: { fontWeight: 700, display: "block" },
|
|
206
|
+
children: s("Flyway Query")
|
|
207
|
+
}
|
|
208
|
+
),
|
|
209
|
+
/* @__PURE__ */ o(O, { variant: "body2", color: "text.secondary", children: s(
|
|
210
|
+
"Copy or download this migration to recreate this event on another environment."
|
|
211
|
+
) })
|
|
212
|
+
] }),
|
|
213
|
+
/* @__PURE__ */ o(
|
|
214
|
+
j,
|
|
215
|
+
{
|
|
216
|
+
size: "small",
|
|
217
|
+
onClick: r,
|
|
218
|
+
"aria-label": s("Close"),
|
|
219
|
+
"data-testid": "showflywayquery-close-icon",
|
|
220
|
+
children: /* @__PURE__ */ o(b, { iconName: "faXmark" })
|
|
221
|
+
}
|
|
222
|
+
)
|
|
223
|
+
]
|
|
224
|
+
}
|
|
225
|
+
),
|
|
226
|
+
/* @__PURE__ */ o(P, { children: /* @__PURE__ */ o(
|
|
227
|
+
y,
|
|
228
|
+
{
|
|
229
|
+
"data-testid": "showflywayquery-textfield-query-display",
|
|
230
|
+
role: "region",
|
|
231
|
+
"aria-label": s("Flyway Query"),
|
|
232
|
+
sx: {
|
|
233
|
+
mt: 2,
|
|
234
|
+
overflow: "hidden",
|
|
235
|
+
borderRadius: (l) => `${l.shape.borderRadius}px`,
|
|
236
|
+
border: "1px solid",
|
|
237
|
+
borderColor: "divider"
|
|
206
238
|
},
|
|
207
|
-
"
|
|
239
|
+
children: /* @__PURE__ */ o(H, { mode: "READ_ONLY", height: "45vh", defaultValue: _ })
|
|
208
240
|
}
|
|
209
241
|
) }),
|
|
210
|
-
/* @__PURE__ */
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
{
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
242
|
+
/* @__PURE__ */ p(
|
|
243
|
+
z,
|
|
244
|
+
{
|
|
245
|
+
sx: { px: 3, py: 2, borderTop: "1px solid", borderColor: "divider" },
|
|
246
|
+
children: [
|
|
247
|
+
/* @__PURE__ */ o(
|
|
248
|
+
w,
|
|
249
|
+
{
|
|
250
|
+
onClick: r,
|
|
251
|
+
variant: "outlined",
|
|
252
|
+
color: "inherit",
|
|
253
|
+
size: "small",
|
|
254
|
+
"data-testid": "showflywayquery-button-cancel-action",
|
|
255
|
+
children: s("Close")
|
|
256
|
+
}
|
|
257
|
+
),
|
|
258
|
+
/* @__PURE__ */ o(
|
|
259
|
+
w,
|
|
260
|
+
{
|
|
261
|
+
onClick: f,
|
|
262
|
+
variant: "outlined",
|
|
263
|
+
color: "primary",
|
|
264
|
+
size: "small",
|
|
265
|
+
startIcon: /* @__PURE__ */ o(b, { iconName: "faCopy" }),
|
|
266
|
+
"data-testid": "showflywayquery-button-copyquery-action",
|
|
267
|
+
children: s("Copy Query")
|
|
268
|
+
}
|
|
269
|
+
),
|
|
270
|
+
/* @__PURE__ */ o(
|
|
271
|
+
w,
|
|
272
|
+
{
|
|
273
|
+
onClick: L,
|
|
274
|
+
variant: "contained",
|
|
275
|
+
color: "primary",
|
|
276
|
+
size: "small",
|
|
277
|
+
startIcon: /* @__PURE__ */ o(b, { iconName: "faDownload" }),
|
|
278
|
+
"data-testid": "showflywayquery-button-download-action",
|
|
279
|
+
children: s("Download")
|
|
280
|
+
}
|
|
281
|
+
)
|
|
282
|
+
]
|
|
283
|
+
}
|
|
284
|
+
)
|
|
245
285
|
]
|
|
246
286
|
}
|
|
247
287
|
)
|
|
248
288
|
] });
|
|
249
289
|
};
|
|
250
|
-
|
|
251
|
-
configuredQuery:
|
|
252
|
-
open:
|
|
253
|
-
onClose:
|
|
254
|
-
dataTestId:
|
|
290
|
+
X.propTypes = {
|
|
291
|
+
configuredQuery: h.any,
|
|
292
|
+
open: h.any,
|
|
293
|
+
onClose: h.any,
|
|
294
|
+
dataTestId: h.any
|
|
255
295
|
};
|
|
256
296
|
export {
|
|
257
|
-
|
|
297
|
+
X as default
|
|
258
298
|
};
|
|
259
|
-
//# sourceMappingURL=ShowFlywayQuery-
|
|
299
|
+
//# sourceMappingURL=ShowFlywayQuery-D1y_4A1u.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShowFlywayQuery-D1y_4A1u.js","sources":["../src/views/Events/ShowFlywayQuery.jsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport {\n Box,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Button,\n IconButton,\n Typography,\n} from \"@mui/material\";\nimport FontAwesomeIcons from \"@/common/fontAwesomeIcons/FontAwesomeIcons\";\nimport PostgresEditor from \"@/views/custom-components/PostgresEditor\";\nimport { showToast } from \"@/common/toaster/toaster\";\nimport CustomConfirmationModal from \"@/views/custom-components/CustomConfirmationModal\";\nimport moment from \"moment/moment\";\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\n\n/**\n * A React functional component that displays a configured Flyway query.\n * @module ShowFlywayQuery\n * @param {Object} props - Component properties.\n * @param {Object} props.configuredQuery - The query configuration object to display.\n * @param {boolean} props.open - Boolean flag indicating if the component should be visible.\n * @param {function} props.onClose - Callback function to close the component.\n */\n\nconst ShowFlywayQuery = ({ configuredQuery, open, onClose, dataTestId }) => {\n const [text, setText] = useState(\"\");\n const [isPublicKeyword, setIsPublicKeyword] = useState(false);\n const { translate } = useTranslateProvider();\n\n const [openConfirm, setOpenConfirm] = useState(false);\n\n /**\n *\n * Generates a SQL query string based on the `configuredQuery` object.\n * @function generateQueryText\n * @param {Object} configuredQuery - The query configuration object used to generate the SQL query.\n * @param {string} configuredQuery.code - The unique code for the query.\n * @param {string} configuredQuery.uuid - The unique identifier for the query.\n * @param {number} configuredQuery.createdBy - The ID of the user who created the query.\n * @param {string} [configuredQuery.params] - The parameters for the query.\n * @param {string} configuredQuery.query - The actual SQL query text.\n * @param {string} [configuredQuery.description] - A description of the query.\n * @param {boolean} [configuredQuery.returnsResultSet] - Flag indicating if the query returns a result set.\n * @param {string} [configuredQuery.state] - The state of the query (e.g., 'ACTIVE').\n * @returns {void}\n */\n\n const generateQueryText = useCallback(() => {\n const publicKeyword = configuredQuery?.configJson?.includes(\"public\");\n setIsPublicKeyword(publicKeyword);\n // Delete existing event configuration\n let queryText = `DELETE FROM EVENT_CONFIGURATION WHERE uuid = '${configuredQuery.uuid}';\\n\\n`;\n\n // Insert new event configuration\n queryText += `INSERT INTO EVENT_CONFIGURATION (created_by, created_on, modified_by, modified_on, day, description, event_type, event_type_detail_id, form_type_id, hour, minute, name, config_json, state, trigger_when, event_type_detail_code, uuid)\\nVALUES (\\n`;\n queryText += `${configuredQuery.createdBy}, current_date, ${configuredQuery.createdBy}, current_date, `;\n\n queryText +=\n configuredQuery.day !== undefined && configuredQuery.day !== null\n ? `${configuredQuery.day}, `\n : \"null, \";\n queryText += configuredQuery.description\n ? `'${configuredQuery.description.replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText += `'${configuredQuery.eventType}', `;\n queryText +=\n configuredQuery.eventTypeDetailId !== undefined &&\n configuredQuery.eventTypeDetailId !== null\n ? `${configuredQuery.eventTypeDetailId}, `\n : \"null, \";\n queryText +=\n configuredQuery.formTypeId !== undefined &&\n configuredQuery.formTypeId !== null\n ? `${configuredQuery.formTypeId}, `\n : \"null, \";\n queryText +=\n configuredQuery.hour !== undefined && configuredQuery.hour !== null\n ? `${configuredQuery.hour}, `\n : \"null, \";\n queryText +=\n configuredQuery.minute !== undefined && configuredQuery.minute !== null\n ? `${configuredQuery.minute}, `\n : \"null, \";\n queryText += `'${configuredQuery.name.replace(/'/g, \"''\")}', `;\n queryText += `'${configuredQuery.configJson.replace(/'/g, \"''\")}', `;\n queryText += `'${configuredQuery.state}', `;\n queryText +=\n configuredQuery.trigerWhen !== undefined &&\n configuredQuery.trigerWhen !== null\n ? `'${configuredQuery.trigerWhen}', `\n : \"null, \";\n queryText +=\n configuredQuery.eventTypeDetailCode !== undefined &&\n configuredQuery.eventTypeDetailCode !== null\n ? `${configuredQuery.eventTypeDetailCode}, `\n : \"null, \";\n queryText += `'${configuredQuery.uuid}');\\n`;\n\n if (\n configuredQuery.eventType === \"TIMMER_BASED\" &&\n configuredQuery.state !== \"INACTIVE\"\n ) {\n let nextDate = moment();\n switch (configuredQuery.trigerWhen) {\n case \"MONTHLY\":\n nextDate.add(1, \"months\").set({\n date: configuredQuery.day,\n hour: configuredQuery.hour || 0,\n minute: configuredQuery.minute || 0,\n second: 0,\n });\n break;\n case \"DAILY\":\n nextDate.add(getNextDate(configuredQuery), \"days\").set({\n hour: configuredQuery.hour || 0,\n minute: configuredQuery.minute || 0,\n second: 0,\n });\n break;\n case \"HOURLY\":\n nextDate\n .add(1, \"hours\")\n .set({ minute: getNextDate(configuredQuery), second: 0 });\n break;\n case \"MINUTE\":\n nextDate.add(configuredQuery.minute, \"minutes\").set({ second: 0 });\n break;\n default:\n }\n\n queryText += `\\nDELETE FROM TIMER_EVENT WHERE event_config_uuid = '${configuredQuery.uuid}' AND status = 'NEW';\\n\\n`;\n queryText += `INSERT INTO timer_event (event_config_uuid, processed, status, type, system_trigger_on)\\nVALUES (\\n`;\n queryText += `'${configuredQuery.uuid}', false, 'NEW', 'TIMER_EVENT', '${nextDate.format(\"MM-DD-yyyy HH:mm:ss\")}');\\n`;\n }\n\n // Handle notification configurations\n if (configuredQuery.configJson !== null) {\n const notificationConfigs = JSON.parse(configuredQuery.configJson);\n let firstDelete = true;\n\n notificationConfigs.forEach((config) => {\n if (config.conditions !== null && config.conditions.length > 0) {\n config.conditions.forEach((condition) => {\n if (\n condition.notificaitonConfigsType !== null &&\n condition.notificaitonConfigsType.length > 0\n ) {\n if (firstDelete) {\n queryText += `\\nDELETE FROM EVENT_CONFIGURATION_TYPE WHERE event_config_uuid = '${configuredQuery.uuid}';\\n`;\n firstDelete = false;\n }\n condition.notificaitonConfigsType.forEach((configType) => {\n queryText += `\\nINSERT INTO EVENT_CONFIGURATION_TYPE (id, base_date_field_name, event_config_uuid, day, email_subject, email_subject_parameter, hour, minute, mobile_notification_type, template, template_parameter, triger_when, type, user_field_name, family_field_name, member_field_name, query_master_id, query_master_param_json, query_code, sms_config_json, push_notification_config_json)\\nVALUES (\\n`;\n queryText += `'${configType.id}', `;\n queryText += configType.baseDateFieldName\n ? `'${configType.baseDateFieldName}', `\n : \"null, \";\n queryText += `'${configuredQuery.uuid}', `;\n queryText +=\n configType.day !== undefined && configType.day !== null\n ? `${configType.day}, `\n : \"null, \";\n queryText += configType.emailSubject\n ? `'${configType.emailSubject.replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText += configType.emailSubjectParameter\n ? `'${configType.emailSubjectParameter}', `\n : \"null, \";\n queryText +=\n configType.hour !== undefined && configType.hour !== null\n ? `${configType.hour}, `\n : \"null, \";\n queryText +=\n configType.miniute !== undefined &&\n configType.miniute !== null\n ? `${configType.miniute}, `\n : \"null, \";\n queryText +=\n configType.mobileNotificationType !== undefined &&\n configType.mobileNotificationType !== null\n ? `${configType.mobileNotificationType}, `\n : \"null, \";\n queryText += configType.template\n ? `'${configType.template.replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText += configType.templateParameter\n ? `'${configType.templateParameter.replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText += configType.trigerWhen\n ? `'${configType.trigerWhen}', `\n : \"null, \";\n queryText += configType.type\n ? `'${configType.type}', `\n : \"null, \";\n queryText += configType.userFieldName\n ? `'${configType.userFieldName}', `\n : \"null, \";\n queryText += configType.familyFieldName\n ? `'${configType.familyFieldName}', `\n : \"null, \";\n queryText += configType.memberFieldName\n ? `'${configType.memberFieldName}', `\n : \"null, \";\n queryText +=\n configType.queryMasterId !== undefined &&\n configType.queryMasterId !== null\n ? `${configType.queryMasterId}, `\n : \"null, \";\n queryText +=\n configType.queryMasterParamJson !== undefined &&\n configType.queryMasterParamJson !== null\n ? `'${JSON.stringify(configType.queryMasterParamJson).replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText += configType.queryCode\n ? `'${configType.queryCode}', `\n : \"null, \";\n queryText +=\n configType.smsConfigJson !== undefined &&\n configType.smsConfigJson !== null\n ? `'${JSON.stringify(configType.smsConfigJson).replace(/'/g, \"''\")}', `\n : \"null, \";\n queryText +=\n configType.pushNotificationConfigJson !== undefined &&\n configType.pushNotificationConfigJson !== null\n ? `'${JSON.stringify(configType.pushNotificationConfigJson).replace(/'/g, \"''\")}'`\n : \"null\";\n queryText += \");\\n\";\n\n // Handle mobile notification configs\n if (\n configType.mobileNotificationConfigs &&\n configType.mobileNotificationConfigs.length > 0\n ) {\n queryText += `\\nDELETE FROM EVENT_MOBILE_CONFIGURATION WHERE notification_type_config_id = '${configType.id}';\\n`;\n configType.mobileNotificationConfigs.forEach(\n (mobileConfig) => {\n queryText += `\\nINSERT INTO EVENT_MOBILE_CONFIGURATION (id, notification_code, notification_type_config_id, number_of_days_added_for_due_date, number_of_days_added_for_expiry_date, number_of_days_added_for_on_date)\\nVALUES (\\n`;\n queryText += `'${mobileConfig.id}', '${mobileConfig.notificationCode}', '${mobileConfig.notificationTypeConfigId}', ${mobileConfig.numberOfDaysAddedForDueDate}, ${mobileConfig.numberOfDaysAddedForExpiryDate}, ${mobileConfig.numberOfDaysAddedForOnDate});\\n`;\n }\n );\n }\n });\n }\n });\n }\n });\n }\n\n // Insert sync system configuration master\n let eventConfigObj = {\n id: configuredQuery.id,\n name: configuredQuery.name,\n description: configuredQuery.description,\n eventType: configuredQuery.eventType,\n eventTypeDetailId: configuredQuery.eventTypeDetailId,\n formTypeId: configuredQuery.formTypeId,\n eventTypeDetailCode: configuredQuery.eventTypeDetailCode,\n trigerWhen: configuredQuery.trigerWhen,\n day: configuredQuery.day,\n hour: configuredQuery.hour,\n minute: configuredQuery.minute,\n state: configuredQuery.state,\n createdBy: configuredQuery.createdBy,\n createdOn: moment().valueOf(),\n notificationConfigDetails: JSON.parse(configuredQuery.configJson),\n status: null,\n completionTime: null,\n configJson: null,\n uuid: configuredQuery.uuid,\n };\n\n queryText += `\\nINSERT INTO SYNC_SYSTEM_CONFIGURATION_MASTER (feature_type, config_json, created_on, created_by, feature_uuid, feature_name)\\nVALUES (\\n`;\n queryText += `'EVENT_BUILDER', '${JSON.stringify(eventConfigObj).replace(/'/g, \"''\")}', current_date, ${configuredQuery.createdBy}, '${configuredQuery.uuid}', '${configuredQuery.name}');\\n`;\n setText(queryText);\n }, [configuredQuery]);\n\n /**\n *\n * Copies the generated query text to the clipboard and displays a success message.\n * @function copyQuery\n * @returns {void}\n */\n\n const getNextDate = function (eventObj) {\n const now = new Date();\n const eventDate = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n eventObj.hour,\n eventObj.minute\n );\n\n if (eventDate > now) {\n return 0;\n } else {\n return 1;\n }\n };\n\n const copyQuery = () => {\n navigator?.clipboard?.writeText(text).then(() => {\n showToast({ message: \"Query Copied\", type: \"success\" });\n onClose();\n });\n };\n\n /**\n * Triggers a download operation and toggles the confirmation dialog visibility.\n * The function assumes that `download` and `setOpenConfirm` are available in the current scope.\n * @function askForConfirmation\n * @returns {void}\n */\n\n const askForConfirmation = () => {\n download();\n setOpenConfirm((cur) => !cur);\n };\n\n const trackEvent = useTrackEvent();\n\n /**\n * Creates and triggers a download of a text file containing the query text.\n *\n * @function download\n * @returns {void}\n */\n\n const download = async () => {\n if (window.showSaveFilePicker) {\n try {\n const options = {\n suggestedName: `V${new Date().getTime()}__CHANGE_IN_${configuredQuery.code}.sql`,\n types: [\n {\n description: \"SQL Files\",\n accept: { \"text/plain\": [\".sql\"] },\n },\n ],\n };\n const handle = await window.showSaveFilePicker(options);\n const writable = await handle.createWritable();\n await writable.write(text);\n await writable.close();\n const blobSizeInKB = (\n new Blob([text], { type: \"text/plain\" }).size / 1024\n ).toFixed(2);\n trackEvent(\"file_download\", {\n file_type: \"sql\",\n file_name: handle.name,\n file_size: `${blobSizeInKB} KB`,\n download_status: \"success\",\n });\n showToast({\n message: \"Query Downloaded SuccessFully\",\n type: \"success\",\n });\n onClose();\n } catch (err) {\n console.error(\"Something went wrong while downloading: \", err);\n }\n } else {\n // fallback for browsers that do not support showSaveFilePicker\n const blob = new Blob([text], { type: \"text/plain\" });\n const blobSizeInKB = (blob.size / 1024).toFixed(2);\n const url = URL.createObjectURL(blob);\n const a = document.createElement(\"a\");\n a.href = url;\n a.download = `V${new Date().getTime()}__CHANGE_IN_${configuredQuery.code}.sql`;\n document.body.appendChild(a);\n a.click();\n trackEvent(\"file_download\", {\n file_type: \"sql\",\n file_name: a.download,\n file_size: `${blobSizeInKB} KB`,\n download_status: \"success\",\n });\n document.body.removeChild(a);\n URL.revokeObjectURL(url);\n showToast({ message: \"Query Downloaded SuccessFully\", type: \"success\" });\n onClose();\n }\n };\n\n /**\n *\n * Handles the download process based on the presence of a public keyword in the query text.\n * @function handleDownload\n * @returns {void}\n */\n\n const handleDownload = () => {\n if (isPublicKeyword) {\n setOpenConfirm((cur) => !cur);\n } else {\n download();\n }\n };\n\n /**\n * `useEffect` Hook to Generate Query Text\n *\n * This effect hook is used to generate the SQL query text whenever the `configuredQuery` dependency changes.\n *\n * @function useEffect\n * @param {Object} configuredQuery - The query configuration object used to generate the SQL query text.\n * @param {function} generateQueryText - A function that generates the query text based on `configuredQuery`.\n */\n\n useEffect(() => {\n if (configuredQuery) {\n generateQueryText();\n }\n }, [configuredQuery]);\n return (\n <>\n <CustomConfirmationModal\n description={\n \"This Flyway contains keyword 'public'. Are you sure you want to download?\"\n }\n title={\"CONFIRM ACTION\"}\n handleClick={askForConfirmation}\n open={openConfirm}\n handleClose={() => setOpenConfirm((cur) => !cur)}\n dataTestId=\"showflywayquery-customconfirmationmodal-confirmation-modal\"\n />\n <Dialog\n open={open}\n onClose={onClose}\n fullWidth\n maxWidth=\"md\"\n data-testid={dataTestId}\n >\n <DialogTitle\n sx={{\n display: \"flex\",\n alignItems: \"flex-start\",\n justifyContent: \"space-between\",\n gap: 2,\n py: 1.5,\n borderBottom: \"1px solid\",\n borderColor: \"divider\",\n }}\n >\n <Box>\n <Typography\n variant=\"subtitle1\"\n component=\"span\"\n sx={{ fontWeight: 700, display: \"block\" }}\n >\n {translate(\"Flyway Query\")}\n </Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n {translate(\n \"Copy or download this migration to recreate this event on another environment.\",\n )}\n </Typography>\n </Box>\n <IconButton\n size=\"small\"\n onClick={onClose}\n aria-label={translate(\"Close\")}\n data-testid=\"showflywayquery-close-icon\"\n >\n <FontAwesomeIcons iconName=\"faXmark\" />\n </IconButton>\n </DialogTitle>\n <DialogContent>\n <Box\n data-testid=\"showflywayquery-textfield-query-display\"\n role=\"region\"\n aria-label={translate(\"Flyway Query\")}\n sx={{\n mt: 2,\n overflow: \"hidden\",\n borderRadius: (t) => `${t.shape.borderRadius}px`,\n border: \"1px solid\",\n borderColor: \"divider\",\n }}\n >\n <PostgresEditor mode=\"READ_ONLY\" height=\"45vh\" defaultValue={text} />\n </Box>\n </DialogContent>\n <DialogActions\n sx={{ px: 3, py: 2, borderTop: \"1px solid\", borderColor: \"divider\" }}\n >\n <Button\n onClick={onClose}\n variant=\"outlined\"\n color=\"inherit\"\n size=\"small\"\n data-testid=\"showflywayquery-button-cancel-action\"\n >\n {translate(\"Close\")}\n </Button>\n <Button\n onClick={copyQuery}\n variant=\"outlined\"\n color=\"primary\"\n size=\"small\"\n startIcon={<FontAwesomeIcons iconName=\"faCopy\" />}\n data-testid=\"showflywayquery-button-copyquery-action\"\n >\n {translate(\"Copy Query\")}\n </Button>\n <Button\n onClick={handleDownload}\n variant=\"contained\"\n color=\"primary\"\n size=\"small\"\n startIcon={<FontAwesomeIcons iconName=\"faDownload\" />}\n data-testid=\"showflywayquery-button-download-action\"\n >\n {translate(\"Download\")}\n </Button>\n </DialogActions>\n </Dialog>\n </>\n );\n};\n\nShowFlywayQuery.propTypes = {\n configuredQuery: PropTypes.any,\n open: PropTypes.any,\n onClose: PropTypes.any,\n dataTestId: PropTypes.any,\n};\n\nexport default ShowFlywayQuery;\n"],"names":["ShowFlywayQuery","configuredQuery","open","onClose","dataTestId","text","setText","useState","isPublicKeyword","setIsPublicKeyword","translate","useTranslateProvider","openConfirm","setOpenConfirm","generateQueryText","useCallback","publicKeyword","_a","queryText","nextDate","moment","getNextDate","notificationConfigs","firstDelete","config","condition","configType","mobileConfig","eventConfigObj","eventObj","now","copyQuery","showToast","askForConfirmation","download","cur","trackEvent","useTrackEvent","options","handle","writable","blobSizeInKB","err","blob","url","a","handleDownload","useEffect","jsxs","Fragment","jsx","CustomConfirmationModal","Dialog","DialogTitle","Box","Typography","IconButton","FontAwesomeIcons","DialogContent","t","PostgresEditor","DialogActions","Button","PropTypes"],"mappings":"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"}
|