@arbidocs/blocks 0.4.3 → 0.4.5

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 (83) hide show
  1. package/README.md +25 -0
  2. package/dist/agents/definitions/AgentCreator.d.ts +11 -2
  3. package/dist/agents/definitions/index.d.ts +1 -0
  4. package/dist/agents/definitions/persona.d.ts +16 -0
  5. package/dist/agents/index.cjs +202 -150
  6. package/dist/agents/index.js +6 -6
  7. package/dist/agents/tasks/TaskRunsDialog.d.ts +15 -3
  8. package/dist/agents/tasks/index.d.ts +1 -0
  9. package/dist/agents/tasks/taskRequest.d.ts +61 -0
  10. package/dist/artifacts/ArtifactCompareBar.d.ts +33 -0
  11. package/dist/artifacts/ArtifactEditor.d.ts +64 -0
  12. package/dist/artifacts/ArtifactEditorBody.d.ts +34 -0
  13. package/dist/artifacts/ArtifactRedlineView.d.ts +57 -0
  14. package/dist/artifacts/ArtifactToolbar.d.ts +53 -0
  15. package/dist/artifacts/ArtifactVersionBar.d.ts +42 -0
  16. package/dist/{files → artifacts}/RedlineParts.d.ts +4 -0
  17. package/dist/artifacts/editor/ArtifactMarkdownEditor.d.ts +39 -0
  18. package/dist/artifacts/editor/index.cjs +89 -0
  19. package/dist/artifacts/editor/index.cjs.map +1 -0
  20. package/dist/artifacts/editor/index.d.ts +1 -0
  21. package/dist/artifacts/editor/index.js +86 -0
  22. package/dist/artifacts/editor/index.js.map +1 -0
  23. package/dist/artifacts/index.cjs +807 -0
  24. package/dist/artifacts/index.cjs.map +1 -0
  25. package/dist/artifacts/index.d.ts +8 -0
  26. package/dist/artifacts/index.js +787 -0
  27. package/dist/artifacts/index.js.map +1 -0
  28. package/dist/chat/index.cjs +54 -54
  29. package/dist/chat/index.js +2 -2
  30. package/dist/{chunk-XKKGGUU2.cjs → chunk-3MIQASHO.cjs} +4 -4
  31. package/dist/{chunk-XKKGGUU2.cjs.map → chunk-3MIQASHO.cjs.map} +1 -1
  32. package/dist/{chunk-B673CCW5.js → chunk-3PJCET7H.js} +3 -3
  33. package/dist/{chunk-B673CCW5.js.map → chunk-3PJCET7H.js.map} +1 -1
  34. package/dist/{chunk-VXOGANFJ.cjs → chunk-3PZPRAAR.cjs} +189 -34
  35. package/dist/chunk-3PZPRAAR.cjs.map +1 -0
  36. package/dist/{chunk-AAY5ASZD.js → chunk-5XTZFH65.js} +170 -28
  37. package/dist/chunk-5XTZFH65.js.map +1 -0
  38. package/dist/{chunk-JPO3F4J7.js → chunk-6YHWXMPQ.js} +3 -3
  39. package/dist/{chunk-JPO3F4J7.js.map → chunk-6YHWXMPQ.js.map} +1 -1
  40. package/dist/{chunk-TYZUCAT7.js → chunk-7YADKWZT.js} +43 -6
  41. package/dist/chunk-7YADKWZT.js.map +1 -0
  42. package/dist/{chunk-SYDHKKRZ.cjs → chunk-IZHWP6WQ.cjs} +47 -5
  43. package/dist/chunk-IZHWP6WQ.cjs.map +1 -0
  44. package/dist/{chunk-ZVPTFTGV.cjs → chunk-MVNCQDDE.cjs} +4 -4
  45. package/dist/{chunk-ZVPTFTGV.cjs.map → chunk-MVNCQDDE.cjs.map} +1 -1
  46. package/dist/{chunk-NJL4LIXX.js → chunk-NPKGUQU5.js} +4 -4
  47. package/dist/{chunk-NJL4LIXX.js.map → chunk-NPKGUQU5.js.map} +1 -1
  48. package/dist/{chunk-ATXPAD6S.cjs → chunk-YLOKCIQJ.cjs} +3 -3
  49. package/dist/{chunk-ATXPAD6S.cjs.map → chunk-YLOKCIQJ.cjs.map} +1 -1
  50. package/dist/collaboration/contacts/AddContactsParts.d.ts +9 -4
  51. package/dist/collaboration/contacts/index.d.ts +1 -0
  52. package/dist/collaboration/contacts/parseEmails.d.ts +26 -0
  53. package/dist/collaboration/index.cjs +51 -31
  54. package/dist/collaboration/index.js +1 -1
  55. package/dist/connect/index.cjs +18 -18
  56. package/dist/connect/index.js +4 -4
  57. package/dist/facts/index.cjs +1 -1
  58. package/dist/facts/index.js +1 -1
  59. package/dist/files/ViewerChrome.d.ts +0 -45
  60. package/dist/files/ViewerParts.d.ts +0 -19
  61. package/dist/files/index.cjs +4 -436
  62. package/dist/files/index.cjs.map +1 -1
  63. package/dist/files/index.d.ts +2 -4
  64. package/dist/files/index.js +8 -428
  65. package/dist/files/index.js.map +1 -1
  66. package/dist/home/index.cjs +19 -19
  67. package/dist/home/index.js +4 -4
  68. package/dist/index.cjs +411 -339
  69. package/dist/index.js +13 -13
  70. package/dist/settings/index.cjs +3 -3
  71. package/dist/settings/index.js +3 -3
  72. package/dist/shell/index.cjs +10 -10
  73. package/dist/shell/index.js +2 -2
  74. package/dist/site/index.cjs +5 -5
  75. package/dist/site/index.js +1 -1
  76. package/dist/studio/index.cjs +8 -8
  77. package/dist/studio/index.js +6 -6
  78. package/package.json +25 -4
  79. package/dist/chunk-AAY5ASZD.js.map +0 -1
  80. package/dist/chunk-SYDHKKRZ.cjs.map +0 -1
  81. package/dist/chunk-TYZUCAT7.js.map +0 -1
  82. package/dist/chunk-VXOGANFJ.cjs.map +0 -1
  83. /package/dist/{files → artifacts}/VersionTimeline.d.ts +0 -0
