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