@arbidocs/blocks 0.4.144 → 0.4.146

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 (154) hide show
  1. package/dist/agents/index.cjs +264 -264
  2. package/dist/agents/index.js +7 -7
  3. package/dist/{chunk-ON3TKY5Y.js → chunk-5YHEHEJT.js} +242 -4
  4. package/dist/chunk-5YHEHEJT.js.map +1 -0
  5. package/dist/{chunk-7NGAWGA3.js → chunk-A6IU4GIW.js} +190 -7
  6. package/dist/chunk-A6IU4GIW.js.map +1 -0
  7. package/dist/{chunk-BUWBXJ2N.cjs → chunk-C3CGJK7A.cjs} +192 -6
  8. package/dist/chunk-C3CGJK7A.cjs.map +1 -0
  9. package/dist/{chunk-X3TGXEFS.js → chunk-C44TDH54.js} +6 -6
  10. package/dist/{chunk-X3TGXEFS.js.map → chunk-C44TDH54.js.map} +1 -1
  11. package/dist/{chunk-YFY3TQ6Q.cjs → chunk-COCGRJLA.cjs} +7 -7
  12. package/dist/{chunk-YFY3TQ6Q.cjs.map → chunk-COCGRJLA.cjs.map} +1 -1
  13. package/dist/{chunk-45LRMW54.js → chunk-DN2KI4BU.js} +8 -10
  14. package/dist/chunk-DN2KI4BU.js.map +1 -0
  15. package/dist/{chunk-R26BK7YL.cjs → chunk-DTROMMDX.cjs} +4 -4
  16. package/dist/{chunk-R26BK7YL.cjs.map → chunk-DTROMMDX.cjs.map} +1 -1
  17. package/dist/{chunk-65THHQVB.cjs → chunk-ECW2R2KF.cjs} +27 -27
  18. package/dist/{chunk-65THHQVB.cjs.map → chunk-ECW2R2KF.cjs.map} +1 -1
  19. package/dist/{chunk-RI6DZA5X.js → chunk-EF4ZLKRM.js} +3 -3
  20. package/dist/{chunk-RI6DZA5X.js.map → chunk-EF4ZLKRM.js.map} +1 -1
  21. package/dist/chunk-EV7W64B6.js +134 -0
  22. package/dist/chunk-EV7W64B6.js.map +1 -0
  23. package/dist/{chunk-WS5EX7DN.cjs → chunk-EYKISBDO.cjs} +5 -5
  24. package/dist/{chunk-WS5EX7DN.cjs.map → chunk-EYKISBDO.cjs.map} +1 -1
  25. package/dist/{chunk-JZNXRMLH.cjs → chunk-GAYMJWTC.cjs} +8 -10
  26. package/dist/chunk-GAYMJWTC.cjs.map +1 -0
  27. package/dist/{chunk-I7WG3JRD.js → chunk-H4D7WKDY.js} +3 -3
  28. package/dist/{chunk-I7WG3JRD.js.map → chunk-H4D7WKDY.js.map} +1 -1
  29. package/dist/{chunk-2FJMTZNJ.js → chunk-IJST4EBM.js} +8 -8
  30. package/dist/{chunk-2FJMTZNJ.js.map → chunk-IJST4EBM.js.map} +1 -1
  31. package/dist/{chunk-3RJN2VTL.js → chunk-IXWJGOM2.js} +3 -3
  32. package/dist/{chunk-3RJN2VTL.js.map → chunk-IXWJGOM2.js.map} +1 -1
  33. package/dist/{chunk-CYNF5PZI.js → chunk-J5CWKFSC.js} +3 -3
  34. package/dist/{chunk-CYNF5PZI.js.map → chunk-J5CWKFSC.js.map} +1 -1
  35. package/dist/{chunk-TP6PLDNM.cjs → chunk-KMZWKSKO.cjs} +8 -8
  36. package/dist/{chunk-TP6PLDNM.cjs.map → chunk-KMZWKSKO.cjs.map} +1 -1
  37. package/dist/{chunk-C4WSHRR6.cjs → chunk-KPZZ5FHE.cjs} +32 -12
  38. package/dist/chunk-KPZZ5FHE.cjs.map +1 -0
  39. package/dist/{chunk-O2ODDTMA.cjs → chunk-LPYEUD2D.cjs} +9 -9
  40. package/dist/{chunk-O2ODDTMA.cjs.map → chunk-LPYEUD2D.cjs.map} +1 -1
  41. package/dist/{chunk-RA3ZJ45L.cjs → chunk-MFMASSEO.cjs} +25 -44
  42. package/dist/chunk-MFMASSEO.cjs.map +1 -0
  43. package/dist/chunk-NHZK64TQ.js +75 -0
  44. package/dist/chunk-NHZK64TQ.js.map +1 -0
  45. package/dist/{chunk-BPBSSMRB.js → chunk-NRFAWUVD.js} +3 -3
  46. package/dist/{chunk-BPBSSMRB.js.map → chunk-NRFAWUVD.js.map} +1 -1
  47. package/dist/chunk-NWNVWO6L.cjs +80 -0
  48. package/dist/chunk-NWNVWO6L.cjs.map +1 -0
  49. package/dist/{chunk-XGZX22ET.cjs → chunk-O2GW5IY6.cjs} +38 -38
  50. package/dist/{chunk-XGZX22ET.cjs.map → chunk-O2GW5IY6.cjs.map} +1 -1
  51. package/dist/{chunk-33ZOUJXA.js → chunk-OBWYM25Y.js} +13 -32
  52. package/dist/chunk-OBWYM25Y.js.map +1 -0
  53. package/dist/{chunk-Y3KA6X7B.js → chunk-OVR3XMYL.js} +4 -4
  54. package/dist/{chunk-Y3KA6X7B.js.map → chunk-OVR3XMYL.js.map} +1 -1
  55. package/dist/{chunk-ABUO6PIQ.cjs → chunk-RB7GX2VT.cjs} +12 -12
  56. package/dist/{chunk-ABUO6PIQ.cjs.map → chunk-RB7GX2VT.cjs.map} +1 -1
  57. package/dist/chunk-RXK3XP62.cjs +144 -0
  58. package/dist/chunk-RXK3XP62.cjs.map +1 -0
  59. package/dist/{chunk-LYUO3E6V.js → chunk-SZOFGU7W.js} +3 -3
  60. package/dist/{chunk-LYUO3E6V.js.map → chunk-SZOFGU7W.js.map} +1 -1
  61. package/dist/{chunk-A6J2IBUG.js → chunk-T5B7FM7S.js} +4 -4
  62. package/dist/{chunk-A6J2IBUG.js.map → chunk-T5B7FM7S.js.map} +1 -1
  63. package/dist/{chunk-YNIBUKV5.js → chunk-TBEVGWY3.js} +32 -14
  64. package/dist/chunk-TBEVGWY3.js.map +1 -0
  65. package/dist/{chunk-MJCCBMM5.cjs → chunk-TC3RQNEX.cjs} +6 -80
  66. package/dist/chunk-TC3RQNEX.cjs.map +1 -0
  67. package/dist/{chunk-QIMVTGKS.cjs → chunk-U73KPFYH.cjs} +255 -2
  68. package/dist/chunk-U73KPFYH.cjs.map +1 -0
  69. package/dist/{chunk-HFGXA5CL.cjs → chunk-UTTTJSQU.cjs} +4 -4
  70. package/dist/{chunk-HFGXA5CL.cjs.map → chunk-UTTTJSQU.cjs.map} +1 -1
  71. package/dist/{chunk-DLBUFHLY.js → chunk-VTTZZ4FN.js} +4 -74
  72. package/dist/chunk-VTTZZ4FN.js.map +1 -0
  73. package/dist/{chunk-5FTIHRZH.cjs → chunk-XVUOMWMD.cjs} +4 -4
  74. package/dist/{chunk-5FTIHRZH.cjs.map → chunk-XVUOMWMD.cjs.map} +1 -1
  75. package/dist/{chunk-444XKG46.js → chunk-YKQ2DPIP.js} +3 -3
  76. package/dist/{chunk-444XKG46.js.map → chunk-YKQ2DPIP.js.map} +1 -1
  77. package/dist/{chunk-HEMU73OP.cjs → chunk-YSHIC4NJ.cjs} +4 -4
  78. package/dist/{chunk-HEMU73OP.cjs.map → chunk-YSHIC4NJ.cjs.map} +1 -1
  79. package/dist/citations/index.cjs +12 -12
  80. package/dist/citations/index.js +3 -3
  81. package/dist/connect/docx.cjs +11 -11
  82. package/dist/connect/docx.js +8 -8
  83. package/dist/connect/index.cjs +1079 -333
  84. package/dist/connect/index.cjs.map +1 -1
  85. package/dist/connect/index.d.ts +2 -0
  86. package/dist/connect/index.js +953 -222
  87. package/dist/connect/index.js.map +1 -1
  88. package/dist/connection/ConnectedNotificationRelevance.d.ts +4 -1
  89. package/dist/connection/ConnectedSettings.d.ts +3 -2
  90. package/dist/connection/ai.d.ts +27 -72
  91. package/dist/connection/settings-page/ConnectedAccountSettings.d.ts +35 -0
  92. package/dist/connection/settings-page/ConnectedMailSettings.d.ts +13 -0
  93. package/dist/connection/settings-page/ConnectedPremiumModels.d.ts +1 -0
  94. package/dist/connection/settings-page/ConnectedPrivacySettings.d.ts +12 -0
  95. package/dist/connection/settings-page/ConnectedSettingsPage.d.ts +29 -0
  96. package/dist/connection/settings-page/SessionStatusIcon.d.ts +7 -0
  97. package/dist/connection/settings-page/index.d.ts +6 -0
  98. package/dist/connection/workspace-settings/ConnectedWorkspaceSettings.d.ts +53 -0
  99. package/dist/connection/workspace-settings/index.d.ts +2 -0
  100. package/dist/connection/workspace-settings/useConnectedWorkspaceSettings.d.ts +85 -0
  101. package/dist/connection/workspaceData.d.ts +6 -6
  102. package/dist/facts/index.cjs +3 -3
  103. package/dist/facts/index.js +2 -2
  104. package/dist/files/index.cjs +3 -3
  105. package/dist/files/index.js +2 -2
  106. package/dist/home/index.cjs +20 -20
  107. package/dist/home/index.js +4 -4
  108. package/dist/index.cjs +468 -632
  109. package/dist/index.cjs.map +1 -1
  110. package/dist/index.d.ts +1 -0
  111. package/dist/index.js +23 -204
  112. package/dist/index.js.map +1 -1
  113. package/dist/provider/BlocksProvider.d.ts +5 -1
  114. package/dist/provider/settings-section.d.ts +9 -0
  115. package/dist/retrieval/index.cjs +4 -4
  116. package/dist/retrieval/index.js +2 -2
  117. package/dist/settings/AppearanceSettings.d.ts +18 -0
  118. package/dist/settings/ServerConnectionControls.d.ts +16 -0
  119. package/dist/settings/SettingsPage.d.ts +31 -0
  120. package/dist/settings/index.cjs +178 -241
  121. package/dist/settings/index.cjs.map +1 -1
  122. package/dist/settings/index.d.ts +3 -1
  123. package/dist/settings/index.js +86 -198
  124. package/dist/settings/index.js.map +1 -1
  125. package/dist/shell/index.cjs +44 -44
  126. package/dist/shell/index.js +3 -3
  127. package/dist/site/index.cjs +74 -73
  128. package/dist/site/index.js +3 -2
  129. package/dist/studio/index.cjs +78 -77
  130. package/dist/studio/index.cjs.map +1 -1
  131. package/dist/studio/index.js +10 -9
  132. package/dist/studio/index.js.map +1 -1
  133. package/dist/workflow-canvas/index.cjs +25 -25
  134. package/dist/workflow-canvas/index.js +8 -8
  135. package/dist/workspaces/CommonWorkspaceToggle.d.ts +15 -0
  136. package/dist/workspaces/index.cjs +41 -110
  137. package/dist/workspaces/index.cjs.map +1 -1
  138. package/dist/workspaces/index.d.ts +1 -0
  139. package/dist/workspaces/index.js +7 -104
  140. package/dist/workspaces/index.js.map +1 -1
  141. package/node_modules/@arbidocs/coedit/package.json +1 -1
  142. package/package.json +4 -4
  143. package/dist/chunk-33ZOUJXA.js.map +0 -1
  144. package/dist/chunk-45LRMW54.js.map +0 -1
  145. package/dist/chunk-7NGAWGA3.js.map +0 -1
  146. package/dist/chunk-BUWBXJ2N.cjs.map +0 -1
  147. package/dist/chunk-C4WSHRR6.cjs.map +0 -1
  148. package/dist/chunk-DLBUFHLY.js.map +0 -1
  149. package/dist/chunk-JZNXRMLH.cjs.map +0 -1
  150. package/dist/chunk-MJCCBMM5.cjs.map +0 -1
  151. package/dist/chunk-ON3TKY5Y.js.map +0 -1
  152. package/dist/chunk-QIMVTGKS.cjs.map +0 -1
  153. package/dist/chunk-RA3ZJ45L.cjs.map +0 -1
  154. package/dist/chunk-YNIBUKV5.js.map +0 -1
