@devalok/shilp-sutra-karm 0.1.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 (182) hide show
  1. package/dist/admin/adjustments/approved-adjustments.d.ts +10 -0
  2. package/dist/admin/adjustments/approved-adjustments.d.ts.map +1 -0
  3. package/dist/admin/adjustments/approved-adjustments.js +42 -0
  4. package/dist/admin/adjustments/index.d.ts +2 -0
  5. package/dist/admin/adjustments/index.d.ts.map +1 -0
  6. package/dist/admin/break/break-admin-skeleton.d.ts +3 -0
  7. package/dist/admin/break/break-admin-skeleton.d.ts.map +1 -0
  8. package/dist/admin/break/break-admin-skeleton.js +58 -0
  9. package/dist/admin/break/break-admin.d.ts +79 -0
  10. package/dist/admin/break/break-admin.d.ts.map +1 -0
  11. package/dist/admin/break/break-admin.js +346 -0
  12. package/dist/admin/break/break-balance.d.ts +14 -0
  13. package/dist/admin/break/break-balance.d.ts.map +1 -0
  14. package/dist/admin/break/break-balance.js +41 -0
  15. package/dist/admin/break/breaks.d.ts +21 -0
  16. package/dist/admin/break/breaks.d.ts.map +1 -0
  17. package/dist/admin/break/breaks.js +90 -0
  18. package/dist/admin/break/delete-break.d.ts +10 -0
  19. package/dist/admin/break/delete-break.d.ts.map +1 -0
  20. package/dist/admin/break/delete-break.js +53 -0
  21. package/dist/admin/break/edit-break-balance.d.ts +15 -0
  22. package/dist/admin/break/edit-break-balance.d.ts.map +1 -0
  23. package/dist/admin/break/edit-break-balance.js +111 -0
  24. package/dist/admin/break/edit-break.d.ts +23 -0
  25. package/dist/admin/break/edit-break.d.ts.map +1 -0
  26. package/dist/admin/break/edit-break.js +485 -0
  27. package/dist/admin/break/header.d.ts +22 -0
  28. package/dist/admin/break/header.d.ts.map +1 -0
  29. package/dist/admin/break/header.js +228 -0
  30. package/dist/admin/break/index.d.ts +18 -0
  31. package/dist/admin/break/index.d.ts.map +1 -0
  32. package/dist/admin/break/leave-request.d.ts +17 -0
  33. package/dist/admin/break/leave-request.d.ts.map +1 -0
  34. package/dist/admin/break/leave-request.js +162 -0
  35. package/dist/admin/break/use-break-date-picker.d.ts +25 -0
  36. package/dist/admin/break/use-break-date-picker.d.ts.map +1 -0
  37. package/dist/admin/break/use-break-date-picker.js +42 -0
  38. package/dist/admin/dashboard/admin-dashboard.d.ts +109 -0
  39. package/dist/admin/dashboard/admin-dashboard.d.ts.map +1 -0
  40. package/dist/admin/dashboard/admin-dashboard.js +336 -0
  41. package/dist/admin/dashboard/associate-detail.d.ts +36 -0
  42. package/dist/admin/dashboard/associate-detail.d.ts.map +1 -0
  43. package/dist/admin/dashboard/associate-detail.js +269 -0
  44. package/dist/admin/dashboard/attendance-overview.d.ts +11 -0
  45. package/dist/admin/dashboard/attendance-overview.d.ts.map +1 -0
  46. package/dist/admin/dashboard/attendance-overview.js +137 -0
  47. package/dist/admin/dashboard/break-request.d.ts +25 -0
  48. package/dist/admin/dashboard/break-request.d.ts.map +1 -0
  49. package/dist/admin/dashboard/break-request.js +174 -0
  50. package/dist/admin/dashboard/calendar.d.ts +7 -0
  51. package/dist/admin/dashboard/calendar.d.ts.map +1 -0
  52. package/dist/admin/dashboard/calendar.js +140 -0
  53. package/dist/admin/dashboard/correction-list.d.ts +21 -0
  54. package/dist/admin/dashboard/correction-list.d.ts.map +1 -0
  55. package/dist/admin/dashboard/correction-list.js +99 -0
  56. package/dist/admin/dashboard/dashboard-header.d.ts +18 -0
  57. package/dist/admin/dashboard/dashboard-header.d.ts.map +1 -0
  58. package/dist/admin/dashboard/dashboard-header.js +153 -0
  59. package/dist/admin/dashboard/dashboard-skeleton.d.ts +3 -0
  60. package/dist/admin/dashboard/dashboard-skeleton.d.ts.map +1 -0
  61. package/dist/admin/dashboard/dashboard-skeleton.js +110 -0
  62. package/dist/admin/dashboard/index.d.ts +13 -0
  63. package/dist/admin/dashboard/index.d.ts.map +1 -0
  64. package/dist/admin/dashboard/leave-requests.d.ts +26 -0
  65. package/dist/admin/dashboard/leave-requests.d.ts.map +1 -0
  66. package/dist/admin/dashboard/leave-requests.js +197 -0
  67. package/dist/admin/dashboard/render-date.d.ts +16 -0
  68. package/dist/admin/dashboard/render-date.d.ts.map +1 -0
  69. package/dist/admin/dashboard/render-date.js +143 -0
  70. package/dist/admin/dashboard/use-calendar-navigation.d.ts +60 -0
  71. package/dist/admin/dashboard/use-calendar-navigation.d.ts.map +1 -0
  72. package/dist/admin/dashboard/use-calendar-navigation.js +168 -0
  73. package/dist/admin/dashboard/use-leave-request-interaction.d.ts +21 -0
  74. package/dist/admin/dashboard/use-leave-request-interaction.d.ts.map +1 -0
  75. package/dist/admin/dashboard/use-leave-request-interaction.js +33 -0
  76. package/dist/admin/icons.d.ts +2 -0
  77. package/dist/admin/icons.d.ts.map +1 -0
  78. package/dist/admin/index.d.ts +9 -0
  79. package/dist/admin/index.d.ts.map +1 -0
  80. package/dist/admin/index.js +62 -0
  81. package/dist/admin/types.d.ts +113 -0
  82. package/dist/admin/types.d.ts.map +1 -0
  83. package/dist/admin/utils/date-range-utils.d.ts +35 -0
  84. package/dist/admin/utils/date-range-utils.d.ts.map +1 -0
  85. package/dist/admin/utils/date-range-utils.js +36 -0
  86. package/dist/admin/utils/date-utils.d.ts +29 -0
  87. package/dist/admin/utils/date-utils.d.ts.map +1 -0
  88. package/dist/admin/utils/date-utils.js +118 -0
  89. package/dist/admin/utils/emoji-utils.d.ts +3 -0
  90. package/dist/admin/utils/emoji-utils.d.ts.map +1 -0
  91. package/dist/admin/utils/emoji-utils.js +16 -0
  92. package/dist/admin/utils/render-adjustment-type.d.ts +17 -0
  93. package/dist/admin/utils/render-adjustment-type.d.ts.map +1 -0
  94. package/dist/admin/utils/render-adjustment-type.js +19 -0
  95. package/dist/admin/utils/render-status.d.ts +3 -0
  96. package/dist/admin/utils/render-status.d.ts.map +1 -0
  97. package/dist/admin/utils/render-status.js +21 -0
  98. package/dist/board/board-column.d.ts +20 -0
  99. package/dist/board/board-column.d.ts.map +1 -0
  100. package/dist/board/board-column.js +233 -0
  101. package/dist/board/index.d.ts +4 -0
  102. package/dist/board/index.d.ts.map +1 -0
  103. package/dist/board/index.js +9 -0
  104. package/dist/board/kanban-board.d.ts +17 -0
  105. package/dist/board/kanban-board.d.ts.map +1 -0
  106. package/dist/board/kanban-board.js +218 -0
  107. package/dist/board/task-card.d.ts +25 -0
  108. package/dist/board/task-card.d.ts.map +1 -0
  109. package/dist/board/task-card.js +169 -0
  110. package/dist/chat/chat-input.d.ts +10 -0
  111. package/dist/chat/chat-input.d.ts.map +1 -0
  112. package/dist/chat/chat-input.js +52 -0
  113. package/dist/chat/chat-panel.d.ts +31 -0
  114. package/dist/chat/chat-panel.d.ts.map +1 -0
  115. package/dist/chat/chat-panel.js +150 -0
  116. package/dist/chat/conversation-list.d.ts +17 -0
  117. package/dist/chat/conversation-list.d.ts.map +1 -0
  118. package/dist/chat/conversation-list.js +98 -0
  119. package/dist/chat/index.d.ts +6 -0
  120. package/dist/chat/index.d.ts.map +1 -0
  121. package/dist/chat/index.js +12 -0
  122. package/dist/chat/message-list.d.ts +16 -0
  123. package/dist/chat/message-list.d.ts.map +1 -0
  124. package/dist/chat/message-list.js +69 -0
  125. package/dist/chat/streaming-text.d.ts +6 -0
  126. package/dist/chat/streaming-text.d.ts.map +1 -0
  127. package/dist/chat/streaming-text.js +29 -0
  128. package/dist/client/accent-provider.d.ts +14 -0
  129. package/dist/client/accent-provider.d.ts.map +1 -0
  130. package/dist/client/accent-provider.js +21 -0
  131. package/dist/client/client-portal-header.d.ts +10 -0
  132. package/dist/client/client-portal-header.d.ts.map +1 -0
  133. package/dist/client/client-portal-header.js +47 -0
  134. package/dist/client/index.d.ts +4 -0
  135. package/dist/client/index.d.ts.map +1 -0
  136. package/dist/client/index.js +8 -0
  137. package/dist/client/project-card.d.ts +11 -0
  138. package/dist/client/project-card.d.ts.map +1 -0
  139. package/dist/client/project-card.js +59 -0
  140. package/dist/dashboard/attendance-cta.d.ts +22 -0
  141. package/dist/dashboard/attendance-cta.d.ts.map +1 -0
  142. package/dist/dashboard/attendance-cta.js +127 -0
  143. package/dist/dashboard/daily-brief.d.ts +13 -0
  144. package/dist/dashboard/daily-brief.d.ts.map +1 -0
  145. package/dist/dashboard/daily-brief.js +66 -0
  146. package/dist/dashboard/index.d.ts +3 -0
  147. package/dist/dashboard/index.d.ts.map +1 -0
  148. package/dist/dashboard/index.js +6 -0
  149. package/dist/index.d.ts +9 -0
  150. package/dist/index.d.ts.map +1 -0
  151. package/dist/index.js +93 -0
  152. package/dist/page-skeletons.d.ts +5 -0
  153. package/dist/page-skeletons.d.ts.map +1 -0
  154. package/dist/page-skeletons.js +129 -0
  155. package/dist/tasks/activity-tab.d.ts +20 -0
  156. package/dist/tasks/activity-tab.d.ts.map +1 -0
  157. package/dist/tasks/activity-tab.js +184 -0
  158. package/dist/tasks/conversation-tab.d.ts +45 -0
  159. package/dist/tasks/conversation-tab.d.ts.map +1 -0
  160. package/dist/tasks/conversation-tab.js +126 -0
  161. package/dist/tasks/files-tab.d.ts +28 -0
  162. package/dist/tasks/files-tab.d.ts.map +1 -0
  163. package/dist/tasks/files-tab.js +184 -0
  164. package/dist/tasks/index.d.ts +8 -0
  165. package/dist/tasks/index.d.ts.map +1 -0
  166. package/dist/tasks/index.js +16 -0
  167. package/dist/tasks/review-tab.d.ts +32 -0
  168. package/dist/tasks/review-tab.d.ts.map +1 -0
  169. package/dist/tasks/review-tab.js +169 -0
  170. package/dist/tasks/subtasks-tab.d.ts +36 -0
  171. package/dist/tasks/subtasks-tab.d.ts.map +1 -0
  172. package/dist/tasks/subtasks-tab.js +153 -0
  173. package/dist/tasks/task-constants.d.ts +9 -0
  174. package/dist/tasks/task-constants.d.ts.map +1 -0
  175. package/dist/tasks/task-constants.js +21 -0
  176. package/dist/tasks/task-detail-panel.d.ts +93 -0
  177. package/dist/tasks/task-detail-panel.d.ts.map +1 -0
  178. package/dist/tasks/task-detail-panel.js +208 -0
  179. package/dist/tasks/task-properties.d.ts +60 -0
  180. package/dist/tasks/task-properties.d.ts.map +1 -0
  181. package/dist/tasks/task-properties.js +316 -0
  182. package/package.json +67 -0
