@elevasis/ui 2.16.0 → 2.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/api/index.js +3 -2
  2. package/dist/app/index.js +9 -7
  3. package/dist/auth/index.js +4 -3
  4. package/dist/charts/index.js +11 -10
  5. package/dist/{chunk-DT7ETYBT.js → chunk-2TDZBYXI.js} +3 -3
  6. package/dist/{chunk-5IBTTMWX.js → chunk-34NQLV2W.js} +2 -2
  7. package/dist/{chunk-FL67C3WY.js → chunk-6IA2OMAE.js} +1 -1
  8. package/dist/{chunk-L4XXM55J.js → chunk-7YQKVWSD.js} +1 -1
  9. package/dist/{chunk-7MBONWZZ.js → chunk-ABUDMATM.js} +7 -8
  10. package/dist/{chunk-TUXTSEAF.js → chunk-DK2HVHCY.js} +1 -1
  11. package/dist/{chunk-GHIPBT5V.js → chunk-E4WQGJNS.js} +1 -1
  12. package/dist/{chunk-6SHOLCSV.js → chunk-FNWWVX5N.js} +5 -4
  13. package/dist/{chunk-IOKL7BKE.js → chunk-GCBWGGI6.js} +133 -1
  14. package/dist/chunk-GRGRBWIO.js +383 -0
  15. package/dist/{chunk-SLVC5OJ2.js → chunk-HQ7M6PBW.js} +1 -1
  16. package/dist/chunk-IRW7JMQ4.js +28 -0
  17. package/dist/{chunk-C3INGWGK.js → chunk-JU6UB4YA.js} +4 -4
  18. package/dist/{chunk-M2RM3CC4.js → chunk-MDO4UCEJ.js} +4 -4
  19. package/dist/{chunk-STZJ7SY5.js → chunk-MJ6YV2B5.js} +3 -2
  20. package/dist/{chunk-LKU4JCPR.js → chunk-MUZIYL5Q.js} +5 -4
  21. package/dist/{chunk-BKSSVQM6.js → chunk-OCCZRPER.js} +1 -1
  22. package/dist/{chunk-XNEYUG4B.js → chunk-OXWQQCDR.js} +13 -32
  23. package/dist/{chunk-ZB5GAV7J.js → chunk-P3TFNFZS.js} +6 -5
  24. package/dist/{chunk-QEPXAWE2.js → chunk-QHSW4WHM.js} +3 -26
  25. package/dist/{chunk-LXHZYSMQ.js → chunk-QSTH6T77.js} +2 -52
  26. package/dist/{chunk-F4VHHW4O.js → chunk-R7GKX4HW.js} +9 -409
  27. package/dist/{chunk-5UQKR27N.js → chunk-S6CYH4RI.js} +7 -6
  28. package/dist/{chunk-MTJ43R2E.js → chunk-SLH2QLKV.js} +1 -1
  29. package/dist/{chunk-RWFT46RK.js → chunk-TP5NMF6K.js} +6 -7
  30. package/dist/{chunk-SQQGLGHW.js → chunk-TTP62HWW.js} +3 -3
  31. package/dist/{chunk-NVOCKXUQ.js → chunk-VDM6DQES.js} +1 -1
  32. package/dist/chunk-ZTWA5H77.js +94 -0
  33. package/dist/components/index.d.ts +2640 -2640
  34. package/dist/components/index.js +38 -35
  35. package/dist/execution/index.js +2 -2
  36. package/dist/features/auth/index.js +5 -4
  37. package/dist/features/crm/index.d.ts +51 -51
  38. package/dist/features/crm/index.js +21 -19
  39. package/dist/features/dashboard/index.js +23 -21
  40. package/dist/features/delivery/index.d.ts +2604 -2604
  41. package/dist/features/delivery/index.js +21 -19
  42. package/dist/features/lead-gen/index.js +29 -26
  43. package/dist/features/monitoring/index.js +26 -24
  44. package/dist/features/monitoring/requests/index.d.ts +26 -26
  45. package/dist/features/monitoring/requests/index.js +20 -18
  46. package/dist/features/operations/index.d.ts +10 -10
  47. package/dist/features/operations/index.js +28 -25
  48. package/dist/features/seo/index.js +1 -1
  49. package/dist/features/settings/index.d.ts +34 -34
  50. package/dist/features/settings/index.js +22 -20
  51. package/dist/hooks/delivery/index.css +589 -0
  52. package/dist/hooks/delivery/index.d.ts +3044 -0
  53. package/dist/hooks/delivery/index.js +4 -0
  54. package/dist/hooks/index.d.ts +3095 -3095
  55. package/dist/hooks/index.js +20 -18
  56. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +506 -0
  57. package/dist/hooks/operations/command-view/utils/transformCommandViewData.js +1 -0
  58. package/dist/hooks/published.d.ts +3095 -3095
  59. package/dist/hooks/published.js +20 -18
  60. package/dist/index.d.ts +3396 -3335
  61. package/dist/index.js +21 -19
  62. package/dist/initialization/index.js +4 -3
  63. package/dist/layout/index.js +3 -3
  64. package/dist/organization/index.js +4 -3
  65. package/dist/profile/index.js +2 -1
  66. package/dist/provider/ElevasisServiceContext.d.ts +54 -0
  67. package/dist/provider/ElevasisServiceContext.js +1 -0
  68. package/dist/provider/index.d.ts +239 -239
  69. package/dist/provider/index.js +17 -16
  70. package/dist/provider/published.d.ts +239 -239
  71. package/dist/provider/published.js +15 -14
  72. package/dist/types/index.d.ts +2349 -2332
  73. package/dist/utils/index.d.ts +73 -1
  74. package/dist/utils/index.js +2 -1
  75. package/dist/zustand/index.d.ts +7 -7
  76. package/package.json +3 -3
  77. package/dist/{chunk-4BF74JVD.js → chunk-6GUW5GGF.js} +1 -1
  78. package/dist/{chunk-ELJIFLCB.js → chunk-KRWALB24.js} +6 -6
