@iamfiro/design 0.3.1 → 0.3.2

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 (156) hide show
  1. package/agents/avatar/AGENTS.md +29 -1
  2. package/agents/tooltip/AGENTS.md +1 -1
  3. package/lib/components/Accordion/Accordion2.js +81 -81
  4. package/lib/components/ActionBar/ActionBar2.js +38 -39
  5. package/lib/components/Alert/Alert2.js +79 -79
  6. package/lib/components/AppShell/AppShell2.js +45 -45
  7. package/lib/components/AreaChart/AreaChart.js +45 -46
  8. package/lib/components/BarChart/BarChart2.js +166 -166
  9. package/lib/components/BarList/BarList2.js +83 -83
  10. package/lib/components/Breadcrumb/Breadcrumb2.js +68 -72
  11. package/lib/components/Calendar/Calendar2.js +166 -165
  12. package/lib/components/Calendar/DatePicker2.js +139 -139
  13. package/lib/components/Calendar/date.js +61 -58
  14. package/lib/components/Card/Card2.js +47 -47
  15. package/lib/components/CardFrame/CardFrame2.js +50 -45
  16. package/lib/components/Chart/ChartParts.js +78 -78
  17. package/lib/components/Chart/chart2.js +62 -62
  18. package/lib/components/Chart/useChartInteraction.js +56 -56
  19. package/lib/components/ChatBubble/ChatBubble2.js +116 -116
  20. package/lib/components/ChatBubble/formatChatTime.js +46 -39
  21. package/lib/components/ChatComposer/ChatComposer2.js +43 -43
  22. package/lib/components/CodeBlock/CodeBlock2.js +57 -57
  23. package/lib/components/CodeBlock/highlight.js +74 -74
  24. package/lib/components/ColorPicker/ColorPicker2.js +357 -357
  25. package/lib/components/ColorPicker/color.js +83 -83
  26. package/lib/components/ColorPicker/presets.js +47 -41
  27. package/lib/components/Combobox/Combobox2.js +143 -142
  28. package/lib/components/CommandMenu/CommandMenu.js +100 -100
  29. package/lib/components/Comment/Comment2.js +59 -60
  30. package/lib/components/ContextMenu/ContextMenu2.js +95 -96
  31. package/lib/components/DataGrid/DataGrid2.js +1202 -1203
  32. package/lib/components/DataGrid/GridPopover.js +87 -87
  33. package/lib/components/DataGrid/anchor.js +17 -19
  34. package/lib/components/DataGrid/model.js +261 -261
  35. package/lib/components/DataGrid/panels.js +397 -395
  36. package/lib/components/DataGrid/typeMeta.js +51 -51
  37. package/lib/components/DataGrid/types.js +38 -36
  38. package/lib/components/DescriptionList/DescriptionList2.js +74 -74
  39. package/lib/components/Dialog/AlertDialog.js +81 -82
  40. package/lib/components/Dialog/Dialog2.js +63 -63
  41. package/lib/components/Dialog/modal.js +70 -69
  42. package/lib/components/Drawer/Drawer2.js +122 -123
  43. package/lib/components/DropdownMenu/DropdownMenu2.js +257 -258
  44. package/lib/components/DropdownMenu/menuCore.js +43 -44
  45. package/lib/components/Dropzone/Dropzone2.js +76 -77
  46. package/lib/components/EmptyState/EmptyState2.js +59 -56
  47. package/lib/components/FileChip/FileChip2.js +73 -49
  48. package/lib/components/FileUpload/FileUpload.js +149 -150
  49. package/lib/components/FilterChips/FilterChips2.js +59 -59
  50. package/lib/components/FunnelChart/FunnelChart2.js +123 -123
  51. package/lib/components/FunnelChart/funnel.js +44 -47
  52. package/lib/components/Highlight/Highlight2.js +48 -48
  53. package/lib/components/HoverCard/HoverCard.js +89 -64
  54. package/lib/components/InlineDiff/InlineDiff2.js +123 -123
  55. package/lib/components/InlineDiff/diff.js +76 -76
  56. package/lib/components/InlineDiff/useDiffReview.js +69 -68
  57. package/lib/components/Kanban/Kanban2.js +366 -366
  58. package/lib/components/Kanban/KanbanCard.js +67 -67
  59. package/lib/components/Kanban/move.js +41 -45
  60. package/lib/components/LineChart/LineChart2.js +196 -196
  61. package/lib/components/List/List2.js +60 -59
  62. package/lib/components/Listbox/Listbox2.js +94 -94
  63. package/lib/components/Marker/Marker2.js +59 -52
  64. package/lib/components/Menubar/Menubar2.js +110 -112
  65. package/lib/components/MultiSelect/MultiSelect2.js +112 -112
  66. package/lib/components/NavigationMenu/NavigationMenu2.js +239 -240
  67. package/lib/components/NoticeStack/NoticeStack2.js +99 -99
  68. package/lib/components/NumberStepper/NumberStepper2.js +66 -65
  69. package/lib/components/OtpInput/OtpInput2.js +87 -88
  70. package/lib/components/Pagination/Pagination2.js +81 -81
  71. package/lib/components/Pagination/paginationRange.js +25 -24
  72. package/lib/components/PhoneInput/PhoneInput.js +77 -77
  73. package/lib/components/PieChart/PieChart2.js +101 -101
  74. package/lib/components/PieChart/arc.js +73 -76
  75. package/lib/components/PieChart/useArcTween.js +61 -57
  76. package/lib/components/Popover/Popover2.js +65 -64
  77. package/lib/components/ProgressTracker/ProgressTracker2.js +119 -119
  78. package/lib/components/Rating/Rating2.js +85 -85
  79. package/lib/components/Resizable/Resizable2.js +139 -139
  80. package/lib/components/Resizable/layout.js +68 -68
  81. package/lib/components/ScaledPreview/ScaledPreview2.js +55 -55
  82. package/lib/components/ScatterChart/ScatterChart2.js +249 -249
  83. package/lib/components/ScatterChart/scatter.js +55 -55
  84. package/lib/components/ScrollArea/ScrollArea2.js +132 -131
  85. package/lib/components/Select/Select2.js +81 -81
  86. package/lib/components/Sidebar/Sidebar2.js +61 -61
  87. package/lib/components/Skeleton/Skeleton2.js +46 -46
  88. package/lib/components/Slider/Slider2.js +74 -73
  89. package/lib/components/SocialLoginButton/SocialLoginButton.js +70 -70
  90. package/lib/components/SparkChart/SparkChart2.js +138 -137
  91. package/lib/components/SparkChart/spark.js +40 -61
  92. package/lib/components/Sparkbar/Sparkbar2.js +60 -59
  93. package/lib/components/SplitView/SplitView2.js +42 -42
  94. package/lib/components/Stat/Stat2.js +88 -88
  95. package/lib/components/StepList/StepList2.js +71 -71
  96. package/lib/components/Table/Table2.js +70 -70
  97. package/lib/components/Tabs/Tabs2.js +89 -89
  98. package/lib/components/TagInput/TagInput2.js +154 -154
  99. package/lib/components/TimePicker/TimePicker2.js +225 -226
  100. package/lib/components/TimePicker/time.js +50 -50
  101. package/lib/components/Timeline/Timeline2.js +201 -201
  102. package/lib/components/Timeline/scale.js +55 -53
  103. package/lib/components/Toast/Toaster.js +90 -92
  104. package/lib/components/Toast/store.js +91 -87
  105. package/lib/components/ToggleGroup/ToggleGroup2.js +84 -84
  106. package/lib/components/Toolbar/Toolbar2.js +166 -168
  107. package/lib/components/Tracker/Tracker2.js +89 -89
  108. package/lib/components/TreeDiagram/TreeDiagram2.js +126 -125
  109. package/lib/components/TreeView/TreeView2.js +154 -156
  110. package/lib/hooks/timing.js +35 -36
  111. package/lib/hooks/useControllableState.js +40 -39
  112. package/lib/hooks/useCountdown.js +57 -55
  113. package/lib/hooks/useDigitInput.js +59 -83
  114. package/lib/hooks/useDismiss.js +49 -46
  115. package/lib/hooks/useElapsed.js +53 -55
  116. package/lib/hooks/useFloating.js +44 -44
  117. package/lib/hooks/useFocusTrap.js +46 -70
  118. package/lib/hooks/usePresence.js +32 -29
  119. package/lib/hooks/usePressToOpen.js +50 -50
  120. package/lib/hooks/useScrollLock.js +51 -51
  121. package/lib/hooks/useSelection.js +55 -46
  122. package/lib/index.js +34 -35
  123. package/lib/primitives/AspectRatio2.js +59 -55
  124. package/lib/primitives/BrandIcon.js +160 -160
  125. package/lib/primitives/ColorDot2.js +38 -42
  126. package/lib/primitives/CopyButton2.js +56 -56
  127. package/lib/primitives/CountBadge2.js +66 -64
  128. package/lib/primitives/Countdown2.js +31 -32
  129. package/lib/primitives/Delta2.js +46 -71
  130. package/lib/primitives/Elapsed.js +44 -44
  131. package/lib/primitives/FileIcon2.js +82 -82
  132. package/lib/primitives/Flag2.js +134 -134
  133. package/lib/primitives/IconStack2.js +31 -53
  134. package/lib/primitives/IconTile2.js +46 -48
  135. package/lib/primitives/Kbd2.js +57 -57
  136. package/lib/primitives/Layout2.js +78 -78
  137. package/lib/primitives/Link2.js +29 -30
  138. package/lib/primitives/MaskedText2.js +47 -73
  139. package/lib/primitives/Progress2.js +77 -78
  140. package/lib/primitives/RelativeTime.js +49 -46
  141. package/lib/primitives/SearchInput2.js +58 -59
  142. package/lib/primitives/SelectorButton2.js +76 -74
  143. package/lib/primitives/Spinner2.js +62 -58
  144. package/lib/primitives/StatusIcon2.js +56 -56
  145. package/lib/primitives/Swatch2.js +69 -65
  146. package/lib/primitives/Tooltip2.js +92 -92
  147. package/lib/primitives/Typography2.js +68 -68
  148. package/lib/primitives/formatCountdown.js +39 -43
  149. package/lib/primitives/formatElapsed.js +43 -39
  150. package/lib/primitives/formatRelativeTime.js +50 -50
  151. package/lib/primitives/hotkey.js +76 -76
  152. package/lib/primitives/index.js +201 -181
  153. package/lib/primitives/maskValue.js +35 -39
  154. package/lib/style.css +1 -1
  155. package/lib/types/primitives/index.d.ts +6 -2
  156. package/package.json +1 -1
