@actuate-media/cms-admin 0.68.0 → 0.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/AdminRoot.d.ts.map +1 -1
  3. package/dist/AdminRoot.js +31 -11
  4. package/dist/AdminRoot.js.map +1 -1
  5. package/dist/__tests__/hooks/useIdleLogout.test.js +57 -2
  6. package/dist/__tests__/hooks/useIdleLogout.test.js.map +1 -1
  7. package/dist/__tests__/router/query-string.test.d.ts +2 -0
  8. package/dist/__tests__/router/query-string.test.d.ts.map +1 -0
  9. package/dist/__tests__/router/query-string.test.js +44 -0
  10. package/dist/__tests__/router/query-string.test.js.map +1 -0
  11. package/dist/__tests__/views/users-selected-deeplink.render.test.d.ts +2 -0
  12. package/dist/__tests__/views/users-selected-deeplink.render.test.d.ts.map +1 -0
  13. package/dist/__tests__/views/users-selected-deeplink.render.test.js +91 -0
  14. package/dist/__tests__/views/users-selected-deeplink.render.test.js.map +1 -0
  15. package/dist/hooks/useIdleLogout.d.ts +21 -6
  16. package/dist/hooks/useIdleLogout.d.ts.map +1 -1
  17. package/dist/hooks/useIdleLogout.js +41 -8
  18. package/dist/hooks/useIdleLogout.js.map +1 -1
  19. package/dist/router/index.d.ts +7 -0
  20. package/dist/router/index.d.ts.map +1 -1
  21. package/dist/router/index.js +23 -4
  22. package/dist/router/index.js.map +1 -1
  23. package/dist/views/MediaBrowser.d.ts +4 -1
  24. package/dist/views/MediaBrowser.d.ts.map +1 -1
  25. package/dist/views/MediaBrowser.js +27 -5
  26. package/dist/views/MediaBrowser.js.map +1 -1
  27. package/dist/views/SEO.d.ts.map +1 -1
  28. package/dist/views/SEO.js +2 -1
  29. package/dist/views/SEO.js.map +1 -1
  30. package/dist/views/Settings.d.ts +4 -1
  31. package/dist/views/Settings.d.ts.map +1 -1
  32. package/dist/views/Settings.js +4 -3
  33. package/dist/views/Settings.js.map +1 -1
  34. package/dist/views/Users.d.ts +4 -1
  35. package/dist/views/Users.d.ts.map +1 -1
  36. package/dist/views/Users.js +22 -2
  37. package/dist/views/Users.js.map +1 -1
  38. package/dist/views/settings/SecurityTab.d.ts.map +1 -1
  39. package/dist/views/settings/SecurityTab.js +2 -1
  40. package/dist/views/settings/SecurityTab.js.map +1 -1
  41. package/package.json +2 -2
  42. package/src/AdminRoot.tsx +53 -12
  43. package/src/__tests__/hooks/useIdleLogout.test.tsx +103 -1
  44. package/src/__tests__/router/query-string.test.ts +54 -0
  45. package/src/__tests__/views/users-selected-deeplink.render.test.tsx +102 -0
  46. package/src/hooks/useIdleLogout.ts +65 -13
  47. package/src/router/index.ts +25 -4
  48. package/src/views/MediaBrowser.tsx +28 -5
  49. package/src/views/SEO.tsx +2 -1
  50. package/src/views/Settings.tsx +7 -2
  51. package/src/views/Users.tsx +23 -2
  52. package/src/views/settings/SecurityTab.tsx +2 -1
@@ -4,8 +4,9 @@ import * as Dialog from '@radix-ui/react-dialog';
4
4
  import { adminPortalContainer } from '../lib/portal-container.js';
5
5
  import * as DropdownMenu from '@radix-ui/react-dropdown-menu';
6
6
  import { Users as UsersIcon, Mail, ShieldCheck, Ticket, Search, Plus, X, Sparkles, ShieldAlert, MoreHorizontal, ChevronDown, Send, RefreshCw, Ban, AlertTriangle, Check, SlidersHorizontal, } from 'lucide-react';
7
- import { useState, useMemo, useCallback } from 'react';
7
+ import { useState, useMemo, useCallback, useEffect, useRef } from 'react';
8
8
  import { toast } from 'sonner';
9
+ import { parseRouteQuery } from '../router/index.js';
9
10
  import { useApiData } from '../lib/useApiData.js';
10
11
  import { cmsApi } from '../lib/api.js';
11
12
  import { Button } from '../components/ui/Button.js';
@@ -215,7 +216,7 @@ const ROLE_PILLS = [
215
216
  'Editor',
216
217
  'Viewer',
217
218
  ];