@@ -1,4 +1,4 @@
1
- import { useElevasisServices } from './chunk-QEPXAWE2.js';
1
+ import { useElevasisServices } from './chunk-IRW7JMQ4.js';
2
2
  import { useQuery } from '@tanstack/react-query';
3
3
 
4
4
  // src/hooks/observability/queryKeys.ts
@@ -47,54 +47,4 @@ function useErrorTrends({ startDate, endDate, granularity }) {
47
47
  });
48
48
  }
49
49
 
50
- // ../core/src/operations/observability/utils.ts
51
- function getTimeRangeDates(range) {
52
- const end = /* @__PURE__ */ new Date();
53
- const start = /* @__PURE__ */ new Date();
54
- switch (range) {
55
- case "1h":
56
- start.setHours(start.getHours() - 1);
57
- break;
58
- case "24h":
59
- start.setHours(start.getHours() - 24);
60
- break;
61
- case "7d":
62
- start.setDate(start.getDate() - 7);
63
- break;
64
- case "30d":
65
- start.setDate(start.getDate() - 30);
66
- break;
67
- }
68
- return {
69
- startDate: start.toISOString(),
70
- endDate: end.toISOString()
71
- };
72
- }
73
- function getTimeRangeLabel(range) {
74
- switch (range) {
75
- case "1h":
76
- return "Last 1 hour";
77
- case "24h":
78
- return "Last 24 hours";
79
- case "7d":
80
- return "Last 7 days";
81
- case "30d":
82
- return "Last 30 days";
83
- }
84
- }
85
- function formatBucketTime(timestamp, granularity) {
86
- const date = new Date(timestamp);
87
- if (granularity === "hour") {
88
- return date.toLocaleTimeString("en-US", {
89
- hour: "2-digit",
90
- minute: "2-digit",
91
- hour12: false
92
- });
93
- }
94
- return date.toLocaleDateString("en-US", {
95
- month: "short",
96
- day: "numeric"
97
- });
98
- }
99
-
100
- export { formatBucketTime, getTimeRangeDates, getTimeRangeLabel, observabilityKeys, useErrorTrends };
50
+ export { observabilityKeys, useErrorTrends };
@@ -1,13 +1,14 @@
1
- import { getTimeRangeDates, observabilityKeys } from './chunk-LXHZYSMQ.js';
2
1
  import { useSupabase } from './chunk-BRXELOHC.js';
2
+ import { observabilityKeys } from './chunk-QSTH6T77.js';
3
+ import { showApiErrorNotification, showSuccessNotification, projectKeys, noteKeys, taskKeys, milestoneKeys } from './chunk-GRGRBWIO.js';
3
4
  import { GRAPH_CONSTANTS } from './chunk-22UVE3RA.js';
4
- import { useOptionalElevasisFeatures } from './chunk-DT7ETYBT.js';
5
- import { useNotificationAdapter } from './chunk-ZB5GAV7J.js';
6
- import { HTTP_HEADERS } from './chunk-NVOCKXUQ.js';
7
- import { REFETCH_INTERVAL_DASHBOARD, STALE_TIME_MONITORING, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, getErrorInfo, formatErrorMessage, getErrorTitle, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT } from './chunk-IOKL7BKE.js';
8
- import { useStableAccessToken } from './chunk-MTJ43R2E.js';
5
+ import { useOptionalElevasisFeatures } from './chunk-2TDZBYXI.js';
6
+ import { useNotificationAdapter } from './chunk-P3TFNFZS.js';
7
+ import { HTTP_HEADERS } from './chunk-VDM6DQES.js';
8
+ import { UuidSchema, ResourceTypeSchema, NonEmptyStringSchema, OriginResourceTypeSchema, CredentialNameSchema, REFETCH_INTERVAL_DASHBOARD, getTimeRangeDates, STALE_TIME_MONITORING, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT } from './chunk-GCBWGGI6.js';
9
+ import { useStableAccessToken } from './chunk-SLH2QLKV.js';
9
10
  import { useOrganization } from './chunk-DD3CCMCZ.js';