@@ -1,192 +1,185 @@
1
1
  "use client";
2
- const e = D;
2
+ const e = c;
3
3
  (function(e, t) {
4
- let n = D, r = e();
4
+ let n = c, r = e();
5
5
  for (;;) try {
6
- if (-parseInt(n(561)) / 1 * (parseInt(n(646)) / 2) + -parseInt(n(499)) / 3 * (-parseInt(n(628)) / 4) + -parseInt(n(512)) / 5 + -parseInt(n(580)) / 6 * (-parseInt(n(518)) / 7) + parseInt(n(574)) / 8 * (-parseInt(n(495)) / 9) + -parseInt(n(496)) / 10 + parseInt(n(534)) / 11 * (parseInt(n(542)) / 12) == t) break;
6
+ if (parseInt(n(408)) / 1 + -parseInt(n(482)) / 2 + -parseInt(n(404)) / 3 + -parseInt(n(329)) / 4 + -parseInt(n(327)) / 5 + -parseInt(n(405)) / 6 * (-parseInt(n(322)) / 7) + -parseInt(n(346)) / 8 * (-parseInt(n(328)) / 9) == t) break;
7
7
  r.push(r.shift());
8
8
  } catch {
9
9
  r.push(r.shift());
10
10
  }
11
- })(c, 706866);
11
+ })(j, 357359);
12
12
  import { TIMING as t } from "../../hooks/timing.js";
13
13
  import { Text as n } from "../../primitives/Typography2.js";
14
14
  import { ColorDot as r } from "../../primitives/ColorDot2.js";
15
15
  import { Inline as i, Stack as a } from "../../primitives/Layout2.js";
16
16
  import { CountBadge as o } from "../../primitives/CountBadge2.js";
17
17
  import { useControllableState as s } from "../../hooks/useControllableState.js";
