@zeniai/web-components 4.1.52-betaJK2 → 4.1.52-betaVR1

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 (47) hide show
  1. package/dist/{SessionTimeoutPopup-CdfFoZvR.cjs → SessionTimeoutPopup-DQSLdcQs.cjs} +15534 -15421
  2. package/dist/{SessionTimeoutPopup-Dw3I5d4K.js → SessionTimeoutPopup-DXP_m1FM.js} +74725 -73981
  3. package/dist/appLocale.d.ts +25 -7
  4. package/dist/assets/interface/flag.svg +4 -3
  5. package/dist/cockpit.cjs.js +1 -1
  6. package/dist/cockpit.esm.js +4 -4
  7. package/dist/components/formElements/common/common.d.ts +1 -0
  8. package/dist/components/formElements/labeledFormattedText/LabeledFormattedTextField.d.ts +7 -2
  9. package/dist/components/formElements/labeledText/LabeledTextField.d.ts +7 -1
  10. package/dist/components/taskManagement/TaskDetailPage.d.ts +3 -8
  11. package/dist/components/taskManagement/TaskListRow.d.ts +2 -7
  12. package/dist/components/taskManagement/TaskListRowSmall.d.ts +1 -3
  13. package/dist/components/taskManagement/TaskManagementPage.d.ts +28 -4
  14. package/dist/components/taskManagement/taskManagementFormConstants.d.ts +0 -1
  15. package/dist/components/taskManagement/taskManagementHeaderItemsData.d.ts +0 -1
  16. package/dist/components/transactionDetail/items/journalEntryTable/FlexibleWidthContext.d.ts +2 -0
  17. package/dist/components/transactionDetail/items/journalEntryTable/TransactionLinesJournalEntryEmptyTable.d.ts +17 -0
  18. package/dist/components/transactionDetail/items/journalEntryTable/TransactionLinesJournalEntryTable.d.ts +2 -0
  19. package/dist/components/transactionDetail/items/journalEntryTable/common.d.ts +23 -0
  20. package/dist/components/transactionDetail/items/journalEntryTable/header/JournalEntryTableHeader.d.ts +11 -0
  21. package/dist/components/transactionDetail/items/journalEntryTable/header/journalEntryHeaderConfig.d.ts +28 -0
  22. package/dist/components/transactionDetail/items/journalEntryTable/header/journalEntryHeaderItemsData.d.ts +16 -0
  23. package/dist/components/transactionDetail/items/journalEntryTable/journalEntryTableStyles.d.ts +119 -0
  24. package/dist/components/transactionDetail/items/journalEntryTable/journalEntryTableTypes.d.ts +79 -0
  25. package/dist/components/transactionDetail/items/journalEntryTable/listRow/JournalEntryTableListRow.d.ts +40 -0
  26. package/dist/components/transactionDetail/items/journalEntryTable/totals/JournalEntryTotalsRow.d.ts +21 -0
  27. package/dist/components/transactionDetail/items/transactionLineTable/FlexibleWidthContext.d.ts +6 -0
  28. package/dist/components/transactionDetail/items/transactionLineTable/TransactionLinesEmptyTable.d.ts +11 -0
  29. package/dist/components/transactionDetail/items/transactionLineTable/TransactionLinesTable.d.ts +17 -0
  30. package/dist/components/transactionDetail/items/transactionLineTable/common.d.ts +32 -0
  31. package/dist/components/transactionDetail/items/transactionLineTable/header/TransactionLineTableHeader.d.ts +12 -0
  32. package/dist/components/transactionDetail/items/transactionLineTable/header/transactionLineHeaderConfig.d.ts +40 -0
  33. package/dist/components/transactionDetail/items/transactionLineTable/header/transactionLineHeaderItemsData.d.ts +19 -0
  34. package/dist/components/transactionDetail/items/transactionLineTable/listRow/TransactionLineTableListRow.d.ts +40 -0
  35. package/dist/components/transactionDetail/items/transactionLineTable/sortTransactionLines.d.ts +19 -0
  36. package/dist/components/transactionDetail/items/transactionLineTable/transactionLineTableStyles.d.ts +103 -0
  37. package/dist/components/transactionDetail/items/transactionLineTable/transactionLineTableTypes.d.ts +80 -0
  38. package/dist/index.cjs.js +1 -1
  39. package/dist/index.esm.js +20 -20
  40. package/dist/strings/strings.d.ts +25 -7
  41. package/dist/testSetup.d.ts +0 -0
  42. package/dist/{vendor-.pnpm-C7TxM7W7.cjs → vendor-.pnpm-DuJMYp1y.cjs} +88 -88
  43. package/dist/{vendor-.pnpm-CSfLHWdE.js → vendor-.pnpm-XFVTbpbG.js} +5506 -5457
  44. package/package.json +2 -2
  45. package/dist/components/taskManagement/SubtaskCreationForm.d.ts +0 -14
  46. package/dist/components/taskManagement/taskManagementTypes.d.ts +0 -33
  47. package/dist/components/taskManagement/taskManagementUtils.d.ts +0 -2
@@ -1468,11 +1468,6 @@ declare class AppLocale {
1468
1468
  failed: string;
1469
1469
  notification: string;
1470
1470
  };
1471
- create_sub_task: {
1472
- success: string;
1473
- failed: string;
1474
- notification: string;
1475
- };
1476
1471
  };