10
- import { useElevasisServices } from './chunk-QEPXAWE2.js';
11
+ import { useElevasisServices } from './chunk-IRW7JMQ4.js';
11
12
  import { useAuthContext } from './chunk-BRJ3QZ4E.js';
12
13
  import { useQuery, useQueryClient, useMutation, useQueries } from '@tanstack/react-query';
13
14
  import { z } from 'zod';
@@ -165,31 +166,6 @@ function useBulkDeleteExecutions() {
165
166
  }
166
167
  });
167
168
  }
168
- var UuidSchema = z.string().uuid();
169
- var NonEmptyStringSchema = z.string().trim().min(1).max(1e3);
170
- var ResourceTypeSchema = z.enum(["agent", "workflow"]);
171
- var OriginResourceTypeSchema = z.enum(["agent", "workflow", "scheduler", "api"]);
172
- var CredentialNameSchema = z.string().trim().toLowerCase().min(1, "Credential name required").max(100, "Credential name too long (max 100 chars)").regex(
173
- /^[a-z0-9]+(-[a-z0-9]+)+$/,
174
- "Credential name must be lowercase letters, numbers, and hyphens in format: service-environment (e.g., gmail-prod, attio-dev)"
175
- );
176
- z.enum(["google-sheets", "dropbox"]);
177
- z.string().min(10, "Authorization code too short").max(1e3, "Authorization code too long");
178
- z.string().min(10, "State parameter too short").max(2048, "State parameter too long");
179
- z.string().trim().transform((str) => str.replace(/[<>'"]/g, ""));
180
- z.string().email();
181
- z.string().url();
182
- z.object({
183
- limit: z.coerce.number().int().min(1).max(100).default(20),
184
- offset: z.coerce.number().int().min(0).default(0)
185
- });
186
- z.string().datetime();
187
- z.object({
188
- startDate: z.string().datetime(),
189
- endDate: z.string().datetime()
190
- });
191
-
192
- // ../core/src/operations/sessions/api-schemas.ts
193
169
  var SessionIdParamSchema = z.object({
194
170
  sessionId: UuidSchema
195
171
  }).strict();
@@ -2779,55 +2755,6 @@ function useResourceExecutions({ resourceId, timeRange, enabled = true }) {
2779
2755
  staleTime: STALE_TIME_MONITORING
2780
2756
  });
2781
2757
  }
2782
- var showInfoNotification = (message) => {
2783
- notifications.show({
2784
- title: "Info",
2785
- message,
2786
- autoClose: 5e3,
2787
- color: "blue",
2788
- position: "top-right"
2789
- });
2790
- };
2791
- var showSuccessNotification = (message) => {
2792
- notifications.show({
2793
- title: "Action Successful",
2794
- message,
2795
- autoClose: 5e3,
2796
- color: "green",
2797
- position: "top-right"
2798
- });
2799
- };
2800
- var showErrorNotification = (error) => {
2801
- if (error instanceof Error) {
2802
- error = error.message;
2803
- }
2804
- notifications.show({
2805
- title: "Action Failed",
2806
- message: error,
2807
- autoClose: 5e3,
2808
- color: "red",
2809
- position: "top-right"
2810
- });
2811
- };
2812
- var showWarningNotification = (message) => {
2813
- notifications.show({
2814
- title: "Warning",
2815
- message,
2816
- autoClose: 5e3,
2817
- color: "orange",
2818
- position: "top-right"
2819
- });
2820
- };
2821
- var showApiErrorNotification = (error) => {
2822
- const { message, code, requestId, fields, retryAfter } = getErrorInfo(error);
2823
- notifications.show({
2824
- title: getErrorTitle(code),
2825
- message: formatErrorMessage(message, requestId, fields, retryAfter),
2826
- autoClose: retryAfter ? retryAfter * 1e3 : 5e3,
2827
- color: "red",
2828
- position: "top-right"
2829
- });
2830
- };
2831
2758
 
2832
2759
  // src/hooks/settings/api-keys/apiKeyService.ts
2833
2760
  var ApiKeyService = class {
@@ -3673,126 +3600,6 @@ function useDeleteContacts() {
3673
3600
  }
3674
3601
  });