@@ -6,15 +6,11 @@ import { jsx } from 'react/jsx-runtime';
6
6
 
7
7
  var WorkspaceDataContext = createContext({});
8
8
  function ConnectedWorkspaceDataProvider({
9
- documents,
10
9
  tags,
11
10
  conversations,
12
11
  children
13
12
  }) {
14
- const value = useMemo(
15
- () => ({ documents, tags, conversations }),
16
- [documents, tags, conversations]
17
- );
13
+ const value = useMemo(() => ({ tags, conversations }), [tags, conversations]);
18
14
  return /* @__PURE__ */ jsx(WorkspaceDataContext.Provider, { value, children });
19
15
  }
20
16
  var EMPTY = [];
@@ -28,10 +24,12 @@ function useList(hosted, own) {
28
24
  );
29
25
  }
30
26
  function useConnectedDocuments() {
31
- const hosted = useContext(WorkspaceDataContext).documents;
32
27
  const { workspaceId } = useConnectedWorkspace();
33
- const own = useDocuments(workspaceId ?? void 0, { enabled: !hosted });
34
- return useList(hosted, own);
28
+ const { data, isFetched } = useDocuments(workspaceId);
29
+ return useMemo(
30
+ () => ({ data: data ?? EMPTY, loaded: isFetched }),
31
+ [data, isFetched]
32
+ );
35
33
  }