@@ -19,18 +19,23 @@ export declare const DEFAULT_ADD_CONTACTS_LABELS: AddContactsLabels;
19
19
  export interface AddContactsFormProps {
20
20
  value: string;
21
21
  onChange: (value: string) => void;
22
- /** Distinct addresses parsed from `value`. */
23
- emailCount: number;
22
+ /**
23
+ * How many addresses `value` holds. Omit it: the form parses `value` itself with
24
+ * {@link parseEmails} (commas, semicolons, spaces and new lines; distinct, valid, lower-cased).
25
+ */
26
+ emailCount?: number;
27
+ /** The most addresses one submit may carry. Default {@link MAX_INVITE_EMAILS} (the API's own limit). */
24
28
  maxEmails?: number;
25
29
  isPending: boolean;
26
- onSubmit: () => void;
30
+ /** Receives the parsed addresses, ready to send. */
31
+ onSubmit: (emails: string[]) => void;
27
32
  onCancel?: () => void;
28
33
  /** Formatted referral reward ("$10"); omit to hide the banner. */
29
34
  rewardAmount?: string;
30
35
  labels?: Partial<AddContactsLabels>;
31
36
  }
32
37
  /** Email invite form: a textarea for one or many addresses, and Add / Cancel. */
33
- export declare function AddContactsForm({ value, onChange, emailCount, maxEmails, isPending, onSubmit, onCancel, rewardAmount, labels, }: AddContactsFormProps): import("react").JSX.Element;
38
+ export declare function AddContactsForm({ value, onChange, emailCount: emailCountProp, maxEmails, isPending, onSubmit, onCancel, rewardAmount, labels, }: AddContactsFormProps): import("react").JSX.Element;
34
39
  export interface AddContactsResultRow {
35
40
  email: string;
36
41
  status: 'success' | 'failed' | 'pending';
@@ -1 +1,2 @@
1
1
  export { AddContactsForm, AddContactsResults, DEFAULT_ADD_CONTACTS_LABELS, type AddContactsFormProps, type AddContactsResultsProps, type AddContactsResultRow, type AddContactsLabels, } from './AddContactsParts';
2
+ export { parseEmails, toAddContactsRow, toAddContactsRows, MAX_INVITE_EMAILS, DEFAULT_CONTACT_OUTCOME_LABELS, type ContactOutcomeLabels, } from './parseEmails';
@@ -0,0 +1,26 @@
1
+ import type { components } from '@arbidocs/client';
2
+ import type { AddContactsResultRow } from './AddContactsParts';
3
+ /** The most addresses one add-contacts request may carry (the API's own limit). */
4
+ export declare const MAX_INVITE_EMAILS = 100;
5
+ /**
6
+ * Distinct, lower-cased, well-formed addresses typed or pasted into the invite box. Commas,
7
+ * semicolons, spaces and new lines all separate; anything that is not an address is dropped.
8
+ */
9
+ export declare function parseEmails(text: string): string[];
10
+ type ContactRow = Pick<components['schemas']['ContactResponse'], 'email' | 'status' | 'outcome' | 'outcome_detail'>;
11
+ /** One plain sentence per outcome the backend reports. */
12
+ export interface ContactOutcomeLabels {
13
+ contact_added: string;
14
+ already_contact: string;
15
+ invited: string;
16
+ reinvited: string;
17
+ not_resent_still_pending: string;
18
+ /** Fallback when the backend gives no detail for a failure. */
19
+ failed: string;
20
+ }
21
+ export declare const DEFAULT_CONTACT_OUTCOME_LABELS: ContactOutcomeLabels;
22
+ /** A backend add-contact row as an {@link AddContactsResultRow} for `AddContactsResults`. */
23
+ export declare function toAddContactsRow(row: ContactRow, labels?: Partial<ContactOutcomeLabels>): AddContactsResultRow;
24
+ /** Map every row of an add-contacts response. */
25
+ export declare const toAddContactsRows: (rows: ContactRow[], labels?: Partial<ContactOutcomeLabels>) => AddContactsResultRow[];
26
+ export {};
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkSYDHKKRZ_cjs = require('../chunk-SYDHKKRZ.cjs');
4
+ var chunkIZHWP6WQ_cjs = require('../chunk-IZHWP6WQ.cjs');
5
5
  require('../chunk-7G2LJMUG.cjs');
6
6
  var chunkVLCY46K6_cjs = require('../chunk-VLCY46K6.cjs');
7
7
  require('../chunk-ULWRNGGE.cjs');
@@ -11,123 +11,143 @@ require('../chunk-MHVNT4J3.cjs');
11
11
 
12
12
  Object.defineProperty(exports, "ActionMenu", {
13
13
  enumerable: true,
14
- get: function () { return chunkSYDHKKRZ_cjs.ActionMenu; }
14
+ get: function () { return chunkIZHWP6WQ_cjs.ActionMenu; }
15
15
  });
16
16
  Object.defineProperty(exports, "AddContactsForm", {
17
17
  enumerable: true,
18
- get: function () { return chunkSYDHKKRZ_cjs.AddContactsForm; }
18
+ get: function () { return chunkIZHWP6WQ_cjs.AddContactsForm; }
19
19
  });
20
20
  Object.defineProperty(exports, "AddContactsResults", {
21
21
  enumerable: true,
22
- get: function () { return chunkSYDHKKRZ_cjs.AddContactsResults; }
22
+ get: function () { return chunkIZHWP6WQ_cjs.AddContactsResults; }
23
23
  });
24
24
  Object.defineProperty(exports, "DEFAULT_ADD_CONTACTS_LABELS", {
25
25
  enumerable: true,
26
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_ADD_CONTACTS_LABELS; }
26
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_ADD_CONTACTS_LABELS; }
27
+ });
28
+ Object.defineProperty(exports, "DEFAULT_CONTACT_OUTCOME_LABELS", {
29
+ enumerable: true,
30
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_CONTACT_OUTCOME_LABELS; }
27
31
  });