3675
3602
  }
3676
- var projectKeys = {
3677
- all: ["projects"],
3678
- lists: () => [...projectKeys.all, "list"],
3679
- list: (orgId, filters) => [...projectKeys.all, "list", orgId, filters],
3680
- details: () => [...projectKeys.all, "detail"],
3681
- detail: (id) => [...projectKeys.all, "detail", id],
3682
- milestones: (id) => [...projectKeys.all, id, "milestones"],
3683
- tasks: (id) => [...projectKeys.all, id, "tasks"]
3684
- };
3685
- function useProjects(filters = {}) {
3686
- const { apiRequest, isReady, organizationId } = useElevasisServices();
3687
- return useQuery({
3688
- queryKey: projectKeys.list(organizationId, filters),
3689
- queryFn: async () => {
3690
- const params = new URLSearchParams();
3691
- if (filters.kind) params.set("kind", filters.kind);
3692
- const qs = params.toString();
3693
- const path = qs ? `/projects?${qs}` : "/projects";
3694
- const res = await apiRequest(path);
3695
- return res.projects;
3696
- },
3697
- enabled: isReady
3698
- });
3699
- }
3700
- function useProject(id) {
3701
- const { apiRequest, isReady, organizationId } = useElevasisServices();
3702
- return useQuery({
3703
- queryKey: [...projectKeys.detail(id), organizationId],
3704
- queryFn: async () => {
3705
- try {
3706
- const res = await apiRequest(`/projects/${id}`);
3707
- return res.project;
3708
- } catch (err) {
3709
- if (err && typeof err === "object" && "statusCode" in err && err.statusCode === 404) {
3710
- return null;
3711
- }
3712
- throw err;
3713
- }
3714
- },
3715
- enabled: isReady && !!id
3716
- });
3717
- }
3718
- function useProjectMilestones(projectId) {
3719
- const { apiRequest, isReady } = useElevasisServices();
3720
- return useQuery({
3721
- queryKey: projectKeys.milestones(projectId),
3722
- queryFn: async () => {
3723
- const res = await apiRequest(`/projects/${projectId}/milestones`);
3724
- return res.milestones;
3725
- },
3726
- enabled: isReady && !!projectId
3727
- });
3728
- }
3729
- function useProjectTasks(projectId) {
3730
- const { apiRequest, isReady } = useElevasisServices();
3731
- return useQuery({
3732
- queryKey: projectKeys.tasks(projectId),
3733
- queryFn: async () => {
3734
- const res = await apiRequest(`/projects/${projectId}/tasks`);
3735
- return res.tasks;
3736
- },
3737
- enabled: isReady && !!projectId
3738
- });
3739
- }
3740
- function useCreateProject() {
3741
- const { apiRequest } = useElevasisServices();
3742
- const queryClient = useQueryClient();
3743
- return useMutation({
3744
- mutationFn: async (params) => {
3745
- const res = await apiRequest("/projects", {
3746
- method: "POST",
3747
- body: JSON.stringify(params)
3748
- });
3749
- return res.project;
3750
- },
3751
- onSuccess: () => {
3752
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
3753
- },
3754
- onError: (error) => {
3755
- showApiErrorNotification(error);
3756
- }
3757
- });
3758
- }
3759
- function useUpdateProject() {
3760
- const { apiRequest } = useElevasisServices();
3761
- const queryClient = useQueryClient();
3762
- return useMutation({
3763
- mutationFn: async (params) => {
3764
- const res = await apiRequest(`/projects/${params.id}`, {
3765
- method: "PATCH",
3766
- body: JSON.stringify(params.updates)
3767
- });
3768
- return res.project;
3769
- },
3770
- onSuccess: (data) => {
3771
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
3772
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.id) });
3773
- },
3774
- onError: (error) => {
3775
- showApiErrorNotification(error);
3776
- }
3777
- });
3778
- }
3779
- function useDeleteProject() {
3780
- const { apiRequest } = useElevasisServices();
3781
- const queryClient = useQueryClient();
3782
- return useMutation({
3783
- mutationFn: async (id) => {
3784
- await apiRequest(`/projects/${id}`, {
3785
- method: "DELETE"
3786
- });
3787
- },
3788
- onSuccess: () => {
3789
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
3790
- },
3791
- onError: (error) => {
3792
- showApiErrorNotification(error);
3793
- }
3794
- });
3795
- }
3796
3603
 
3797
3604
  // src/hooks/settings/webhooks/webhookEndpointService.ts
3798
3605
  var WebhookEndpointService = class {
@@ -4427,213 +4234,6 @@ function useOrganizationMembers(organizationId, params) {
4427
4234
  refetchOnWindowFocus: false
4428
4235
  });