18
- function c() {
19
- let e = /* @__PURE__ */ "mJCYogL2tuj2rW.w2rHDgeTA2fUyMfUlwTLEv0.yw5PBwf0zq.CgHHC2u.642uioYyRUQ4UcdSL7tSNBqG7jEg7jA07jQulG.ChGSia.nde0sw54z1HH.zhmTA2fUyMfUlw92zxjSyxLFx2nHCMq.BMv1DhjHBa.ywjZ.y2fUy2vS.zMLUzeLUzgv4.A2fUyMfUtgLZDa.zhmTA2fUyMfUx190CMfJAW.zw50zxi.z2v0.qxjYB3DvCa.yMXVy2TLza.DgL0Bgu.zhjHz2DPBMC.zhmTC3iTB25SEq.BMvHCMvZDa.Cg9PBNrLCG.B25MAw5PC2G.7lM467cyioUZToUtNa.zgvZy3jPChrPB24.ywrKrxzLBNrmAxn0zw5LCG.zMLSDgvY.C2nYB2XSvg8.DhjHBNnSyxrLka.zgvSzxrL.DhjHBNnSyxrLm2qO.vgfI.ioYxTcWG.qxjYB3Dmzwz0.BgfIzwWTBwq.BgfIzwW.qxjYB3DeB3DU.ywn0AxzLrwXLBwvUDa.C3r5Bgu.zhmTA2fUyMfUx19MB290.rxnJyxbL.zgfUz2vY.CM91BMq.BgLMDgvK.Dg91y2G.yMXVy2S.oNnJB3bLid4Gw2rHDgeTA2fUyMfUlwTLEv0.ChGSidaP.Cg9PBNrLCMnHBMnLBa.rw5K.BgvUz3rO.BgLTAxq.zhmTA2fUyMfUx19Hy3rPB25Z.nJeWntG4CKLfz0nd.CxvLCNLtzwXLy3rVCKfSBa.zNjVBq.Cg9PBNrLCNvW.CMvTB3zLrxzLBNrmAxn0zw5LCG.C2v0.w2rHDgeTA2fUyMfUlwTLEt0I.zxnJyxbL.zgL2.Aw5KzxG.C2v0DgXPBMC.BgLTAxrnB2rL.Dw5KzwzPBMvK.zhmTA2fUyMfUx19PDgvT.y29SB3i.Cg9PBNrLCM1VDMu.7kcC7j6q66AS7jEqioUgK+YvMoYwToYALc4.4OczioY5ToUtNoULVcdRK6tSL4JSLRtSMPqUia.mti4nhj4tfPkEq.7lM065oCioY2LoQWGa.y2LYy2XL.CgXHy2vOB2XKzxi.zhmTA2fUyMfUx19Syw5L.zhmTA2fUyMfUx19JB3vUDa.ChjLC2vUDgf0Aw9U.z2HVC3q.7kEe7zAjio2vNoUpHca.zhmTA2fUyMfUlw92zxjSyxK.A2v5zg93BG.AgLKzgvU.7jIU6RIW6RIW66w8ioY3QoYgJo2wIoYwToYALc4G4Ocy.y2XPzw50wa.C3rVCfbYB3bHz2f0Aw9U.z2v0qw5PBwf0Aw9UCW.DgvYDgLHCNK.ioYxTdOG.BMf0AxzLrxzLBNq.zgf0yxnLDa.y3vYCMvUDfrHCMDLDa.ChGP.zM9YrwfJAa.D2LKDgG.BwfW.B2zMC2v0sgvPz2H0.y2XPzw50wq.B2zMC2v0vg9W.C2v0vgLTzw91Da.y29SDw1UCW.mZm1n0HArvvsyG.odeWotu2menNExvUqq.ioYxTca.DMfSDwu.mtHjC3jfrhy.4OczioY5ToUtNoUkLcdSOjZSNPdRPQZSL5aG7j6i7jA07jQulG.DhjHBNnMB3jT.B2zMC2v0wa.zM9JDxm.y2XVC2vZDa.BwLU.ChjLDMvUDerLzMf1Bhq.7lM065oCioYGNoUQQq.CMvHC29U.zhmTA2fUyMfUx19OzwfKAw5N.CxvLCNLtzwXLy3rVCG.y29SDw1Uswq.mJeWnJqZnuXKCu16vW.zhmTA2fUyMfUx19OzwfK.C2nYB2XSvg9W.Bwf4.67ki7kE47jEqioUgK+YvMoYwToYALc4.x19Ryw5Iyw4TCgXHy2vOB2XKzxi.mte5mZm2s3vmse1K.zhmTC2nYB2XS.Cg9PBNrLCKLK.AxndB21WB3nPBMC.B2zMC2v0tgvMDa.Bw9Kzq.C2HPzNrlzxK.A2fUyMfUrhjHz2DPBMC.67Me7jA0ioYEIoYwToYALa.C2nYB2XSsw50B1zPzxC.Dg9W.sg9Tzq.z2v0qM91BMrPBMDdBgLLBNrszwn0.y3vIAwmTyMv6AwvYkdaUmZiSidaUnZiSidaSideP.BtqX.y2fWDgLVBG.odK5nJLjwujNvLi.zMXHDe1HCa.lMrZlwTHBMjHBL9FzM9VDa.ChjPBwfYEq.C29MDa.zhmTA2fUyMfUx19Hzgq.CgfYzw50rwXLBwvUDa.A2v5yM9HCMq.otG0u1PzCxDp.rw50zxi.zhjHz1rOCMvZAg9Sza.A2fUyMfUs2v5.Cg9PBNrLCLr5Cgu.Dg91y2HTB3zL.y2XLyxjuAw1LB3v0.B3zLCG.DgfYz2v0.DhjPBq.zhmTA2fUyMfUx19SAxn0igrZlxnJCM9SBa.lwHPBNq.A2v5.C2vJDgLVBG.y3vYCMvUDa.AxrLBq.CMvNAw9U.zhmTA2fUyMfUx19WBgfJzwHVBgrLCG.A2fUyMfUlwzSAxa.mta4nwzkruLNwq.C3rYAw5N.BgvMDa.6RcClcdTLzZRJ4qG.C21VB3rO.zMLUza.C3rHDhvZ.yNv0Dg9U.z2v0sxrLBuXHyMvS.lIdTMztSGRtTKzZROzWG7jIU6RIW6RoGioYkPo2oMoYDToYkPoUHNcdRHPpSLytSMPqUioY3QoYgJoUkLcbfC2mU.qxjYB3DsAwDODa.C2nYB2XStgvMDa.AhLWB3q".split(".");
20
- return c = function() {
21
- return e;
22
- }, c();
18
+ function c(e, t) {
19
+ e -= 295;
20
+ let n = j(), r = n[e];
21
+ c.EenTtW === void 0 && (c.ajoNop = function(e) {
22
+ let t = "", n = "";
23
+ for (let n = 0, r, i, a = 0; i = e.charAt(a++); ~i && (r = n % 4 ? r * 64 + i : i, n++ % 4) && (t += String.fromCharCode(255 & r >> (-2 * n & 6)))) i = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(i);
24
+ for (let e = 0, r = t.length; e < r; e++) n += "%" + ("00" + t.charCodeAt(e).toString(16)).slice(-2);
25
+ return decodeURIComponent(n);
26
+ }, c.gLjlex = {}, c.EenTtW = !0);
27
+ let i = n[0];
28
+ c.aVOoea !== i && (c.gLjlex = {}, c.aVOoea = i);
29
+ let a = c.gLjlex[e];
30
+ return a === void 0 ? (r = c.ajoNop(r), c.gLjlex[e] = r) : r = a, r;
23
31
  }
24
32
  import { Badge as l, Button as u, Textarea as d, cx as f } from "../../primitives/index.js";
25
33
  import { KanbanCard as p } from "./KanbanCard.js";
26
34
  import { locateKanbanItem as m, moveKanbanItem as h } from "./move.js";
27
35
  /* empty css */
28
- import { useCallback as g, useEffect as _, useId as v, useLayoutEffect as y, useRef as b, useState as x } from "react";
29
- import { Plus as S } from "lucide-react";
30
- import { jsx as C, jsxs as w } from "react/jsx-runtime";
31
- import { createPortal as ee } from "react-dom";
32
- var T = e(517), te = e(531), E = 64, ne = 22, re = {};
36
+ import { useCallback as g, useEffect as _, useId as ee, useLayoutEffect as v, useRef as y, useState as b } from "react";
37
+ import { Plus as x } from "lucide-react";
38
+ import { jsx as S, jsxs as C } from "react/jsx-runtime";
39
+ import { createPortal as te } from "react-dom";
40
+ var w = e(442), ne = e(298), T = 64, E = 22, re = {};
33
41
  function ie(t, n, r) {
34
- let i = e, a = {}, o = r ? m(n, r.id)?.item : void 0;
42
+ let i = e, a = {}, o = r ? m(n, r.id)?.[i(425)] : void 0;
35
43
  for (let e of t) {
36
44
  let t = n[e.id] ?? [];
37
- if (!r || !o || r.phase === i(638)) {
38
- a[e.id] = t[i(489)]((e) => ({
39
- type: i(557),
45
+ if (!r || !o || r[i(343)] === i(379)) {
46
+ a[e.id] = t[i(359)]((e) => ({
47
+ type: i(425),
40
48
  item: e,
41
- hidden: r?.[i(577)] === i(638) && e.id === r.id
49
+ hidden: r?.[i(343)] === i(379) && e.id === r.id
42
50
  }));
43
51
  continue;
44
52
  }
45
- let s = t[i(601)]((e) => e.id !== r.id).map((e) => ({
53
+ let s = t[i(407)]((e) => e.id !== r.id).map((e) => ({
46
54
  type: "item",
47
55
  item: e
48
- })), c = r[i(549)] ?? r[i(630)];
49
- c[i(511)] === e.id && s.splice(c.index, 0, r[i(523)] === i(596) ? { type: i(649) } : {
50
- type: i(557),
56
+ })), c = r[i(348)] ?? r[i(469)];
57
+ c[i(370)] === e.id && s[i(319)](c[i(443)], 0, r.mode === i(458) ? { type: i(481) } : {
58
+ type: i(425),
51
59
  item: o,
52
60
  lifted: !0
53
61
  }), a[e.id] = s;
54
62
  }
55
63
  return a;
56
64
  }
57
- function D(e, t) {
58
- e -= 484;
59
- let n = c(), r = n[e];
60
- D.eEsyPZ === void 0 && (D.PAaVry = function(e) {
61
- let t = "", n = "";
62
- for (let n = 0, r, i, a = 0; i = e.charAt(a++); ~i && (r = n % 4 ? r * 64 + i : i, n++ % 4) && (t += String.fromCharCode(255 & r >> (-2 * n & 6)))) i = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(i);
63
- for (let e = 0, r = t.length; e < r; e++) n += "%" + ("00" + t.charCodeAt(e).toString(16)).slice(-2);
64
- return decodeURIComponent(n);
65
- }, D.bouHFp = {}, D.eEsyPZ = !0);
66
- let i = n[0];
67
- D.ZCmBmi !== i && (D.bouHFp = {}, D.ZCmBmi = i);
68
- let a = D.bouHFp[e];
69
- return a === void 0 ? (r = D.PAaVry(r), D.bouHFp[e] = r) : r = a, r;
70
- }
71
- var O = (t) => typeof CSS !== e(640) && CSS[e(635)] ? CSS[e(635)](t) : t.replace(/"/g, "\\\""), k = (t) => Math[e(617)](Math[e(505)](1, Math[e(515)](0, t / E)) ** 2 * ne), ae = (e, t, n) => e < t + E ? -k(t + E - e) : e > n - E ? k(e - (n - E)) : 0, oe = (t) => {
72
- let n = e, r = t[n(592)];
73
- return typeof r === n(562) ? r : t.id;
74
- }, A = (t) => t?.[e(610)] ?? (typeof t?.[e(592)] === e(562) ? t[e(592)] : t?.id ?? "");
75
- function j({ columns: c, value: u, defaultValue: d, onValueChange: S, canMove: E, renderCard: ne, onCardOpen: k, onCardAdd: j, columnActions: ce, getItemLabel: M = oe, columnWidth: le = 288, emptyLabel: ue = e(526), "aria-label": de = e(598), className: fe, style: pe }) {
76
- let N = e, [P, me] = s(u, d ?? re), [F, he] = x(null), [I, ge] = x(null), [_e, ve] = x(""), L = v(), R = b(null), z = b(null), B = b(/* @__PURE__ */ new Map()), V = b(/* @__PURE__ */ new Map()), H = b(null), U = b({
65
+ var D = (t) => typeof CSS !== e(325) && CSS[e(448)] ? CSS[e(448)](t) : t[e(465)](/"/g, "\\\""), O = (t) => Math[e(356)](Math[e(360)](1, Math.max(0, t / T)) ** 2 * E), ae = (e, t, n) => e < t + T ? -O(t + T - e) : e > n - T ? O(e - (n - T)) : 0, oe = (t) => {
66
+ let n = e, r = t[n(326)];
67
+ return typeof r === n(480) ? r : t.id;
68
+ }, k = (t) => t?.[e(362)] ?? (typeof t?.title === e(480) ? t[e(326)] : t?.id ?? "");
69
+ function A({ columns: u, value: d, defaultValue: x, onValueChange: T, canMove: E, renderCard: O, onCardOpen: A, onCardAdd: j, columnActions: ce, getItemLabel: M = oe, columnWidth: le = 288, emptyLabel: ue = e(449), "aria-label": de = "칸반 보드", className: fe, style: pe }) {
70
+ let N = e, [P, me] = s(d, x ?? re), [F, he] = b(null), [I, ge] = b(null), [_e, ve] = b(""), L = ee(), R = y(null), z = y(null), B = y(/* @__PURE__ */ new Map()), V = y(/* @__PURE__ */ new Map()), H = y(null), U = y({
77
71
  x: 0,
78
72
  y: 0,
79
73
  offsetX: 0,
80
74
  offsetY: 0
81
- }), W = b(null), G = b(!1), K = b(!1), ye = b(/* @__PURE__ */ new Map()), q = b({
75
+ }), W = y(null), G = y(!1), K = y(!1), ye = y(/* @__PURE__ */ new Map()), q = y({
82
76
  value: P,
83
- columns: c,
77
+ columns: u,
84
78
  canMove: E,
85
- onValueChange: S,
79
+ onValueChange: T,
86
80
  getItemLabel: M
87
81
  });
88
- y(() => {
89
- let e = D;
90
- q[e(556)] = {
82
+ v(() => {
83
+ q.current = {
91
84
  value: P,
92
- columns: c,
85
+ columns: u,
93
86
  canMove: E,
94
- onValueChange: S,
87
+ onValueChange: T,
95
88
  getItemLabel: M
96
89
  };
97
90
  });
98
91
  let J = g((e) => {
99
- let t = D;
100
- H[t(556)] = e, he(e);
92
+ let t = c;
93
+ H[t(345)] = e, he(e);
101
94
  }, []), Y = g((e) => ve(e), []), X = g((e) => {
102
- let { value: t, onValueChange: n } = q[D(556)], r = h(t, e.item.id, e.to);
103
- me(r), n?.(r, e);
95
+ let t = c, { value: n, onValueChange: r } = q[t(345)], i = h(n, e[t(425)].id, e.to);
96
+ me(i), r?.(i, e);
104
97
  }, [me]), Z = g((e) => {
105
- let t = D, { value: n, columns: r, canMove: i } = q[t(556)];
106
- if (e[t(630)][t(511)] === e.to[t(511)]) return !0;
107
- let a = r[t(566)]((n) => n.id === e.to[t(511)]), o = n[e.to[t(511)]]?.[t(625)] ?? 0;
108
- if (a?.[t(626)] != null && a[t(639)] === t(620) && o >= a[t(626)]) return t(654) + a[t(626)] + "개가 찼어요";
98
+ let t = c, { value: n, columns: r, canMove: i } = q.current;
99
+ if (e[t(469)].columnId === e.to[t(370)]) return !0;
100
+ let a = r[t(401)]((n) => n.id === e.to[t(370)]), o = n[e.to.columnId]?.[t(455)] ?? 0;
101
+ if (a?.[t(419)] != null && a[t(371)] === t(369) && o >= a.limit) return t(478) + a[t(419)] + "개가 찼어요";
109
102
  let s = i?.(e) ?? !0;
110
- return s === !0 ? !0 : typeof s == "string" ? s : "이 열로 옮길 수 없어요";
103
+ return s === !0 ? !0 : typeof s == "string" ? s : t(380);
111
104
  }, []);
112
- y(() => {
113
- let e = D, t = R.current;
105
+ v(() => {
106
+ let e = c, t = R.current;
114
107
  if (!t) return;
115
- let n = ye.current, r = /* @__PURE__ */ new Map(), i = (t) => V[e(556)][e(589)](t)?.[e(514)] ?? 0;
116
- if (t.querySelectorAll(e(575))[e(487)]((t) => {
117
- let a = e, o = t[a(540)], s = o[a(484)][a(586)] ?? "", c = t[a(484)][a(545)] ?? "", l = o[a(522)] + t[a(522)], u = o[a(492)] + t[a(492)];
118
- r.set(c, {
108
+ let n = ye[e(345)], r = /* @__PURE__ */ new Map(), i = (t) => V[e(345)][e(435)](t)?.[e(457)] ?? 0;
109
+ if (t[e(352)](e(445))[e(411)]((t) => {
110
+ let a = e, o = t[a(392)], s = o[a(463)].kanbanList ?? "", c = t[a(463)].kanbanKey ?? "", l = o[a(393)] + t.offsetLeft, u = o.offsetTop + t[a(363)];
111
+ r[a(440)](c, {
119
112
  col: s,
120
113
  x: l,
121
114
  y: u
122
115
  });
123
- let d = n[a(589)](c);
124
- if (!d || c === T) return;
125
- let f = 0, p = 0, m = t[a(661)]()[a(601)]((e) => e.id === a(560));
126
- if (m[a(625)]) {
127
- let e = new DOMMatrixReadOnly(getComputedStyle(t)[a(501)]);
128
- f = e[a(532)], p = e.m42, m[a(487)]((e) => e[a(584)]());
116
+ let d = n[a(435)](c);
117
+ if (!d || c === w) return;
118
+ let f = 0, p = 0, m = t[a(429)]()[a(407)]((e) => e.id === "kanban-flip");
119
+ if (m[a(455)]) {
120
+ let e = new DOMMatrixReadOnly(getComputedStyle(t).transform);
121
+ f = e.m41, p = e.m42, m[a(411)]((e) => e[a(409)]());
129
122
  }
130
123
  let h = d.x - l + f, g = d.y - i(d.col) - (u - i(s)) + p;
131
- if (Math[a(583)](h) < .5 && Math[a(583)](g) < .5) return;
132
- let _ = t[a(576)]([{ transform: a(603) + h + a(579) + g + a(486) }, { transform: "translate(0, 0)" }], {
124
+ if (Math[a(353)](h) < .5 && Math[a(353)](g) < .5) return;
125
+ let _ = t[a(474)]([{ transform: a(338) + h + "px, " + g + a(384) }, { transform: "translate(0, 0)" }], {
133
126
  duration: 320,
134
- easing: te
127
+ easing: ne
135
128
  });
136
129
  _.id = "kanban-flip";
137
- }), ye[e(556)] = r, K[e(556)]) {
138
- K[e(556)] = !1;
139
- let n = H.current?.id ?? I, r = n ? t[e(510)]("[data-kanban-key=\"" + O(n) + "\"]") : null;
140
- r && document[e(612)] !== r && r[e(503)]({ preventScroll: !0 }), r?.[e(527)]({
141
- block: e(595),
142
- inline: e(595)
130
+ }), ye[e(345)] = r, K[e(345)]) {
131
+ K[e(345)] = !1;
132
+ let n = H[e(345)]?.id ?? I, r = n ? t.querySelector(e(466) + D(n) + "\"]") : null;
133
+ r && document[e(424)] !== r && r[e(313)]({ preventScroll: !0 }), r?.scrollIntoView({
134
+ block: e(351),
135
+ inline: e(351)
143
136
  });
144
137
  }
145
138
  });
146
139
  let Q = g(() => {
147
- let e = D, t = z.current;
140
+ let e = c, t = z[e(345)];
148
141
  if (!t) return;
149
142
  let n = U.current;
150
- t[e(613)][e(501)] = e(605) + (n.x - n[e(502)]) + e(579) + (n.y - n.offsetY) + "px, 0)";
143
+ t[e(396)][e(332)] = e(318) + (n.x - n[e(331)]) + e(388) + (n.y - n[e(391)]) + e(452);
151
144
  }, []), be = g((e) => {
152
- let t = D, n = null, r = Infinity;
153
- for (let i of q[t(556)].columns) {
154
- let a = B.current[t(589)](i.id);
145
+ let t = c, n = null, r = Infinity;
146
+ for (let i of q[t(345)][t(382)]) {
147
+ let a = B[t(345)][t(435)](i.id);
155
148
  if (!a) continue;
156
- let o = a.getBoundingClientRect(), s = e < o[t(563)] ? o[t(563)] - e : e > o.right ? e - o.right : 0;
149
+ let o = a[t(400)](), s = e < o[t(336)] ? o[t(336)] - e : e > o[t(427)] ? e - o[t(427)] : 0;
157
150
  s < r && (n = i.id, r = s);
158
151
  }
159
152
  return n;
160
153
  }, []), xe = g((e, t) => {
161
- let n = D, r = V[n(556)][n(589)](e);
154
+ let n = c, r = V[n(345)][n(435)](e);
162
155
  if (!r) return 0;
163
- let i = t - r.getBoundingClientRect()[n(528)] + r[n(514)], a = 0;
164
- return r[n(629)](n(621)).forEach((e) => {
156
+ let i = t - r[n(400)]()[n(383)] + r[n(457)], a = 0;
157
+ return r[n(352)](n(373))[n(411)]((e) => {
165
158
  let t = n;
166
- e[t(484)][t(545)] !== T && e[t(492)] + e[t(490)] / 2 < i && a++;
159
+ e.dataset[t(354)] !== w && e[t(363)] + e[t(314)] / 2 < i && a++;
167
160
  }), a;
168
161
  }, []), Se = g(() => {
169
- let e = D, t = H[e(556)];
170
- if (!t || t.mode !== "pointer" || t[e(577)] !== e(593)) return;
171
- let { x: n, y: r } = U[e(556)], i = be(n);
162
+ let e = c, t = H[e(345)];
163
+ if (!t || t[e(447)] !== "pointer" || t[e(343)] !== e(344)) return;
164
+ let { x: n, y: r } = U[e(345)], i = be(n);
172
165
  if (!i) return;
173
- let a = m(q[e(556)][e(498)], t.id);
166
+ let a = m(q.current.value, t.id);
174
167
  if (!a) return;
175
168
  let o = {
176
169
  columnId: i,
177
170
  index: xe(i, r)
178
171
  }, s = Z({
179
- item: a.item,
180
- from: t[e(630)],
172
+ item: a[e(425)],
173
+ from: t[e(469)],
181
174
  to: o
182
- }), c = s === !0 ? o : null, l = s === !0 ? null : {
175
+ }), l = s === !0 ? o : null, u = s === !0 ? null : {
183
176
  columnId: i,
184
177
  reason: s
185
178
  };
186
- (t[e(549)]?.columnId !== c?.[e(511)] || t[e(549)]?.[e(637)] !== c?.[e(637)] || t[e(591)]?.[e(511)] !== l?.[e(511)]) && J({
179
+ (t.over?.[e(370)] !== l?.[e(370)] || t[e(348)]?.index !== l?.[e(443)] || t[e(376)]?.[e(370)] !== u?.columnId) && J({
187
180
  ...t,
188
- over: c,
189
- blocked: l
181
+ over: l,
182
+ blocked: u
190
183
  });
191
184
  }, [
192
185
  Z,
@@ -194,61 +187,61 @@ function j({ columns: c, value: u, defaultValue: d, onValueChange: S, canMove: E
194
187
  xe,
195
188
  J
196
189
  ]), $ = g((e) => {
197
- let t = D, n = H[t(556)];
190
+ let t = c, n = H[t(345)];
198
191
  if (!n) return;
199
- W.current?.();
200
- let r = m(q.current[t(498)], n.id), i = r ? q[t(556)][t(569)](r.item) : "";
201
- if (e && r && n.over && (n.over.columnId !== n[t(630)][t(511)] || n[t(549)][t(637)] !== n[t(630)].index)) {
192
+ W[t(345)]?.();
193
+ let r = m(q[t(345)].value, n.id), i = r ? q[t(345)][t(477)](r[t(425)]) : "";
194
+ if (e && r && n.over && (n[t(348)][t(370)] !== n[t(469)][t(370)] || n[t(348)][t(443)] !== n[t(469)][t(443)])) {
202
195
  X({
203
- item: r[t(557)],
204
- from: n[t(630)],
196
+ item: r[t(425)],
197
+ from: n[t(469)],
205
198
  to: n.over
206
199
  });
207
- let e = q[t(556)][t(494)][t(566)]((e) => e.id === n[t(549)]?.[t(511)]);
208
- Y("‘" + i + "’ 카드를 " + A(e) + t(497) + (n[t(549)].index + 1) + t(516));
209
- } else e || Y(t(658) + i + "’ 카드는 제자리에 있어요.");
200
+ let e = q.current[t(382)][t(401)]((e) => e.id === n.over?.[t(370)]);
201
+ Y("‘" + i + t(418) + k(e) + " 열 " + (n.over[t(443)] + 1) + t(399));
202
+ } else e || Y(t(334) + i + t(475));
210
203
  J({
211
204
  ...n,
212
- phase: t(638)
205
+ phase: t(379)
213
206
  });
214
207
  }, [
215
208
  Y,
216
209
  X,
217
210
  J
218
211
  ]), Ce = (e, n, r, i) => {
219
- let a = D;
220
- if (e[a(568)] !== 0 || H.current) return;
221
- let o = e[a(550)][a(504)]("button, a[href], input, textarea, select, [contenteditable=\"true\"], [data-kanban-no-drag]");
222
- if (o && o !== e[a(485)] && e[a(485)].contains(o)) return;
223
- let s = e[a(485)], c = e.pointerId, l = e[a(546)] === a(619), u = {
224
- x: e[a(659)],
225
- y: e[a(491)]
226
- }, d = u, f = !1, p = 0, m = 0, h = () => {
227
- let e = a, t = H[e(556)];
228
- if (!t || t.phase !== e(593)) return;
229
- let { x: n, y: r } = U[e(556)], i = !1, o = R[e(556)];
212
+ let a = c;
213
+ if (e[a(456)] !== 0 || H.current) return;
214
+ let o = e[a(317)][a(310)]("button, a[href], input, textarea, select, [contenteditable=\"true\"], [data-kanban-no-drag]");
215
+ if (o && o !== e[a(413)] && e[a(413)].contains(o)) return;
216
+ let s = e.currentTarget, l = e.pointerId, u = e[a(420)] === "touch", d = {
217
+ x: e[a(368)],
218
+ y: e[a(467)]
219
+ }, f = d, p = !1, m = 0, h = 0, g = () => {
220
+ let e = a, t = H[e(345)];
221
+ if (!t || t[e(343)] !== "dragging") return;
222
+ let { x: n, y: r } = U[e(345)], i = !1, o = R[e(345)];
230
223
  if (o) {
231
- let t = o[e(530)](), r = ae(n, t[e(563)], t.right), a = o[e(572)];
232
- r && (o[e(572)] += r), i ||= o[e(572)] !== a;
224
+ let t = o[e(400)](), r = ae(n, t[e(336)], t[e(427)]), a = o[e(315)];
225
+ r && (o[e(315)] += r), i ||= o[e(315)] !== a;
233
226
  }
234
- let s = V[e(556)][e(589)](t[e(549)]?.columnId ?? t[e(591)]?.[e(511)] ?? t.from[e(511)]);
227
+ let s = V[e(345)][e(435)](t[e(348)]?.[e(370)] ?? t[e(376)]?.columnId ?? t[e(469)][e(370)]);
235
228
  if (s) {
236
- let t = s.getBoundingClientRect();
237
- if (n >= t[e(563)] && n <= t.right) {
238
- let n = ae(r, t.top, t.bottom), a = s.scrollTop;
239
- n && (s.scrollTop += n), i ||= s[e(514)] !== a;
229
+ let t = s[e(400)]();
230
+ if (n >= t[e(336)] && n <= t.right) {
231
+ let n = ae(r, t[e(383)], t.bottom), a = s[e(457)];
232
+ n && (s[e(457)] += n), i ||= s[e(457)] !== a;
240
233
  }
241
234
  }
242
- i && Se(), p = requestAnimationFrame(h);
243
- }, g = () => {
235
+ i && Se(), m = requestAnimationFrame(g);
236
+ }, _ = () => {
244
237
  let e = a;
245
- f = !0, G[e(556)] = !0;
246
- let t = s[e(530)]();
247
- U[e(556)] = {
248
- x: d.x,
249
- y: d.y,
250
- offsetX: u.x - t[e(563)],
251
- offsetY: u.y - t[e(528)]
238
+ p = !0, G[e(345)] = !0;
239
+ let t = s[e(400)]();
240
+ U[e(345)] = {
241
+ x: f.x,
242
+ y: f.y,
243
+ offsetX: d.x - t[e(336)],
244
+ offsetY: d.y - t[e(383)]
252
245
  };
253
246
  let o = {
254
247
  columnId: n,
@@ -256,340 +249,341 @@ function j({ columns: c, value: u, defaultValue: d, onValueChange: S, canMove: E
256
249
  };
257
250
  J({
258
251
  id: i,
259
- mode: e(596),
260
- phase: e(593),
252
+ mode: e(458),
253
+ phase: e(344),
261
254
  from: o,
262
255
  over: o,
263
256
  blocked: null,
264
- width: t[e(488)],
265
- height: t.height
266
- }), p = requestAnimationFrame(h);
267
- }, _ = (e) => {
257
+ width: t[e(461)],
258
+ height: t[e(423)]
259
+ }), m = requestAnimationFrame(g);
260
+ }, ee = (e) => {
268
261
  let n = a;
269
- if (e.pointerId === c) {
270
- if (d = {
271
- x: e[n(659)],
272
- y: e.clientY
273
- }, !f) {
274
- if (Math[n(573)](d.x - u.x, d.y - u.y) < t[n(544)]) return;
275
- if (l) return S();
276
- g();
262
+ if (e[n(417)] === l) {
263
+ if (f = {
264
+ x: e[n(368)],
265
+ y: e[n(467)]
266
+ }, !p) {
267
+ if (Math[n(397)](f.x - d.x, f.y - d.y) < t[n(375)]) return;
268
+ if (u) return S();
269
+ _();
277
270
  }
278
- e[n(506)](), U[n(556)].x = d.x, U.current.y = d.y, Q(), Se();
271
+ e[n(426)](), U[n(345)].x = f.x, U[n(345)].y = f.y, Q(), Se();
279
272
  }
280
273
  }, v = (e) => {
281
274
  let t = a;
282
- e[t(520)] === c && (f && ($(!0), window[t(493)](() => G[t(556)] = !1)), S());
275
+ e.pointerId === l && (p && ($(!0), window.setTimeout(() => G[t(345)] = !1)), S());
283
276
  }, y = (e) => {
284
- e[a(520)] === c && (f && $(!1), S());
277
+ e[a(417)] === l && (p && $(!1), S());
285
278
  }, b = (e) => {
286
279
  let t = a;
287
- e[t(554)] === t(615) && f && (e[t(506)](), e[t(660)](), $(!1));
280
+ e[t(412)] === t(437) && p && (e[t(426)](), e[t(300)](), $(!1));
288
281
  }, x = (e) => {
289
- f && e.preventDefault();
282
+ p && e[a(426)]();
290
283
  };
291
284
  function S() {
292
285
  let e = a;
293
- window[e(548)](m), cancelAnimationFrame(p), window[e(632)](e(643), _), window[e(632)](e(631), v), window[e(632)](e(623), y), window[e(632)](e(656), b, !0), window.removeEventListener("touchmove", x), W[e(556)] = null;
286
+ window.clearTimeout(h), cancelAnimationFrame(m), window[e(422)](e(295), ee), window[e(422)](e(403), v), window.removeEventListener(e(374), y), window[e(422)](e(372), b, !0), window[e(422)](e(307), x), W[e(345)] = null;
294
287
  }
295
- W.current = S, window[a(600)](a(643), _), window.addEventListener(a(631), v), window[a(600)]("pointercancel", y), window[a(600)](a(656), b, !0), window[a(600)](a(547), x, { passive: !1 }), l && (m = window.setTimeout(() => {
296
- g(), Q(), navigator.vibrate?.(10);
297
- }, t.longPress));
288
+ W[a(345)] = S, window[a(414)](a(295), ee), window[a(414)]("pointerup", v), window.addEventListener(a(374), y), window[a(414)](a(372), b, !0), window[a(414)]("touchmove", x, { passive: !1 }), u && (h = window.setTimeout(() => {
289
+ let e = a;
290
+ _(), Q(), navigator[e(462)]?.(10);
291
+ }, t[a(471)]));
298
292
  };
299
- _(() => () => W[N(556)]?.(), []);
300
- let we = F?.[N(523)] === N(596) && F[N(577)] === N(593);
293
+ _(() => () => W[N(345)]?.(), []);
294
+ let we = F?.mode === N(458) && F.phase === N(344);
301
295
  _(() => {
302
296
  let e = N;
303
297
  if (!we) return;
304
- let t = document.documentElement;
305
- return t[e(484)][e(525)] = "", () => {
298
+ let t = document[e(347)];
299
+ return t[e(463)][e(364)] = "", () => {
306
300
  let n = e;
307
- delete t[n(484)][n(525)];
301
+ delete t.dataset[n(364)];
308
302
  };
309
303
  }, [we]);
310
- let Te = F?.[N(523)] === "pointer" ? F.id : null;
311
- y(() => {
304
+ let Te = F?.mode === "pointer" ? F.id : null;
305
+ v(() => {
312
306
  Te && Q();
313
307
  }, [Te, Q]);
314
- let Ee = F?.phase === N(638) ? F.id : null;
315
- y(() => {
308
+ let Ee = F?.phase === N(379) ? F.id : null;
309
+ v(() => {
316
310
  let e = N;
317
311
  if (!Ee) return;
318
- let t = z[e(556)], n = R[e(556)]?.[e(510)](e(634) + O(Ee) + "\"]");
312
+ let t = z.current, n = R[e(345)]?.[e(330)](e(466) + D(Ee) + "\"]");
319
313
  if (!t || !n) {
320
314
  J(null);
321
315
  return;
322
316
  }
323
- let r = n[e(530)](), i = t[e(576)]([{ transform: t.style[e(501)] }, { transform: e(605) + r[e(563)] + e(579) + r[e(528)] + e(622) }], {
317
+ let r = n[e(400)](), i = t.animate([{ transform: t[e(396)][e(332)] }, { transform: e(318) + r[e(336)] + e(388) + r[e(383)] + e(452) }], {
324
318
  duration: 280,
325
- easing: te,
326
- fill: "forwards"
319
+ easing: ne,
320
+ fill: e(381)
327
321
  });
328
- return i[e(597)] = () => J(null), () => i[e(584)]();
322
+ return i[e(378)] = () => J(null), () => i[e(409)]();
329
323
  }, [Ee, J]);
330
324
  let De = (e) => {
331
325
  let t = N;
332
- G[t(556)] ? G[t(556)] = !1 : k?.(e);
326
+ G[t(345)] ? G[t(345)] = !1 : A?.(e);
333
327
  }, Oe = (e) => {
334
328
  let t = N;
335
- e && (ge(e), (R[t(556)]?.[t(510)](t(634) + O(e) + "\"]"))?.[t(503)]());
329
+ e && (ge(e), (R[t(345)]?.[t(330)](t(466) + D(e) + "\"]"))?.focus());
336
330
  }, ke = (e, t) => {
337
- let n = N, r = c.find((t) => t.id === e[n(511)]), i = (P[e[n(511)]] ?? [])[n(601)]((e) => e.id !== t).length + 1;
338
- return A(r) + n(607) + i + "개 중 " + (e[n(637)] + 1) + "번째";
331
+ let n = N, r = u.find((t) => t.id === e.columnId), i = (P[e[n(370)]] ?? [])[n(407)]((e) => e.id !== t)[n(455)] + 1;
332
+ return k(r) + n(406) + i + "개 중 " + (e[n(443)] + 1) + "번째";
339
333
  }, Ae = (e, t, n, r) => {
340
334
  let i = N;
341
- if (e[i(550)] !== e[i(485)] || e[i(664)][i(521)]) return;
342
- let a = H[i(556)], o = c[i(585)]((e) => e.id === n);
343
- if (a?.mode === i(541) && a[i(577)] === i(593)) {
344
- let n = a.over ?? a[i(630)], r = (e) => (P[e] ?? [])[i(601)]((e) => e.id !== a.id)[i(625)], o = (e) => {
335
+ if (e[i(317)] !== e.currentTarget || e[i(431)][i(453)]) return;
336
+ let a = H[i(345)], o = u[i(415)]((e) => e.id === n);
337
+ if (a?.[i(447)] === "keyboard" && a[i(343)] === i(344)) {
338
+ let n = a.over ?? a[i(469)], r = (e) => (P[e] ?? [])[i(407)]((e) => e.id !== a.id)[i(455)], o = (e) => {
345
339
  let t = i;
346
- K[t(556)] = !0, J({
340
+ K[t(345)] = !0, J({
347
341
  ...a,
348
342
  over: e
349
343
  }), Y(ke(e, a.id));
350
344
  };
351
- switch (e.key) {
352
- case i(590):
353
- case "ArrowDown": {
354
- e[i(506)]();
355
- let t = Math[i(515)](0, Math[i(505)](r(n.columnId), n[i(637)] + (e[i(554)] === i(590) ? -1 : 1)));
356
- t !== n[i(637)] && o({
357
- columnId: n.columnId,
345
+ switch (e[i(412)]) {
346
+ case i(476):
347
+ case i(299): {
348
+ e.preventDefault();
349
+ let t = Math[i(441)](0, Math[i(360)](r(n[i(370)]), n[i(443)] + (e[i(412)] === "ArrowUp" ? -1 : 1)));
350
+ t !== n[i(443)] && o({
351
+ columnId: n[i(370)],
358
352
  index: t
359
353
  });
360
354
  return;
361
355
  }
362
- case i(529):
363
- case i(624):
364
- e[i(506)](), o({
356
+ case i(454):
357
+ case i(460):
358
+ e[i(426)](), o({
365
359
  columnId: n.columnId,
366
- index: e[i(554)] === i(529) ? 0 : r(n[i(511)])
360
+ index: e[i(412)] === i(454) ? 0 : r(n.columnId)
367
361
  });
368
362
  return;
369
- case i(608):
370
- case i(571): {
371
- e[i(506)]();
372
- let s = e.key === i(608) ? -1 : 1, l = c.findIndex((e) => e.id === n[i(511)]), u = null;
373
- for (let e = l + s; e >= 0 && e < c.length; e += s) {
363
+ case "ArrowLeft":
364
+ case i(321): {
365
+ e[i(426)]();
366
+ let s = e[i(412)] === i(340) ? -1 : 1, c = u[i(415)]((e) => e.id === n[i(370)]), l = null;
367
+ for (let e = c + s; e >= 0 && e < u[i(455)]; e += s) {
374
368
  let s = {
375
- columnId: c[e].id,
376
- index: Math[i(505)](n[i(637)], r(c[e].id))
377
- }, l = Z({
369
+ columnId: u[e].id,
370
+ index: Math.min(n.index, r(u[e].id))
371
+ }, c = Z({
378
372
  item: t,
379
- from: a[i(630)],
373
+ from: a[i(469)],
380
374
  to: s
381
375
  });
382
- if (l === !0) return o(s);
383
- u ??= A(c[e]) + i(663) + l;
376
+ if (c === !0) return o(s);
377
+ l ??= k(u[e]) + i(316) + c;
384
378
  }
385
- Y(u ?? i(578));
379
+ Y(l ?? "더 옮길 열이 없어요.");
386
380
  return;
387
381
  }
388
382
  case " ":
389
- case "Enter": {
390
- e.preventDefault();
391
- let r = n[i(511)] !== a.from.columnId || n[i(637)] !== a[i(630)][i(637)];
383
+ case i(386): {
384
+ e[i(426)]();
385
+ let r = n[i(370)] !== a[i(469)][i(370)] || n.index !== a[i(469)][i(443)];
392
386
  r && X({
393
387
  item: t,
394
- from: a.from,
388
+ from: a[i(469)],
395
389
  to: n
396
- }), K[i(556)] = !0, J(null), Y(r ? "‘" + M(t) + "’ 카드를 놓았어요. " + ke(n, a.id) + "." : i(644));
390
+ }), K[i(345)] = !0, J(null), Y(r ? "‘" + M(t) + i(324) + ke(n, a.id) + "." : i(335));
397
391
  return;
398
392
  }
399
- case i(615):
400
- case i(606):
401
- e[i(554)] === i(615) && e[i(506)](), K.current = e[i(554)] === i(615), J(null), Y(i(658) + M(t) + i(500));
393
+ case i(437):
394
+ case i(479):
395
+ e.key === i(437) && e[i(426)](), K.current = e[i(412)] === "Escape", J(null), Y(i(334) + M(t) + i(475));
402
396
  return;
403
397
  }
404
398
  return;
405
399
  }
406
400
  let s = P[n] ?? [];
407
- switch (e[i(554)]) {
401
+ switch (e[i(412)]) {
408
402
  case "ArrowUp":
409
- case i(611):
410
- e[i(506)](), Oe(s[r + (e[i(554)] === "ArrowUp" ? -1 : 1)]?.id);
403
+ case i(299):
404
+ e[i(426)](), Oe(s[r + (e.key === i(476) ? -1 : 1)]?.id);
411
405
  return;
412
- case i(529):
413
- case "End":
414
- e[i(506)](), Oe(e.key === i(529) ? s[0]?.id : s[s[i(625)] - 1]?.id);
406
+ case i(454):
407
+ case i(460):
408
+ e.preventDefault(), Oe(e[i(412)] === "Home" ? s[0]?.id : s[s[i(455)] - 1]?.id);
415
409
  return;
416
- case "ArrowLeft":
417
- case i(571): {
418
- e[i(506)]();
419
- let t = e[i(554)] === i(608) ? -1 : 1;
420
- for (let e = o + t; e >= 0 && e < c[i(625)]; e += t) {
421
- let t = P[c[e].id] ?? [];
422
- if (t[i(625)]) return Oe(t[Math[i(505)](r, t[i(625)] - 1)].id);
410
+ case i(340):
411
+ case i(321): {
412
+ e[i(426)]();
413
+ let t = e[i(412)] === i(340) ? -1 : 1;
414
+ for (let e = o + t; e >= 0 && e < u[i(455)]; e += t) {
415
+ let t = P[u[e].id] ?? [];
416
+ if (t[i(455)]) return Oe(t[Math[i(360)](r, t.length - 1)].id);
423
417
  }
424
418
  return;
425
419
  }
426
- case i(543):
427
- if (!k) break;
428
- e[i(506)](), k(t);
420
+ case "Enter":
421
+ if (!A) break;
422
+ e[i(426)](), A(t);
429
423
  return;
430
424
  }
431
- if (e[i(554)] === " " || e[i(554)] === "Enter" && !k) {
432
- e[i(506)]();
425
+ if (e[i(412)] === " " || e[i(412)] === i(386) && !A) {
426
+ e[i(426)]();
433
427
  let a = {
434
428
  columnId: n,
435
429
  index: r
436
430
  };
437
431
  J({
438
432
  id: t.id,
439
- mode: "keyboard",
440
- phase: i(593),
433
+ mode: i(341),
434
+ phase: "dragging",
441
435
  from: a,
442
436
  over: a,
443
437
  blocked: null,
444
438
  width: 0,
445
439
  height: 0
446
- }), Y("‘" + M(t) + i(645) + ke(a, t.id) + i(570));
440
+ }), Y("‘" + M(t) + "’ 카드를 들었어요. " + ke(a, t.id) + i(389));
447
441
  }
448
- }, je = ie(c, P, F), Me = c[N(535)]((e) => P[e.id] ?? []), Ne = I && Me.some((e) => e.id === I) ? I : Me[0]?.id, Pe = F?.mode === "pointer" ? m(P, F.id)?.[N(557)] : void 0, Fe = ne ?? ((e, t) => C(p, {
442
+ }, je = ie(u, P, F), Me = u[N(451)]((e) => P[e.id] ?? []), Ne = I && Me[N(311)]((e) => e.id === I) ? I : Me[0]?.id, Pe = F?.[N(447)] === "pointer" ? m(P, F.id)?.[N(425)] : void 0, Fe = O ?? ((e, t) => S(p, {
449
443
  ...e,
450
444
  dragging: t.dragging
451
445
  }));
452
- return w("div", {
446
+ return C(N(320), {
453
447
  ref: R,
454
- className: f("ds-kanban", N(519), fe),
448
+ className: f(N(428), "ds-scroll", fe),
455
449
  style: {
456
450
  "--_col": le + "px",
457
451
  ...pe
458
452
  },
459
- role: N(558),
453
+ role: N(312),
460
454
  "aria-label": de,
461
- "data-dragging": F?.[N(577)] === N(593) ? F[N(523)] : void 0,
455
+ "data-dragging": F?.[N(343)] === "dragging" ? F.mode : void 0,
462
456
  children: [
463
- C(N(636), {
464
- className: N(587),
465
- children: c[N(489)]((e) => {
466
- let t = N, s = je[e.id] ?? [], c = P[e.id]?.[t(625)] ?? 0, u = F?.phase === t(593) && F[t(549)]?.[t(511)] === e.id && F.from[t(511)] !== e.id, d = F?.[t(577)] === t(593) && F.blocked?.[t(511)] === e.id ? F.blocked[t(508)] : null, f = e[t(626)] == null ? void 0 : c > e[t(626)] ? t(616) : c === e[t(626)] ? "warning" : t(582);
467
- return w(t(555), {
457
+ S("div", {
458
+ className: N(473),
459
+ children: u[N(359)]((e) => {
460
+ let t = N, s = je[e.id] ?? [], u = P[e.id]?.[t(455)] ?? 0, d = F?.[t(343)] === t(344) && F.over?.[t(370)] === e.id && F[t(469)][t(370)] !== e.id, f = F?.phase === t(344) && F.blocked?.[t(370)] === e.id ? F[t(376)][t(342)] : null, p = e[t(419)] == null ? void 0 : u > e[t(419)] ? t(390) : u === e[t(419)] ? t(296) : t(303);
461
+ return C(t(365), {
468
462
  ref: (n) => {
469
463
  let r = t;
470
- n ? B[r(556)].set(e.id, n) : B[r(556)][r(604)](e.id);
464
+ n ? B[r(345)][r(440)](e.id, n) : B[r(345)][r(385)](e.id);
471
465
  },
472
- className: t(650),
466
+ className: t(366),
473
467
  "aria-labelledby": L + "-" + e.id,
474
- "data-drop": d ? t(591) : u ? t(550) : void 0,
468
+ "data-drop": f ? t(376) : d ? t(317) : void 0,
475
469
  children: [
476
- w("div", {
477
- className: t(513),
478
- children: [w(a, {
470
+ C("div", {
471
+ className: t(302),
472
+ children: [C(a, {
479
473
  gap: 0,
480
- className: t(509),
481
- children: [w(i, {
474
+ className: t(470),
475
+ children: [C(i, {
482
476
  gap: 2,
483
477
  wrap: !1,
484
478
  children: [
485
- e[t(642)] && C(r, {
486
- color: e[t(642)],
487
- shape: t(648),
479
+ e.color && S(r, {
480
+ color: e.color,
481
+ shape: t(450),
488
482
  size: 8
489
483
  }),
490
- C(n, {
484
+ S(n, {
491
485
  id: L + "-" + e.id,
492
- variant: t(609),
493
- weight: "semibold",
486
+ variant: t(387),
487
+ weight: t(434),
494
488
  truncate: !0,
495
- children: e[t(592)]
489
+ children: e[t(326)]
496
490
  }),
497
- e[t(626)] == null ? C(o, {
498
- count: c,
491
+ e[t(419)] == null ? S(o, {
492
+ count: u,
499
493
  showZero: !0,
500
- variant: t(538),
501
- tone: t(582),
494
+ variant: t(416),
495
+ tone: "neutral",
502
496
  size: "sm",
503
- label: c + "개"
504
- }) : w(l, {
497
+ label: u + "개"
498
+ }) : C(l, {
505
499
  size: "sm",
506
- tone: f,
507
- className: t(651),
508
- "aria-label": c + t(564) + e[t(626)] + "개",
500
+ tone: p,
501
+ className: t(446),
502
+ "aria-label": u + t(349) + e[t(419)] + "개",
509
503
  children: [
510
- c,
504
+ u,
511
505
  "/",
512
- e[t(626)]
506
+ e[t(419)]
513
507
  ]
514
508
  })
515
509
  ]
516
- }), e[t(599)] != null && C(n, {
510
+ }), e[t(297)] != null && S(n, {
517
511
  variant: "caption",
518
- tone: "tertiary",
512
+ tone: t(350),
519
513
  truncate: !0,
520
- children: e[t(599)]
514
+ children: e[t(297)]
521
515
  })]
522
- }), ce && C("div", {
523
- className: t(627),
516
+ }), ce && S(t(320), {
517
+ className: t(444),
524
518
  children: ce(e)
525
519
  })]
526
520
  }),
527
- w("ul", {
521
+ C("ul", {
528
522
  ref: (n) => {
529
523
  let r = t;
530
- n ? V.current[r(633)](e.id, n) : V.current[r(604)](e.id);
524
+ n ? V[r(345)][r(440)](e.id, n) : V[r(345)][r(385)](e.id);
531
525
  },
532
- className: t(552),
526
+ className: t(308),
533
527
  "data-kanban-list": e.id,
534
528
  "aria-labelledby": L + "-" + e.id,
535
529
  children: [
536
- s[t(489)]((n) => n.type === t(649) ? C("li", {
537
- className: t(559),
538
- "data-kanban-key": T,
539
- style: { height: F?.height },
530
+ s.map((n) => n.type === t(481) ? S("li", {
531
+ className: "ds-kanban__placeholder",
532
+ "data-kanban-key": w,
533
+ style: { height: F?.[t(423)] },
540
534
  "aria-hidden": !0
541
- }, T) : C("li", {
542
- className: t(641),
543
- "data-kanban-key": n[t(557)].id,
544
- "data-lifted": n[t(618)] || void 0,
545
- "data-hidden": n[t(657)] || void 0,
546
- tabIndex: n[t(557)].id === Ne ? 0 : -1,
547
- "aria-describedby": L + "-hint",
548
- "aria-roledescription": "옮길 수 있는 카드",
535
+ }, w) : S("li", {
536
+ className: t(377),
537
+ "data-kanban-key": n.item.id,
538
+ "data-lifted": n.lifted || void 0,
539
+ "data-hidden": n[t(361)] || void 0,
540
+ tabIndex: n.item.id === Ne ? 0 : -1,
541
+ "aria-describedby": L + t(339),
542
+ "aria-roledescription": t(306),
549
543
  onFocus: (e) => {
550
544
  let r = t;
551
- e[r(550)] === e[r(485)] && ge(n.item.id);
545
+ e[r(317)] === e[r(413)] && ge(n[r(425)].id);
552
546
  },
553
547
  onPointerDown: (r) => {
554
- let i = t, a = (P[e.id] ?? [])[i(585)]((e) => e.id === n[i(557)].id);
555
- Ce(r, e.id, a, n[i(557)].id);
548
+ let i = t, a = (P[e.id] ?? [])[i(415)]((e) => e.id === n[i(425)].id);
549
+ Ce(r, e.id, a, n[i(425)].id);
556
550
  },
557
- onClick: () => De(n[t(557)]),
551
+ onClick: () => De(n[t(425)]),
558
552
  onKeyDown: (r) => {
559
- let i = t, a = (P[e.id] ?? [])[i(585)]((e) => e.id === n[i(557)].id);
560
- Ae(r, n[i(557)], e.id, a);
553
+ let i = t, a = (P[e.id] ?? []).findIndex((e) => e.id === n.item.id);
554
+ Ae(r, n[i(425)], e.id, a);
561
555
  },
562
- children: Fe(n[t(557)], {
556
+ children: Fe(n[t(425)], {
563
557
  dragging: !1,
564
- lifted: !!n[t(618)]
558
+ lifted: !!n[t(301)]
565
559
  })
566
- }, n[t(557)].id)),
567
- s[t(625)] === 0 && C("li", {
568
- className: "ds-kanban__empty",
560
+ }, n[t(425)].id)),
561
+ s.length === 0 && S("li", {
562
+ className: t(309),
569
563
  "aria-hidden": !0,
570
- children: C(n, {
571
- variant: t(533),
572
- tone: t(662),
564
+ children: S(n, {
565
+ variant: t(367),
566
+ tone: "tertiary",
573
567
  children: ue
574
568
  })
575
569
  }),
576
- d && C("li", {
577
- className: "ds-kanban__blocked",
578
- role: t(652),
579
- children: C(n, {
580
- variant: t(533),
570
+ f && S("li", {
571
+ className: t(337),
572
+ role: t(357),
573
+ children: S(n, {
574
+ variant: t(367),
581
575
  tone: "danger",
582
- children: d
576
+ children: f
583
577
  })
584
578
  })
585
579
  ]
586
580
  }),
587
- j && C(se, { onAdd: (t) => {
581
+ j && S(se, { onAdd: (t) => {
588
582
  j(e.id, t), requestAnimationFrame(() => requestAnimationFrame(() => {
589
- let t = D, n = V[t(556)].get(e.id);
590
- n?.[t(602)]({
591
- top: n.scrollHeight,
592
- behavior: t(565)
583
+ let t = c, n = V[t(345)][t(435)](e.id);
584
+ n?.[t(464)]({
585
+ top: n[t(323)],
586
+ behavior: t(438)
593
587
  });
594
588
  }));
595
589
  } })
@@ -597,26 +591,26 @@ function j({ columns: c, value: u, defaultValue: d, onValueChange: S, canMove: E
597
591
  }, e.id);
598
592
  })
599
593
  }),
600
- C("span", {
601
- id: L + N(553),
602
- className: N(594),
603
- children: "스페이스로 들어 올리고 화살표로 옮긴 뒤 스페이스로 놓아요. Esc로 취소해요."
594
+ S(N(402), {
595
+ id: L + N(339),
596
+ className: N(395),
597
+ children: N(358)
604
598
  }),
605
- C(N(636), {
606
- className: N(594),
607
- role: N(567),
608
- "aria-live": "assertive",
599
+ S(N(320), {
600
+ className: "ds-sr-only",
601
+ role: N(472),
602
+ "aria-live": N(398),
609
603
  children: _e
610
604
  }),
611
- F && Pe && ee(C(N(636), {
605
+ F && Pe && te(S(N(320), {
612
606
  ref: z,
613
- className: N(655),
607
+ className: "ds-kanban-overlay",
614
608
  style: { width: F.width },
615
- "data-state": F[N(577)],
616
- "data-blocked": F[N(591)] ? "" : void 0,
609
+ "data-state": F[N(343)],
610
+ "data-blocked": F.blocked ? "" : void 0,
617
611
  "aria-hidden": !0,
618
- children: C(N(636), {
619
- className: N(581),
612
+ children: S(N(320), {
613
+ className: N(436),
620
614
  children: Fe(Pe, {
621
615
  dragging: !0,
622
616
  lifted: !0
@@ -627,65 +621,71 @@ function j({ columns: c, value: u, defaultValue: d, onValueChange: S, canMove: E
627
621
  });
628
622
  }
629
623
  function se({ onAdd: t }) {
630
- let n = e, [r, o] = x(!1), [s, c] = x(""), l = b(null);
624
+ let n = e, [r, o] = b(!1), [s, l] = b(""), f = y(null);
631
625
  _(() => {
632
- let e = D;
633
- r && l[e(556)]?.[e(503)]();
626
+ let e = c;
627
+ r && f[e(345)]?.[e(313)]();
634
628
  }, [r]);
635
- let f = () => {
636
- o(!1), c("");
637
- }, p = () => {
638
- let e = D, n = s[e(551)]();
639
- n && (t(n), c(""), l[e(556)]?.[e(503)]());
629
+ let p = () => {
630
+ o(!1), l("");
631
+ }, m = () => {
632
+ let e = c, n = s[e(304)]();
633
+ n && (t(n), l(""), f[e(345)]?.[e(313)]());
640
634
  };
641
- return r ? C(n(636), {
642
- className: n(614),
643
- children: w(a, {
635
+ return r ? S(n(320), {
636
+ className: n(421),
637
+ children: C(a, {
644
638
  gap: 2,
645
- children: [C(d, {
646
- ref: l,
639
+ children: [S(d, {
640
+ ref: f,
647
641
  autoResize: !0,
648
642
  maxRows: 5,
649
643
  value: s,
650
- placeholder: n(507),
651
- "aria-label": "새 카드 제목",
652
- onChange: (e) => c(e[n(550)].value),
644
+ placeholder: n(305),
645
+ "aria-label": n(394),
646
+ onChange: (e) => l(e.target[n(430)]),
653
647
  onKeyDown: (e) => {
654
648
  let t = n;
655
- e[t(664)][t(521)] || e.keyCode === 229 || (e.key === "Enter" && !e[t(524)] ? (e[t(506)](), p()) : e[t(554)] === t(615) && (e.preventDefault(), f()));
649
+ e[t(431)][t(453)] || e[t(355)] === 229 || (e.key === t(386) && !e[t(410)] ? (e.preventDefault(), m()) : e[t(412)] === "Escape" && (e[t(426)](), p()));
656
650
  },
657
651
  onBlur: (e) => {
658
- let t = n, r = e.relatedTarget;
659
- !s[t(551)]() && !e[t(485)][t(504)](t(536))?.contains(r) && f();
652
+ let t = n, r = e[t(459)];
653
+ !s[t(304)]() && !e[t(413)][t(310)](t(333))?.[t(432)](r) && p();
660
654
  }
661
- }), w(i, {
655
+ }), C(i, {
662
656
  gap: 2,
663
- children: [C(u, {
664
- variant: n(537),
657
+ children: [S(u, {
658
+ variant: n(433),
665
659
  size: "sm",
666
- shortcut: n(588),
660
+ shortcut: "enter",
667
661
  disabled: !s.trim(),
668
- onClick: p,
662
+ onClick: m,
669
663
  children: "추가"
670
- }), C(u, {
671
- variant: n(653),
664
+ }), S(u, {
665
+ variant: n(468),
672
666
  size: "sm",
673
- onClick: f,
667
+ onClick: p,
674
668
  children: "취소"
675
669
  })]
676
670
  })]
677
671
  })
678
- }) : C(n(636), {
679
- className: "ds-kanban__foot",
680
- children: C(u, {
681
- variant: "ghost",
672
+ }) : S(n(320), {
673
+ className: n(421),
674
+ children: S(u, {
675
+ variant: n(468),
682
676
  size: "sm",
683
- icon: C(S, {}),
677
+ icon: S(x, {}),
684
678
  block: !0,
685
- className: n(539),
679
+ className: "ds-kanban__add",
686
680
  onClick: () => o(!0),
687
- children: n(647)
681
+ children: n(439)
688
682
  })
689
683
  });
690
684
  }
691
- export { j as KanbanBoard };
685
+ export { A as KanbanBoard };
686
+ function j() {
687
+ let e = /* @__PURE__ */ "z2v0.zhmTA2fUyMfUlw92zxjSyxLFx2nHCMq.rxnJyxbL.C21VB3rO.7lM065oCioY2LoQWGa.C2v0.Bwf4.x19Ryw5Iyw4TCgXHy2vOB2XKzxi.Aw5KzxG.zhmTA2fUyMfUx19Hy3rPB25Z.w2rHDgeTA2fUyMfUlwTLEv0.zhmTA2fUyMfUx19JB3vUDa.Bw9Kzq.zxnJyxbL.67Me7jA0ioYEIoYwToYALa.y2LYy2XL.zMXHDe1HCa.ChGSidaP.AxndB21WB3nPBMC.sg9Tzq.BgvUz3rO.yNv0Dg9U.C2nYB2XSvg9W.Cg9PBNrLCG.CMvSyxrLzfrHCMDLDa.rw5K.D2LKDgG.DMLICMf0zq.zgf0yxnLDa.C2nYB2XSvg8.CMvWBgfJzq.w2rHDgeTA2fUyMfUlwTLEt0I.y2XPzw50wq.z2HVC3q.zNjVBq.zhmTA2fUyMfUx19OzwfKAw5N.Bg9Uz1bYzxnZ.C3rHDhvZ.zhmTA2fUyMfUx190CMfJAW.yw5PBwf0zq.4OczioY5ToUtNoUkLcdSOjZSNPdRPQZSL5aG7j6i7jA07jQulG.qxjYB3DvCa.z2v0sxrLBuXHyMvS.7kEe7zAjio2vNoUpHca.vgfI.C3rYAw5N.CgXHy2vOB2XKzxi.nZy1ode4vNH2z0Hf.Cg9PBNrLCM1VDMu.D2fYBMLUzW.zgvZy3jPChrPB24.y3vIAwmTyMv6AwvYkdaUmZiSidaUnZiSidaSideP.qxjYB3DeB3DU.C3rVCfbYB3bHz2f0Aw9U.BgLMDgvK.zhmTA2fUyMfUx19OzwfK.BMv1DhjHBa.DhjPBq.7lM065oCioYGNoUQQq.7jIU6RI4ioYiMcdSNOJRIPqG7lM065oC.Dg91y2HTB3zL.zhmTA2fUyMfUx19SAxn0igrZlxnJCM9SBa.zhmTA2fUyMfUx19LBxb0Eq.y2XVC2vZDa.C29Tzq.CMvNAw9U.zM9JDxm.B2zMC2v0sgvPz2H0.C2nYB2XStgvMDa.ioYxTdOG.DgfYz2v0.DhjHBNnSyxrLm2qO.C3bSAwnL.zgL2.qxjYB3DsAwDODa.n1rQC0PMtG.C2nYB2XSsgvPz2H0.4OczioY5ToUtNoULVcdRHPpSLzJSLRtSMPqUia.Dw5KzwzPBMvK.DgL0Bgu.mtmZnZmZnuTTvuThBa.nZeZodiXnwXTveHQzG.mta1ndi4nhrttwf4Eq.CxvLCNLtzwXLy3rVCG.B2zMC2v0wa.DhjHBNnMB3jT.lMrZlwTHBMjHBL9FzM9VDa.7jIU6RIW6RIW66w8ioY3QoYgJo2wIoYwToYALc4G4Ocy.7kcC7j6q66AS7jEqioUgK+YvMoYwToYALc4.BgvMDa.zhmTA2fUyMfUx19IBg9JA2vK.DhjHBNnSyxrLka.lwHPBNq.qxjYB3Dmzwz0.A2v5yM9HCMq.CMvHC29U.CgHHC2u.zhjHz2DPBMC.y3vYCMvUDa.oe1dtvrYwG.zg9JDw1LBNrfBgvTzw50.B3zLCG.6RcClcdTLzZRJ4qG.DgvYDgLHCNK.BMvHCMvZDa.CxvLCNLtzwXLy3rVCKfSBa.ywjZ.A2fUyMfUs2v5.A2v5q29Kzq.CM91BMq.ChjLC2vUDgf0Aw9U.7iQK7y6y7j207iQK66gCioUtPoYwTcdSMkZRPQZQS6aG7zMu7ik07zgC66gCioYyRUQ4TcdRKQqG7iQK7y6y7j207iQK66gCioUgK+YvHoYALc4GrxnJ66gCioY3QoYgJo2vToYALc4.BwfW.BwLU.AgLKzgvU.BgfIzwW.B2zMC2v0vg9W.A2fUyMfUrhjHz2DPBMC.C2vJDgLVBG.zhmTA2fUyMfUx19Syw5L.y2fWDgLVBG.y2XPzw50wa.yMXVy2S.y29SDw1Uswq.BgLTAxrnB2rL.A2v5zg93BG.oNnJB3bLid4Gw2rHDgeTA2fUyMfUlwTLEv0.Cg9PBNrLCMnHBMnLBa.zhjHz1rOCMvZAg9Sza.yMXVy2TLza.zhmTA2fUyMfUx19PDgvT.B25MAw5PC2G.C2v0DgXPBMC.7j20ioYxToUHNcdSMk7QUlGG7iIyioYxHUYwToYALa.zM9YD2fYzhm.y29SDw1UCW.Dg9W.ChGP.zgvSzxrL.rw50zxi.BgfIzwWTBwq.ChGSia.lIdTMztSGRtTKzZROzWG7jIU6RIW6RoGioYkPo2oMoYDToYkPoUHNcdRHPpSLytSMPqUioY3QoYgJoUkLcbfC2mU.zgfUz2vY.B2zMC2v0wq.CgfYzw50rwXLBwvUDa.B2zMC2v0tgvMDa.7ioiioY5ToUtNcdSOjZRQQK.zhmTC3iTB25SEq.C3r5Bgu.AhLWB3q.yxnZzxj0AxzL.67ki7kE47jEqioUgK+YvMoYwToYALc4.z2v0qM91BMrPBMDdBgLLBNrszwn0.zMLUza.C3bHBG.Cg9PBNrLCNvW.ndyWnZa3vKjxsLv5.mJyYmdGYng5XCNzJqq.ioYxTcWG.zMLSDgvY.mtK0otm2zfrQq3zL.y2fUy2vS.C2HPzNrlzxK.zM9YrwfJAa.A2v5.y3vYCMvUDfrHCMDLDa.ywrKrxzLBNrmAxn0zw5LCG.zMLUzeLUzgv4.C29MDa.Cg9PBNrLCKLK.4OczioY5ToUtNoULVca.BgLTAxq.Cg9PBNrLCLr5Cgu.zhmTA2fUyMfUx19MB290.CMvTB3zLrxzLBNrmAxn0zw5LCG.AgvPz2H0.ywn0AxzLrwXLBwvUDa.AxrLBq.ChjLDMvUDerLzMf1Bhq.CMLNAhq.zhmTA2fUyMfU.z2v0qw5PBwf0Aw9UCW.DMfSDwu.BMf0AxzLrxzLBNq.y29UDgfPBNm.ChjPBwfYEq.C2vTAwjVBgq".split(".");
688
+ return j = function() {
689
+ return e;
690
+ }, j();
691
+ }