28
32
  Object.defineProperty(exports, "DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS", {
29
33
  enumerable: true,
30
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS; }
34
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS; }
31
35
  });
32
36
  Object.defineProperty(exports, "DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS", {
33
37
  enumerable: true,
34
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS; }
38
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS; }
35
39
  });
36
40
  Object.defineProperty(exports, "DEFAULT_DM_INVITE_CHIP_LABELS", {
37
41
  enumerable: true,
38
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_DM_INVITE_CHIP_LABELS; }
42
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_DM_INVITE_CHIP_LABELS; }
39
43
  });
40
44
  Object.defineProperty(exports, "DEFAULT_DM_THREAD_FRAME_LABELS", {
41
45
  enumerable: true,
42
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_DM_THREAD_FRAME_LABELS; }
46
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_DM_THREAD_FRAME_LABELS; }
43
47
  });
44
48
  Object.defineProperty(exports, "DEFAULT_MAIL_FOLDER_TREE_LABELS", {
45
49
  enumerable: true,
46
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_MAIL_FOLDER_TREE_LABELS; }
50
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_MAIL_FOLDER_TREE_LABELS; }
47
51
  });
48
52
  Object.defineProperty(exports, "DEFAULT_RECIPIENT_PICKER_LABELS", {
49
53
  enumerable: true,
50
- get: function () { return chunkSYDHKKRZ_cjs.DEFAULT_RECIPIENT_PICKER_LABELS; }
54
+ get: function () { return chunkIZHWP6WQ_cjs.DEFAULT_RECIPIENT_PICKER_LABELS; }
51
55
  });
52
56
  Object.defineProperty(exports, "DmAccessRequestBanner", {
53
57
  enumerable: true,
54
- get: function () { return chunkSYDHKKRZ_cjs.DmAccessRequestBanner; }
58
+ get: function () { return chunkIZHWP6WQ_cjs.DmAccessRequestBanner; }
55
59
  });