@@ -0,0 +1,90 @@
1
+ import { jsxs as t, jsx as e, Fragment as N } from "react/jsx-runtime";
2
+ import * as g from "react";
3
+ import { Popover as D, PopoverTrigger as j, PopoverContent as T } from "@devalok/shilp-sutra/ui";
4
+ import { Tooltip as S, TooltipTrigger as A, TooltipContent as B } from "@devalok/shilp-sutra/ui";
5
+ import { EditBreak as C } from "./edit-break.js";
6
+ import { formatOptionalDate as p } from "../utils/date-utils.js";
7
+ import { renderStatus as E } from "../utils/render-status.js";
8
+ import { IconButton as R } from "@devalok/shilp-sutra/ui";
9
+ import { isSameDay as M } from "date-fns";
10
+ import { IconDotsVertical as O } from "@tabler/icons-react";
11
+ const P = g.forwardRef(
12
+ function({
13
+ breaks: x,
14
+ userImages: d,
15
+ existingBreaks: f,
16
+ onFetchMonthBreaks: h,
17
+ onSave: w,
18
+ onDelete: v,
19
+ onRefresh: _
20
+ }, u) {
21
+ return /* @__PURE__ */ t("div", { ref: u, className: "m-0 flex h-[400px] w-full flex-col items-start justify-start p-0 max-md:h-auto", children: [
22
+ /* @__PURE__ */ t("div", { className: "mx-auto mb-ds-05 mt-ds-04 flex w-[92%] items-center", children: [
23
+ /* @__PURE__ */ e("div", { className: "w-[16%] min-w-[120px] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-tertiary", children: "NAME" }) }),
24
+ /* @__PURE__ */ e("div", { className: "w-[19%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-tertiary", children: "DATE" }) }),
25
+ /* @__PURE__ */ e("div", { className: "w-[8%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider w-full text-center text-text-tertiary", children: "DAYS" }) }),
26
+ /* @__PURE__ */ e("div", { className: "w-[22%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-tertiary", children: "REASON" }) }),
27
+ /* @__PURE__ */ e("div", { className: "flex w-[14%] items-center justify-start overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-tertiary", children: "STATUS" }) }),
28
+ /* @__PURE__ */ e("div", { className: "w-[24%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-tertiary", children: "COMMENT" }) }),
29
+ /* @__PURE__ */ e("div", { className: "w-ds-lg overflow-hidden px-ds-04 py-ds-03" })
30
+ ] }),
31
+ /* @__PURE__ */ e("div", { className: "no-scrollbar mx-auto flex w-[92%] flex-col gap-ds-05 overflow-y-auto max-md:h-[calc(100dvh-373px)]", children: x.map((s) => {
32
+ var l, a, n, c, o, m;
33
+ const r = new Date(s.startDate), i = new Date(s.endDate), y = M(r, i);
34
+ return /* @__PURE__ */ t(
35
+ "div",
36
+ {
37
+ className: "flex w-full items-center hover:bg-field",
38
+ children: [
39
+ /* @__PURE__ */ t("div", { className: "flex w-[16%] min-w-[120px] items-center gap-ds-03 overflow-hidden px-ds-04 py-ds-03", children: [
40
+ d[s.userId] ? /* @__PURE__ */ e(
41
+ "img",
42
+ {
43
+ src: d[s.userId],
44
+ alt: "",
45
+ className: "h-ds-xs-plus w-full max-w-7 flex-shrink-0 rounded-ds-full object-cover"
46
+ }
47
+ ) : /* @__PURE__ */ e("span", { className: "flex h-ds-xs-plus w-full max-w-7 items-center justify-center rounded-ds-full bg-layer-02 text-ds-sm font-medium uppercase text-text-primary", children: ((a = (l = s.user) == null ? void 0 : l.name) == null ? void 0 : a[0]) || "U" }),
48
+ /* @__PURE__ */ t(S, { children: [
49
+ /* @__PURE__ */ e(A, { asChild: !0, children: /* @__PURE__ */ e("span", { className: "text-ds-md truncate text-text-primary", children: ((n = s.user) == null ? void 0 : n.name) || ((o = (c = s.user) == null ? void 0 : c.name) == null ? void 0 : o.split(" ")[0]) }) }),
50
+ /* @__PURE__ */ e(B, { children: (m = s.user) == null ? void 0 : m.name })
51
+ ] })
52
+ ] }),
53
+ /* @__PURE__ */ e("div", { className: "w-[19%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ t("span", { className: "text-ds-md whitespace-nowrap text-text-secondary", children: [
54
+ p(r),
55
+ " ",
56
+ !y && /* @__PURE__ */ t(N, { children: [
57
+ /* @__PURE__ */ e("span", { children: "-" }),
58
+ " ",
59
+ p(i)
60
+ ] })
61
+ ] }) }),
62
+ /* @__PURE__ */ e("div", { className: "flex w-[8%] items-center justify-center overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("span", { className: "text-ds-md text-center text-text-secondary", children: s.numberOfDays }) }),
63
+ /* @__PURE__ */ e("div", { className: "w-[22%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("span", { className: "text-ds-md text-text-tertiary", children: s.reason }) }),
64
+ /* @__PURE__ */ e("div", { className: "flex w-[14%] items-center justify-start overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("span", { className: "text-ds-md text-text-tertiary", children: E(s == null ? void 0 : s.status, s == null ? void 0 : s.correction) }) }),
65
+ /* @__PURE__ */ e("div", { className: "w-[24%] overflow-hidden px-ds-04 py-ds-03", children: /* @__PURE__ */ e("span", { className: "text-ds-md text-text-tertiary", children: s.adminComment || " " }) }),
66
+ /* @__PURE__ */ e("div", { className: "flex w-ds-lg justify-center px-ds-04 py-ds-03", children: /* @__PURE__ */ t(D, { children: [
67
+ /* @__PURE__ */ e(j, { children: /* @__PURE__ */ e(R, { icon: /* @__PURE__ */ e(O, {}), size: "md", "aria-label": "More options" }) }),
68
+ /* @__PURE__ */ e(T, { className: "w-auto p-0", children: /* @__PURE__ */ e(
69
+ C,
70
+ {
71
+ selectedLeave: s,
72
+ existingBreaks: f,
73
+ onFetchMonthBreaks: h,
74
+ onSave: w,
75
+ onDelete: v
76
+ }
77
+ ) })
78
+ ] }) })
79
+ ]
80
+ },
81
+ s.id
82
+ );
83
+ }) })
84
+ ] });
85
+ }
86
+ );
87
+ P.displayName = "Breaks";
88
+ export {
89
+ P as Breaks
90
+ };
@@ -0,0 +1,10 @@
1
+ export interface DeleteBreakProps {
2
+ id: string;
3
+ userId: string;
4
+ onDelete?: () => void;
5
+ }
6
+ export declare function DeleteBreak({ id: _id, userId: _userId, onDelete }: DeleteBreakProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare namespace DeleteBreak {
8
+ var displayName: string;
9
+ }
10
+ //# sourceMappingURL=delete-break.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-break.d.ts","sourceRoot":"","sources":["../../../src/admin/break/delete-break.tsx"],"names":[],"mappings":"AAaA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CA4DnF;yBA5De,WAAW"}
@@ -0,0 +1,53 @@
1
+ import { jsxs as r, jsx as t } from "react/jsx-runtime";
2
+ import { useState as d, useRef as u } from "react";
3
+ import { useToast as p } from "@devalok/shilp-sutra/ui";
4
+ import { Dialog as x, DialogTrigger as h, DialogContent as g } from "@devalok/shilp-sutra/ui";
5
+ import { Button as b } from "@devalok/shilp-sutra/ui";
6
+ import { IconButton as D } from "@devalok/shilp-sutra/ui";
7
+ import { IconTrash as y } from "@tabler/icons-react";
8
+ function k({ id: v, userId: w, onDelete: a }) {
9
+ const [c, l] = d(!1), { toast: s } = p(), [m, i] = d(!1), n = u(null);
10
+ return /* @__PURE__ */ r(x, { open: m, onOpenChange: i, children: [
11
+ /* @__PURE__ */ t(h, { asChild: !0, children: /* @__PURE__ */ t(D, { icon: /* @__PURE__ */ t(y, {}), size: "md", "aria-label": "Delete break" }) }),
12
+ /* @__PURE__ */ r(g, { className: "flex w-[335px] flex-col items-center gap-ds-06 p-ds-06 max-md:w-[90%] max-md:rounded-ds-lg", children: [
13
+ /* @__PURE__ */ r("div", { className: "flex w-full max-w-[240px] flex-col items-center gap-ds-04 text-center", children: [
14
+ /* @__PURE__ */ t("p", { className: "text-ds-lg font-semibold text-center text-text-primary", children: "Delete this break?" }),
15
+ /* @__PURE__ */ t("p", { className: "text-ds-base text-text-tertiary", children: "This will be permanently deleted and can not undo" })
16
+ ] }),
17
+ /* @__PURE__ */ t("form", { ref: n, onSubmit: async (e) => {
18
+ var o;
19
+ e.preventDefault(), (o = e.stopPropagation) == null || o.call(e), l(!0);
20
+ try {
21
+ a && a(), s({
22
+ description: "Break request deleted successfully",
23
+ variant: "default"
24
+ }), i(!1);
25
+ } catch (f) {
26
+ console.error("Error deleting break request:", f), s({
27
+ title: "Error",
28
+ description: "Failed to delete break request",
29
+ variant: "error"
30
+ });
31
+ } finally {
32
+ l(!1);
33
+ }
34
+ }, className: "w-full", children: /* @__PURE__ */ t(
35
+ b,
36
+ {
37
+ className: "w-full",
38
+ variant: "primary",
39
+ onClick: () => {
40
+ var e;
41
+ return (e = n.current) == null ? void 0 : e.requestSubmit();
42
+ },
43
+ disabled: c,
44
+ children: "Yes, Delete"
45
+ }
46
+ ) })
47
+ ] })
48
+ ] });
49
+ }
50
+ k.displayName = "DeleteBreak";
51
+ export {
52
+ k as DeleteBreak
53
+ };
@@ -0,0 +1,15 @@
1
+ import { BreakBalanceData } from '../types';
2
+ export interface EditBreakBalanceProps {
3
+ selectedLeave: BreakBalanceData;
4
+ onSave?: (data: {
5
+ userId: string;
6
+ cashOutDays: number;
7
+ carryForward: number;
8
+ year: number;
9
+ }) => void;
10
+ }
11
+ export declare function EditBreakBalance({ selectedLeave, onSave, }: EditBreakBalanceProps): import("react/jsx-runtime").JSX.Element;
12
+ export declare namespace EditBreakBalance {
13
+ var displayName: string;
14
+ }
15
+ //# sourceMappingURL=edit-break-balance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-break-balance.d.ts","sourceRoot":"","sources":["../../../src/admin/break/edit-break-balance.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAMhD,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,gBAAgB,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE;QACd,MAAM,EAAE,MAAM,CAAA;QACd,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,IAAI,EAAE,MAAM,CAAA;KACb,KAAK,IAAI,CAAA;CACX;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,aAAa,EACb,MAAM,GACP,EAAE,qBAAqB,2CAkHvB;yBArHe,gBAAgB"}
@@ -0,0 +1,111 @@
1
+ import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
+ import { useState as n, useRef as y, useEffect as g } from "react";
3
+ import { useToast as w } from "@devalok/shilp-sutra/ui";
4
+ import { Dialog as N, DialogTrigger as k, DialogContent as D, DialogHeader as C, DialogDescription as E } from "@devalok/shilp-sutra/ui";
5
+ import { Button as p } from "@devalok/shilp-sutra/ui";
6
+ import { NumberInput as j } from "@devalok/shilp-sutra/ui";
7
+ import { IconPencil as B } from "@tabler/icons-react";
8
+ function F({
9
+ selectedLeave: r,
10
+ onSave: s
11
+ }) {
12
+ var e;
13
+ const [o, l] = n(!1), [c, d] = n(
14
+ typeof (r == null ? void 0 : r.cashout) == "number" ? r.cashout : 0
15
+ ), [u, h] = n(
16
+ (r == null ? void 0 : r.carryForward) || 0
17
+ ), m = y(null), { toast: f } = w();
18
+ g(() => {
19
+ d(
20
+ typeof (r == null ? void 0 : r.cashout) == "number" ? r.cashout : 0
21
+ ), h((r == null ? void 0 : r.carryForward) || 0);
22
+ }, [r]);
23
+ const b = async (i) => {
24
+ i.preventDefault(), l(!0);
25
+ try {
26
+ s && s({
27
+ userId: r.userId,
28
+ cashOutDays: c,
29
+ carryForward: u,
30
+ year: (/* @__PURE__ */ new Date()).getFullYear()
31
+ }), f({
32
+ description: "Break balance updated successfully",
33
+ variant: "default"
34
+ });
35
+ } catch (x) {
36
+ console.error("Error updating break balance:", x), f({
37
+ title: "Error",
38
+ description: "Failed to update break balance",
39
+ variant: "error"
40
+ });
41
+ } finally {
42
+ l(!1);
43
+ }
44
+ };
45
+ return /* @__PURE__ */ a(N, { children: [
46
+ /* @__PURE__ */ t(k, { asChild: !0, children: /* @__PURE__ */ a(
47
+ p,
48
+ {
49
+ variant: "secondary",
50
+ className: "text-ds-base border-border bg-layer-01 px-ds-05 py-ds-04 pr-ds-06 text-text-secondary shadow-02",
51
+ children: [
52
+ /* @__PURE__ */ t(B, {}),
53
+ /* @__PURE__ */ t("span", { children: "Edit" })
54
+ ]
55
+ }
56
+ ) }),
57
+ /* @__PURE__ */ t(D, { className: "w-[308px] p-ds-06", children: /* @__PURE__ */ t(C, { children: /* @__PURE__ */ t(E, { children: /* @__PURE__ */ a("div", { className: "flex flex-col items-center justify-start gap-ds-05", children: [
58
+ /* @__PURE__ */ a("p", { className: "text-ds-md w-full text-left text-text-tertiary", children: [
59
+ "Edit break balance conversion of ",
60
+ /* @__PURE__ */ t("br", { className: "mb-ds-02" }),
61
+ /* @__PURE__ */ t("span", { className: "font-semibold text-interactive", children: (e = r == null ? void 0 : r.user) == null ? void 0 : e.name })
62
+ ] }),
63
+ /* @__PURE__ */ a(
64
+ "form",
65
+ {
66
+ ref: m,
67
+ onSubmit: b,
68
+ id: "updatebreakbalanceform",
69
+ className: "flex w-full flex-col gap-ds-05",
70
+ children: [
71
+ /* @__PURE__ */ a("div", { className: "flex w-full items-center justify-between", children: [
72
+ /* @__PURE__ */ t("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-placeholder", children: "Cash out" }),
73
+ /* @__PURE__ */ t(
74
+ j,
75
+ {
76
+ value: c,
77
+ onChange: d,
78
+ min: 0,
79
+ max: 100,
80
+ step: 1,
81
+ disabled: o
82
+ }
83
+ )
84
+ ] }),
85
+ /* @__PURE__ */ a("div", { className: "flex w-full items-center justify-between", children: [
86
+ /* @__PURE__ */ t("div", { className: "text-ds-sm font-semibold uppercase tracking-wider text-text-placeholder", children: "Carry forward" }),
87
+ /* @__PURE__ */ t("div", { className: "flex w-[100px] items-center justify-center", children: /* @__PURE__ */ t("div", { className: "text-ds-base font-semibold text-text-secondary", children: u }) })
88
+ ] }),
89
+ /* @__PURE__ */ t(
90
+ p,
91
+ {
92
+ variant: "secondary",
93
+ fullWidth: !0,
94
+ onClick: () => {
95
+ var i;
96
+ return (i = m.current) == null ? void 0 : i.requestSubmit();
97
+ },
98
+ disabled: o,
99
+ children: "Update"
100
+ }
101
+ )
102
+ ]
103
+ }
104
+ )
105
+ ] }) }) }) })
106
+ ] });
107
+ }
108
+ F.displayName = "EditBreakBalance";
109
+ export {
110
+ F as EditBreakBalance
111
+ };
@@ -0,0 +1,23 @@
1
+ import { BreakRequest } from '../types';
2
+ export interface EditBreakProps {
3
+ selectedLeave: BreakRequest & {
4
+ numberOfDays: number;
5
+ };
6
+ existingBreaks?: BreakRequest[];
7
+ onFetchMonthBreaks?: (month: number, year: number) => Promise<BreakRequest[]>;
8
+ onSave?: (data: {
9
+ requestId: string;
10
+ userId: string;
11
+ status: string;
12
+ adminComment: string;
13
+ startDate: string;
14
+ endDate: string;
15
+ isEditing: boolean;
16
+ }) => void;
17
+ onDelete?: () => void;
18
+ }
19
+ export declare function EditBreak({ selectedLeave, existingBreaks: existingBreaksProp, onFetchMonthBreaks, onSave, onDelete, }: EditBreakProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare namespace EditBreak {
21
+ var displayName: string;
22
+ }
23
+ //# sourceMappingURL=edit-break.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-break.d.ts","sourceRoot":"","sources":["../../../src/admin/break/edit-break.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAc5C,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,YAAY,GAAG;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;IACtD,cAAc,CAAC,EAAE,YAAY,EAAE,CAAA;IAC/B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IAC7E,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE;QACd,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,CAAA;QACd,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,SAAS,EAAE,OAAO,CAAA;KACnB,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,wBAAgB,SAAS,CAAC,EACxB,aAAa,EACb,cAAc,EAAE,kBAAkB,EAClC,kBAAkB,EAClB,MAAM,EACN,QAAQ,GACT,EAAE,cAAc,2CAqmBhB;yBA3mBe,SAAS"}