4429
4236
  }
4430
- var milestoneKeys = {
4431
- all: ["project-milestones"],
4432
- lists: () => [...milestoneKeys.all, "list"],
4433
- list: (orgId, filters) => [...milestoneKeys.all, "list", orgId, filters],
4434
- details: () => [...milestoneKeys.all, "detail"],
4435
- detail: (id) => [...milestoneKeys.all, "detail", id]
4436
- };
4437
- function useMilestones(filters = {}) {
4438
- const { apiRequest, isReady, organizationId } = useElevasisServices();
4439
- return useQuery({
4440
- queryKey: milestoneKeys.list(organizationId, filters),
4441
- queryFn: async () => {
4442
- const res = await apiRequest(`/projects/${filters.projectId}/milestones`);
4443
- return res.milestones;
4444
- },
4445
- enabled: isReady && !!filters.projectId
4446
- });
4447
- }
4448
- function useCreateMilestone() {
4449
- const { apiRequest } = useElevasisServices();
4450
- const queryClient = useQueryClient();
4451
- return useMutation({
4452
- mutationFn: async (params) => {
4453
- const { project_id, ...body } = params;
4454
- if (!project_id) throw new Error("project_id is required to create a milestone");
4455
- const res = await apiRequest(`/projects/${project_id}/milestones`, {
4456
- method: "POST",
4457
- body: JSON.stringify(body)
4458
- });
4459
- return res.milestone;
4460
- },
4461
- onSuccess: (data) => {
4462
- queryClient.invalidateQueries({ queryKey: milestoneKeys.all });
4463
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4464
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.project_id) });
4465
- },
4466
- onError: (error) => {
4467
- showApiErrorNotification(error);
4468
- }
4469
- });
4470
- }
4471
- function useUpdateMilestone() {
4472
- const { apiRequest } = useElevasisServices();
4473
- const queryClient = useQueryClient();
4474
- return useMutation({
4475
- mutationFn: async (params) => {
4476
- const res = await apiRequest(`/milestones/${params.id}`, {
4477
- method: "PATCH",
4478
- body: JSON.stringify(params.updates)
4479
- });
4480
- return res.milestone;
4481
- },
4482
- onSuccess: (data) => {
4483
- queryClient.invalidateQueries({ queryKey: milestoneKeys.all });
4484
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4485
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.project_id) });
4486
- },
4487
- onError: (error) => {
4488
- showApiErrorNotification(error);
4489
- }
4490
- });
4491
- }
4492
- function useDeleteMilestone() {
4493
- const { apiRequest } = useElevasisServices();
4494
- const queryClient = useQueryClient();
4495
- return useMutation({
4496
- mutationFn: async (params) => {
4497
- await apiRequest(`/milestones/${params.id}`, {
4498
- method: "DELETE"
4499
- });
4500
- },
4501
- onSuccess: (_, params) => {
4502
- queryClient.invalidateQueries({ queryKey: milestoneKeys.all });
4503
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4504
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(params.projectId) });
4505
- },
4506
- onError: (error) => {
4507
- showApiErrorNotification(error);
4508
- }
4509
- });
4510
- }
4511
- var taskKeys = {
4512
- all: ["project-tasks"],
4513
- lists: () => [...taskKeys.all, "list"],
4514
- list: (orgId, filters) => [...taskKeys.all, "list", orgId, filters],
4515
- details: () => [...taskKeys.all, "detail"],
4516
- detail: (id) => [...taskKeys.all, "detail", id]
4517
- };
4518
- function useTasks(filters = {}) {
4519
- const { apiRequest, isReady, organizationId } = useElevasisServices();
4520
- return useQuery({
4521
- queryKey: taskKeys.list(organizationId, filters),
4522
- queryFn: async () => {
4523
- const params = new URLSearchParams();
4524
- if (filters.status) params.set("status", filters.status);
4525
- if (filters.milestoneId) params.set("milestone_id", filters.milestoneId);
4526
- const qs = params.toString();
4527
- const base = `/projects/${filters.projectId}/tasks`;
4528
- const path = qs ? `${base}?${qs}` : base;
4529
- const res = await apiRequest(path);
4530
- return res.tasks;
4531
- },
4532
- enabled: isReady && !!filters.projectId
4533
- });
4534
- }
4535
- function useCreateTask() {
4536
- const { apiRequest } = useElevasisServices();
4537
- const queryClient = useQueryClient();
4538
- return useMutation({
4539
- mutationFn: async (params) => {
4540
- const res = await apiRequest("/project-tasks", {
4541
- method: "POST",
4542
- body: JSON.stringify(params)
4543
- });
4544
- return res.task;
4545
- },
4546
- onSuccess: (data) => {
4547
- queryClient.invalidateQueries({ queryKey: taskKeys.all });
4548
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4549
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.project_id) });
4550
- },
4551
- onError: (error) => {
4552
- showApiErrorNotification(error);
4553
- }
4554
- });
4555
- }
4556
- function useUpdateTask() {
4557
- const { apiRequest } = useElevasisServices();
4558
- const queryClient = useQueryClient();
4559
- return useMutation({
4560
- mutationFn: async (params) => {
4561
- const res = await apiRequest(`/project-tasks/${params.id}`, {
4562
- method: "PATCH",
4563
- body: JSON.stringify(params.updates)
4564
- });
4565
- return res.task;
4566
- },
4567
- onSuccess: (data) => {
4568
- queryClient.invalidateQueries({ queryKey: taskKeys.all });
4569
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4570
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.project_id) });
4571
- },
4572
- onError: (error) => {
4573
- showApiErrorNotification(error);
4574
- }
4575
- });
4576
- }
4577
- function useDeleteTask2() {
4578
- const { apiRequest } = useElevasisServices();
4579
- const queryClient = useQueryClient();
4580
- return useMutation({
4581
- mutationFn: async (params) => {
4582
- await apiRequest(`/project-tasks/${params.id}`, {
4583
- method: "DELETE"
4584
- });
4585
- },
4586
- onSuccess: (_, params) => {
4587
- queryClient.invalidateQueries({ queryKey: taskKeys.all });
4588
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4589
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(params.projectId) });
4590
- },
4591
- onError: (error) => {
4592
- showApiErrorNotification(error);
4593
- }
4594
- });
4595
- }
4596
- var noteKeys = {
4597
- all: ["project-notes"],
4598
- lists: () => [...noteKeys.all, "list"],
4599
- list: (orgId, filters) => [...noteKeys.all, "list", orgId, filters],
4600
- details: () => [...noteKeys.all, "detail"],
4601
- detail: (id) => [...noteKeys.all, "detail", id]
4602
- };
4603
- function useProjectNotes(filters = {}) {
4604
- const { apiRequest, isReady, organizationId } = useElevasisServices();
4605
- return useQuery({
4606
- queryKey: noteKeys.list(organizationId, filters),
4607
- queryFn: async () => {
4608
- const res = await apiRequest(`/projects/${filters.projectId}/notes`);
4609
- return res.notes;
4610
- },
4611
- enabled: isReady && !!filters.projectId
4612
- });
4613
- }
4614
- function useCreateNote() {
4615
- const { apiRequest } = useElevasisServices();
4616
- const queryClient = useQueryClient();
4617
- return useMutation({
4618
- mutationFn: async (params) => {
4619
- const res = await apiRequest("/project-notes", {
4620
- method: "POST",
4621
- body: JSON.stringify(params)
4622
- });
4623
- return res.note;
4624
- },
4625
- onSuccess: (data) => {
4626
- queryClient.invalidateQueries({ queryKey: noteKeys.all });
4627
- queryClient.invalidateQueries({ queryKey: projectKeys.all });
4628
- queryClient.invalidateQueries({ queryKey: projectKeys.detail(data.project_id) });
4629
- },
4630
- onError: (error) => {
4631
- showApiErrorNotification(error);
4632
- }
4633
- });
4634
- }
4635
-
4636
- // src/hooks/projects/useProjectRealtime.ts
4637
4237
  var noopSSEManager = {
4638
4238
  subscribe: () => () => {
4639
4239
  },
@@ -4700,4 +4300,4 @@ function useProjectRealtime(projectId) {
4700
4300
  });