56
60
  Object.defineProperty(exports, "DmGrantAccessDialogView", {
57
61
  enumerable: true,
58
- get: function () { return chunkSYDHKKRZ_cjs.DmGrantAccessDialogView; }
62
+ get: function () { return chunkIZHWP6WQ_cjs.DmGrantAccessDialogView; }
59
63
  });
60
64
  Object.defineProperty(exports, "DmInviteAvatar", {
61
65
  enumerable: true,
62
- get: function () { return chunkSYDHKKRZ_cjs.DmInviteAvatar; }
66
+ get: function () { return chunkIZHWP6WQ_cjs.DmInviteAvatar; }
63
67
  });
64
68
  Object.defineProperty(exports, "DmInviteChip", {
65
69
  enumerable: true,
66
- get: function () { return chunkSYDHKKRZ_cjs.DmInviteChip; }
70
+ get: function () { return chunkIZHWP6WQ_cjs.DmInviteChip; }
67
71
  });
68
72
  Object.defineProperty(exports, "DmNewTabIcon", {
69
73
  enumerable: true,
70
- get: function () { return chunkSYDHKKRZ_cjs.DmNewTabIcon; }
74
+ get: function () { return chunkIZHWP6WQ_cjs.DmNewTabIcon; }
71
75
  });
72
76
  Object.defineProperty(exports, "DmThreadFrame", {
73
77
  enumerable: true,
74
- get: function () { return chunkSYDHKKRZ_cjs.DmThreadFrame; }
78
+ get: function () { return chunkIZHWP6WQ_cjs.DmThreadFrame; }
75
79
  });
76
80
  Object.defineProperty(exports, "DmThreadHeader", {
77
81
  enumerable: true,
78
- get: function () { return chunkSYDHKKRZ_cjs.DmThreadHeader; }
82
+ get: function () { return chunkIZHWP6WQ_cjs.DmThreadHeader; }
83
+ });
84
+ Object.defineProperty(exports, "MAX_INVITE_EMAILS", {
85
+ enumerable: true,
86
+ get: function () { return chunkIZHWP6WQ_cjs.MAX_INVITE_EMAILS; }
79
87
  });
80
88
  Object.defineProperty(exports, "MailFolderTree", {
81
89
  enumerable: true,
82
- get: function () { return chunkSYDHKKRZ_cjs.MailFolderTree; }
90
+ get: function () { return chunkIZHWP6WQ_cjs.MailFolderTree; }
83
91
  });
84
92
  Object.defineProperty(exports, "MemberBulkActions", {
85
93
  enumerable: true,
86
- get: function () { return chunkSYDHKKRZ_cjs.MemberBulkActions; }
94
+ get: function () { return chunkIZHWP6WQ_cjs.MemberBulkActions; }
87
95
  });
88
96
  Object.defineProperty(exports, "MemberListLoading", {
89
97
  enumerable: true,
90
- get: function () { return chunkSYDHKKRZ_cjs.MemberListLoading; }
98
+ get: function () { return chunkIZHWP6WQ_cjs.MemberListLoading; }
91
99
  });
92
100
  Object.defineProperty(exports, "MemberMutedText", {
93
101
  enumerable: true,
94
- get: function () { return chunkSYDHKKRZ_cjs.MemberMutedText; }
102
+ get: function () { return chunkIZHWP6WQ_cjs.MemberMutedText; }
95
103
  });
96
104
  Object.defineProperty(exports, "MemberNameCell", {
97
105
  enumerable: true,
98
- get: function () { return chunkSYDHKKRZ_cjs.MemberNameCell; }
106
+ get: function () { return chunkIZHWP6WQ_cjs.MemberNameCell; }
99
107
  });
100
108
  Object.defineProperty(exports, "MemberRoleCell", {
101
109
  enumerable: true,
102
- get: function () { return chunkSYDHKKRZ_cjs.MemberRoleCell; }
110
+ get: function () { return chunkIZHWP6WQ_cjs.MemberRoleCell; }
103
111
  });
104
112
  Object.defineProperty(exports, "RecipientPicker", {
105
113
  enumerable: true,
106
- get: function () { return chunkSYDHKKRZ_cjs.RecipientPicker; }
114
+ get: function () { return chunkIZHWP6WQ_cjs.RecipientPicker; }
107
115
  });
108
116
  Object.defineProperty(exports, "RoleSelect", {
109
117
  enumerable: true,
110
- get: function () { return chunkSYDHKKRZ_cjs.RoleSelect; }
118
+ get: function () { return chunkIZHWP6WQ_cjs.RoleSelect; }
111
119
  });