36
34
  function useConnectedTags() {
37
35
  const hosted = useContext(WorkspaceDataContext).tags;
@@ -47,5 +45,5 @@ function useConnectedConversations(options) {
47
45
  }
48
46
 
49
47
  export { ConnectedWorkspaceDataProvider, useConnectedConversations, useConnectedDocuments, useConnectedTags };
50
- //# sourceMappingURL=chunk-45LRMW54.js.map
51
- //# sourceMappingURL=chunk-45LRMW54.js.map
48
+ //# sourceMappingURL=chunk-DN2KI4BU.js.map
49
+ //# sourceMappingURL=chunk-DN2KI4BU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/connection/workspaceData.tsx"],"names":[],"mappings":";;;;;AA+BA,IAAM,oBAAA,GAAuB,aAAA,CAAsC,EAAE,CAAA;AAE9D,SAAS,8BAAA,CAA+B;AAAA,EAC7C,IAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAAqD;AACnD,EAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,OAAO,EAAE,IAAA,EAAM,eAAc,CAAA,EAAI,CAAC,IAAA,EAAM,aAAa,CAAC,CAAA;AAC5E,EAAA,uBAAO,GAAA,CAAC,oBAAA,CAAqB,QAAA,EAArB,EAA8B,OAAe,QAAA,EAAS,CAAA;AAChE;AASA,IAAM,QAAiB,EAAC;AAExB,SAAS,OAAA,CACP,QACA,GAAA,EACwB;AACxB,EAAA,MAAM,SAAS,MAAA,IAAU,GAAA;AACzB,EAAA,MAAM,IAAA,GAAO,OAAO,IAAA,IAAS,KAAA;AAC7B,EAAA,MAAM,OAAA,GAAU,MAAA,GAAS,MAAA,CAAO,OAAA,GAAU,GAAA,CAAI,OAAA;AAC9C,EAAA,OAAO,OAAA;AAAA,IACL,OAAO,EAAE,IAAA,EAAM,MAAA,EAAQ,MAAA,CAAO,WAAW,OAAA,EAAQ,CAAA;AAAA,IACjD,CAAC,IAAA,EAAM,MAAA,CAAO,SAAA,EAAW,OAAO;AAAA,GAClC;AACF;AAGO,SAAS,qBAAA,GAAgE;AAC9E,EAAA,MAAM,EAAE,WAAA,EAAY,GAAI,qBAAA,EAAsB;AAC9C,EAAA,MAAM,EAAE,IAAA,EAAM,SAAA,EAAU,GAAI,aAAa,WAAW,CAAA;AACpD,EAAA,OAAO,OAAA;AAAA,IACL,OAAO,EAAE,IAAA,EAAM,IAAA,IAAS,KAAA,EAA+B,QAAQ,SAAA,EAAU,CAAA;AAAA,IACzE,CAAC,MAAM,SAAS;AAAA,GAClB;AACF;AAGO,SAAS,gBAAA,GAAsD;AACpE,EAAA,MAAM,MAAA,GAAS,UAAA,CAAW,oBAAoB,CAAA,CAAE,IAAA;AAChD,EAAA,MAAM,EAAE,WAAA,EAAY,GAAI,qBAAA,EAAsB;AAC9C,EAAA,MAAM,GAAA,GAAM,QAAQ,WAAA,IAAe,MAAA,EAAW,EAAE,OAAA,EAAS,CAAC,QAAQ,CAAA;AAClE,EAAA,OAAO,OAAA,CAAQ,QAAQ,GAAG,CAAA;AAC5B;AAMO,SAAS,0BAA0B,OAAA,EAEK;AAC7C,EAAA,MAAM,MAAA,GAAS,UAAA,CAAW,oBAAoB,CAAA,CAAE,aAAA;AAChD,EAAA,MAAM,EAAE,WAAA,EAAY,GAAI,qBAAA,EAAsB;AAC9C,EAAA,MAAM,GAAA,GAAM,gBAAA,CAAiB,WAAA,IAAe,MAAA,EAAW,EAAE,OAAA,EAAS,CAAC,MAAA,EAAQ,IAAA,EAAM,OAAA,EAAS,IAAA,EAAM,CAAA;AAChG,EAAA,OAAO,OAAA,CAAQ,QAAQ,GAAG,CAAA;AAC5B","file":"chunk-DN2KI4BU.js","sourcesContent":["/**\n * The open workspace's documents, tags and conversations for the connected kits. Each kit reads them\n * through the `@arbidocs/react` hooks; the documents always come from `useDocuments` (read once,\n * progressively, then patched in place by every write and event, so a kit never re-reads it). A\n * host that already keeps tags or conversations live in its own cache passes them once through\n * `ConnectedWorkspaceDataProvider`, so the kits show the same list and nothing is fetched twice.\n */\n\nimport { createContext, useContext, useMemo, type ReactNode } from 'react'\nimport { useConversations, useDocuments, useTags } from '@arbidocs/react'\nimport { useConnectedWorkspace } from './ConnectionProvider'\n\nexport type ConnectedDocument = NonNullable<ReturnType<typeof useDocuments>['data']>[number]\nexport type ConnectedTag = NonNullable<ReturnType<typeof useTags>['data']>[number]\nexport type ConnectedConversation = NonNullable<ReturnType<typeof useConversations>['data']>[number]\n\n/**\n * A list the host keeps: its rows, whether it has arrived, and how to read it again (absent: the\n * host keeps it current itself, so a kit never re-reads it).\n */\nexport interface ConnectedList<T> {\n data: T[] | undefined\n isFetched: boolean\n refetch?: () => unknown\n}\n\nexport interface ConnectedWorkspaceData {\n tags?: ConnectedList<ConnectedTag>\n conversations?: ConnectedList<ConnectedConversation>\n}\n\nconst WorkspaceDataContext = createContext<ConnectedWorkspaceData>({})\n\nexport function ConnectedWorkspaceDataProvider({\n tags,\n conversations,\n children,\n}: ConnectedWorkspaceData & { children: ReactNode }) {\n const value = useMemo(() => ({ tags, conversations }), [tags, conversations])\n return <WorkspaceDataContext.Provider value={value}>{children}</WorkspaceDataContext.Provider>\n}\n\nexport interface ConnectedListResult<T> {\n data: T[]\n loaded: boolean\n /** Read the list again after a change made here; absent when the host keeps it current. */\n refetch?: () => unknown\n}\n\nconst EMPTY: never[] = []\n\nfunction useList<T>(\n hosted: ConnectedList<T> | undefined,\n own: { data?: T[]; isFetched: boolean; refetch: () => unknown }\n): ConnectedListResult<T> {\n const source = hosted ?? own\n const data = source.data ?? (EMPTY as T[])\n const refetch = hosted ? hosted.refetch : own.refetch\n return useMemo(\n () => ({ data, loaded: source.isFetched, refetch }),\n [data, source.isFetched, refetch]\n )\n}\n\n/** The open workspace's documents (`useDocuments`: the one list every host and kit shares). */\nexport function useConnectedDocuments(): ConnectedListResult<ConnectedDocument> {\n const { workspaceId } = useConnectedWorkspace()\n const { data, isFetched } = useDocuments(workspaceId)\n return useMemo(\n () => ({ data: data ?? (EMPTY as ConnectedDocument[]), loaded: isFetched }),\n [data, isFetched]\n )\n}\n\n/** The open workspace's tags: the host's list when it gives one, else read here. */\nexport function useConnectedTags(): ConnectedListResult<ConnectedTag> {\n const hosted = useContext(WorkspaceDataContext).tags\n const { workspaceId } = useConnectedWorkspace()\n const own = useTags(workspaceId ?? undefined, { enabled: !hosted })\n return useList(hosted, own)\n}\n\n/**\n * The open workspace's conversations (threads and tasks): the host's list when it gives one, else\n * read here (`live`: re-read while shown, as a run moves on by itself).\n */\nexport function useConnectedConversations(options?: {\n live?: boolean\n}): ConnectedListResult<ConnectedConversation> {\n const hosted = useContext(WorkspaceDataContext).conversations\n const { workspaceId } = useConnectedWorkspace()\n const own = useConversations(workspaceId ?? undefined, { enabled: !hosted, live: options?.live })\n return useList(hosted, own)\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkC4WSHRR6_cjs = require('./chunk-C4WSHRR6.cjs');
4
+ var chunkKPZZ5FHE_cjs = require('./chunk-KPZZ5FHE.cjs');
5
5
  var react = require('react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
 
@@ -9,7 +9,7 @@ function isModifiedClick(event) {
9
9
  return event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;
10
10
  }
11
11
  var ActionLink = react.forwardRef(function ActionLink2({ href, onSelect, disabled, children, ...rest }, ref) {
12
- const { linkComponent: Link } = chunkC4WSHRR6_cjs.useBlocksEnvironment();
12
+ const { linkComponent: Link } = chunkKPZZ5FHE_cjs.useBlocksEnvironment();
13
13
  if (!href || disabled) {
14
14
  return /* @__PURE__ */ jsxRuntime.jsx(
15
15
  "button",
@@ -36,5 +36,5 @@ var ActionLink = react.forwardRef(function ActionLink2({ href, onSelect, disable
36
36
  });
37
37
 
38
38
  exports.ActionLink = ActionLink;
39
- //# sourceMappingURL=chunk-R26BK7YL.cjs.map
40
- //# sourceMappingURL=chunk-R26BK7YL.cjs.map
39
+ //# sourceMappingURL=chunk-DTROMMDX.cjs.map
40
+ //# sourceMappingURL=chunk-DTROMMDX.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/ActionLink.tsx"],"names":["forwardRef","ActionLink","useBlocksEnvironment","jsx"],"mappings":";;;;;;AAyBA,SAAS,gBAAgB,KAAA,EAA4B;AACnD,EAAA,OAAO,KAAA,CAAM,WAAW,CAAA,IAAK,KAAA,CAAM,WAAW,KAAA,CAAM,OAAA,IAAW,KAAA,CAAM,QAAA,IAAY,KAAA,CAAM,MAAA;AACzF;AAOO,IAAM,UAAA,GAAaA,gBAAA,CAAyC,SAASC,WAAAA,CAC1E,EAAE,IAAA,EAAM,QAAA,EAAU,QAAA,EAAU,QAAA,EAAU,GAAG,IAAA,EAAK,EAC9C,GAAA,EACA;AACA,EAAA,MAAM,EAAE,aAAA,EAAe,IAAA,EAAK,GAAIC,sCAAA,EAAqB;AAErD,EAAA,IAAI,CAAC,QAAQ,QAAA,EAAU;AACrB,IAAA,uBACEC,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACE,GAAG,IAAA;AAAA,QACJ,GAAA;AAAA,QACA,IAAA,EAAK,QAAA;AAAA,QACL,QAAA;AAAA,QACA,OAAA,EAAS,QAAA;AAAA,QAER;AAAA;AAAA,KACH;AAAA,EAEJ;AAEA,EAAA,MAAM,WAAA,GAAc,CAAC,KAAA,KAAyC;AAC5D,IAAA,IAAI,CAAC,QAAA,IAAY,KAAA,CAAM,gBAAA,IAAoB,eAAA,CAAgB,KAAK,CAAA,EAAG;AACnE,IAAA,KAAA,CAAM,cAAA,EAAe;AACrB,IAAA,QAAA,EAAS;AAAA,EACX,CAAA;AACA,EAAA,MAAM,cAAc,EAAE,GAAG,IAAA,EAAM,IAAA,EAAM,SAAS,WAAA,EAAY;AAC1D,EAAA,IAAI,IAAA,EAAM;AACR,IAAA,uBACEA,cAAA,CAAC,QAAM,GAAG,WAAA,EAAc,GAAI,EAAE,GAAA,IAC3B,QAAA,EACH,CAAA;AAAA,EAEJ;AACA,EAAA,uBACEA,cAAA,CAAC,GAAA,EAAA,EAAG,GAAG,WAAA,EAAa,KACjB,QAAA,EACH,CAAA;AAEJ,CAAC","file":"chunk-R26BK7YL.cjs","sourcesContent":["import {\n forwardRef,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type ReactNode,\n type Ref,\n} from 'react'\nimport { useBlocksEnvironment } from '../provider/BlocksProvider'\nimport type { BlockLinkRenderProps } from './blockLink'\n\nexport interface ActionLinkProps extends Omit<\n ComponentPropsWithoutRef<'button'>,\n 'onClick' | 'type' | 'children'\n> {\n /**\n * Destination. When set (and not `disabled`) the control is a real anchor, rendered through\n * `BlocksProvider`'s `linkComponent` (plain `<a>` by default), so ctrl/cmd-click and \"open in new\n * tab\" work. Without `onSelect` a plain click navigates through the link; with `onSelect`, a plain\n * click calls it instead (it owns navigation) and modified clicks still use the link.\n */\n href?: string\n onSelect?: () => void\n children?: ReactNode\n}\n\nfunction isModifiedClick(event: MouseEvent): boolean {\n return event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey\n}\n\n/**\n * The one \"go somewhere / do something\" control of the link-like blocks: a `<button>` without an\n * `href`, an anchor with one. Forwards its ref and any extra props so it can sit under a\n * tooltip or popover trigger `asChild`.\n */\nexport const ActionLink = forwardRef<HTMLElement, ActionLinkProps>(function ActionLink(\n { href, onSelect, disabled, children, ...rest },\n ref\n) {\n const { linkComponent: Link } = useBlocksEnvironment()\n\n if (!href || disabled) {\n return (\n <button\n {...rest}\n ref={ref as Ref<HTMLButtonElement>}\n type=\"button\"\n disabled={disabled}\n onClick={onSelect}\n >\n {children}\n </button>\n )\n }\n\n const handleClick = (event: MouseEvent<HTMLAnchorElement>) => {\n if (!onSelect || event.defaultPrevented || isModifiedClick(event)) return\n event.preventDefault()\n onSelect()\n }\n const anchorProps = { ...rest, href, onClick: handleClick } as BlockLinkRenderProps\n if (Link) {\n return (\n <Link {...anchorProps} {...({ ref } as object)}>\n {children}\n </Link>\n )\n }\n return (\n <a {...anchorProps} ref={ref as Ref<HTMLAnchorElement>}>\n {children}\n </a>\n )\n})\n"]}
1
+ {"version":3,"sources":["../src/components/ActionLink.tsx"],"names":["forwardRef","ActionLink","useBlocksEnvironment","jsx"],"mappings":";;;;;;AAyBA,SAAS,gBAAgB,KAAA,EAA4B;AACnD,EAAA,OAAO,KAAA,CAAM,WAAW,CAAA,IAAK,KAAA,CAAM,WAAW,KAAA,CAAM,OAAA,IAAW,KAAA,CAAM,QAAA,IAAY,KAAA,CAAM,MAAA;AACzF;AAOO,IAAM,UAAA,GAAaA,gBAAA,CAAyC,SAASC,WAAAA,CAC1E,EAAE,IAAA,EAAM,QAAA,EAAU,QAAA,EAAU,QAAA,EAAU,GAAG,IAAA,EAAK,EAC9C,GAAA,EACA;AACA,EAAA,MAAM,EAAE,aAAA,EAAe,IAAA,EAAK,GAAIC,sCAAA,EAAqB;AAErD,EAAA,IAAI,CAAC,QAAQ,QAAA,EAAU;AACrB,IAAA,uBACEC,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACE,GAAG,IAAA;AAAA,QACJ,GAAA;AAAA,QACA,IAAA,EAAK,QAAA;AAAA,QACL,QAAA;AAAA,QACA,OAAA,EAAS,QAAA;AAAA,QAER;AAAA;AAAA,KACH;AAAA,EAEJ;AAEA,EAAA,MAAM,WAAA,GAAc,CAAC,KAAA,KAAyC;AAC5D,IAAA,IAAI,CAAC,QAAA,IAAY,KAAA,CAAM,gBAAA,IAAoB,eAAA,CAAgB,KAAK,CAAA,EAAG;AACnE,IAAA,KAAA,CAAM,cAAA,EAAe;AACrB,IAAA,QAAA,EAAS;AAAA,EACX,CAAA;AACA,EAAA,MAAM,cAAc,EAAE,GAAG,IAAA,EAAM,IAAA,EAAM,SAAS,WAAA,EAAY;AAC1D,EAAA,IAAI,IAAA,EAAM;AACR,IAAA,uBACEA,cAAA,CAAC,QAAM,GAAG,WAAA,EAAc,GAAI,EAAE,GAAA,IAC3B,QAAA,EACH,CAAA;AAAA,EAEJ;AACA,EAAA,uBACEA,cAAA,CAAC,GAAA,EAAA,EAAG,GAAG,WAAA,EAAa,KACjB,QAAA,EACH,CAAA;AAEJ,CAAC","file":"chunk-DTROMMDX.cjs","sourcesContent":["import {\n forwardRef,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type ReactNode,\n type Ref,\n} from 'react'\nimport { useBlocksEnvironment } from '../provider/BlocksProvider'\nimport type { BlockLinkRenderProps } from './blockLink'\n\nexport interface ActionLinkProps extends Omit<\n ComponentPropsWithoutRef<'button'>,\n 'onClick' | 'type' | 'children'\n> {\n /**\n * Destination. When set (and not `disabled`) the control is a real anchor, rendered through\n * `BlocksProvider`'s `linkComponent` (plain `<a>` by default), so ctrl/cmd-click and \"open in new\n * tab\" work. Without `onSelect` a plain click navigates through the link; with `onSelect`, a plain\n * click calls it instead (it owns navigation) and modified clicks still use the link.\n */\n href?: string\n onSelect?: () => void\n children?: ReactNode\n}\n\nfunction isModifiedClick(event: MouseEvent): boolean {\n return event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey\n}\n\n/**\n * The one \"go somewhere / do something\" control of the link-like blocks: a `<button>` without an\n * `href`, an anchor with one. Forwards its ref and any extra props so it can sit under a\n * tooltip or popover trigger `asChild`.\n */\nexport const ActionLink = forwardRef<HTMLElement, ActionLinkProps>(function ActionLink(\n { href, onSelect, disabled, children, ...rest },\n ref\n) {\n const { linkComponent: Link } = useBlocksEnvironment()\n\n if (!href || disabled) {\n return (\n <button\n {...rest}\n ref={ref as Ref<HTMLButtonElement>}\n type=\"button\"\n disabled={disabled}\n onClick={onSelect}\n >\n {children}\n </button>\n )\n }\n\n const handleClick = (event: MouseEvent<HTMLAnchorElement>) => {\n if (!onSelect || event.defaultPrevented || isModifiedClick(event)) return\n event.preventDefault()\n onSelect()\n }\n const anchorProps = { ...rest, href, onClick: handleClick } as BlockLinkRenderProps\n if (Link) {\n return (\n <Link {...anchorProps} {...({ ref } as object)}>\n {children}\n </Link>\n )\n }\n return (\n <a {...anchorProps} ref={ref as Ref<HTMLAnchorElement>}>\n {children}\n </a>\n )\n})\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkMJCCBMM5_cjs = require('./chunk-MJCCBMM5.cjs');
4
+ var chunkTC3RQNEX_cjs = require('./chunk-TC3RQNEX.cjs');
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var react = require('react');
7
7
  var ui = require('@arbidocs/react/ui');
@@ -172,7 +172,7 @@ function Chart({
172
172
  );
173
173
  }
174
174
  function Eyebrow({ children, index, rule = false, tone, className, testId }) {
175
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
175
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
176
176
  return /* @__PURE__ */ jsxRuntime.jsxs(
177
177
  "p",
178
178
  {
@@ -185,7 +185,7 @@ function Eyebrow({ children, index, rule = false, tone, className, testId }) {
185
185
  "data-testid": testId,
186
186
  children: [
187
187
  rule && /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: "h-px w-8 shrink-0 bg-primary" }),
188
- index !== void 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ui.cn("tabular-nums", t.accent), children: chunkMJCCBMM5_cjs.formatIndex(index) }),
188
+ index !== void 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ui.cn("tabular-nums", t.accent), children: chunkTC3RQNEX_cjs.formatIndex(index) }),
189
189
  /* @__PURE__ */ jsxRuntime.jsx("span", { children })
190
190
  ]
191
191
  }
@@ -202,7 +202,7 @@ function EditorialHeading({
202
202
  className,
203
203
  testId
204
204
  }) {
205
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
205
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
206
206
  const Heading = `h${level}`;
207
207
  return /* @__PURE__ */ jsxRuntime.jsxs(
208
208
  "div",
@@ -271,7 +271,7 @@ function EditorialHero({
271
271
  testIds
272
272
  }) {
273
273
  const tone = SURFACE_TONE[surface];
274
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
274
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
275
275
  const centered = align === "center" && !aside;
276
276
  const ids = {
277
277
  root: testIds?.root ?? testId,
@@ -281,7 +281,7 @@ function EditorialHero({
281
281
  actions: testIds?.actions ?? (testId ? `${testId}-actions` : void 0),
282
282
  aside: testIds?.aside ?? (testId ? `${testId}-aside` : void 0)
283
283
  };
284
- return /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
284
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
285
285
  "section",
286
286
  {
287
287
  className: ui.cn("relative isolate overflow-hidden", SURFACE_CLASS[surface], className),
@@ -381,11 +381,11 @@ function EditorialSection({
381
381
  testId
382
382
  }) {
383
383
  const tone = SURFACE_TONE[surface];
384
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
384
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
385
385
  const hasHeading = Boolean(title || eyebrow || index !== void 0);
386
386
  const heading = hasHeading && title ? /* @__PURE__ */ jsxRuntime.jsx(EditorialHeading, { eyebrow, index, title, lead, tone }) : null;
387
387
  const split = layout !== "stacked";
388
- return /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
388
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
389
389
  "section",
390
390
  {
391
391
  id,
@@ -434,7 +434,7 @@ function EditorialProse({
434
434
  className,
435
435
  testId
436
436
  }) {
437
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
437
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
438
438
  return /* @__PURE__ */ jsxRuntime.jsx(
439
439
  "div",
440
440
  {
@@ -458,7 +458,7 @@ function DefinitionList({
458
458
  className,
459
459
  testId
460
460
  }) {
461
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
461
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
462
462
  return /* @__PURE__ */ jsxRuntime.jsx(
463
463
  "dl",
464
464
  {
@@ -512,7 +512,7 @@ function DefinitionList({
512
512
  );
513
513
  }
514
514
  function CheckList({ items, columns = 1, icon, className, testId }) {
515
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
515
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
516
516
  return /* @__PURE__ */ jsxRuntime.jsx(
517
517
  "ul",
518
518
  {
@@ -545,7 +545,7 @@ function CheckList({ items, columns = 1, icon, className, testId }) {
545
545
  );
546
546
  }
547
547
  function TagList({ items, label, className, testId }) {
548
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
548
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
549
549
  if (items.length === 0) return null;
550
550
  return /* @__PURE__ */ jsxRuntime.jsx(
551
551
  "ul",
@@ -607,10 +607,10 @@ function PanelGrid({
607
607
  className,
608
608
  testId
609
609
  }) {
610
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
610
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
611
611
  const Heading = `h${headingLevel}`;
612
612
  const joined = variant === "joined";
613
- return /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.EditorialToneContext.Provider, { value: t.tone, children: /* @__PURE__ */ jsxRuntime.jsx(
613
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.EditorialToneContext.Provider, { value: t.tone, children: /* @__PURE__ */ jsxRuntime.jsx(
614
614
  "ul",
615
615
  {
616
616
  className: ui.cn(
@@ -649,7 +649,7 @@ function PanelGrid({
649
649
  children: item.icon
650
650
  }
651
651
  ) : /* @__PURE__ */ jsxRuntime.jsx("span", {}),
652
- number !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: ui.cn("font-display text-sm tabular-nums", t.subtle), children: chunkMJCCBMM5_cjs.formatIndex(number) }) : item.href && /* @__PURE__ */ jsxRuntime.jsx(
652
+ number !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: ui.cn("font-display text-sm tabular-nums", t.subtle), children: chunkTC3RQNEX_cjs.formatIndex(number) }) : item.href && /* @__PURE__ */ jsxRuntime.jsx(
653
653
  lucideReact.ArrowUpRight,
654
654
  {
655
655
  "aria-hidden": "true",
@@ -695,7 +695,7 @@ function PanelGrid({
695
695
  ]
696
696
  }
697
697
  );
698
- const cell = /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.BlockLink, { href: item.href, linkComponent, className: "block h-full", children: inner });
698
+ const cell = /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.BlockLink, { href: item.href, linkComponent, className: "block h-full", children: inner });
699
699
  return /* @__PURE__ */ jsxRuntime.jsx("li", { className: "min-w-0", children: reveal ? /* @__PURE__ */ jsxRuntime.jsx(Reveal, { delay: i * 90, className: "h-full", children: cell }) : cell }, i);
700
700
  })
701
701
  }
@@ -710,7 +710,7 @@ function PullQuote({
710
710
  className,
711
711
  testId
712
712
  }) {
713
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
713
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
714
714
  const centered = align === "center";
715
715
  return /* @__PURE__ */ jsxRuntime.jsxs(
716
716
  "figure",
@@ -767,7 +767,7 @@ function ArticleList({
767
767
  className,
768
768
  testId
769
769
  }) {
770
- const t = chunkMJCCBMM5_cjs.useEditorialTone();
770
+ const t = chunkTC3RQNEX_cjs.useEditorialTone();
771
771
  if (items.length === 0) return empty ? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: empty }) : null;
772
772
  const idOf = (item, i) => item.testId ?? (testId ? `${testId}-item-${i}` : void 0);
773
773
  if (layout === "rows") {
@@ -778,7 +778,7 @@ function ArticleList({
778
778
  "data-slot": "article-list",
779
779
  "data-layout": "rows",
780
780
  "data-testid": testId,
781
- children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.BlockLink, { href: item.href, linkComponent, className: "group block", children: /* @__PURE__ */ jsxRuntime.jsxs(
781
+ children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.BlockLink, { href: item.href, linkComponent, className: "group block", children: /* @__PURE__ */ jsxRuntime.jsxs(
782
782
  "article",
783
783
  {
784
784
  className: "grid gap-2 py-6 transition-colors sm:grid-cols-[10rem_minmax(0,1fr)_auto] sm:gap-8",
@@ -817,7 +817,7 @@ function ArticleList({
817
817
  }
818
818
  );
819
819
  }
820
- const card = (item, i, lead) => /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.BlockLink, { href: item.href, linkComponent, className: "group block h-full", children: /* @__PURE__ */ jsxRuntime.jsxs(
820
+ const card = (item, i, lead) => /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.BlockLink, { href: item.href, linkComponent, className: "group block h-full", children: /* @__PURE__ */ jsxRuntime.jsxs(
821
821
  "article",
822
822
  {
823
823
  className: ui.cn(
@@ -829,7 +829,7 @@ function ArticleList({
829
829
  "data-testid": idOf(item, i),
830
830
  children: [
831
831
  item.imageUrl && /* @__PURE__ */ jsxRuntime.jsx(
832
- chunkMJCCBMM5_cjs.BlockImage,
832
+ chunkTC3RQNEX_cjs.BlockImage,
833
833
  {
834
834
  src: item.imageUrl,
835
835
  alt: item.imageAlt ?? "",
@@ -910,8 +910,8 @@ function ProofStrip({
910
910
  testId
911
911
  }) {
912
912
  const tone = SURFACE_TONE[surface];
913
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
914
- return /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsx(
913
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
914
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsx(
915
915
  "section",
916
916
  {
917
917
  "aria-label": label,
@@ -942,8 +942,8 @@ function CtaBand({
942
942
  testId
943
943
  }) {
944
944
  const tone = SURFACE_TONE[surface];
945
- const t = chunkMJCCBMM5_cjs.useEditorialTone(tone);
946
- return /* @__PURE__ */ jsxRuntime.jsx(chunkMJCCBMM5_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
945
+ const t = chunkTC3RQNEX_cjs.useEditorialTone(tone);
946
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkTC3RQNEX_cjs.EditorialToneContext.Provider, { value: tone, children: /* @__PURE__ */ jsxRuntime.jsxs(
947
947
  "section",
948
948
  {
949
949
  className: ui.cn("relative isolate overflow-hidden", SURFACE_CLASS[surface], className),
@@ -986,5 +986,5 @@ exports.ProofStrip = ProofStrip;
986
986
  exports.PullQuote = PullQuote;
987
987
  exports.Reveal = Reveal;
988
988
  exports.TagList = TagList;
989
- //# sourceMappingURL=chunk-65THHQVB.cjs.map
990
- //# sourceMappingURL=chunk-65THHQVB.cjs.map
989
+ //# sourceMappingURL=chunk-ECW2R2KF.cjs.map
990
+ //# sourceMappingURL=chunk-ECW2R2KF.cjs.map