4701
4301
  }
4702
4302
 
4703
- export { ApiKeyService, CredentialSchemas, CredentialService, DeploymentService, MEMBERSHIP_STATUS_COLORS, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, isSessionCapable, milestoneKeys, noteKeys, operationsKeys, projectActivityKeys, projectKeys, requestsKeys, scheduleKeys, sessionsKeys, showApiErrorNotification, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, taskKeys, transformMembershipToTableRow, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteMilestone, useDeleteProject, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNotificationCount, useNotifications, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateMilestone, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification };
4303
+ export { ApiKeyService, CredentialSchemas, CredentialService, DeploymentService, MEMBERSHIP_STATUS_COLORS, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, isSessionCapable, operationsKeys, projectActivityKeys, requestsKeys, scheduleKeys, sessionsKeys, sortData, transformMembershipToTableRow, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateSchedule, useCreateSession, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteWebhookEndpoint, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useNotificationCount, useNotifications, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, useProjectActivities, useProjectRealtime, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateRequestStatus, useUpdateSchedule, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification };
@@ -1,12 +1,13 @@
1
+ import { AppShellLoader } from './chunk-M25JL54Z.js';
1
2
  import { FilterBar } from './chunk-PDHTXPSF.js';
2
3
  import { CustomModal } from './chunk-GBMNCNHX.js';