112
120
  Object.defineProperty(exports, "WorkspaceDeleteButton", {
113
121
  enumerable: true,
114
- get: function () { return chunkSYDHKKRZ_cjs.WorkspaceDeleteButton; }
122
+ get: function () { return chunkIZHWP6WQ_cjs.WorkspaceDeleteButton; }
115
123
  });
116
124
  Object.defineProperty(exports, "buildMailFolderTree", {
117
125
  enumerable: true,
118
- get: function () { return chunkSYDHKKRZ_cjs.buildMailFolderTree; }
126
+ get: function () { return chunkIZHWP6WQ_cjs.buildMailFolderTree; }
119
127
  });
120
128
  Object.defineProperty(exports, "descendantFolderIds", {
121
129
  enumerable: true,
122
- get: function () { return chunkSYDHKKRZ_cjs.descendantFolderIds; }
130
+ get: function () { return chunkIZHWP6WQ_cjs.descendantFolderIds; }
123
131
  });
124
132
  Object.defineProperty(exports, "isInboxFolder", {
125
133
  enumerable: true,
126
- get: function () { return chunkSYDHKKRZ_cjs.isInboxFolder; }
134
+ get: function () { return chunkIZHWP6WQ_cjs.isInboxFolder; }
135
+ });
136
+ Object.defineProperty(exports, "parseEmails", {
137
+ enumerable: true,
138
+ get: function () { return chunkIZHWP6WQ_cjs.parseEmails; }
139
+ });
140
+ Object.defineProperty(exports, "toAddContactsRow", {
141
+ enumerable: true,
142
+ get: function () { return chunkIZHWP6WQ_cjs.toAddContactsRow; }
143
+ });
144
+ Object.defineProperty(exports, "toAddContactsRows", {
145
+ enumerable: true,
146
+ get: function () { return chunkIZHWP6WQ_cjs.toAddContactsRows; }
127
147
  });
128
148
  Object.defineProperty(exports, "toggleMailFolder", {
129
149
  enumerable: true,
130
- get: function () { return chunkSYDHKKRZ_cjs.toggleMailFolder; }
150
+ get: function () { return chunkIZHWP6WQ_cjs.toggleMailFolder; }
131
151
  });
132
152
  Object.defineProperty(exports, "DEFAULT_SHARE_CONTROL_LABELS", {
133
153
  enumerable: true,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- export { ActionMenu, AddContactsForm, AddContactsResults, DEFAULT_ADD_CONTACTS_LABELS, DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS, DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS, DEFAULT_DM_INVITE_CHIP_LABELS, DEFAULT_DM_THREAD_FRAME_LABELS, DEFAULT_MAIL_FOLDER_TREE_LABELS, DEFAULT_RECIPIENT_PICKER_LABELS, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, DmInviteChip, DmNewTabIcon, DmThreadFrame, DmThreadHeader, MailFolderTree, MemberBulkActions, MemberListLoading, MemberMutedText, MemberNameCell, MemberRoleCell, RecipientPicker, RoleSelect, WorkspaceDeleteButton, buildMailFolderTree, descendantFolderIds, isInboxFolder, toggleMailFolder } from '../chunk-TYZUCAT7.js';
2
+ export { ActionMenu, AddContactsForm, AddContactsResults, DEFAULT_ADD_CONTACTS_LABELS, DEFAULT_CONTACT_OUTCOME_LABELS, DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS, DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS, DEFAULT_DM_INVITE_CHIP_LABELS, DEFAULT_DM_THREAD_FRAME_LABELS, DEFAULT_MAIL_FOLDER_TREE_LABELS, DEFAULT_RECIPIENT_PICKER_LABELS, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, DmInviteChip, DmNewTabIcon, DmThreadFrame, DmThreadHeader, MAX_INVITE_EMAILS, MailFolderTree, MemberBulkActions, MemberListLoading, MemberMutedText, MemberNameCell, MemberRoleCell, RecipientPicker, RoleSelect, WorkspaceDeleteButton, buildMailFolderTree, descendantFolderIds, isInboxFolder, parseEmails, toAddContactsRow, toAddContactsRows, toggleMailFolder } from '../chunk-7YADKWZT.js';
3
3
  import '../chunk-NBV56SGU.js';
4
4
  export { DEFAULT_SHARE_CONTROL_LABELS, ShareControl } from '../chunk-K4BGOPGG.js';
5
5
  import '../chunk-TX2ZICS7.js';
@@ -1,18 +1,18 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkXKKGGUU2_cjs = require('../chunk-XKKGGUU2.cjs');
5
- require('../chunk-ATXPAD6S.cjs');
4
+ var chunk3MIQASHO_cjs = require('../chunk-3MIQASHO.cjs');
5
+ require('../chunk-YLOKCIQJ.cjs');
6
6
  require('../chunk-KHX2BX3S.cjs');
7
- require('../chunk-KDG6FER6.cjs');
8
7
  require('../chunk-MHVNT4J3.cjs');
8
+ require('../chunk-KDG6FER6.cjs');
9
9
  var react = require('react');
10
10
  var reactQuery = require('@tanstack/react-query');
11
11
  var react$1 = require('@arbidocs/react');
12
12
  var jsxRuntime = require('react/jsx-runtime');
13
13
 
14
14
  function ConnectionBoundWebSocket({ children }) {
15
- const { status } = chunkXKKGGUU2_cjs.useConnection();
15
+ const { status } = chunk3MIQASHO_cjs.useConnection();
16
16
  return /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiWebSocketProvider, { enabled: status === "authenticated", children });
17
17
  }
18
18
  function ArbiAppProvider({
@@ -25,10 +25,10 @@ function ArbiAppProvider({
25
25
  })
26
26
  );
27
27
  const providerUrl = config.apiUrl || config.demoApiUrl || "https://demo.arbi.local";
28
- return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiProvider, { url: providerUrl, children: /* @__PURE__ */ jsxRuntime.jsx(chunkXKKGGUU2_cjs.ConnectionProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(ConnectionBoundWebSocket, { children }) }) }) });
28
+ return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiProvider, { url: providerUrl, children: /* @__PURE__ */ jsxRuntime.jsx(chunk3MIQASHO_cjs.ConnectionProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(ConnectionBoundWebSocket, { children }) }) }) });
29
29
  }