1477
1472
  currency: {
1478
1473
  currencyCode: string;
@@ -2618,6 +2613,31 @@ declare class AppLocale {
2618
2613
  allTypes: string;
2619
2614
  allCustom: string;
2620
2615
  recommendedCustom: string;
2616
+ journalEntryTable: {
2617
+ descriptionHeader: string;
2618
+ nameHeader: string;
2619
+ categoryHeader: string;
2620
+ classHeader: string;
2621
+ projectHeader: string;
2622
+ debitHeader: string;
2623
+ creditHeader: string;
2624
+ amountHeader: string;
2625
+ descriptionPlaceholder: string;
2626
+ debitPrefix: string;
2627
+ creditPrefix: string;
2628
+ emptyDash: string;
2629
+ emptyMessage: string;
2630
+ totalLabel: string;
2631
+ };
2632
+ transactionLineTable: {
2633
+ descriptionHeader: string;
2634
+ categoryHeader: string;
2635
+ classHeader: string;
2636
+ projectHeader: string;
2637
+ amountHeader: string;
2638
+ descriptionPlaceholder: string;
2639
+ emptyMessage: string;
2640
+ };
2621
2641
  };
2622
2642
  payeeDetails: {
2623
2643
  allPayees: string;
@@ -7338,8 +7358,6 @@ declare class AppLocale {
7338
7358
  visibilityPrivate: string;
7339
7359
  visibilityRequired: string;
7340
7360
  commentsSectionTitle: string;
7341
- subtasksLabel: string;
7342
- createSubtaskLabel: string;
7343
7361
  semiWeeklyDaysLabel: string;
7344
7362
  semiWeeklyDaysExactlyTwo: string;
7345
7363
  semiWeeklyDaysShort: {
@@ -1,4 +1,5 @@
1
- <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M3.25007 14L3.2464 3" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3
- <path d="M3.2464 8.50008C7.2464 5.0357 8.75362 11.9645 12.7536 8.50008V3.00008C8.75362 6.46445 7.2464 -0.464296 3.2464 3.00008" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
1
+ <svg viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M3.16016 1.43762H13.7852C14.1289 1.43762 14.1908 1.61325 13.922 1.82825L9.72203 5.18762L13.922 8.547C14.1908 8.762 14.1289 8.93762 13.7852 8.93762H3.16016" fill="currentColor"/>
3
+ <path d="M3.16016 1.43762H13.7852C14.1289 1.43762 14.1908 1.61325 13.922 1.82825L9.72203 5.18762L13.922 8.547C14.1908 8.762 14.1289 8.93762 13.7852 8.93762H3.16016" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M1.91016 0.812622V15.1876" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
4
5
  </svg>
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./SessionTimeoutPopup-CdfFoZvR.cjs"),o=require("./vendor-.pnpm-C7TxM7W7.cjs"),u=require("react"),s=require("@emotion/styled"),Xe=require("@liveblocks/react"),J=require("@zeniai/client-epic-state"),Es=require("@liveblocks/react-ui"),we=require("@emotion/react"),Lo=require("react-dom"),St=require("@liveblocks/react-ui/primitives"),xi=require("@liveblocks/react/suspense");function Ea(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:()=>e[r]})}}return n.default=e,Object.freeze(n)}const le=Ea(u),wa=({inboxNotification:e,onNotificationClick:n})=>{const r=Xe.useInboxNotificationThread(e.id),i=r.metadata.entityType.split("."),a=r.metadata.isGlobalComment&&i.length===2;return o.jsxRuntimeExports.jsx(va,{isClickable:a,isUnRead:e.readAt==null,onClick:()=>{n(r.metadata,r.id)},children:o.jsxRuntimeExports.jsx(Es.InboxNotification,{inboxNotification:e,kinds:{thread:d=>o.jsxRuntimeExports.jsx(Es.InboxNotification.Thread,{...d,showRoomName:!0})}})})},va=s.div`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./SessionTimeoutPopup-DQSLdcQs.cjs"),o=require("./vendor-.pnpm-DuJMYp1y.cjs"),u=require("react"),s=require("@emotion/styled"),Xe=require("@liveblocks/react"),J=require("@zeniai/client-epic-state"),Es=require("@liveblocks/react-ui"),we=require("@emotion/react"),Lo=require("react-dom"),St=require("@liveblocks/react-ui/primitives"),xi=require("@liveblocks/react/suspense");function Ea(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:()=>e[r]})}}return n.default=e,Object.freeze(n)}const le=Ea(u),wa=({inboxNotification:e,onNotificationClick:n})=>{const r=Xe.useInboxNotificationThread(e.id),i=r.metadata.entityType.split("."),a=r.metadata.isGlobalComment&&i.length===2;return o.jsxRuntimeExports.jsx(va,{isClickable:a,isUnRead:e.readAt==null,onClick:()=>{n(r.metadata,r.id)},children:o.jsxRuntimeExports.jsx(Es.InboxNotification,{inboxNotification:e,kinds:{thread:d=>o.jsxRuntimeExports.jsx(Es.InboxNotification.Thread,{...d,showRoomName:!0})}})})},va=s.div`
2
2
  display: flex;
3
3
  width: 100%;
4
4
  cursor: ${e=>e.isClickable?"pointer":"initial"};
@@ -1,7 +1,7 @@
1
- import { dE as o, gB as Ne, i as $t, fD as O, eb as It, bv as Qr, X as We, eg as Qd, fO as Jd, fY as Xd, al as I, fQ as U, dn as qd, h2 as ge, gP as lo, eL as lt, an as Ft, cd as Bs, v as wo, eD as ps, c8 as So, ed as us, es as ep, dQ as Jt, dN as De, fX as Fl, ez as Co, dp as Fs, c3 as Be, gJ as tp, aT as op, bd as Wt, aQ as np, e9 as Wl, g4 as rp, b1 as hs, J as ms, gf as ip, gg as sp, gh as ap, am as lp, co as cp, c1 as xt, ef as _l, cy as dp, d$ as Jr, ex as gs, gz as M, di as pp, bo as up, dv as be, e5 as hp, d8 as z, cz as Fe, gC as pt, dX as xs, br as Nr, dw as mp, e6 as ys, be as Xr, gn as Pe, bw as qr, e7 as Vl, ep as Ul, ek as Xn, fL as zt, eN as dt, dJ as gn, c5 as gp, c7 as Hl, ea as Kl, fZ as Pt, fB as qe, f6 as Mr, fx as xp, eJ as xn, eK as yn, l as fn, dU as Fo, c2 as ei, ee as fs, c6 as yp, eh as Gl, e8 as co, ec as Wo, a$ as Qt, fw as Ws, gc as fp, g2 as bp, g7 as $p, ej as Cp, eC as wp, eB as qn, dK as Sp, dL as bs, f_ as vp, ei as Yl, eo as Zl, en as Ql, ba as Jl, gv as jp, bX as _s, bY as $s, bS as kp, bW as Tp, bs as er, bb as bn, em as Cs, ap as Lp, ds as ti, fT as bt, dB as Xl, bV as zr, b$ as Pp, b9 as ws, bP as Ip, d9 as pn, e4 as Ap, e3 as Op, e0 as Dp, bQ as oi, dq as Vs, bT as ql, gV as Br, cA as ec, dZ as tc, fP as Ss, bR as Ep, aw as un, au as Zn, av as Qn, h3 as oc, aV as Rp, gR as Np, bf as Yt, ax as Lt, ew as vs, er as nc, dR as Mp, cb as rc, et as zp, dP as Bp, ay as Ut, gm as sr, bj as Fp, b_ as Ht, aI as ic, K as cn, cK as sc, cL as Fr, cJ as ac, by as Wp, ce as _p, dW as Vp, bz as Wr, bB as Xi, cO as Us, cM as Up, cN as Hp, bA as li, bx as ci, bC as Kp, dr as Hs, bU as Gp, bZ as Yp, cZ as Ks, aH as Zp, d as Qp, cC as Jp, e1 as Xp, dA as tr, gN as lc, gQ as cc, bi as Zt, Z as ni, _ as hn, gS as dc, g8 as pc, aW as qp, cf as eu, ct as uc, cs as tu, gd as ou, cj as _r, ah as hc, ci as nu, ch as ru, a_ as iu, cg as js, f$ as mc, bm as gc, fE as xc, k as yc, eH as fc, bn as su, w as bc, bq as $c, f7 as au, dI as lu, gM as cu, cq as du, g3 as pu, g0 as uu, W as hu, d5 as Gs, g6 as mu, eA as Cc, ge as Ys, cu as gu, c4 as xu, dO as yu, el as fu, eq as bu, e2 as $u, fG as Zs, ev as Cu, dC as wc, dx as wu, fK as Sc, b0 as Su, dS as vu, bc as ju, bg as ku, dy as vc, eu as Tu, c0 as Lu, ey as Pu, du as Iu, dz as jc, dM as Au, bh as Ou, dt as Du } from "./SessionTimeoutPopup-Dw3I5d4K.js";
2
- import { A as ck, a as dk, b as pk, c as uk, e as hk, f as mk, g as gk, h as xk, j as yk, m as fk, n as bk, o as $k, p as Ck, q as wk, r as Sk, s as vk, t as jk, u as kk, x as Tk, y as Lk, z as Pk, B as Ik, C as Ak, D as Ok, E as Dk, F as Ek, G as Rk, H as Nk, I as Mk, L as zk, M as Bk, N as Fk, O as Wk, P as _k, Q as Vk, R as Uk, dH as Hk, S as Kk, T as Gk, U as Yk, V as Zk, Y as Qk, $ as Jk, a0 as Xk, a1 as qk, a2 as eT, a3 as tT, a4 as oT, a5 as nT, a6 as rT, a7 as iT, a8 as sT, a9 as aT, aa as lT, ab as cT, dH as dT, ac as pT, ad as uT, ae as hT, af as mT, ag as gT, ai as xT, aj as yT, ak as fT, ao as bT, aq as $T, ar as CT, as as wT, at as ST, az as vT, aA as jT, aB as kT, aC as TT, aD as LT, aE as PT, aF as IT, aG as AT, aJ as OT, aK as DT, aL as ET, aM as RT, aN as NT, aO as MT, aP as zT, aR as BT, aU as FT, aX as WT, aY as _T, aZ as VT, b2 as UT, b3 as HT, b4 as KT, b5 as GT, b6 as YT, b7 as ZT, b8 as QT, bk as JT, bl as XT, bp as qT, bt as eL, bu as tL, bD as oL, bE as nL, bF as rL, bG as iL, bH as sL, bI as aL, bJ as lL, bK as cL, bL as dL, bM as pL, bN as uL, bO as hL, c9 as mL, ca as gL, cc as xL, ck as yL, cl as fL, cm as bL, cn as $L, cp as CL, cr as wL, cv as SL, cw as vL, cx as jL, cB as kL, cD as TL, cE as LL, cF as PL, cG as IL, cH as AL, cI as OL, cP as DL, cQ as EL, cR as RL, cS as NL, cT as ML, cU as zL, cV as BL, cW as FL, cX as WL, cY as _L, c_ as VL, aS as UL, c$ as HL, d0 as KL, d1 as GL, d2 as YL, d3 as ZL, dH as QL, d6 as JL, d4 as XL, d7 as qL, da as eP, db as tP, dc as oP, dd as nP, de as rP, df as iP, dg as sP, dh as aP, dj as lP, dk as cP, dl as dP, dm as pP, dD as uP, dF as hP, dG as mP, dT as gP, dV as xP, dY as yP, d_ as fP, eE as bP, eF as $P, eG as CP, eI as wP, eM as SP, eO as vP, eP as jP, eQ as kP, eR as TP, eS as LP, eT as PP, eU as IP, eV as AP, eW as OP, eX as DP, eY as EP, eZ as RP, e_ as NP, e$ as MP, f0 as zP, f1 as BP, f2 as FP, f3 as WP, f4 as _P, f5 as VP, f8 as UP, f9 as HP, fa as KP, fb as GP, fc as YP, fd as ZP, fe as QP, ff as JP, fg as XP, fh as qP, fi as eI, fj as tI, fk as oI, fl as nI, fm as rI, fn as iI, fo as sI, fp as aI, fq as lI, fr as cI, fs as dI, ft as pI, fu as uI, fv as hI, fy as mI, fz as gI, fA as xI, fC as yI, fF as fI, fH as bI, fI as $I, fJ as CI, fM as wI, fN as SI, fR as vI, fS as jI, fU as kI, fV as TI, fW as LI, g1 as PI, g5 as II, g9 as AI, ga as OI, gb as DI, gi as EI, gj as RI, gk as NI, gl as MI, go as zI, gp as BI, gq as FI, gr as WI, gs as _I, gt as VI, gu as UI, gw as HI, gx as KI, gy as GI, gA as YI, gD as ZI, gE as QI, gF as JI, gG as XI, gH as qI, gI as eA, gK as tA, gL as oA, gO as nA, gT as rA, gU as iA, gW as sA, gX as aA, gY as lA, gZ as cA, g_ as dA, g$ as pA, h0 as uA, h1 as hA, h4 as mA, h5 as gA } from "./SessionTimeoutPopup-Dw3I5d4K.js";
3
- import { ai as t, D as Eu, a1 as Ru, aH as Ve, q as $n, O as rt, L as Nu, s as Mu, T as zu, o as ri, f as Xt, h as ye, aD as po, i as Cn, aC as uo, Y as _o, m as ho, J as Vo, b as qt, V as Uo, ae as nt, I as kc, X as Bu, al as Mt, aa as Bo, aB as Fu, k as ks, C as Tc, n as Wu, d as _u, e as Ts, B as Ls, aq as Qs } from "./vendor-.pnpm-CSfLHWdE.js";
4
- import { aw as yA } from "./vendor-.pnpm-CSfLHWdE.js";
1
+ import { dE as o, gB as Ne, i as $t, fD as O, eb as It, bv as Qr, X as We, eg as Qd, fO as Jd, fY as Xd, al as I, fQ as U, dn as qd, h2 as ge, gP as lo, eL as lt, an as Ft, cd as Bs, v as wo, eD as ps, c8 as So, ed as us, es as ep, dQ as Jt, dN as De, fX as Fl, ez as Co, dp as Fs, c3 as Be, gJ as tp, aT as op, bd as Wt, aQ as np, e9 as Wl, g4 as rp, b1 as hs, J as ms, gf as ip, gg as sp, gh as ap, am as lp, co as cp, c1 as xt, ef as _l, cy as dp, d$ as Jr, ex as gs, gz as M, di as pp, bo as up, dv as be, e5 as hp, d8 as z, cz as Fe, gC as pt, dX as xs, br as Nr, dw as mp, e6 as ys, be as Xr, gn as Pe, bw as qr, e7 as Vl, ep as Ul, ek as Xn, fL as zt, eN as dt, dJ as gn, c5 as gp, c7 as Hl, ea as Kl, fZ as Pt, fB as qe, f6 as Mr, fx as xp, eJ as xn, eK as yn, l as fn, dU as Fo, c2 as ei, ee as fs, c6 as yp, eh as Gl, e8 as co, ec as Wo, a$ as Qt, fw as Ws, gc as fp, g2 as bp, g7 as $p, ej as Cp, eC as wp, eB as qn, dK as Sp, dL as bs, f_ as vp, ei as Yl, eo as Zl, en as Ql, ba as Jl, gv as jp, bX as _s, bY as $s, bS as kp, bW as Tp, bs as er, bb as bn, em as Cs, ap as Lp, ds as ti, fT as bt, dB as Xl, bV as zr, b$ as Pp, b9 as ws, bP as Ip, d9 as pn, e4 as Ap, e3 as Op, e0 as Dp, bQ as oi, dq as Vs, bT as ql, gV as Br, cA as ec, dZ as tc, fP as Ss, bR as Ep, aw as un, au as Zn, av as Qn, h3 as oc, aV as Rp, gR as Np, bf as Yt, ax as Lt, ew as vs, er as nc, dR as Mp, cb as rc, et as zp, dP as Bp, ay as Ut, gm as sr, bj as Fp, b_ as Ht, aI as ic, K as cn, cK as sc, cL as Fr, cJ as ac, by as Wp, ce as _p, dW as Vp, bz as Wr, bB as Xi, cO as Us, cM as Up, cN as Hp, bA as li, bx as ci, bC as Kp, dr as Hs, bU as Gp, bZ as Yp, cZ as Ks, aH as Zp, d as Qp, cC as Jp, e1 as Xp, dA as tr, gN as lc, gQ as cc, bi as Zt, Z as ni, _ as hn, gS as dc, g8 as pc, aW as qp, cf as eu, ct as uc, cs as tu, gd as ou, cj as _r, ah as hc, ci as nu, ch as ru, a_ as iu, cg as js, f$ as mc, bm as gc, fE as xc, k as yc, eH as fc, bn as su, w as bc, bq as $c, f7 as au, dI as lu, gM as cu, cq as du, g3 as pu, g0 as uu, W as hu, d5 as Gs, g6 as mu, eA as Cc, ge as Ys, cu as gu, c4 as xu, dO as yu, el as fu, eq as bu, e2 as $u, fG as Zs, ev as Cu, dC as wc, dx as wu, fK as Sc, b0 as Su, dS as vu, bc as ju, bg as ku, dy as vc, eu as Tu, c0 as Lu, ey as Pu, du as Iu, dz as jc, dM as Au, bh as Ou, dt as Du } from "./SessionTimeoutPopup-DXP_m1FM.js";
2
+ import { A as ck, a as dk, b as pk, c as uk, e as hk, f as mk, g as gk, h as xk, j as yk, m as fk, n as bk, o as $k, p as Ck, q as wk, r as Sk, s as vk, t as jk, u as kk, x as Tk, y as Lk, z as Pk, B as Ik, C as Ak, D as Ok, E as Dk, F as Ek, G as Rk, H as Nk, I as Mk, L as zk, M as Bk, N as Fk, O as Wk, P as _k, Q as Vk, R as Uk, dH as Hk, S as Kk, T as Gk, U as Yk, V as Zk, Y as Qk, $ as Jk, a0 as Xk, a1 as qk, a2 as eT, a3 as tT, a4 as oT, a5 as nT, a6 as rT, a7 as iT, a8 as sT, a9 as aT, aa as lT, ab as cT, dH as dT, ac as pT, ad as uT, ae as hT, af as mT, ag as gT, ai as xT, aj as yT, ak as fT, ao as bT, aq as $T, ar as CT, as as wT, at as ST, az as vT, aA as jT, aB as kT, aC as TT, aD as LT, aE as PT, aF as IT, aG as AT, aJ as OT, aK as DT, aL as ET, aM as RT, aN as NT, aO as MT, aP as zT, aR as BT, aU as FT, aX as WT, aY as _T, aZ as VT, b2 as UT, b3 as HT, b4 as KT, b5 as GT, b6 as YT, b7 as ZT, b8 as QT, bk as JT, bl as XT, bp as qT, bt as eL, bu as tL, bD as oL, bE as nL, bF as rL, bG as iL, bH as sL, bI as aL, bJ as lL, bK as cL, bL as dL, bM as pL, bN as uL, bO as hL, c9 as mL, ca as gL, cc as xL, ck as yL, cl as fL, cm as bL, cn as $L, cp as CL, cr as wL, cv as SL, cw as vL, cx as jL, cB as kL, cD as TL, cE as LL, cF as PL, cG as IL, cH as AL, cI as OL, cP as DL, cQ as EL, cR as RL, cS as NL, cT as ML, cU as zL, cV as BL, cW as FL, cX as WL, cY as _L, c_ as VL, aS as UL, c$ as HL, d0 as KL, d1 as GL, d2 as YL, d3 as ZL, dH as QL, d6 as JL, d4 as XL, d7 as qL, da as eP, db as tP, dc as oP, dd as nP, de as rP, df as iP, dg as sP, dh as aP, dj as lP, dk as cP, dl as dP, dm as pP, dD as uP, dF as hP, dG as mP, dT as gP, dV as xP, dY as yP, d_ as fP, eE as bP, eF as $P, eG as CP, eI as wP, eM as SP, eO as vP, eP as jP, eQ as kP, eR as TP, eS as LP, eT as PP, eU as IP, eV as AP, eW as OP, eX as DP, eY as EP, eZ as RP, e_ as NP, e$ as MP, f0 as zP, f1 as BP, f2 as FP, f3 as WP, f4 as _P, f5 as VP, f8 as UP, f9 as HP, fa as KP, fb as GP, fc as YP, fd as ZP, fe as QP, ff as JP, fg as XP, fh as qP, fi as eI, fj as tI, fk as oI, fl as nI, fm as rI, fn as iI, fo as sI, fp as aI, fq as lI, fr as cI, fs as dI, ft as pI, fu as uI, fv as hI, fy as mI, fz as gI, fA as xI, fC as yI, fF as fI, fH as bI, fI as $I, fJ as CI, fM as wI, fN as SI, fR as vI, fS as jI, fU as kI, fV as TI, fW as LI, g1 as PI, g5 as II, g9 as AI, ga as OI, gb as DI, gi as EI, gj as RI, gk as NI, gl as MI, go as zI, gp as BI, gq as FI, gr as WI, gs as _I, gt as VI, gu as UI, gw as HI, gx as KI, gy as GI, gA as YI, gD as ZI, gE as QI, gF as JI, gG as XI, gH as qI, gI as eA, gK as tA, gL as oA, gO as nA, gT as rA, gU as iA, gW as sA, gX as aA, gY as lA, gZ as cA, g_ as dA, g$ as pA, h0 as uA, h1 as hA, h4 as mA, h5 as gA } from "./SessionTimeoutPopup-DXP_m1FM.js";
3
+ import { ak as t, D as Eu, a1 as Ru, aK as Ve, q as $n, O as rt, L as Nu, s as Mu, T as zu, o as ri, f as Xt, h as ye, aG as po, i as Cn, aF as uo, Y as _o, m as ho, J as Vo, b as qt, V as Uo, ae as nt, I as kc, X as Bu, an as Mt, aa as Bo, aE as Fu, k as ks, C as Tc, n as Wu, d as _u, e as Ts, B as Ls, as as Qs } from "./vendor-.pnpm-XFVTbpbG.js";
4
+ import { az as yA } from "./vendor-.pnpm-XFVTbpbG.js";
5
5
  import * as me from "react";
6
6
  import or, { useEffect as te, useState as Y, useMemo as Ze, useCallback as oe, useContext as Qe, useRef as $e, forwardRef as kt, Fragment as Lc, memo as nr, createContext as Ho, Suspense as Vu, createElement as Pc } from "react";
7
7
  import r from "@emotion/styled";
@@ -5,3 +5,4 @@ export type LabelProps = {
5
5
  style?: React.CSSProperties;
6
6
  width?: number;
7
7
  };
8
+ export declare function validateControlWidth(value: number | string | undefined, componentName: string): void;
@@ -13,8 +13,13 @@ export interface Props {
13
13
  };
14
14
  additionalInfoLabel?: string;
15
15
  additionalLabelTooltip?: string;
16
- /** When set, overrides the default responsive width of the row. */
17
- controlWidth?: number;
16
+ /**
17
+ * When set, overrides the default responsive width of the row.
18
+ * Accepts a pixel number (e.g. `120`) or any valid CSS width string
19
+ * (e.g. `"100%"`, `"12rem"`) so the field can be embedded inside a
20
+ * fluid layout like a data-grid cell.
21
+ */
22
+ controlWidth?: number | string;
18
23
  disableCopyPaste?: boolean;
19
24
  isAdditionalInfoLabelLoading?: boolean;
20
25
  isDisabled?: DisableMode;
@@ -24,7 +24,13 @@ export interface Props {
24
24
  style?: React.CSSProperties;
25
25
  };
26
26
  additionalInfoLabel?: string;
27
- controlWidth?: number;
27
+ /**
28
+ * Overrides the default responsive width of the row. Accepts a pixel
29
+ * number (e.g. `120`) or any valid CSS width string (e.g. `"100%"`)
30
+ * so the field can be embedded inside a fluid layout like a data-grid
31
+ * cell.
32
+ */
33
+ controlWidth?: number | string;
28
34
  disableCopyPaste?: boolean;
29
35
  errorInfoLabel?: string;
30
36
  fullWidthSelect?: boolean;
@@ -1,6 +1,6 @@
1
1
  import { Theme } from '@mui/material/styles';
2
2
  import { ClientAnalytics } from '@zeniai/client-analytics';
3
- import { AuthParams, CannedResponse, EditTaskLocalData, FetchState, FilePayload, ID, LoggedInUser, PriorityCodeType, Tag, TagViewSelectorView, Task, TaskDetailSelectorView, TaskStatusCodeType, UserGroup } from '@zeniai/client-epic-state';
3
+ import { AuthParams, CannedResponse, EditTaskLocalData, FetchState, FilePayload, ID, LoggedInUser, PriorityCodeType, Tag, TagViewSelectorView, TaskDetailSelectorView, TaskStatusCodeType, UserGroup } from '@zeniai/client-epic-state';
4
4
  import { UserMultiSelectFieldValue } from '../cockpit/common/userMultiSelect/UserMultiSelectField';
5
5
  import { RequestToOpenThreadType } from '../commentsAndNotes/utils/ThreadsProvider';
6
6
  import { MultiSelectFieldValue } from '../formElements/creatableMultiSelectField/CreatableMultiSelectField';
@@ -8,7 +8,6 @@ import { RecurringViewType } from '../formElements/recurringView/RecurringView';
8
8
  import { SingleSelectPickerFieldValue } from '../formElements/singleSelectPickerField/SingleSelectPickerField';
9
9
  import { SingleSelectFieldValue } from '../singleSelect/SingleSelectField';
10
10
  import { AttachmentFormData } from './AllTaskAttachments';
11
- import { SubtaskCreationFormProps } from './SubtaskCreationForm';
12
11
  import { timeSpentKey } from './taskManagementFormConstants';
13
12
  type TaskAttributeCodeType = TaskStatusCodeType | PriorityCodeType | ID;
14
13
  declare const name = "name";
@@ -41,7 +40,7 @@ type FormDataKeys = keyof TaskDetailFormData;
41
40
  export interface FormData {
42
41
  [taskSectionId]: TaskDetailFormData;
43
42
  }
44
- declare const uniqueName: (sectionId: string, key: FormDataKeys) => `${string}.fileIds` | `${string}.name` | `${string}.status` | `${string}.dueDate` | `${string}.priority` | `${string}.timeSpent` | `${string}.description` | `${string}.assignee` | `${string}.tag` | `${string}.taskType` | `${string}.recurringView` | `${string}.visibility`;
43
+ declare const uniqueName: (sectionId: string, key: FormDataKeys) => `${string}.fileIds` | `${string}.name` | `${string}.status` | `${string}.description` | `${string}.dueDate` | `${string}.priority` | `${string}.assignee` | `${string}.timeSpent` | `${string}.tag` | `${string}.taskType` | `${string}.recurringView` | `${string}.visibility`;
45
44
  export type FormDataKeyUniqueNames = ReturnType<typeof uniqueName>;
46
45
  export declare const uniqueFormName: (sectionId: ID) => `${string}_form`;
47
46
  export interface TaskDetailPageProps {
@@ -66,8 +65,6 @@ export interface TaskDetailPageProps {
66
65
  isTaskVisibilityEnabled?: boolean;
67
66
  isZeniUser?: boolean;
68
67
  recurringSourceTaskUrl?: string;
69
- subTaskCreateStatus?: FetchState;
70
- subtasks?: Task[];
71
68
  taskDetailFetchState?: FetchState;
72
69
  taskGroupList?: Array<{
73
70
  id: ID;
@@ -90,10 +87,8 @@ export interface TaskDetailPageProps {
90
87
  onSnoozeTask: (taskId: ID, snoozedUntil: string) => void;
91
88
  onUnsnoozeTask: (taskId: ID) => void;
92
89
  updateFilesEntity: (files: FilePayload[]) => void;
93
- onCreateSubtask?: (parentTaskId: ID, data: Parameters<SubtaskCreationFormProps["onSubmit"]>[0]) => void;
94
90
  onFetchCannedResponses?: () => void;
95
91
  onManageTemplatesClick?: () => void;
96
- onSubtaskClick?: (subtaskId: ID) => void;
97
92
  }
98
93
  export declare const getLabelColor: (value: TaskAttributeCodeType, theme?: Theme) => string;
99
94
  export declare const getRichLabel: (value: TaskAttributeCodeType, theme: Theme) => import("react/jsx-runtime").JSX.Element;
@@ -102,5 +97,5 @@ export declare const getTagList: (tagList: Tag[]) => {
102
97
  value: string;
103
98
  isDeleted: boolean | undefined;
104
99
  }[];
105
- declare const TaskDetailPage: ({ taskDetailSelectorView, companyName, companyId, loggedInUser, analytics, isNewClicked, filesEndPoint, authParams, currentUrl, taskId, taskGroupList, taskGroupName, taskDetailFetchState, onSaveChangesToLocalStore, onSaveDetailClick, onArchiveTaskClick, onSnoozeTask, onUnsnoozeTask, onDismissClick, handleZeniLogoClick: _handleZeniLogoClick, updateFilesEntity, onDeleteFile, onEditFileName, onDeleteTaskClick, onReloadTaskDetailPage, tagListView, userGroupList, onCreateTagClick, onDeleteTagClick, cannedResponses, initialOpenThreadRequest, isCannedResponsesLoading, isTaskCannedResponsesEnabled, isTaskGroupAssigneesEnabled, isTaskRecurringParentEnabled, isTaskSnoozeEnabled, isTaskVisibilityEnabled, isZeniUser, onCreateSubtask, onFetchCannedResponses, onManageTemplatesClick, onSubtaskClick, recurringSourceTaskUrl, subTaskCreateStatus, subtasks, }: TaskDetailPageProps) => import("react/jsx-runtime").JSX.Element;
100
+ declare const TaskDetailPage: ({ taskDetailSelectorView, companyName, companyId, loggedInUser, analytics, isNewClicked, filesEndPoint, authParams, currentUrl, taskId, taskGroupList, taskGroupName, taskDetailFetchState, onSaveChangesToLocalStore, onSaveDetailClick, onArchiveTaskClick, onSnoozeTask, onUnsnoozeTask, onDismissClick, handleZeniLogoClick: _handleZeniLogoClick, updateFilesEntity, onDeleteFile, onEditFileName, onDeleteTaskClick, onReloadTaskDetailPage, tagListView, userGroupList, onCreateTagClick, onDeleteTagClick, cannedResponses, initialOpenThreadRequest, isCannedResponsesLoading, isTaskCannedResponsesEnabled, isTaskGroupAssigneesEnabled, isTaskRecurringParentEnabled, isTaskSnoozeEnabled, isTaskVisibilityEnabled, isZeniUser, onFetchCannedResponses, onManageTemplatesClick, recurringSourceTaskUrl, }: TaskDetailPageProps) => import("react/jsx-runtime").JSX.Element;
106
101
  export default TaskDetailPage;
@@ -1,4 +1,4 @@
1
- import { CreateSubTaskPayload, FetchState, ID, SnackbarMessageConfig, SortOrder, Tag, Task, TaskGroupWithTasksList, TaskListUIState, TaskListViewSortKey, TaskWithUserDetails, UserGroup, UserListSelectorView } from '@zeniai/client-epic-state';
1
+ import { ID, SnackbarMessageConfig, SortOrder, Tag, Task, TaskGroupWithTasksList, TaskListUIState, TaskListViewSortKey, UserGroup, UserListSelectorView } from '@zeniai/client-epic-state';
2
2
  import { FormSectionProps } from '../formElements/common/formSection';
3
3
  export declare const getTaskFieldName: (sectionId: string, taskId: string, fieldKey: string) => string;
4
4
  export declare const isDuplicateGroupName: (newName: string, groupId: ID, existingTaskGroupNamesByGroupId: Record<ID, string>) => boolean;
@@ -10,7 +10,6 @@ export interface TaskListRowProps extends FormSectionProps {
10
10
  selectedRowIds: ID[];
11
11
  showGroupName: boolean;
12
12
  showRenameTextField: boolean;
13
- subtasksByParentId: Map<ID, TaskWithUserDetails[]>;
14
13
  tagList: Tag[];
15
14
  taskGroup: TaskGroupWithTasksList;
16
15
  uiState: TaskListUIState;
@@ -18,7 +17,6 @@ export interface TaskListRowProps extends FormSectionProps {
18
17
  userList: UserListSelectorView;
19
18
  isTaskRecurringParentEnabled?: boolean;
20
19
  isZeniUser?: boolean;
21
- subTaskCreateStatus?: FetchState;
22
20
  onAddNewTaskToTaskGroup: (taskGroupId: ID) => void;
23
21
  onCollapseAll: () => void;
24
22
  onCollapseToggle: (taskGroupId: ID) => void;
@@ -29,14 +27,11 @@ export interface TaskListRowProps extends FormSectionProps {
29
27
  onExpandAll: () => void;
30
28
  onParentTaskClick: (id: ID) => void;
31
29
  onRenameClick: () => void;
32
- onRowHeightChange: () => void;
33
30
  onShowToast: (messageInfo: SnackbarMessageConfig) => void;
34
31
  onTaskGroupNameClick: (id: ID) => void;
35
32
  onTaskManagementRowClick: (id: ID) => void;
36
33
  onTimeSpentUpdate: (task: Task, updates: Partial<Task>) => void;
37
- onCreateSubtask?: (parentTaskId: ID, data: CreateSubTaskPayload) => void;
38
- onSubtaskFormToggle?: () => void;
39
34
  }
40
35
  export declare const getTagLabel: (tagIds: ID[], tagList: Tag[]) => JSX.Element;
41
- declare const TaskListRow: ({ taskGroup, userGroupList, tagList, sectionId, uiState, userList, showGroupName, showRenameTextField, isCollapsed, isSelectionAllowed, selectedRowIds, existingTaskGroupNamesByGroupId, subtasksByParentId, onRenameClick, onDeleteTaskGroup, onExpandAll, onCollapseAll, onAddNewTaskToTaskGroup, onCollapseToggle, onTaskManagementRowClick, onColumnSortConfigChanged, onDragStart, onTimeSpentUpdate, onShowToast, onCreateTagClick, onTaskGroupNameClick, onParentTaskClick, onCreateSubtask, onSubtaskFormToggle, onRowHeightChange, isTaskRecurringParentEnabled, subTaskCreateStatus, }: TaskListRowProps) => import("react/jsx-runtime").JSX.Element;
36
+ declare const TaskListRow: ({ taskGroup, userGroupList, tagList, sectionId, uiState, userList, showGroupName, showRenameTextField, isCollapsed, isSelectionAllowed, selectedRowIds, existingTaskGroupNamesByGroupId, onRenameClick, onDeleteTaskGroup, onExpandAll, onCollapseAll, onAddNewTaskToTaskGroup, onCollapseToggle, onTaskManagementRowClick, onColumnSortConfigChanged, onDragStart, onTimeSpentUpdate, onShowToast, onCreateTagClick, onTaskGroupNameClick, onParentTaskClick, isTaskRecurringParentEnabled, }: TaskListRowProps) => import("react/jsx-runtime").JSX.Element;
42
37
  export default TaskListRow;
@@ -1,4 +1,4 @@
1
- import { ID, SnackbarMessageConfig, Tag, Task, TaskGroupWithTasksList, TaskWithUserDetails } from '@zeniai/client-epic-state';
1
+ import { ID, SnackbarMessageConfig, Tag, Task, TaskGroupWithTasksList } from '@zeniai/client-epic-state';
2
2
  import { FormSectionProps } from '../formElements/common/formSection';
3
3
  export interface TaskListRowSmallProps extends FormSectionProps {
4
4
  existingTaskGroupNamesByGroupId: Record<ID, string>;
@@ -9,7 +9,6 @@ export interface TaskListRowSmallProps extends FormSectionProps {
9
9
  showRenameTextField: boolean;
10
10
  tagList: Tag[];
11
11
  taskGroup: TaskGroupWithTasksList;
12
- subtasksByParentId?: Map<ID, TaskWithUserDetails[]>;
13
12
  onAddNewTaskToTaskGroup: (taskGroupId: ID) => void;
14
13
  onCollapseAll: () => void;
15
14
  onCollapseToggle: (taskGroupId: ID) => void;
@@ -19,6 +18,5 @@ export interface TaskListRowSmallProps extends FormSectionProps {
19
18
  onShowToast: (messageInfo: SnackbarMessageConfig) => void;
20
19
  onTaskManagementRowClick: (id: ID) => void;
21
20
  onTimeSpentUpdate: (task: Task, updates: Partial<Task>) => void;
22
- onRowHeightChange?: () => void;
23
21
  }
24
22
  export declare const TaskListRowSmall: ({ taskGroup, tagList, sectionId, showGroupName, showRenameTextField, isSelectionAllowed, isCollapsed, existingTaskGroupNamesByGroupId, onDeleteTaskGroup, onExpandAll, onCollapseAll, onAddNewTaskToTaskGroup, onCollapseToggle, onTaskManagementRowClick, onDragStart, onTimeSpentUpdate, onShowToast, }: TaskListRowSmallProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,31 @@
1
1
  import { ClientAnalytics } from '@zeniai/client-analytics';
2
- import { CreateSubTaskPayload, FetchState, ID, SnackbarMessageConfig, SortOrder, SpendManagementFiltersType, TagViewSelectorView, Task, TaskGroupKey, TaskListLocalData, TaskListSelectorView, TaskListTab, TaskListViewSortKey } from '@zeniai/client-epic-state';
2
+ import { FetchState, ID, SnackbarMessageConfig, SortOrder, SpendManagementFiltersType, TagViewSelectorView, Task, TaskGroupKey, TaskListLocalData, TaskListSelectorView, TaskListTab, TaskListViewSortKey } from '@zeniai/client-epic-state';
3
+ import { UserMultiSelectFieldValue } from '../cockpit/common/userMultiSelect/UserMultiSelectField';
4
+ import { ZeniDatePickerValue } from '../common/zeniDatePicker/ZeniDatePickerField';
5
+ import { MultiSelectFieldValue } from '../formElements/creatableMultiSelectField/CreatableMultiSelectField';
6
+ import { SingleSelectPickerFieldValue } from '../formElements/singleSelectPickerField/SingleSelectPickerField';
7
+ import { assigneeKey, dueDateKey, groupDataKey, groupNameKey, priorityKey, selectedIdsKey, statusKey, tagKey, taskDataKey, taskManagementTableSectionId, timeSpentKey } from './taskManagementFormConstants';
8
+ interface GroupData {
9
+ [groupNameKey]: string;
10
+ [selectedIdsKey]: ID[];
11
+ }
12
+ interface TaskData {
13
+ [assigneeKey]: UserMultiSelectFieldValue;
14
+ [dueDateKey]: ZeniDatePickerValue;
15
+ [priorityKey]: SingleSelectPickerFieldValue;
16
+ [statusKey]: SingleSelectPickerFieldValue;
17
+ [tagKey]: MultiSelectFieldValue;
18
+ [timeSpentKey]: string;
19
+ }
20
+ type TasksFormData = Record<ID, TaskData>;
21
+ type GroupFormData = Record<ID, GroupData>;
22
+ interface TaskManagementTableSectionFormData {
23
+ [groupDataKey]: GroupFormData;
24
+ [taskDataKey]: TasksFormData;
25
+ }
26
+ export interface FormData {
27
+ [taskManagementTableSectionId]: TaskManagementTableSectionFormData;
28
+ }
3
29
  export declare const uniqueFormName: (sectionId: ID) => `${string}_form`;
4
30
  export interface TaskManagementPageProps {
5
31
  isTaskTemplatesEnabled: boolean;
@@ -13,7 +39,6 @@ export interface TaskManagementPageProps {
13
39
  isTaskGroupAssigneesEnabled?: boolean;
14
40
  isTaskRecurringParentEnabled?: boolean;
15
41
  isZeniUser?: boolean;
16
- subTaskCreateStatus?: FetchState;
17
42
  taskListFetchState?: FetchState;
18
43
  assignGroupToTasks: (taskGroupId: ID) => void;
19
44
  bulkUpdateTasks: (taskIds: ID[], updates: Partial<Task>) => void;
@@ -44,7 +69,6 @@ export interface TaskManagementPageProps {
44
69
  updateTask: (task: Task, updates: Partial<Task>) => void;
45
70
  onAskAiCfoClick?: () => void;
46
71
  onQuickResponsesClick?: () => void;
47
- onSubtaskCreation?: (parentTaskId: ID, data: CreateSubTaskPayload) => void;
48
72
  }
49
- declare const TaskManagementPage: ({ taskListView, tagListView, isTaskTemplatesEnabled, taskListFetchState, onCreateTagClick, updateTask, onDragNDrop, onDeleteTaskGroup, updateLocalData, onTaskManagementRowClick, onParentTaskClick, onReloadTasks, onColumnSortConfigChanged, onSearchTextChanged, onTabChange, onBackClick, bulkUpdateTasks, onNewTaskClick, onFiltersChange, resetLocalData, handleCreateGroup, assignGroupToTasks, onAddNewTaskToTaskGroup, onGroupByFilterChange, onTaskGroupRename, analytics, onTimeSpentUpdate, onShowToast, handleGroupTemplateClick, handleGroupTemplateTaskClick, handleNewTaskInitialization, onTaskGroupNameClick, isAiCfoAccessEnabled, isZeniUser, isTaskBulkResolutionEnabled, isTaskCannedResponsesEnabled, isTaskCategorizationEnabled, isTaskGroupAssigneesEnabled, isTaskRecurringParentEnabled, onAskAiCfoClick, onQuickResponsesClick, onSubtaskCreation, subTaskCreateStatus, }: TaskManagementPageProps) => import("react/jsx-runtime").JSX.Element;
73
+ declare const TaskManagementPage: ({ taskListView, tagListView, isTaskTemplatesEnabled, taskListFetchState, onCreateTagClick, updateTask, onDragNDrop, onDeleteTaskGroup, updateLocalData, onTaskManagementRowClick, onParentTaskClick, onReloadTasks, onColumnSortConfigChanged, onSearchTextChanged, onTabChange, onBackClick, bulkUpdateTasks, onNewTaskClick, onFiltersChange, resetLocalData, handleCreateGroup, assignGroupToTasks, onAddNewTaskToTaskGroup, onGroupByFilterChange, onTaskGroupRename, analytics, onTimeSpentUpdate, onShowToast, handleGroupTemplateClick, handleGroupTemplateTaskClick, handleNewTaskInitialization, onTaskGroupNameClick, isAiCfoAccessEnabled, isZeniUser, isTaskBulkResolutionEnabled, isTaskCannedResponsesEnabled, isTaskCategorizationEnabled, isTaskGroupAssigneesEnabled, isTaskRecurringParentEnabled, onAskAiCfoClick, onQuickResponsesClick, }: TaskManagementPageProps) => import("react/jsx-runtime").JSX.Element;
50
74
  export default TaskManagementPage;
@@ -1,6 +1,5 @@
1
1
  export declare const taskManagementPage = "taskManagementPage";
2
2
  export declare const taskManagementTableSectionId = "taskManagementTable";
3
- export declare const newSubtaskSectionId = "newSubtaskSection";
4
3
  export declare const newGroupField = "newGroup";
5
4
  export declare const groupDataKey = "groupData";
6
5
  export declare const taskDataKey = "taskData";
@@ -2,7 +2,6 @@ import { SortOrder, TaskListViewSortKey } from '@zeniai/client-epic-state';
2
2
  import { ResponsiveSized } from '../../context/windowSizeProvider';
3
3
  export interface TaskListHeaderItemData {
4
4
  key: TaskListViewSortKey;
5
- minWidth: string;
6
5
  sortOrder: SortOrder;
7
6
  value: string;
8
7
  width: ResponsiveSized;
@@ -0,0 +1,2 @@
1
+ export declare const FlexibleWidthProvider: import('react').Provider<boolean>;
2
+ export declare const useFlexibleWidth: () => boolean;
@@ -0,0 +1,17 @@
1
+ import { TransactionLinesJournalEntryEmptyTableProps } from './journalEntryTableTypes';
2
+ /**
3
+ * Skeleton/loading table mirroring
4
+ * `TransactionCategorizationListEmptyTable`. Mounts the real sticky
5
+ * header, N skeleton rows (via `JournalEntryTableListEmptyRow`), and a
6
+ * skeleton totals row inside a `FlexibleWidthProvider` so column
7
+ * widths match the live table.
8
+ *
9
+ * Consumed by:
10
+ * - `TransactionLinesJournalEntryTable` when `lines.length === 0`
11
+ * - Storybook stories for visual coverage of the loading state
12
+ */
13
+ export declare const TransactionLinesJournalEntryEmptyTable: ({ isAccountingClassesEnabled, showProjectField, isCompressed, isQuickViewMode, sectionId, skeletonRowCount, }: TransactionLinesJournalEntryEmptyTableProps) => import("react/jsx-runtime").JSX.Element;
14
+ /** Re-export the header height as a convenience for callers that want to size the
15
+ * skeleton table viewport (legacy parity with the categorization sibling).
16
+ */
17
+ export declare const JOURNAL_ENTRY_EMPTY_TABLE_HEADER_HEIGHT_PX = 32;
@@ -0,0 +1,2 @@
1
+ import { TransactionLinesJournalEntryTableProps } from './journalEntryTableTypes';
2
+ export default function TransactionLinesJournalEntryTable({ accountList, accountsHierarchyList, classHierarchyList, classList, isAccountingClassesEnabled, isCOTEnabled, lines, projects, searchAutoComplete, sectionId, transaction, cotTracking, isDisabled, isQuickViewMode, isUncategorizedExpenseCategoryEnabled, openTooltipId, setOpenTooltipId, uncategorizedAccounts, }: Readonly<TransactionLinesJournalEntryTableProps>): JSX.Element;
@@ -0,0 +1,23 @@
1
+ import { LineInfo } from '../../common';
2
+ /** Section id used by the new JE table form fields (matches legacy sectionId pattern). */
3
+ export declare const journalEntryTableSectionId = "journalEntryTableSection";
4
+ /** Header row height from Figma frame (px). */
5
+ export declare const JOURNAL_ENTRY_TABLE_HEADER_HEIGHT = 32;
6
+ /** Standard data-row height from Figma frame (px). */
7
+ export declare const JOURNAL_ENTRY_TABLE_ROW_HEIGHT = 48;
8
+ /** Sticky totals-row height from Figma frame (px). */
9
+ export declare const JOURNAL_ENTRY_TABLE_TOTALS_HEIGHT = 32;
10
+ /** Compressed (quick-view / small window) row height. */
11
+ export declare const JOURNAL_ENTRY_TABLE_ROW_HEIGHT_COMPACT = 48;
12
+ /**
13
+ * Row height resolver. Today every row is the same height; isolating
14
+ * this here so a future Update-all expansion can return a larger height
15
+ * for the affected row without touching `react-window` wiring.
16
+ */
17
+ export declare const getJournalEntryTableRowHeight: (_line: LineInfo) => number;
18
+ /** Column keys used to address cells, sort, and width lookups. */
19
+ export declare const JOURNAL_ENTRY_COLUMN_KEYS: readonly ["description", "name", "category", "class", "project", "debit", "credit"];
20
+ export type JournalEntryColumnKey = (typeof JOURNAL_ENTRY_COLUMN_KEYS)[number];
21
+ /** Compressed (quick-view / mobile) columns. */
22
+ export declare const JOURNAL_ENTRY_COMPRESSED_COLUMN_KEYS: readonly ["description", "amount"];
23
+ export type JournalEntryCompressedColumnKey = (typeof JOURNAL_ENTRY_COMPRESSED_COLUMN_KEYS)[number];
@@ -0,0 +1,11 @@
1
+ import { JournalEntryRowSortConfig, JournalEntrySortKey, SortOrder } from '@zeniai/client-epic-state';
2
+ import { DisableMode } from '../../../../formElements/common/common';
3
+ export interface JournalEntryTableHeaderProps {
4
+ isAccountingClassesEnabled: boolean;
5
+ showProjectField: boolean;
6
+ sortConfig: JournalEntryRowSortConfig;
7
+ isCompressed?: boolean;
8
+ isDisabled?: DisableMode;
9
+ onColumnSortConfigChanged?: (sortKey: JournalEntrySortKey, sortOrder: SortOrder) => void;
10
+ }
11
+ export declare const JournalEntryTableHeader: ({ sortConfig, isAccountingClassesEnabled, showProjectField, isCompressed, isDisabled, onColumnSortConfigChanged, }: JournalEntryTableHeaderProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,28 @@
1
+ import { JournalEntryRowSortConfig, JournalEntrySortKey, SortOrder } from '@zeniai/client-epic-state';
2
+ import { ResponsiveSized } from '../../../../../context/windowSizeProvider';
3
+ import { JournalEntryColumnKey, JournalEntryCompressedColumnKey } from '../common';
4
+ /** Header row height (Figma frame). */
5
+ export declare const DEFAULT_LIST_HEADER_HEIGHT_REGULAR = 32;
6
+ /** Default sort the table opens with. Re-exposed here for header convenience. */
7
+ export declare const journalEntryDefaultSortConfig: JournalEntryRowSortConfig;
8
+ /**
9
+ * Header item shape (mirrors `transactionCategorizationHeaderItemsData.ts`
10
+ * but typed for the JE column key union).
11
+ */
12
+ export interface JournalEntryRowHeaderItemData {
13
+ customStyle: {
14
+ cellStyle?: React.CSSProperties;
15
+ common?: React.CSSProperties;
16
+ quickView?: React.CSSProperties;
17
+ };
18
+ key: JournalEntryColumnKey | JournalEntryCompressedColumnKey;
19
+ /** Default direction applied when the column is freshly clicked. */
20
+ sortOrder: SortOrder;
21
+ value: string;
22
+ /** Fixed-pixel widths per breakpoint. */
23
+ width: ResponsiveSized;
24
+ /** Percentage of the content area (0–100) used when the table fits the viewport. */
25
+ widthPercentage: number;
26
+ }
27
+ export type JournalEntryRowSortConfigType = JournalEntryRowSortConfig;
28
+ export type JournalEntryRowSortKey = JournalEntrySortKey;
@@ -0,0 +1,16 @@
1
+ import { ResponsiveSized } from '../../../../../context/windowSizeProvider';
2
+ import { JournalEntryRowHeaderItemData } from './journalEntryHeaderConfig';
3
+ /**
4
+ * Column order matches the Figma frame "JE hover" (5177:12455):
5
+ * Name | Category | Class | Description | Debit | Credit.
6
+ *
7
+ * Project is appended after Class only when `showProjectField` is true;
8
+ * the base Figma frame does not include it.
9
+ */
10
+ export declare const getJournalEntryTableHeaderItemsData: (isAccountingClassesEnabled?: boolean, showProjectField?: boolean) => JournalEntryRowHeaderItemData[];
11
+ /**
12
+ * Compressed (quick-view / small window) header list — single Description
13
+ * column with a merged Amount column whose value prefixes Dr / Cr.
14
+ */
15
+ export declare const compressedJournalEntryHeaderItemsData: JournalEntryRowHeaderItemData[];
16
+ export declare const getJournalEntryTableMaxWidth: (isAccountingClassesEnabled?: boolean, showProjectField?: boolean) => ResponsiveSized;
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Outer wrapper that sits between the surrounding page and the table card,
3
+ * providing the breathing room called out in the Figma frame (node
4
+ * 5177:12455). Padding (`sp3 sp5` = 16px / 32px) and the `grey4`
5
+ * page-tinted background are applied in both full view AND quick view so
6
+ * the table card has the same surrounding chrome in the side panel as
7
+ * on the full detail page. Quick view additionally fills the panel's
8
+ * vertical space (`height: 100%`) so the inner scroll container can
9
+ * scroll.
10
+ */
11
+ export declare const TableWrapperContainer: import('@emotion/styled').StyledComponent<{
12
+ theme?: import('@emotion/react').Theme;
13
+ as?: React.ElementType;
14
+ } & {
15
+ $isQuickViewMode?: boolean;
16
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
17
+ /**
18
+ * Bordered, rounded "card" that frames the JE table. In quick view (side
19
+ * panel) it stretches to the parent drawer's height so the inner scroll
20
+ * container can scroll. In full view (transaction detail page) it sizes to
21
+ * content so the page itself owns the vertical scroll. The card chrome
22
+ * (border + radius + grey5 background) is always-on to match the Missing
23
+ * Receipts / Transaction Categorization pattern.
24
+ *
25
+ * Note: we intentionally do NOT apply `overflow: hidden` here because that
26
+ * would establish a scroll container and break the page-relative
27
+ * `position: sticky` behavior of the header and totals row. The inner
28
+ * `StickyHeaderContainer` and `StickyTotalsRow` each carry matching
29
+ * `border-*-radius` so they sit flush against the card's rounded corners.
30
+ */
31
+ export declare const ListViewContainer: import('@emotion/styled').StyledComponent<{
32
+ theme?: import('@emotion/react').Theme;
33
+ as?: React.ElementType;
34
+ } & {
35
+ $isQuickViewMode?: boolean;
36
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
37
+ /**
38
+ * Horizontal scroll container shared by the populated and empty tables.
39
+ * Vertical overflow is left to the page (or the side-panel drawer in quick
40
+ * view) so the table doesn't introduce a scroll-within-scroll experience.
41
+ */
42
+ export declare const TableScrollContainer: import('@emotion/styled').StyledComponent<{
43
+ theme?: import('@emotion/react').Theme;
44
+ as?: React.ElementType;
45
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
46
+ /**
47
+ * Inner flex column that holds the sticky header, the rows, and the sticky
48
+ * totals row. Keeping `display: flex; flex-direction: column;` allows the
49
+ * `position: sticky` header / footer to pin against this scrolling parent.
50
+ */
51
+ export declare const TableScrollContent: import('@emotion/styled').StyledComponent<{
52
+ theme?: import('@emotion/react').Theme;
53
+ as?: React.ElementType;
54
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
55
+ /**
56
+ * Per-row wrapper used by both the populated table and the skeleton/empty
57
+ * table. Carries the standard JE row height and the bottom separator.
58
+ */
59
+ export declare const RowWrapper: import('@emotion/styled').StyledComponent<{
60
+ theme?: import('@emotion/react').Theme;
61
+ as?: React.ElementType;
62
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
63
+ /**
64
+ * Sticky wrapper that pins the JE header to the top of the scroll container.
65
+ * Visual chrome (background fill, border-bottom, top-corner radius) lives on
66
+ * the inner `HeaderContainer` inside `JournalEntryTableHeader` so the header
67
+ * matches the Figma "Table Row" component (frame 5177:12461) on its own and
68
+ * renders correctly in isolation (e.g. in stories) — this wrapper now owns
69
+ * only the positioning concern.
70
+ */
71
+ export declare const StickyHeaderContainer: import('@emotion/styled').StyledComponent<{
72
+ theme?: import('@emotion/react').Theme;
73
+ as?: React.ElementType;
74
+ } & {
75
+ isQuickViewMode?: boolean;
76
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
77
+ /**
78
+ * Sticky totals row pinned to the bottom of the scroll container. Implements
79
+ * the 32px Figma footer (frame 5177:12750) which fills with the
80
+ * `Light Theme Colors/Background` token (#F3F7F7) -- mapped to
81
+ * `theme.colors.background` in our palette. (Earlier `grey3` / #E9F0F0
82
+ * was a slightly greener, darker tint that didn't match the design.)
83
+ *
84
+ * No `border-top` here: the last `RowWrapper` above already paints a
85
+ * `border-bottom` (because the totals row is the actual `:last-child` of
86
+ * the scroll content, so the data row above it is not). Adding a
87
+ * `border-top` here would stack on top of that and render a 2px double
88
+ * border between the last data row and the totals row.
89
+ */
90
+ export declare const StickyTotalsRow: import('@emotion/styled').StyledComponent<{
91
+ theme?: import('@emotion/react').Theme;
92
+ as?: React.ElementType;
93
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
94
+ export declare const RowFlex: import('@emotion/styled').StyledComponent<{
95
+ theme?: import('@emotion/react').Theme;
96
+ as?: React.ElementType;
97
+ } & {
98
+ isHovered?: boolean;
99
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
100
+ export declare const HeaderRowFlex: import('@emotion/styled').StyledComponent<{
101
+ theme?: import('@emotion/react').Theme;
102
+ as?: React.ElementType;
103
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
104
+ /**
105
+ * Inline "Dr"/"Cr" prefix shown to the left of the amount field in
106
+ * debit/credit cells. Color and weight follow the Figma greyMid label.
107
+ */
108
+ export declare const AmountPrefix: import('@emotion/styled').StyledComponent<{
109
+ theme?: import('@emotion/react').Theme;
110
+ as?: React.ElementType;
111
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
112
+ /**
113
+ * Static "—" placeholder shown when a line is not posted on this
114
+ * side (e.g. a "credit" row's "debit" cell).
115
+ */
116
+ export declare const EmptyAmountCellPlaceholder: import('@emotion/styled').StyledComponent<{
117
+ theme?: import('@emotion/react').Theme;
118
+ as?: React.ElementType;
119
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;