3
- import { AppShellLoader } from './chunk-M25JL54Z.js';
4
4
  import { useAvailablePresets } from './chunk-6RWMRQN5.js';
5
- import { useDeleteCredential, useCreateCredential, useCredentials, MEMBERSHIP_STATUS_COLORS, transformMembershipToTableRow, useUserMemberships, useUpdateWebhookEndpoint, useResources, useDeleteWebhookEndpoint, useCreateWebhookEndpoint, useListWebhookEndpoints, useUpdateMemberConfig, useOrganizationMembers, useUpdateCredential, CredentialSchemas, showErrorNotification } from './chunk-F4VHHW4O.js';
6
- import { ListSkeleton, EmptyState, PageTitleCaption, CardHeader, APIErrorAlert, StatCard } from './chunk-SQQGLGHW.js';
7
- import { formatDateTime, OAUTH_POPUP_CHECK_INTERVAL, OAUTH_FLOW_TIMEOUT } from './chunk-IOKL7BKE.js';
8
- import { useInitialization } from './chunk-TUXTSEAF.js';
9
- import { useElevasisServices } from './chunk-QEPXAWE2.js';
5
+ import { useDeleteCredential, useCreateCredential, useCredentials, MEMBERSHIP_STATUS_COLORS, transformMembershipToTableRow, useUserMemberships, useUpdateWebhookEndpoint, useResources, useDeleteWebhookEndpoint, useCreateWebhookEndpoint, useListWebhookEndpoints, useUpdateMemberConfig, useOrganizationMembers, useUpdateCredential, CredentialSchemas } from './chunk-R7GKX4HW.js';
6
+ import { showErrorNotification } from './chunk-GRGRBWIO.js';
7
+ import { ListSkeleton, EmptyState, PageTitleCaption, CardHeader, APIErrorAlert, StatCard } from './chunk-TTP62HWW.js';
8
+ import { formatDateTime, OAUTH_POPUP_CHECK_INTERVAL, OAUTH_FLOW_TIMEOUT } from './chunk-GCBWGGI6.js';
9
+ import { useInitialization } from './chunk-DK2HVHCY.js';
10
+ import { useElevasisServices } from './chunk-IRW7JMQ4.js';
10
11
  import { Table, Group, Text, Tooltip, ActionIcon, Stack, Title, Button, Select, TextInput, Alert, PasswordInput, Anchor, Paper, Card, Switch, Badge, Center, Loader, Box, Code, CopyButton, ThemeIcon, useMantineColorScheme, SimpleGrid, UnstyledButton, Divider, Textarea } from '@mantine/core';
11
12
  import { IconSettings, IconKey, IconCalendar, IconPencil, IconTrash, IconAlertTriangle, IconInfoCircle, IconExclamationMark, IconPlus, IconAlertCircle, IconUsers, IconSearch, IconBuilding, IconWebhook, IconCheck, IconCopy, IconUser, IconMail, IconRefresh, IconPalette, IconSun, IconEye, IconSparkles, IconTrendingUp, IconClock, IconPlayerPause, IconPlayerPlay, IconActivity, IconBrandDropbox, IconBrandGoogleDrive, IconPlug, IconMoon, IconDeviceDesktop } from '@tabler/icons-react';
12
13
  import { z } from 'zod';
@@ -1,4 +1,4 @@
1
- import { useInitialization } from './chunk-TUXTSEAF.js';
1
+ import { useInitialization } from './chunk-DK2HVHCY.js';
2
2
  import { useAuthContext } from './chunk-BRJ3QZ4E.js';
3
3
  import { useRef, useCallback, useEffect } from 'react';
4
4
  import { useQueryClient } from '@tanstack/react-query';
@@ -1,13 +1,12 @@
1
+ import { CyberAreaChart, CostTrendChart, ActivityTrendChart } from './chunk-MJ6YV2B5.js';
2
+ import { AppShellLoader } from './chunk-M25JL54Z.js';
1
3
  import { FilterBar } from './chunk-PDHTXPSF.js';
2
4
  import { CustomModal } from './chunk-GBMNCNHX.js';