218
- export function Users({ embedded = false } = {}) {
219
+ export function Users({ embedded = false, currentPath } = {}) {
219
220
  const members = useApiData('/users?pageSize=200');
220
221
  const invites = useApiData('/invites');
221
222
  const stats = useApiData('/users/stats');
@@ -231,6 +232,25 @@ export function Users({ embedded = false } = {}) {
231
232
  stats.refetch();
232
233
  review.refetch();
233
234
  }, [members, invites, stats, review]);
235
+ // Deep link from the command palette (`/users?selected=<id>`): open the
236
+ // member's detail drawer once the list loads. Each query value is handled
237
+ // once, so closing the drawer isn't overridden on refetch; ids that don't
238
+ // match a loaded member are ignored.
239
+ const selectedUserId = useMemo(() => {
240
+ const source = currentPath ?? (typeof window !== 'undefined' ? window.location.search : '');
241
+ return parseRouteQuery(source).get('selected');
242
+ }, [currentPath]);
243
+ const handledSelectedRef = useRef(null);
244
+ useEffect(() => {
245
+ if (!selectedUserId || members.loading)
246
+ return;
247
+ if (handledSelectedRef.current === selectedUserId)
248
+ return;
249
+ if (!(members.data ?? []).some((m) => m.id === selectedUserId))
250
+ return;
251
+ handledSelectedRef.current = selectedUserId;
252
+ setDetailUserId(selectedUserId);
253
+ }, [selectedUserId, members.loading, members.data]);
234
254
  const currentUserRole = useMemo(() => (members.data ?? []).find((m) => m.isCurrentUser)?.roleName ?? null, [members.data]);
235
255
  const isOwner = currentUserRole === 'Owner';
236
256
  const roleOptions = useMemo(() => (isOwner ? [OWNER_ROLE_OPTION, ...BASE_ROLE_OPTIONS] : BASE_ROLE_OPTIONS), [isOwner]);
@@ -1 +1 @@
1
- {"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/views/Users.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/views/Users.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EACL,KAAK,IAAI,SAAS,EAClB,IAAI,EACJ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,CAAC,EACD,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,IAAI,EACJ,SAAS,EACT,GAAG,EACH,aAAa,EACb,KAAK,EACL,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAkB,MAAM,OAAO,CAAA;AACzF,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAyE9D,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAE9E,MAAM,SAAS,GAA2B;IACxC,KAAK,EAAE,wBAAwB;IAC/B,KAAK,EAAE,sBAAsB;IAC7B,MAAM,EAAE,kCAAkC;IAC1C,MAAM,EAAE,gCAAgC;CACzC,CAAA;AAED,MAAM,WAAW,GAAoE;IACnF,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE;IACpE,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE;IACtE,OAAO,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACrF,SAAS,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,EAAE;IAC5F,MAAM,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC5E,WAAW,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,aAAa,EAAE;CACjG,CAAA;AAED,MAAM,YAAY,GAAkD;IAClE,QAAQ,EAAE,gBAAgB;IAC1B,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,YAAY;IACpB,GAAG,EAAE,SAAS;CACf,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAU,CAAA;AAQpG,MAAM,iBAAiB,GAAiB;IACtC;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,wDAAwD;KAC/D;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,uDAAuD;KAC9D;IACD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,4CAA4C,EAAE;CACzF,CAAA;AAED,MAAM,iBAAiB,GAAe;IACpC,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,iEAAiE;CACxE,CAAA;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,SAAS,UAAU,CAAC,EAAU;IAC5B,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACzE,OAAO,YAAY,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAE,CAAA;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,GAAkB;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAA;IACxB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAA;IACpC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAA;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA;IACvC,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,YAAY,CAAA;IACjC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,GAAG,IAAI,OAAO,CAAA;IACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;IACnC,IAAI,KAAK,GAAG,EAAE;QAAE,OAAO,GAAG,KAAK,OAAO,CAAA;IACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,WAAW,CAAA;IAClC,OAAO,GAAG,IAAI,WAAW,CAAA;AAC3B,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,KAAK,EACL,KAAK,EACL,GAAG,GAMJ;IACC,OAAO,CACL,eAAK,SAAS,EAAC,6CAA6C,aAC1D,eAAK,SAAS,EAAC,+CAA+C,aAC3D,IAAI,EACL,eAAM,SAAS,EAAC,SAAS,YAAE,KAAK,GAAQ,IACpC,EACN,cAAK,SAAS,EAAC,gDAAgD,YAAE,KAAK,GAAO,EAC5E,GAAG,IAAI,cAAK,SAAS,EAAC,sCAAsC,YAAE,GAAG,GAAO,IACrE,CACP,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAgD;IACnF,IAAI,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,CACL,cAAK,SAAS,EAAC,uCAAuC,YACnD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,KAAC,QAAQ,IAAS,OAAO,EAAC,MAAM,IAAjB,CAAC,CAAmB,CACpC,CAAC,GACE,CACP,CAAA;IACH,CAAC;IACD,MAAM,UAAU,GACd,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,SAAS,EAAE,CAAA;IACnF,OAAO,CACL,eAAK,SAAS,EAAC,uCAAuC,aACpD,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,wBAAgB,EACzC,KAAK,EAAC,SAAS,EACf,KAAK,EAAE,KAAK,CAAC,OAAO,GACpB,EACF,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,wBAAgB,EACpC,KAAK,EAAC,iBAAiB,EACvB,KAAK,EAAE,KAAK,CAAC,cAAc,GAC3B,EACF,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,wBAAgB,EAC3C,KAAK,EAAC,QAAQ,EACd,KAAK,EAAE,KAAK,CAAC,MAAM,GACnB,EACF,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,wBAAgB,EACtC,KAAK,EAAC,YAAY,EAClB,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,GAC9D,IACE,CACP,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,SAAS,kBAAkB,CAAC,EAC1B,eAAe,EACf,KAAK,EACL,SAAS,GAKV;IACC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAE,CAAA;IAC/B,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAA;IACvC,OAAO,CACL,eACE,SAAS,EAAC,yEAAyE,EACnF,IAAI,EAAC,QAAQ,eACH,QAAQ,aAElB,eAAM,SAAS,EAAC,+FAA+F,YAC7G,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,wBAAgB,GAChC,EACP,eAAK,SAAS,EAAC,gBAAgB,aAC7B,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAM,SAAS,EAAC,0CAA0C,YAAE,GAAG,CAAC,KAAK,GAAQ,EAC7E,gBAAM,SAAS,EAAC,0GAA0G,aACxH,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,wBAAgB,UAE7B,EACP,gBAAM,SAAS,EAAC,kEAAkE,aAChF,eAAM,SAAS,EAAE,4BAA4B,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAI,EAC5E,GAAG,CAAC,QAAQ,IACR,IACH,EACN,YAAG,SAAS,EAAC,sCAAsC,YAAE,GAAG,CAAC,WAAW,GAAK,EACxE,IAAI,GAAG,CAAC,IAAI,CACX,aAAG,SAAS,EAAC,oCAAoC,kBAC7C,IAAI,0BAAsB,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAC7C,CACL,IACG,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC/C,KAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAC1D,GAAG,CAAC,iBAAiB,GACf,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAC7B,SAAS,EAAC,0EAA0E,gBACzE,wBAAwB,YAEnC,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,wBAAgB,GACpB,IACL,IACF,CACP,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,SAAS,MAAM,CAAC,EAAE,GAAG,EAAgB;IACnC,OAAO,CACL,eACE,SAAS,EAAE,iGAAiG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,iCAG/H,GAAG,CAAC,QAAQ,GACR,CACR,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,GAAG,EACH,OAAO,EACP,QAAQ,EACR,QAAQ,GAMT;IACC,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,CAAA;IACxD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,eACE,SAAS,EAAE,yEAAyE,IAAI,EAAE,YAEzF,GAAG,CAAC,QAAQ,GACR,CACR,CAAA;IACH,CAAC;IACD,OAAO,CACL,MAAC,YAAY,CAAC,IAAI,eAChB,KAAC,YAAY,CAAC,OAAO,IAAC,OAAO,kBAC3B,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,mHAAmH,IAAI,EAAE,gBACxH,mBAAmB,GAAG,CAAC,IAAI,kBAAkB,GAAG,CAAC,QAAQ,EAAE,aAEtE,GAAG,CAAC,QAAQ,EACb,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,wBAAgB,IAC9B,GACY,EACvB,KAAC,YAAY,CAAC,MAAM,IAAC,SAAS,EAAE,oBAAoB,EAAE,YACpD,KAAC,YAAY,CAAC,OAAO,IACnB,KAAK,EAAC,OAAO,EACb,UAAU,EAAE,CAAC,EACb,SAAS,EAAC,qEAAqE,YAE9E,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,MAAC,YAAY,CAAC,IAAI,IAEhB,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EACnC,SAAS,EAAC,oJAAoJ,aAE7J,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,KAAK,IAAI,CAC3C,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,YAAY,wBAAe,CACvD,KAPI,GAAG,CAAC,KAAK,CAQI,CACrB,CAAC,GACmB,GACH,IACJ,CACrB,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,MAAM,EAAyB;IACpD,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAChC,OAAO,CACL,gBAAM,SAAS,EAAE,4CAA4C,IAAI,CAAC,IAAI,EAAE,aACtE,eAAM,SAAS,EAAE,4BAA4B,IAAI,CAAC,GAAG,EAAE,wBAAgB,EACtE,IAAI,CAAC,KAAK,IACN,CACR,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,MAAM,QAAQ,GAAG,4BAA4B,CAAA;AAE7C,SAAS,WAAW,CAAC,EACnB,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,SAAS,EACT,SAAS,GAQV;IACC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC1C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACrD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAEjE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,QAAQ,CAAC,EAAE,CAAC,CAAA;QACZ,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjB,UAAU,CAAC,EAAE,CAAC,CAAA;QACd,gBAAgB,CAAC,CAAC,CAAC,CAAA;QACnB,eAAe,CAAC,KAAK,CAAC,CAAA;QACtB,aAAa,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,YAAY,GAAG,KAAK,EAAE,CAAY,EAAE,EAAE;QAC1C,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,IAAI,OAAO;YAAE,OAAM;QACnB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QAC5B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,aAAa,CAAC,8BAA8B,CAAC,CAAA;YAC7C,OAAM;QACR,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAA4C,eAAe,EAAE;gBACnF,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,OAAO;oBACd,IAAI;oBACJ,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,SAAS;oBACpC,aAAa;iBACd,CAAC;aACH,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;gBACtB,KAAK,CAAC,OAAO,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAA;YAChD,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;gBAC/B,MAAM,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;gBACxE,KAAK,CAAC,OAAO,CACX,6EAA6E,EAC7E;oBACE,QAAQ,EAAE,IAAI;iBACf,CACF,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;YACtC,CAAC;YACD,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,KAAK,EAAE,CAAA;YACP,SAAS,EAAE,CAAA;QACb,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACnE,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC,CAAA;IAED,OAAO,CACL,KAAC,MAAM,CAAC,IAAI,IACV,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,YAAY,CAAC,CAAC,CAAC,CAAA;YACf,IAAI,CAAC,CAAC;gBAAE,KAAK,EAAE,CAAA;QACjB,CAAC,YAED,MAAC,MAAM,CAAC,MAAM,IAAC,SAAS,EAAE,oBAAoB,EAAE,aAC9C,KAAC,MAAM,CAAC,OAAO,IAAC,SAAS,EAAC,iDAAiD,GAAG,EAC9E,MAAC,MAAM,CAAC,OAAO,IAAC,SAAS,EAAC,mMAAmM,aAC3N,eAAK,SAAS,EAAC,wCAAwC,aACrD,KAAC,MAAM,CAAC,KAAK,IAAC,SAAS,EAAC,0CAA0C,8BAEnD,EACf,KAAC,MAAM,CAAC,KAAK,IAAC,OAAO,kBACnB,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,wEAAwE,gBACvE,OAAO,YAElB,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,wBAAgB,GACpB,GACI,IACX,EAEL,SAAS,IAAI,CACZ,eAAK,SAAS,EAAC,wGAAwG,aACrH,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,iBAAiB,wBAAe,EACnE,4GAEO,IACH,CACP,EACA,CAAC,eAAe,IAAI,CAAC,SAAS,IAAI,CACjC,eAAK,SAAS,EAAC,2GAA2G,aACxH,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,iBAAiB,wBAAe,EAC1D,0HAEO,IACH,CACP,EAED,gBAAM,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC,WAAW,aACjD,0BACE,gBACE,OAAO,EAAC,cAAc,EACtB,SAAS,EAAC,qDAAqD,8BAGzD,EACR,gBACE,EAAE,EAAC,cAAc,EACjB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gDACd,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gDACxB,IAAI,UAAU;oDAAE,aAAa,CAAC,IAAI,CAAC,CAAA;4CACrC,CAAC,EACD,WAAW,EAAC,kBAAkB,EAC9B,YAAY,EAAC,KAAK,kBACJ,CAAC,CAAC,UAAU,sBACR,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,EAC/D,SAAS,EAAC,+IAA+I,EACzJ,QAAQ,SACR,EACD,UAAU,IAAI,CACb,YAAG,EAAE,EAAC,oBAAoB,EAAC,SAAS,EAAC,+BAA+B,EAAC,IAAI,EAAC,OAAO,YAC9E,UAAU,GACT,CACL,IACG,EAEN,+BACE,iBAAQ,SAAS,EAAC,qDAAqD,qBAAc,EACrF,cAAK,SAAS,EAAC,WAAW,YACvB,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gDACvB,MAAM,MAAM,GAAG,IAAI,KAAK,GAAG,CAAC,KAAK,CAAA;gDACjC,OAAO,CACL,iBAEE,SAAS,EAAE,iFACT,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,kCACvC,EAAE,aAEF,gBACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,aAAa,EAClB,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAClC,SAAS,EAAC,qBAAqB,GAC/B,EACF,gBAAM,SAAS,EAAC,SAAS,aACvB,eAAM,SAAS,EAAC,gDAAgD,YAC7D,GAAG,CAAC,KAAK,GACL,EACP,eAAM,SAAS,EAAC,qCAAqC,YAAE,GAAG,CAAC,IAAI,GAAQ,IAClE,KAlBF,GAAG,CAAC,KAAK,CAmBR,CACT,CAAA;4CACH,CAAC,CAAC,GACE,IACG,EAEX,0BACE,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACzC,SAAS,EAAC,2GAA2G,mBACtG,YAAY,aAE3B,KAAC,WAAW,IACV,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,wBAAwB,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,wBAErE,wBAEK,EACR,YAAY,IAAI,CACf,eAAK,SAAS,EAAC,gBAAgB,aAC7B,0BACE,iBACE,OAAO,EAAC,gBAAgB,EACxB,SAAS,EAAC,qDAAqD,+BAEhD,GAAG,EAClB,eAAM,SAAS,EAAC,mCAAmC,2BAAkB,IAC/D,EACR,mBACE,EAAE,EAAC,gBAAgB,EACnB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC3C,IAAI,EAAE,CAAC,EACP,WAAW,EAAC,8CAA8C,EAC1D,SAAS,EAAC,+IAA+I,GACzJ,IACE,EACN,0BACE,gBACE,OAAO,EAAC,eAAe,EACvB,SAAS,EAAC,qDAAqD,kCAGzD,EACR,kBACE,EAAE,EAAC,eAAe,EAClB,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EACzD,SAAS,EAAC,+IAA+I,aAEzJ,iBAAQ,KAAK,EAAE,CAAC,uBAAiB,EACjC,iBAAQ,KAAK,EAAE,EAAE,wBAAkB,EACnC,iBAAQ,KAAK,EAAE,EAAE,wBAAkB,IAC5B,IACL,IACF,CACP,IACG,EAEN,eAAK,SAAS,EAAC,0CAA0C,aACvD,KAAC,MAAM,CAAC,KAAK,IAAC,OAAO,kBACnB,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,uBAE9B,GACI,EACf,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,IAAI,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAC/C,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,wBAAgB,CAAC,CAAC,CAAC,SAAS,YAE9D,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,GAC9B,IACL,IACD,IACQ,IACH,GACJ,CACf,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,UAAU,GAA2D;IACzE,KAAK;IACL,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;CACT,CAAA;AAUD,MAAM,UAAU,KAAK,CAAC,EAAE,QAAQ,GAAG,KAAK,EAAE,WAAW,KAAiB,EAAE;IACtE,MAAM,OAAO,GAAG,UAAU,CAAc,qBAAqB,CAAC,CAAA;IAC9D,MAAM,OAAO,GAAG,UAAU,CAAc,UAAU,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,UAAU,CAAW,cAAc,CAAC,CAAA;IAClD,MAAM,MAAM,GAAG,UAAU,CAAsB,gBAAgB,CAAC,CAAA;IAEhE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACxC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAA8B,KAAK,CAAC,CAAA;IAChF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACnD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACrE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAM5B,IAAI,CAAC,CAAA;IAEf,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,OAAO,CAAC,OAAO,EAAE,CAAA;QACjB,OAAO,CAAC,OAAO,EAAE,CAAA;QACjB,KAAK,CAAC,OAAO,EAAE,CAAA;QACf,MAAM,CAAC,OAAO,EAAE,CAAA;IAClB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IAErC,wEAAwE;IACxE,0EAA0E;IAC1E,0EAA0E;IAC1E,qCAAqC;IACrC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAC3F,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAChD,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IACjB,MAAM,kBAAkB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAA;IACtD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO;YAAE,OAAM;QAC9C,IAAI,kBAAkB,CAAC,OAAO,KAAK,cAAc;YAAE,OAAM;QACzD,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC;YAAE,OAAM;QACtE,kBAAkB,CAAC,OAAO,GAAG,cAAc,CAAA;QAC3C,eAAe,CAAC,cAAc,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAEnD,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,IAAI,IAAI,EACzE,CAAC,OAAO,CAAC,IAAI,CAAC,CACf,CAAA;IACD,MAAM,OAAO,GAAG,eAAe,KAAK,OAAO,CAAA;IAE3C,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAC/E,CAAC,OAAO,CAAC,CACV,CAAA;IAED,MAAM,IAAI,GAAU,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,UAAU,GAAU,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,UAAU,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,WAAW;YAC3C,aAAa,EAAE,CAAC,CAAC,aAAa;SAC/B,CAAC,CAAC,CAAA;QACH,MAAM,UAAU,GAAU,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;aAC3C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;aAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK;YACtC,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE;YACpD,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACnE,UAAU,EAAE,KAAK;YACjB,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,CAAC,CAAC,SAAS;YACvB,aAAa,EAAE,KAAK;SACrB,CAAC,CAAC,CAAA;QACL,OAAO,CAAC,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,CAAA;IACvC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAEhC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,CAAC,GAAG,IAAI,CAAA;QACZ,IAAI,UAAU,KAAK,KAAK;YAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAA;QAC5E,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;YACrC,CAAC,GAAG,CAAC,CAAC,MAAM,CACV,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAClC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACnC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACtC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CACzB,CAAA;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAA;IAE9B,4EAA4E;IAC5E,UAAU;IACV,4EAA4E;IAE5E,MAAM,gBAAgB,GAAG,WAAW,CAClC,KAAK,EAAE,GAAQ,EAAE,IAAY,EAAE,EAAE;QAC/B,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,OAAM;QACzD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,EAAE,OAAO,CAAA;QACvF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;QACvF,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACtB,OAAM;QACR,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAChF,UAAU,EAAE,CAAA;IACd,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAA;IAED,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,GAAQ,EAAE,IAAY,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjD,UAAU,CAAC;gBACT,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,qBAAqB;gBACrE,WAAW,EACT,IAAI,KAAK,OAAO;oBACd,CAAC,CAAC,gGAAgG,GAAG,CAAC,IAAI,YAAY;oBACtH,CAAC,CAAC,oBAAoB,GAAG,CAAC,IAAI,oCAAoC;gBACtE,YAAY,EAAE,aAAa;gBAC3B,SAAS,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC;aAC7C,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC7B,CAAC,EACD,CAAC,gBAAgB,CAAC,CACnB,CAAA;IAED,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,GAAQ,EAAE,EAAE;QACX,UAAU,CAAC;YACT,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,GAAG,GAAG,CAAC,IAAI,4IAA4I;YACpK,YAAY,EAAE,eAAe;YAC7B,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,KAAK,IAAI,EAAE;gBACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAClE,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;oBACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACtB,OAAM;gBACR,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,sBAAsB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC/C,UAAU,EAAE,CAAA;YACd,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAA;IAED,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,GAAQ,EAAE,EAAE;QACX,UAAU,CAAC;YACT,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,qBAAqB,GAAG,CAAC,KAAK,oDAAoD;YAC/F,YAAY,EAAE,eAAe;YAC7B,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,KAAK,IAAI,EAAE;gBACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;gBACzE,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;oBACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACtB,OAAM;gBACR,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;gBACrC,UAAU,EAAE,CAAA;YACd,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAA;IAED,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,GAAQ,EAAE,EAAE;QACjB,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,YAAY,GAAG,CAAC,EAAE,SAAS,EAC3B,EAAE,MAAM,EAAE,MAAM,EAAE,CACnB,CAAA;QACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACtB,OAAM;QACR,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;YACtB,KAAK,CAAC,OAAO,CAAC,yBAAyB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;QACrD,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACxE,KAAK,CAAC,OAAO,CAAC,wEAAwE,EAAE;gBACtF,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;QACrC,CAAC;QACD,UAAU,EAAE,CAAA;IACd,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAA;IAED,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,GAAsB,EAAE,EAAE;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7E,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,IAAI,MAAM,EAAE,CAAC;YAC1C,YAAY,CAAC,MAAM,CAAC,CAAA;YACpB,OAAM;QACR,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,MAAM,CAAC,CAAA;YACpB,OAAM;QACR,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;IAC9D,CAAC,EACD,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,CAAC,CACnC,CAAA;IAED,MAAM,qBAAqB,GAAG,WAAW,CACvC,KAAK,EAAE,GAAsB,EAAE,EAAE;QAC/B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,kBAAkB,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE;YAC/E,MAAM,EAAE,MAAM;SACf,CAAC,CAAA;QACF,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACtB,OAAM;QACR,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAA;QACzC,MAAM,CAAC,OAAO,EAAE,CAAA;IAClB,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,4EAA4E;IAC5E,SAAS;IACT,4EAA4E;IAE5E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAA;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAA;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAA;IAChD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;IACtF,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAA;IAEhG,OAAO,CACL,eAAK,SAAS,EAAE,aAAa,WAAW,EAAE,aACxC,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,EAEzD,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3D,KAAC,kBAAkB,IACjB,eAAe,EAAE,MAAM,CAAC,IAAI,EAC5B,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,qBAAqB,GAChC,CACH,EAED,eAAK,SAAS,EAAC,yCAAyC,aAEtD,eAAK,SAAS,EAAC,+FAA+F,aAC5G,0BACE,aAAI,SAAS,EAAC,0CAA0C,6BAAkB,EAC1E,aAAG,SAAS,EAAC,+BAA+B,aACzC,WAAW,OAAG,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,iCAE7D,IACA,EACN,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,UAAU,aACvB,KAAC,MAAM,IACL,IAAI,EAAE,EAAE,EACR,SAAS,EAAC,gEAAgE,wBAE1E,EACF,gBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,WAAW,EAAC,+BAA0B,gBAC3B,qBAAqB,EAChC,SAAS,EAAC,4JAA4J,GACtK,IACE,EACN,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAClC,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,EACrD,QAAQ,EAAE,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,wBAAgB,4BAGjC,IACL,IACF,EAGN,cACE,SAAS,EAAC,uDAAuD,EACjE,IAAI,EAAC,OAAO,gBACD,gBAAgB,YAE1B,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACxB,KAAC,UAAU,IAAY,MAAM,EAAE,UAAU,KAAK,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YACnF,IAAI,IADU,IAAI,CAER,CACd,CAAC,GACE,EAGL,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,QAAQ,IAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAC,KAAK,GAAG,CAC3D,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACd,eAAK,SAAS,EAAC,6BAA6B,aAC1C,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,2BAA2B,wBAAe,EAC7E,eAAM,SAAS,EAAC,iCAAiC,YAAE,SAAS,GAAQ,EACpE,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,UAAU,sBAE9C,IACL,CACP,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACtB,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,wBAAgB,EACzC,KAAK,EAAC,qBAAqB,EAC3B,WAAW,EAAC,8DAA8D,EAC1E,WAAW,EAAC,aAAa,EACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,GACnC,CACH,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC9B,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,wBAAgB,EACtC,KAAK,EAAC,6BAA6B,EACnC,WAAW,EAAC,wCAAwC,EACpD,WAAW,EAAC,eAAe,EAC3B,QAAQ,EAAE,GAAG,EAAE;4BACb,SAAS,CAAC,EAAE,CAAC,CAAA;4BACb,aAAa,CAAC,KAAK,CAAC,CAAA;wBACtB,CAAC,GACD,CACH,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,iBAAiB,YAC9B,iBAAO,SAAS,EAAC,sBAAsB,aACrC,0BACE,cAAI,SAAS,EAAC,gEAAgE,aAC5E,aAAI,SAAS,EAAC,uBAAuB,uBAAY,EACjD,aAAI,SAAS,EAAC,uBAAuB,qBAAU,EAC/C,aAAI,SAAS,EAAC,uBAAuB,uBAAY,EACjD,aAAI,SAAS,EAAC,uBAAuB,4BAAiB,EACtD,aAAI,SAAS,EAAC,uBAAuB,YACnC,eAAM,SAAS,EAAC,SAAS,wBAAe,GACrC,IACF,GACC,EACR,gBAAO,SAAS,EAAC,wBAAwB,YACtC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;wCACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAA;wCACtC,kEAAkE;wCAClE,kDAAkD;wCAClD,MAAM,kBAAkB,GACtB,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC;4CACtC,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,aAAa,CAAC,CAAA;wCACjD,MAAM,UAAU,GAAG,GAAG,EAAE;4CACtB,IAAI,CAAC,QAAQ;gDAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wCACxC,CAAC,CAAA;wCACD,OAAO,CACL,cAEE,SAAS,EAAE,wCACT,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAClB,EAAE,KACE,CAAC,QAAQ;gDACX,CAAC,CAAC,EAAE;gDACJ,CAAC,CAAC;oDACE,IAAI,EAAE,QAAQ;oDACd,QAAQ,EAAE,CAAC;oDACX,YAAY,EAAE,oBAAoB,GAAG,CAAC,IAAI,EAAE;oDAC5C,OAAO,EAAE,UAAU;oDACnB,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE;wDACpC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;4DACvC,CAAC,CAAC,cAAc,EAAE,CAAA;4DAClB,UAAU,EAAE,CAAA;wDACd,CAAC;oDACH,CAAC;iDACF,CAAC,aAEN,aAAI,SAAS,EAAC,WAAW,YACvB,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,MAAM,IAAC,GAAG,EAAE,GAAG,GAAI,EACpB,eAAK,SAAS,EAAC,SAAS,aACtB,eAAK,SAAS,EAAC,oEAAoE,aACjF,eAAM,SAAS,EAAC,UAAU,YAAE,GAAG,CAAC,IAAI,GAAQ,EAC3C,GAAG,CAAC,aAAa,IAAI,CACpB,eAAM,SAAS,EAAC,yDAAyD,oBAElE,CACR,EACA,GAAG,CAAC,cAAc,IAAI,CACrB,eAAM,SAAS,EAAC,qDAAqD,yBAE9D,CACR,IACG,EACN,cAAK,SAAS,EAAC,wCAAwC,YACpD,GAAG,CAAC,KAAK,GACN,IACF,IACF,GACH,EACL,aACE,SAAS,EAAC,WAAW,EACrB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACnC,IAAI,EAAC,cAAc,YAEnB,KAAC,YAAY,IACX,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,GAChD,GACC,EACL,aAAI,SAAS,EAAC,WAAW,YACvB,KAAC,WAAW,IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAI,GAChC,EACL,aAAI,SAAS,EAAC,yCAAyC,YACpD,QAAQ;wDACP,CAAC,CAAC,WAAW,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;wDAC3C,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,GAC7B,EACL,aACE,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACnC,IAAI,EAAC,cAAc,YAEnB,KAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EACjC,cAAc,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EACvC,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EACjC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EACnE,SAAS,EAAE,CAAC,GAAG,CAAC,aAAa,GAC7B,GACC,KA5EA,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,CA6EzB,CACN,CAAA;oCACH,CAAC,CAAC,GACI,IACF,GACJ,CACP,IACG,EAEN,KAAC,WAAW,IACV,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,aAAa,EAC3B,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,IAAI,IAAI,EACpD,SAAS,EAAE,CAAC,CAAC,SAAS,EACtB,SAAS,EAAE,UAAU,GACrB,EAED,OAAO,IAAI,CACV,KAAC,aAAa,IACZ,IAAI,EAAE,CAAC,CAAC,OAAO,EACf,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAC/B,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,WAAW,EAAE,OAAO,CAAC,WAAW,EAChC,YAAY,EAAE,OAAO,CAAC,YAAY,EAClC,WAAW,EAAE,OAAO,CAAC,WAAW,GAChC,CACH,EAED,KAAC,gBAAgB,IACf,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,YAAY,KAAK,IAAI,EAC3B,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;oBAClB,IAAI,CAAC,CAAC;wBAAE,eAAe,CAAC,IAAI,CAAC,CAAA;gBAC/B,CAAC,EACD,SAAS,EAAE,UAAU,GACrB,IACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,SAAS,GASV;IACC,OAAO,CACL,MAAC,YAAY,CAAC,IAAI,eAChB,KAAC,YAAY,CAAC,OAAO,IAAC,OAAO,kBAC3B,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0EAA0E,gBACxE,eAAe,GAAG,CAAC,IAAI,EAAE,YAErC,KAAC,cAAc,IAAC,IAAI,EAAE,EAAE,wBAAgB,GACjC,GACY,EACvB,KAAC,YAAY,CAAC,MAAM,IAAC,SAAS,EAAE,oBAAoB,EAAE,YACpD,KAAC,YAAY,CAAC,OAAO,IACnB,KAAK,EAAC,KAAK,EACX,UAAU,EAAE,CAAC,EACb,SAAS,EAAC,qEAAqE,YAE9E,QAAQ,CAAC,CAAC,CAAC,CACV,8BACE,MAAC,YAAY,CAAC,IAAI,IAChB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAC,oIAAoI,aAE9I,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,wBAAgB,qBAEjB,EACpB,MAAC,YAAY,CAAC,IAAI,IAChB,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAC,wIAAwI,aAElJ,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,wBAAgB,qBAEX,IACnB,CACJ,CAAC,CAAC,CAAC,CACF,8BACG,aAAa,IAAI,CAChB,MAAC,YAAY,CAAC,IAAI,IAChB,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAC,oIAAoI,aAE9I,KAAC,iBAAiB,IAAC,IAAI,EAAE,EAAE,wBAAgB,oBAEzB,CACrB,EACD,MAAC,YAAY,CAAC,IAAI,IAChB,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAC1C,QAAQ,EAAE,CAAC,SAAS,EACpB,SAAS,EAAC,kMAAkM,aAE5M,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,wBAAgB,qBAEX,IACnB,CACJ,GACoB,GACH,IACJ,CACrB,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTab.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"AA6BA,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,UAAU,GACX,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,2CAoJA"}
1
+ {"version":3,"file":"SecurityTab.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"AA8BA,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,UAAU,GACX,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,2CAoJA"}
@@ -2,6 +2,7 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useEffect } from 'react';
4
4
  import { ShieldAlert } from 'lucide-react';
5
+ import { parseRouteQuery } from '../../router/index.js';
5
6
  import { ConfirmDangerousSettingDialog, SettingsSaveBar, SettingsValidationSummary, } from './components.js';
6
7
  import { AccessProtectionCard } from './AccessProtectionCard.js';
7
8
  import { AuthMfaCard } from './AuthMfaCard.js';
@@ -19,7 +20,7 @@ export function SecurityTab({ role, onNavigate, }) {
19
20
  useEffect(() => {
20
21
  if (loading || typeof window === 'undefined')
21
22
  return;
22
- const section = new URLSearchParams(window.location.search).get('section');
23
+ const section = parseRouteQuery(window.location.search).get('section');
23
24
  if (!section)
24
25
  return;
25
26
  const el = document.getElementById(`security-${section}`);
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTab.js","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityTab.js","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actuate-media/cms-admin",
3
- "version": "0.68.0",
3
+ "version": "0.69.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/actuate-media/actuatecms.git",
@@ -95,7 +95,7 @@
95
95
  "tailwindcss": "^4.0.0",
96
96
  "typescript": "^5.7.0",
97
97
  "vitest": "^4.1.0",
98
- "@actuate-media/cms-core": "0.88.0",
98
+ "@actuate-media/cms-core": "0.89.0",
99
99
  "@actuate-media/component-blocks": "0.2.1"
100
100
  },
101
101
  "scripts": {
package/src/AdminRoot.tsx CHANGED
@@ -5,7 +5,7 @@ import * as Dialog from '@radix-ui/react-dialog'
5
5
  import { toast } from 'sonner'
6
6
  import { Layout } from './layout/Layout.js'
7
7
  import { adminPortalContainer } from './lib/portal-container.js'
8
- import { useAdminRouter } from './router/index.js'
8
+ import { useAdminRouter, parseRouteQuery } from './router/index.js'
9
9
  import { cmsApi, ensureCsrfToken } from './lib/api.js'
10
10
  import { setDocumentFavicon, BRAND_UPDATED_EVENT } from './lib/favicon.js'
11
11
  import {
@@ -208,10 +208,26 @@ function AdminShell({
208
208
  }
209
209
  }, [session])
210
210
 
211
- useIdleLogout({
211
+ const { stayActive } = useIdleLogout({
212
212
  enabled: Boolean(session && sessionPolicy?.idleLogoutEnabled),
213
213
  timeoutMs: (sessionPolicy?.timeoutHours ?? 0) * 3_600_000,
214
214
  onIdle: handleLogout,
215
+ // One-minute heads-up so the sign-out is never a surprise. Any activity
216
+ // (or the toast action) resets the clock and dismisses the warning.
217
+ warningMs: 60_000,
218
+ onWarn: () => {
219
+ toast.warning('You will be signed out in about a minute due to inactivity.', {
220
+ id: 'idle-logout-warning',
221
+ duration: 60_000,
222
+ action: {
223
+ label: 'Stay signed in',
224
+ onClick: () => stayActive(),
225
+ },
226
+ })
227
+ },
228
+ onWarnCancelled: () => {
229
+ toast.dismiss('idle-logout-warning')
230
+ },
215
231
  })
216
232
 
217
233
  useBranding(config)
@@ -327,10 +343,11 @@ function AdminShell({
327
343
 
328
344
  const resetMatch = matchRoute('/reset-password')
329
345
  if (resetMatch) {
330
- const params = new URLSearchParams(
331
- typeof window !== 'undefined' ? window.location.search : '',
346
+ // currentPath carries the query string (router syncs it from the URL on
347
+ // mount/popstate), so the emailed `?token=` deep link survives reloads.
348
+ return (
349
+ <ResetPassword onNavigate={navigate} token={parseRouteQuery(currentPath).get('token')} />
332
350
  )
333
- return <ResetPassword onNavigate={navigate} token={params.get('token')} />
334
351
  }
335
352
 
336
353
  if (onLogin) {
@@ -367,7 +384,7 @@ function AdminShell({
367
384
  // a collection slugged `media`, `users`, or `settings`).
368
385
 
369
386
  if (matchRoute('/media')) {
370
- return <MediaBrowser onNavigate={navigate} />
387
+ return <MediaBrowser onNavigate={navigate} currentPath={currentPath} />
371
388
  }
372
389
 
373
390
  // ─── Posts area ────────────────────────────────────────────────
@@ -463,7 +480,7 @@ function AdminShell({
463
480
  // "Add sub-page" in the Pages tree view arrives with the parent id
464
481
  // in the query string (`/pages/new?parent=<id>`); matchRoute ignores
465
482
  // the query so it's parsed here and preselected in the editor.
466
- const newPageQuery = new URLSearchParams(currentPath.split('?')[1] ?? '')
483
+ const newPageQuery = parseRouteQuery(currentPath)
467
484
  return (
468
485
  <PageSectionEditor
469
486
  initialParentId={newPageQuery.get('parent')}
@@ -567,17 +584,38 @@ function AdminShell({
567
584
  // Users + API Keys moved into the Settings view as tabs. The legacy
568
585
  // top-level routes still resolve — they just land on the matching tab.
569
586
  if (matchRoute('/users')) {
570
- return <Settings onNavigate={navigate} config={config} session={session} initialTab="users" />
587
+ return (
588
+ <Settings
589
+ onNavigate={navigate}
590
+ config={config}
591
+ session={session}
592
+ initialTab="users"
593
+ currentPath={currentPath}
594
+ />
595
+ )
571
596
  }
572
597
 
573
598
  if (matchRoute('/api-keys')) {
574
599
  return (
575
- <Settings onNavigate={navigate} config={config} session={session} initialTab="api-keys" />
600
+ <Settings
601
+ onNavigate={navigate}
602
+ config={config}
603
+ session={session}
604
+ initialTab="api-keys"
605
+ currentPath={currentPath}
606
+ />
576
607
  )
577
608
  }
578
609
 
579
610
  if (matchRoute('/settings')) {
580
- return <Settings onNavigate={navigate} config={config} session={session} />
611
+ return (
612
+ <Settings
613
+ onNavigate={navigate}
614
+ config={config}
615
+ session={session}
616
+ currentPath={currentPath}
617
+ />
618
+ )
581
619
  }
582
620
 
583
621
  if (matchRoute('/profile')) {
@@ -716,7 +754,8 @@ function AdminShell({
716
754
  // Preview routes render as standalone pages (no sidebar/header) so a
717
755
  // new-tab preview looks like the real published page rather than an
718
756
  // embedded admin view. Everything else gets the full admin chrome.
719
- if (currentPath.endsWith('/preview')) {
757
+ // Query string is stripped — currentPath carries it after reloads.
758
+ if (currentPath.split('?')[0]!.endsWith('/preview')) {
720
759
  return (
721
760
  <div className="bg-background h-full min-h-screen">
722
761
  <ErrorBoundary>{renderView()}</ErrorBoundary>
@@ -867,7 +906,9 @@ function useAdminPageTitle(config: any, currentPath: string) {
867
906
  const baseName = branding?.title ?? (branding?.name ? `${branding.name} Admin` : null)
868
907
  if (!baseName) return
869
908
 
870
- const segment = currentPath === '/' ? 'Dashboard' : currentPath.split('/').filter(Boolean)[0]
909
+ // Strip the query so `/settings?tab=users` titles as "Settings".
910
+ const pathname = currentPath.split('?')[0]!.split('#')[0]!
911
+ const segment = pathname === '/' ? 'Dashboard' : pathname.split('/').filter(Boolean)[0]
871
912
  const pageName = segment ? segment.charAt(0).toUpperCase() + segment.slice(1) : 'Dashboard'
872
913
  document.title = `${pageName} — ${baseName}`
873
914
  }, [config, currentPath])
@@ -8,12 +8,28 @@ function Harness({
8
8
  enabled,
9
9
  timeoutMs,
10
10
  onIdle,
11
+ warningMs,
12
+ onWarn,
13
+ onWarnCancelled,
14
+ stayActiveRef,
11
15
  }: {
12
16
  enabled: boolean
13
17
  timeoutMs: number
14
18
  onIdle: () => void
19
+ warningMs?: number
20
+ onWarn?: () => void
21
+ onWarnCancelled?: () => void
22
+ stayActiveRef?: { current: (() => void) | null }
15
23
  }) {
16
- useIdleLogout({ enabled, timeoutMs, onIdle })
24
+ const { stayActive } = useIdleLogout({
25
+ enabled,
26
+ timeoutMs,
27
+ onIdle,
28
+ warningMs,
29
+ onWarn,
30
+ onWarnCancelled,
31
+ })
32
+ if (stayActiveRef) stayActiveRef.current = stayActive
17
33
  return null
18
34
  }
19
35
 
@@ -83,4 +99,90 @@ describe('useIdleLogout', () => {
83
99
  document.dispatchEvent(new Event('visibilitychange'))
84
100
  expect(onIdle).toHaveBeenCalledTimes(1)
85
101
  })
102
+
103
+ describe('warning window', () => {
104
+ const WARNING_MS = 20_000
105
+
106
+ it('fires onWarn once inside the warning window, then onIdle at the deadline', () => {
107
+ const onIdle = vi.fn()
108
+ const onWarn = vi.fn()
109
+ render(
110
+ <Harness
111
+ enabled
112
+ timeoutMs={TIMEOUT_MS}
113
+ warningMs={WARNING_MS}
114
+ onIdle={onIdle}
115
+ onWarn={onWarn}
116
+ />,
117
+ )
118
+
119
+ // Before the warning window: nothing.
120
+ vi.advanceTimersByTime(TIMEOUT_MS - WARNING_MS - 5_000)
121
+ expect(onWarn).not.toHaveBeenCalled()
122
+
123
+ // Inside the window: warn exactly once, no logout yet.
124
+ vi.advanceTimersByTime(10_000)
125
+ expect(onWarn).toHaveBeenCalledTimes(1)
126
+ expect(onIdle).not.toHaveBeenCalled()
127
+
128
+ // Deadline: logout, and the warning doesn't re-fire.
129
+ vi.advanceTimersByTime(TIMEOUT_MS)
130
+ expect(onIdle).toHaveBeenCalledTimes(1)
131
+ expect(onWarn).toHaveBeenCalledTimes(1)
132
+ })
133
+
134
+ it('activity after the warning cancels it and resets the clock', () => {
135
+ const onIdle = vi.fn()
136
+ const onWarn = vi.fn()
137
+ const onWarnCancelled = vi.fn()
138
+ render(
139
+ <Harness
140
+ enabled
141
+ timeoutMs={TIMEOUT_MS}
142
+ warningMs={WARNING_MS}
143
+ onIdle={onIdle}
144
+ onWarn={onWarn}
145
+ onWarnCancelled={onWarnCancelled}
146
+ />,
147
+ )
148
+
149
+ vi.advanceTimersByTime(TIMEOUT_MS - 10_000)
150
+ expect(onWarn).toHaveBeenCalledTimes(1)
151
+
152
+ window.dispatchEvent(new Event('keydown'))
153
+ expect(onWarnCancelled).toHaveBeenCalledTimes(1)
154
+
155
+ // The clock restarted: warn again on the next quiet cycle, no logout yet.
156
+ vi.advanceTimersByTime(TIMEOUT_MS - 10_000)
157
+ expect(onWarn).toHaveBeenCalledTimes(2)
158
+ expect(onIdle).not.toHaveBeenCalled()
159
+ })
160
+
161
+ it('stayActive resets the clock like real activity', () => {
162
+ const onIdle = vi.fn()
163
+ const onWarn = vi.fn()
164
+ const onWarnCancelled = vi.fn()
165
+ const stayActiveRef: { current: (() => void) | null } = { current: null }
166
+ render(
167
+ <Harness
168
+ enabled
169
+ timeoutMs={TIMEOUT_MS}
170
+ warningMs={WARNING_MS}
171
+ onIdle={onIdle}
172
+ onWarn={onWarn}
173
+ onWarnCancelled={onWarnCancelled}
174
+ stayActiveRef={stayActiveRef}
175
+ />,
176
+ )
177
+
178
+ vi.advanceTimersByTime(TIMEOUT_MS - 10_000)
179
+ expect(onWarn).toHaveBeenCalledTimes(1)
180
+
181
+ stayActiveRef.current?.()
182
+ expect(onWarnCancelled).toHaveBeenCalledTimes(1)
183
+
184
+ vi.advanceTimersByTime(TIMEOUT_MS - 15_000)
185
+ expect(onIdle).not.toHaveBeenCalled()
186
+ })
187
+ })
86
188
  })
@@ -0,0 +1,54 @@
1
+ // @vitest-environment happy-dom
2
+ import { describe, expect, it } from 'vitest'
3
+ import { act, renderHook } from '@testing-library/react'
4
+
5
+ import { parseRouteQuery, useAdminRouter } from '../../router/index.js'
6
+
7
+ // The admin router must carry the query string in `currentPath` so deep links
8
+ // like `/pages/new?parent=<id>` survive hard reloads and back/forward — not
9
+ // just in-app `navigate()` calls (which always carried it).
10
+ describe('useAdminRouter query strings', () => {
11
+ it('includes the query string when syncing from the browser URL on mount', () => {
12
+ window.history.pushState({}, '', '/admin/pages/new?parent=abc')
13
+
14
+ const { result } = renderHook(() => useAdminRouter('/admin', '/pages/new'))
15
+
16
+ expect(result.current.currentPath).toBe('/pages/new?parent=abc')
17
+ expect(result.current.search).toBe('?parent=abc')
18
+ // matchRoute strips the query, so route patterns still match.
19
+ expect(result.current.matchRoute('/pages/new')).toEqual({})
20
+ expect(parseRouteQuery(result.current.currentPath).get('parent')).toBe('abc')
21
+ })
22
+
23
+ it('carries the query string through popstate (back/forward)', () => {
24
+ window.history.pushState({}, '', '/admin/settings?tab=users')
25
+ const { result } = renderHook(() => useAdminRouter('/admin', '/'))
26
+
27
+ act(() => {
28
+ window.history.pushState({}, '', '/admin/seo?tab=audit&issueId=i1')
29
+ window.dispatchEvent(new PopStateEvent('popstate'))
30
+ })
31
+
32
+ expect(result.current.currentPath).toBe('/seo?tab=audit&issueId=i1')
33
+ expect(result.current.search).toBe('?tab=audit&issueId=i1')
34
+ expect(result.current.matchRoute('/seo')).toEqual({})
35
+ expect(result.current.matchRoute('/seo/:id')).toBeNull()
36
+ })
37
+
38
+ it('handles a query on the admin root path', () => {
39
+ window.history.pushState({}, '', '/admin?foo=1')
40
+
41
+ const { result } = renderHook(() => useAdminRouter('/admin', '/'))
42
+
43
+ expect(result.current.currentPath).toBe('/?foo=1')
44
+ expect(result.current.matchRoute('/')).toEqual({})
45
+ })
46
+
47
+ it('parseRouteQuery accepts full paths, raw search strings, and hashes', () => {
48
+ expect(parseRouteQuery('/pages/new?parent=abc').get('parent')).toBe('abc')
49
+ expect(parseRouteQuery('?tab=users&selected=u1').get('selected')).toBe('u1')
50
+ expect(parseRouteQuery('/pages').get('parent')).toBeNull()
51
+ expect(parseRouteQuery('').get('parent')).toBeNull()
52
+ expect(parseRouteQuery('/seo?tab=audit#section').get('tab')).toBe('audit')
53
+ })
54
+ })
@@ -0,0 +1,102 @@
1
+ // @vitest-environment happy-dom
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest'
3
+ import { render, screen } from '@testing-library/react'
4
+
5
+ /**
6
+ * Render tests for the `?selected=<userId>` deep link written by the command
7
+ * palette (`/users?selected=<id>`): once the member list loads, the matching
8
+ * member's detail drawer opens. Unknown ids are tolerated — no drawer, no crash.
9
+ */
10
+
11
+ const MEMBER = {
12
+ id: 'u1',
13
+ name: 'Priya Nair',
14
+ email: 'priya@actuatemedia.com',
15
+ initials: 'PN',
16
+ role: 'EDITOR',
17
+ roleName: 'Editor' as const,
18
+ status: 'active' as const,
19
+ mfaEnabled: true,
20
+ externalDomain: false,
21
+ lastLoginAt: null,
22
+ lastActiveAt: null,
23
+ acceptedInviteAt: new Date('2026-01-02').toISOString(),
24
+ createdAt: new Date('2026-01-01').toISOString(),
25
+ isCurrentUser: false,
26
+ }
27
+
28
+ const DETAIL = {
29
+ ...MEMBER,
30
+ avatarUrl: null,
31
+ mfaRequired: false,
32
+ passwordSet: true,
33
+ forcePasswordReset: false,
34
+ failedLoginCount: 0,
35
+ lockedAt: null,
36
+ suspendedAt: null,
37
+ authProvider: null,
38
+ oauthProviders: [],
39
+ ssoOnly: false,
40
+ emailVerified: true,
41
+ invitedBy: null,
42
+ contentOwnedCount: 4,
43
+ }
44
+
45
+ const STATS = {
46
+ members: 1,
47
+ pendingInvites: 0,
48
+ admins: 0,
49
+ seatsUsed: 1,
50
+ seatLimit: null,
51
+ seatsAvailable: null,
52
+ emailConfigured: true,
53
+ }
54
+
55
+ const { cmsApi } = vi.hoisted(() => ({ cmsApi: vi.fn() }))
56
+ vi.mock('../../lib/api.js', () => ({ cmsApi }))
57
+
58
+ cmsApi.mockImplementation(async (endpoint?: string) => {
59
+ if (!endpoint) return { data: null, status: 200 }
60
+ if (endpoint === '/invites') return { data: [], status: 200 }
61
+ if (endpoint === '/users/stats') return { data: STATS, status: 200 }
62
+ if (endpoint === '/access-review') return { data: [], status: 200 }
63
+ if (endpoint.startsWith('/users/u1')) return { data: DETAIL, status: 200 }
64
+ if (endpoint === '/users' || endpoint.startsWith('/users?'))
65
+ return { data: [MEMBER], status: 200 }
66
+ return { data: null, status: 200 }
67
+ })
68
+
69
+ const { Users } = await import('../../views/Users.js')
70
+
71
+ describe('Users ?selected= deep link', () => {
72
+ beforeEach(() => cmsApi.mockClear())
73
+
74
+ it('opens the detail drawer for the selected member once the list loads', async () => {
75
+ render(<Users currentPath="/users?selected=u1" />)
76
+
77
+ // "Content owned" only renders inside the detail drawer's overview tab.
78
+ expect(await screen.findByText('Content owned')).toBeTruthy()
79
+ expect(cmsApi.mock.calls.some(([endpoint]) => String(endpoint).startsWith('/users/u1'))).toBe(
80
+ true,
81
+ )
82
+ })
83
+
84
+ it('ignores a selected id that matches no member', async () => {
85
+ render(<Users currentPath="/users?selected=does-not-exist" />)
86
+
87
+ // List renders normally…
88
+ expect(await screen.findByText('priya@actuatemedia.com')).toBeTruthy()
89
+ // …but no drawer opens and no detail fetch is issued.
90
+ expect(screen.queryByText('Content owned')).toBeNull()
91
+ expect(
92
+ cmsApi.mock.calls.some(([endpoint]) => String(endpoint).includes('/users/does-not-exist')),
93
+ ).toBe(false)
94
+ })
95
+
96
+ it('renders without a drawer when there is no query at all', async () => {
97
+ render(<Users currentPath="/users" />)
98
+
99
+ expect(await screen.findByText('priya@actuatemedia.com')).toBeTruthy()
100
+ expect(screen.queryByText('Content owned')).toBeNull()
101
+ })
102
+ })