30
30
  function useConnectedShellWorkspaces(options = {}) {
31
- const { workspaceId, setWorkspace } = chunkXKKGGUU2_cjs.useConnection();
31
+ const { workspaceId, setWorkspace } = chunk3MIQASHO_cjs.useConnection();
32
32
  const query = react$1.useWorkspaces();
33
33
  return react$1.useShellWorkspaces({
34
34
  ...options,
@@ -42,51 +42,51 @@ function useConnectedShellWorkspaces(options = {}) {
42
42
 
43
43
  Object.defineProperty(exports, "ConnectedAssistantDock", {
44
44
  enumerable: true,
45
- get: function () { return chunkXKKGGUU2_cjs.ConnectedAssistantDock; }
45
+ get: function () { return chunk3MIQASHO_cjs.ConnectedAssistantDock; }
46
46
  });
47
47
  Object.defineProperty(exports, "ConnectionProvider", {
48
48
  enumerable: true,
49
- get: function () { return chunkXKKGGUU2_cjs.ConnectionProvider; }
49
+ get: function () { return chunk3MIQASHO_cjs.ConnectionProvider; }
50
50
  });
51
51
  Object.defineProperty(exports, "SESSION_EXPIRED_MESSAGE", {
52
52
  enumerable: true,
53
- get: function () { return chunkXKKGGUU2_cjs.SESSION_EXPIRED_MESSAGE; }
53
+ get: function () { return chunk3MIQASHO_cjs.SESSION_EXPIRED_MESSAGE; }
54
54
  });
55
55
  Object.defineProperty(exports, "isAuthenticated", {
56
56
  enumerable: true,
57
- get: function () { return chunkXKKGGUU2_cjs.isAuthenticated; }
57
+ get: function () { return chunk3MIQASHO_cjs.isAuthenticated; }
58
58
  });
59
59
  Object.defineProperty(exports, "redlineStats", {
60
60
  enumerable: true,
61
- get: function () { return chunkXKKGGUU2_cjs.redlineStats; }
61
+ get: function () { return chunk3MIQASHO_cjs.redlineStats; }
62
62
  });
63
63
  Object.defineProperty(exports, "textToArtifact", {
64
64
  enumerable: true,
65
- get: function () { return chunkXKKGGUU2_cjs.textToArtifact; }
65
+ get: function () { return chunk3MIQASHO_cjs.textToArtifact; }
66
66
  });
67
67
  Object.defineProperty(exports, "toRedlineMarkdown", {
68
68
  enumerable: true,
69
- get: function () { return chunkXKKGGUU2_cjs.toRedlineMarkdown; }
69
+ get: function () { return chunk3MIQASHO_cjs.toRedlineMarkdown; }
70
70
  });
71
71
  Object.defineProperty(exports, "useConnectedAiTask", {
72
72
  enumerable: true,
73
- get: function () { return chunkXKKGGUU2_cjs.useConnectedAiTask; }
73
+ get: function () { return chunk3MIQASHO_cjs.useConnectedAiTask; }
74
74
  });
75
75
  Object.defineProperty(exports, "useConnectedChat", {
76
76
  enumerable: true,
77
- get: function () { return chunkXKKGGUU2_cjs.useConnectedChat; }
77
+ get: function () { return chunk3MIQASHO_cjs.useConnectedChat; }
78
78
  });
79
79
  Object.defineProperty(exports, "useConnection", {
80
80
  enumerable: true,
81
- get: function () { return chunkXKKGGUU2_cjs.useConnection; }
81
+ get: function () { return chunk3MIQASHO_cjs.useConnection; }
82
82
  });
83
83
  Object.defineProperty(exports, "useSemanticSearch", {
84
84
  enumerable: true,
85
- get: function () { return chunkXKKGGUU2_cjs.useSemanticSearch; }
85
+ get: function () { return chunk3MIQASHO_cjs.useSemanticSearch; }
86
86
  });
87
87
  Object.defineProperty(exports, "useWorkspaceDocs", {
88
88
  enumerable: true,
89
- get: function () { return chunkXKKGGUU2_cjs.useWorkspaceDocs; }
89
+ get: function () { return chunk3MIQASHO_cjs.useWorkspaceDocs; }
90
90
  });
91
91
  exports.ArbiAppProvider = ArbiAppProvider;
92
92
  exports.useConnectedShellWorkspaces = useConnectedShellWorkspaces;
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import { ConnectionProvider, useConnection } from '../chunk-B673CCW5.js';
3
- export { ConnectedAssistantDock, ConnectionProvider, SESSION_EXPIRED_MESSAGE, isAuthenticated, redlineStats, textToArtifact, toRedlineMarkdown, useConnectedAiTask, useConnectedChat, useConnection, useSemanticSearch, useWorkspaceDocs } from '../chunk-B673CCW5.js';
4
- import '../chunk-JPO3F4J7.js';
2
+ import { ConnectionProvider, useConnection } from '../chunk-3PJCET7H.js';
3
+ export { ConnectedAssistantDock, ConnectionProvider, SESSION_EXPIRED_MESSAGE, isAuthenticated, redlineStats, textToArtifact, toRedlineMarkdown, useConnectedAiTask, useConnectedChat, useConnection, useSemanticSearch, useWorkspaceDocs } from '../chunk-3PJCET7H.js';
4
+ import '../chunk-6YHWXMPQ.js';
5
5
  import '../chunk-2VBJ763Y.js';
6
- import '../chunk-OXF2IFXG.js';
7
6
  import '../chunk-7F6CBP3Z.js';
7
+ import '../chunk-OXF2IFXG.js';
8
8
  import { useState } from 'react';
9
9
  import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
10
10
  import { ArbiProvider, useWorkspaces, useShellWorkspaces, ArbiWebSocketProvider } from '@arbidocs/react';
@@ -8,8 +8,8 @@ var chunkV4ISCZJ7_cjs = require('../chunk-V4ISCZJ7.cjs');
8
8
  var chunk5B4PXAKI_cjs = require('../chunk-5B4PXAKI.cjs');
9
9
  var chunkPPCATBOY_cjs = require('../chunk-PPCATBOY.cjs');
10
10
  require('../chunk-C54XEN5T.cjs');
11
- var chunkKDG6FER6_cjs = require('../chunk-KDG6FER6.cjs');
12
11
  var chunkMHVNT4J3_cjs = require('../chunk-MHVNT4J3.cjs');
12
+ var chunkKDG6FER6_cjs = require('../chunk-KDG6FER6.cjs');
13
13
  var lucideReact = require('lucide-react');
14
14
  var ui = require('@arbidocs/react/ui');
15
15
  var jsxRuntime = require('react/jsx-runtime');
@@ -6,8 +6,8 @@ import { SelectionBar, SelectionBarAction } from '../chunk-NUNKSZKU.js';
6
6
  import { TabHeader } from '../chunk-UBNVIIBT.js';
7
7
  import { observeResize } from '../chunk-NPLYHR2E.js';
8
8
  import '../chunk-76JDDMSP.js';
9
- import { initials } from '../chunk-OXF2IFXG.js';
10
9
  import { testIdOr } from '../chunk-7F6CBP3Z.js';
10
+ import { initials } from '../chunk-OXF2IFXG.js';
11
11
  import { PencilLine, Check, MoreVertical, Pencil, Trash2, CalendarDays, X, Filter, SlidersHorizontal, Columns3, ChevronDown, RotateCcw, Milestone, CalendarClock, Scale, Lightbulb, ArrowRight, Loader2, Info, PinOff, Pin, Tags, MoreHorizontal, FolderUp, BookMarked, Plus, Search, CheckCircle2, CornerDownLeft, Quote, ChevronLeft, ChevronRight, Table2, CalendarRange, GanttChartSquare } from 'lucide-react';
12
12
  import { Popover, PopoverTrigger, PopoverContent, Command, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, cn, Input, Button, CommandSeparator, Tooltip, TooltipTrigger, TooltipContent } from '@arbidocs/react/ui';
13
13
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
@@ -2,17 +2,6 @@ import type { ReactNode } from 'react';
2
2
  /** Every fixed string of the viewer chrome and parts. Pass a partial `labels` to translate or reword. */
3
3
  export interface ViewerLabels {
4
4
  shared: string;
5
- edit: string;
6
- cancel: string;
7
- cancelEditing: string;
8
- compare: string;
9
- compareTitle: string;
10
- saveDocument: string;
11
- saveAsVersion: string;
12
- noChanges: string;
13
- saving: string;
14
- save: string;
15
- saveVersion: string;
16
5
  useAsReference: string;
17
6
  useAsReferenceTitle: string;
18
7
  crop: string;
@@ -24,12 +13,6 @@ export interface ViewerLabels {
24
13
  pageInput: string;
25
14
  pageOfTitle: string;
26
15
  pageOf: (page: number, total: number) => string;
27
- compareVs: string;
28
- trackChanges: string;
29
- trackChangesBack: string;
30
- trackChangesView: string;
31
- flipComparison: string;
32
- stopComparing: string;
33
16
  previewUnavailable: string;
34
17
  cannotPreview: (extension: string) => string;
35
18
  downloadToOpen: string;
@@ -77,34 +60,6 @@ export interface ViewerTitleProps {
77
60
  }
78
61
  /** Read-only document name pill with the shared marker and version label. */
79
62
  export declare function ViewerTitle({ title, shared, versionLabel, shrink, labels, sharedTestId, }: ViewerTitleProps): import("react").JSX.Element;
80
- export interface ViewerEditActionsProps {
81
- isEditing: boolean;
82
- isDraft: boolean;
83
- /** Narrow panel: icon-only Edit/Compare. Save keeps its label. */
84
- compact: boolean;
85
- hasChanges: boolean;
86
- isSaving: boolean;
87
- /** Offer "Compare against the previous version". */
88
- canCompare: boolean;
89
- onStartEdit: () => void;
90
- onCancel: () => void;
91
- onCompare: () => void;
92
- onSave: () => void;
93
- labels?: Partial<ViewerLabels>;
94
- testIds?: Partial<ViewerEditActionsTestIds>;
95
- }
96
- export interface ViewerEditActionsTestIds {
97
- edit: string;
98
- cancel: string;
99
- compare: string;
100
- save: string;
101
- unsavedDot: string;
102
- }
103
- /**
104
- * Edit / Cancel / Compare / Save. Save is the ONE filled button and only once there is something
105
- * to save; a dot marks unsaved changes as a second glanceable signal.
106
- */
107
- export declare function ViewerEditActions({ isEditing, isDraft, compact, hasChanges, isSaving, canCompare, onStartEdit, onCancel, onCompare, onSave, labels, testIds, }: ViewerEditActionsProps): import("react").JSX.Element;
108
63
  export interface ViewerImageActionsProps {
109
64
  compact: boolean;
110
65
  onUseAsReference: () => void;
@@ -27,25 +27,6 @@ export interface ViewerPageCounterProps {
27
27
  }
28
28
  /** "3 / 12": click the number to type a page; Enter or blur commits, Escape cancels. */
29
29
  export declare function ViewerPageCounter({ page, total, onGoTo, labels }: ViewerPageCounterProps): import("react").JSX.Element | null;
30
- export interface ViewerCompareBarProps {
31
- /** The compared-against document pill (the host renders its entity). */
32
- compareTarget: ReactNode;
33
- versionLabel?: string | null;
34
- /** Artifacts toggle "Track changes"; plain documents get a flip-direction arrow instead. */
35
- mode: 'track-changes' | 'flip';
36
- showTrackChanges: boolean;
37
- onToggleTrackChanges: () => void;
38
- onFlip: () => void;
39
- onStop: () => void;
40
- labels?: Partial<ViewerLabels>;
41
- /** Overrides the track-changes toggle test id (default `track-changes-toggle`). */
42
- trackChangesTestId?: string;
43
- }
44
- /**
45
- * "Compare vs. [doc]" row contents: always an explicit text label (an icon-only pill was unclear),
46
- * with Track changes (artifacts) or Flip (plain documents), and Stop comparing.
47
- */
48
- export declare function ViewerCompareBar({ compareTarget, versionLabel, mode, showTrackChanges, onToggleTrackChanges, onFlip, onStop, labels, trackChangesTestId, }: ViewerCompareBarProps): import("react").JSX.Element;
49
30
  /** A format that cannot be previewed in the browser: offer the original instead. */
50
31
  export declare function ViewerPreviewUnavailable({ extension, onDownload, labels, }: {
51
32
  extension: string;