3
- import { CyberAreaChart, CostTrendChart, ActivityTrendChart } from './chunk-STZJ7SY5.js';
4
- import { AppShellLoader } from './chunk-M25JL54Z.js';
5
- import { formatDuration } from './chunk-GHIPBT5V.js';
6
- import { useResolveError, useResolveAllErrors, usePaginationState, useErrorDetails, useMarkAsRead, useExecutionLogsFilters, useExecutionLogs, useExecutionHealth, useErrorAnalysis, useTimeRangeDates, useErrorDetail, useResolveErrorsByExecution, useResources, useCostTrends, useCostSummary, useCostByModel, useCostBreakdown, useActivityFilters, useActivityTrend, useActivities, useNotifications, useMarkAllAsRead, useTestNotification } from './chunk-F4VHHW4O.js';
7
- import { formatBucketTime, getTimeRangeDates } from './chunk-LXHZYSMQ.js';
8
- import { CenteredErrorState, CardHeader, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, EmptyState, PageTitleCaption, JsonViewer } from './chunk-SQQGLGHW.js';
9
- import { PAGE_SIZE_DEFAULT } from './chunk-IOKL7BKE.js';
5
+ import { formatDuration } from './chunk-E4WQGJNS.js';
6
+ import { useResolveError, useResolveAllErrors, usePaginationState, useErrorDetails, useMarkAsRead, useExecutionLogsFilters, useExecutionLogs, useExecutionHealth, useErrorAnalysis, useTimeRangeDates, useErrorDetail, useResolveErrorsByExecution, useResources, useCostTrends, useCostSummary, useCostByModel, useCostBreakdown, useActivityFilters, useActivityTrend, useActivities, useNotifications, useMarkAllAsRead, useTestNotification } from './chunk-R7GKX4HW.js';
7
+ import { CenteredErrorState, CardHeader, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, EmptyState, PageTitleCaption, JsonViewer } from './chunk-TTP62HWW.js';
10
8
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
9
+ import { formatBucketTime, PAGE_SIZE_DEFAULT, getTimeRangeDates } from './chunk-GCBWGGI6.js';
11
10
  import { useState, useMemo, useCallback } from 'react';
12
11
  import { Table, Text, Badge, Tooltip, Card, Group, Select, SegmentedControl, Button, TextInput, Stack, Paper, Center, Loader, ActionIcon, NumberFormatter, Box, Alert, Switch, Pagination, UnstyledButton, Title, Divider, Code, CopyButton, Accordion } from '@mantine/core';
13
12
  import { IconActivity, IconFilterOff, IconCircleCheck, IconThumbDown, IconThumbUp, IconClock, IconCircleX, IconSearch, IconArrowUpRight, IconAlertTriangle, IconAlertCircle, IconExternalLink, IconChartPie, IconHeartbeat, IconDownload, IconCpu, IconTrendingUp, IconChartBar, IconCash, IconInfoCircle, IconExclamationCircle, IconBug, IconChecks, IconCircle, IconCircleFilled, IconCheck, IconCopy, IconCircleDashed, IconPlus, IconArrowUp, IconArrowDown, IconFileOff, IconRobot, IconKey, IconUser } from '@tabler/icons-react';
@@ -1,8 +1,8 @@
1
1
  import { StyledMarkdown } from './chunk-3KMDHCAR.js';
2
- import { ResourceStatusColors } from './chunk-ELJIFLCB.js';
3
- import { getErrorInfo, getErrorTitle, getResourceIcon, formatTimeAgo } from './chunk-IOKL7BKE.js';
4
- import { useAuthContext } from './chunk-BRJ3QZ4E.js';
5
2
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
3
+ import { getErrorInfo, getErrorTitle, getResourceIcon, formatTimeAgo } from './chunk-GCBWGGI6.js';
4
+ import { ResourceStatusColors } from './chunk-KRWALB24.js';
5
+ import { useAuthContext } from './chunk-BRJ3QZ4E.js';
6
6
  import { Center, Stack, Title, Text, Button, Box, Loader, Badge, Group, Collapse, ScrollArea, Card, Select, Alert, Code, ThemeIcon, Paper, Grid, Timeline, Space } from '@mantine/core';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
8
  import { IconMinus, IconTrendingUp, IconTrendingDown, IconChevronUp, IconChevronDown, IconAlertCircle, IconClock, IconInfoCircle, IconBan, IconChevronRight, IconInbox, IconHeartHandshake, IconUserOff, IconMailForward, IconBell, IconCalendarEvent, IconCalendarCancel, IconMessageReply, IconCircleCheck, IconCreditCard, IconX, IconEye, IconSend, IconFileText, IconArrowRight, IconPlus, IconActivity } from '@tabler/icons-react';
@@ -1,4 +1,4 @@
1
- import { APIClientError } from './chunk-IOKL7BKE.js';
1
+ import { APIClientError } from './chunk-GCBWGGI6.js';
2
2
  import { OrganizationContext } from './chunk-DD3CCMCZ.js';
3
3
  import { createContext, useContext, useMemo, useCallback } from 'react';
4
4
  import { jsx } from 'react/jsx-runtime';