@object-ui/plugin-detail 3.0.3 → 3.1.1

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 (141) hide show
  1. package/.turbo/turbo-build.log +45 -8
  2. package/CHANGELOG.md +11 -0
  3. package/dist/AddressField-B1iVr404.js +96 -0
  4. package/dist/AutoNumberField-BxnFqllo.js +8 -0
  5. package/dist/AvatarField-Duw4xOLZ.js +82 -0
  6. package/dist/BooleanField-CZ4axVeq.js +37 -0
  7. package/dist/CodeField-BSz-mk2v.js +21 -0
  8. package/dist/ColorField-B522ad8m.js +42 -0
  9. package/dist/CurrencyField-Cwr3_pow.js +43 -0
  10. package/dist/DateField-DCo6dxud.js +21 -0
  11. package/dist/DateTimeField-BWfBuANO.js +28 -0
  12. package/dist/EmailField-CpwbdVCU.js +31 -0
  13. package/dist/FileField-DVAUAJ8e.js +133 -0
  14. package/dist/FormulaField-CJkkwIK8.js +9 -0
  15. package/dist/GeolocationField-DNCKitgo.js +123 -0
  16. package/dist/GridField-DSblZNfp.js +30 -0
  17. package/dist/ImageField-DBAlnMon.js +90 -0
  18. package/dist/LocationField-DsHsXA6R.js +31 -0
  19. package/dist/LookupField-CsT0QQz2.js +96 -0
  20. package/dist/MasterDetailField-Db8b7Gqs.js +108 -0
  21. package/dist/NumberField-0IGp7lcA.js +26 -0
  22. package/dist/ObjectField-BLApgJtS.js +48 -0
  23. package/dist/PasswordField-pHKyNlmo.js +38 -0
  24. package/dist/PercentField-CwgKmlIb.js +63 -0
  25. package/dist/PhoneField-lKtbYOdN.js +31 -0
  26. package/dist/QRCodeField-BTTasT3w.js +77 -0
  27. package/dist/RatingField-De2X-l44.js +47 -0
  28. package/dist/RichTextField-B5QnvUOr.js +38 -0
  29. package/dist/SelectField-C9AZRHWu.js +26 -0
  30. package/dist/SignatureField-BgcEmYzd.js +85 -0
  31. package/dist/SliderField-BzrttVOY.js +30 -0
  32. package/dist/SummaryField-ugYPYxjP.js +9 -0
  33. package/dist/TextAreaField-DSE_CaU6.js +39 -0
  34. package/dist/TextField-DFQ4T9PR.js +32 -0
  35. package/dist/TimeField-F0cfmsps.js +21 -0
  36. package/dist/UrlField-DLXrFIH-.js +33 -0
  37. package/dist/UserField-PXMmxJY9.js +49 -0
  38. package/dist/VectorField-CKg9jdGa.js +25 -0
  39. package/dist/index-qQ1C-yUR.js +59976 -0
  40. package/dist/index.js +32 -55026
  41. package/dist/index.umd.cjs +41 -30
  42. package/dist/plugin-detail.css +1 -1
  43. package/dist/src/ActivityTimeline.d.ts +20 -0
  44. package/dist/src/ActivityTimeline.d.ts.map +1 -0
  45. package/dist/src/CommentAttachment.d.ts +25 -0
  46. package/dist/src/CommentAttachment.d.ts.map +1 -0
  47. package/dist/src/CommentInput.d.ts +24 -0
  48. package/dist/src/CommentInput.d.ts.map +1 -0
  49. package/dist/src/DetailSection.d.ts +8 -0
  50. package/dist/src/DetailSection.d.ts.map +1 -1
  51. package/dist/src/DetailView.d.ts +4 -0
  52. package/dist/src/DetailView.d.ts.map +1 -1
  53. package/dist/src/DetailView.stories.d.ts +8 -0
  54. package/dist/src/DetailView.stories.d.ts.map +1 -1
  55. package/dist/src/DiffView.d.ts +24 -0
  56. package/dist/src/DiffView.d.ts.map +1 -0
  57. package/dist/src/FieldChangeItem.d.ts +21 -0
  58. package/dist/src/FieldChangeItem.d.ts.map +1 -0
  59. package/dist/src/HeaderHighlight.d.ts +18 -0
  60. package/dist/src/HeaderHighlight.d.ts.map +1 -0
  61. package/dist/src/InlineCreateRelated.d.ts +32 -0
  62. package/dist/src/InlineCreateRelated.d.ts.map +1 -0
  63. package/dist/src/MentionAutocomplete.d.ts +43 -0
  64. package/dist/src/MentionAutocomplete.d.ts.map +1 -0
  65. package/dist/src/PointInTimeRestore.d.ts +28 -0
  66. package/dist/src/PointInTimeRestore.d.ts.map +1 -0
  67. package/dist/src/ReactionPicker.d.ts +25 -0
  68. package/dist/src/ReactionPicker.d.ts.map +1 -0
  69. package/dist/src/RecordActivityTimeline.d.ts +49 -0
  70. package/dist/src/RecordActivityTimeline.d.ts.map +1 -0
  71. package/dist/src/RecordChatterPanel.d.ts +48 -0
  72. package/dist/src/RecordChatterPanel.d.ts.map +1 -0
  73. package/dist/src/RecordComments.d.ts +20 -0
  74. package/dist/src/RecordComments.d.ts.map +1 -0
  75. package/dist/src/RecordNavigationEnhanced.d.ts +18 -0
  76. package/dist/src/RecordNavigationEnhanced.d.ts.map +1 -0
  77. package/dist/src/RelatedList.d.ts +20 -0
  78. package/dist/src/RelatedList.d.ts.map +1 -1
  79. package/dist/src/RelationshipGraph.d.ts +23 -0
  80. package/dist/src/RelationshipGraph.d.ts.map +1 -0
  81. package/dist/src/RichTextCommentInput.d.ts +24 -0
  82. package/dist/src/RichTextCommentInput.d.ts.map +1 -0
  83. package/dist/src/SectionGroup.d.ts +21 -0
  84. package/dist/src/SectionGroup.d.ts.map +1 -0
  85. package/dist/src/SubscriptionToggle.d.ts +22 -0
  86. package/dist/src/SubscriptionToggle.d.ts.map +1 -0
  87. package/dist/src/ThreadedReplies.d.ts +26 -0
  88. package/dist/src/ThreadedReplies.d.ts.map +1 -0
  89. package/dist/src/autoLayout.d.ts +34 -0
  90. package/dist/src/autoLayout.d.ts.map +1 -0
  91. package/dist/src/index.d.ts +40 -0
  92. package/dist/src/index.d.ts.map +1 -1
  93. package/dist/src/useDetailTranslation.d.ts +34 -0
  94. package/dist/src/useDetailTranslation.d.ts.map +1 -0
  95. package/package.json +8 -7
  96. package/src/ActivityTimeline.tsx +184 -0
  97. package/src/CommentAttachment.tsx +192 -0
  98. package/src/CommentInput.tsx +81 -0
  99. package/src/DetailSection.tsx +81 -10
  100. package/src/DetailView.stories.tsx +76 -0
  101. package/src/DetailView.tsx +519 -66
  102. package/src/DiffView.tsx +231 -0
  103. package/src/FieldChangeItem.tsx +46 -0
  104. package/src/HeaderHighlight.tsx +67 -0
  105. package/src/InlineCreateRelated.tsx +291 -0
  106. package/src/MentionAutocomplete.tsx +123 -0
  107. package/src/PointInTimeRestore.tsx +261 -0
  108. package/src/ReactionPicker.tsx +106 -0
  109. package/src/RecordActivityTimeline.tsx +429 -0
  110. package/src/RecordChatterPanel.tsx +202 -0
  111. package/src/RecordComments.tsx +215 -0
  112. package/src/RecordNavigationEnhanced.tsx +211 -0
  113. package/src/RelatedList.tsx +314 -19
  114. package/src/RelationshipGraph.tsx +286 -0
  115. package/src/RichTextCommentInput.tsx +348 -0
  116. package/src/SectionGroup.tsx +101 -0
  117. package/src/SubscriptionToggle.tsx +60 -0
  118. package/src/ThreadedReplies.tsx +161 -0
  119. package/src/__tests__/ActivityTimeline.test.tsx +119 -0
  120. package/src/__tests__/ActivityTimelineFiltering.test.tsx +143 -0
  121. package/src/__tests__/CommentInput.test.tsx +57 -0
  122. package/src/__tests__/DetailSection.test.tsx +320 -0
  123. package/src/__tests__/DetailView.test.tsx +415 -1
  124. package/src/__tests__/FieldChangeItem.test.tsx +119 -0
  125. package/src/__tests__/HeaderHighlight.test.tsx +68 -0
  126. package/src/__tests__/MentionAutocomplete.test.tsx +97 -0
  127. package/src/__tests__/ReactionPicker.test.tsx +113 -0
  128. package/src/__tests__/RecordActivityTimeline.test.tsx +395 -0
  129. package/src/__tests__/RecordChatterPanel.test.tsx +227 -0
  130. package/src/__tests__/RecordComments.test.tsx +96 -0
  131. package/src/__tests__/RecordCommentsPinSearch.test.tsx +133 -0
  132. package/src/__tests__/RelatedList.test.tsx +160 -0
  133. package/src/__tests__/SectionGroup.test.tsx +101 -0
  134. package/src/__tests__/SubscriptionToggle.test.tsx +84 -0
  135. package/src/__tests__/ThreadedReplies.test.tsx +212 -0
  136. package/src/__tests__/autoLayout.test.ts +184 -0
  137. package/src/__tests__/phase12-features.test.tsx +583 -0
  138. package/src/__tests__/roadmap-features.test.tsx +478 -0
  139. package/src/autoLayout.ts +111 -0
  140. package/src/index.tsx +50 -0
  141. package/src/useDetailTranslation.ts +114 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentAttachment.d.ts","sourceRoot":"","sources":["../../src/CommentAttachment.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAqBD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA+I9D,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface CommentInputProps {
10
+ /** Called when a comment is submitted */
11
+ onSubmit: (text: string) => void | Promise<void>;
12
+ /** Placeholder text */
13
+ placeholder?: string;
14
+ /** Whether the input is disabled */
15
+ disabled?: boolean;
16
+ className?: string;
17
+ }
18
+ /**
19
+ * CommentInput — Simple comment input component.
20
+ * Renders a "Leave a comment" textarea with submit button.
21
+ * Supports Ctrl+Enter to submit.
22
+ */
23
+ export declare const CommentInput: React.FC<CommentInputProps>;
24
+ //# sourceMappingURL=CommentInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommentInput.d.ts","sourceRoot":"","sources":["../../src/CommentInput.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqDpD,CAAC"}
@@ -11,6 +11,14 @@ export interface DetailSectionProps {
11
11
  section: DetailViewSectionType;
12
12
  data?: any;
13
13
  className?: string;
14
+ /** Object schema from DataSource for field type enrichment */
15
+ objectSchema?: any;
16
+ /** Object name for i18n field label resolution */
17
+ objectName?: string;
18
+ /** Whether inline editing is active */
19
+ isEditing?: boolean;
20
+ /** Callback when a field value changes during inline editing */
21
+ onFieldChange?: (field: string, value: any) => void;
14
22
  }
15
23
  export declare const DetailSection: React.FC<DetailSectionProps>;
16
24
  //# sourceMappingURL=DetailSection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailSection.d.ts","sourceRoot":"","sources":["../../src/DetailSection.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmB/B,OAAO,KAAK,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEnF,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgLtD,CAAC"}
1
+ {"version":3,"file":"DetailSection.d.ts","sourceRoot":"","sources":["../../src/DetailSection.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAoB/B,OAAO,KAAK,EAAE,iBAAiB,IAAI,qBAAqB,EAAkC,MAAM,kBAAkB,CAAC;AAKnH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gEAAgE;IAChE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACrD;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA2OtD,CAAC"}
@@ -14,6 +14,10 @@ export interface DetailViewProps {
14
14
  onEdit?: () => void;
15
15
  onDelete?: () => void;
16
16
  onBack?: () => void;
17
+ /** Enable inline editing toggle for detail fields */
18
+ inlineEdit?: boolean;
19
+ /** Callback when a field value is saved inline */
20
+ onFieldSave?: (field: string, value: any, record: any) => void | Promise<void>;
17
21
  }
18
22
  export declare const DetailView: React.FC<DetailViewProps>;
19
23
  //# sourceMappingURL=DetailView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailView.d.ts","sourceRoot":"","sources":["../../src/DetailView.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA+B/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAwThD,CAAC"}
1
+ {"version":3,"file":"DetailView.d.ts","sourceRoot":"","sources":["../../src/DetailView.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4C/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMrE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChF;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAwuBhD,CAAC"}
@@ -34,4 +34,12 @@ export declare const EnhancedAirtableStyle: Story;
34
34
  * View with field count badges in section headers
35
35
  */
36
36
  export declare const WithFieldCounts: Story;
37
+ /**
38
+ * Primary Field + Summary Badges — record name as header, key attributes as badges
39
+ */
40
+ export declare const PrimaryFieldWithBadges: Story;
41
+ /**
42
+ * Hide Empty Fields — sections with hideEmpty filter out null/undefined/empty fields
43
+ */
44
+ export declare const HideEmptyFields: Story;
37
45
  //# sourceMappingURL=DetailView.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailView.stories.d.ts","sourceRoot":"","sources":["../../src/DetailView.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKvD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;CAeW,CAAC;AAEtB,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAInC,eAAO,MAAM,OAAO,EAAE,KAyBrB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAgD1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAqC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,KA+DnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KA2C7B,CAAC"}
1
+ {"version":3,"file":"DetailView.stories.d.ts","sourceRoot":"","sources":["../../src/DetailView.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKvD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;CAeW,CAAC;AAEtB,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAInC,eAAO,MAAM,OAAO,EAAE,KAyBrB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAgD1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAqC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,KA+DnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KA2C7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,KA2BpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAuC7B,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export type DiffFieldType = 'string' | 'number' | 'boolean' | 'json' | 'date';
10
+ export type DiffMode = 'unified' | 'side-by-side';
11
+ export interface DiffLine {
12
+ type: 'added' | 'removed' | 'unchanged';
13
+ value: string;
14
+ }
15
+ export interface DiffViewProps {
16
+ oldValue: any;
17
+ newValue: any;
18
+ fieldName: string;
19
+ fieldType?: DiffFieldType;
20
+ mode?: DiffMode;
21
+ className?: string;
22
+ }
23
+ export declare const DiffView: React.FC<DiffViewProps>;
24
+ //# sourceMappingURL=DiffView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiffView.d.ts","sourceRoot":"","sources":["../../src/DiffView.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9E,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC;AAElD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA0I5C,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { FieldChangeEntry } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface FieldChangeItemProps {
11
+ /** The field change entry to render */
12
+ change: FieldChangeEntry;
13
+ className?: string;
14
+ }
15
+ /**
16
+ * FieldChangeItem — Renders a single field change entry.
17
+ * Shows: field label → old value → new value with human-readable display values.
18
+ * Aligned with @objectstack/spec FieldChangeEntrySchema.
19
+ */
20
+ export declare const FieldChangeItem: React.FC<FieldChangeItemProps>;
21
+ //# sourceMappingURL=FieldChangeItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldChangeItem.d.ts","sourceRoot":"","sources":["../../src/FieldChangeItem.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAqB1D,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { HighlightField } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface HeaderHighlightProps {
11
+ fields: HighlightField[];
12
+ data?: any;
13
+ className?: string;
14
+ /** Object name for i18n field label resolution */
15
+ objectName?: string;
16
+ }
17
+ export declare const HeaderHighlight: React.FC<HeaderHighlightProps>;
18
+ //# sourceMappingURL=HeaderHighlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeaderHighlight.d.ts","sourceRoot":"","sources":["../../src/HeaderHighlight.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA6C1D,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface RelatedFieldDefinition {
10
+ name: string;
11
+ label: string;
12
+ type: 'string' | 'number' | 'boolean' | 'date';
13
+ required?: boolean;
14
+ placeholder?: string;
15
+ }
16
+ export interface RelatedRecordOption {
17
+ id: string;
18
+ label: string;
19
+ description?: string;
20
+ }
21
+ export interface InlineCreateRelatedProps {
22
+ objectName: string;
23
+ relationshipField: string;
24
+ fields: RelatedFieldDefinition[];
25
+ onCreateRecord?: (values: Record<string, any>) => void | Promise<void>;
26
+ onLinkRecord?: (recordId: string) => void | Promise<void>;
27
+ onSearch?: (query: string) => Promise<RelatedRecordOption[]>;
28
+ existingRecords?: RelatedRecordOption[];
29
+ className?: string;
30
+ }
31
+ export declare const InlineCreateRelated: React.FC<InlineCreateRelatedProps>;
32
+ //# sourceMappingURL=InlineCreateRelated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineCreateRelated.d.ts","sourceRoot":"","sources":["../../src/InlineCreateRelated.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAiPlE,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { Mention } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface MentionSuggestionItem {
11
+ /** Entity ID */
12
+ id: string;
13
+ /** Display name */
14
+ name: string;
15
+ /** Avatar URL */
16
+ avatarUrl?: string;
17
+ /** Entity type */
18
+ type: 'user' | 'team' | 'group';
19
+ }
20
+ export interface MentionAutocompleteProps {
21
+ /** Search query (text after @) */
22
+ query: string;
23
+ /** Available suggestions */
24
+ suggestions: MentionSuggestionItem[];
25
+ /** Called when a suggestion is selected */
26
+ onSelect: (item: MentionSuggestionItem) => void;
27
+ /** Whether the dropdown is visible */
28
+ visible?: boolean;
29
+ /** Active/highlighted index */
30
+ activeIndex?: number;
31
+ className?: string;
32
+ }
33
+ /**
34
+ * MentionAutocomplete — Dropdown for @mention autocomplete.
35
+ * Filters suggestions by query and renders a selectable list.
36
+ * Produces MentionSchema data on selection.
37
+ */
38
+ export declare const MentionAutocomplete: React.FC<MentionAutocompleteProps>;
39
+ /**
40
+ * Helper to create a Mention object from a suggestion item.
41
+ */
42
+ export declare function createMentionFromSuggestion(item: MentionSuggestionItem, offset: number, length: number): Mention;
43
+ //# sourceMappingURL=MentionAutocomplete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MentionAutocomplete.d.ts","sourceRoot":"","sources":["../../src/MentionAutocomplete.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,WAAW,qBAAqB;IACpC,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACrC,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAChD,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA+DlE,CAAC;AAEF;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,qBAAqB,EAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAQT"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface RevisionEntry {
10
+ id: string;
11
+ timestamp: string;
12
+ user: string;
13
+ changes: {
14
+ field: string;
15
+ oldValue: any;
16
+ newValue: any;
17
+ }[];
18
+ /** Full record snapshot at this revision point. */
19
+ snapshot?: Record<string, any>;
20
+ }
21
+ export interface PointInTimeRestoreProps {
22
+ recordId: string;
23
+ revisions: RevisionEntry[];
24
+ onRestore?: (revisionId: string, snapshot: Record<string, any>) => void | Promise<void>;
25
+ className?: string;
26
+ }
27
+ export declare const PointInTimeRestore: React.FC<PointInTimeRestoreProps>;
28
+ //# sourceMappingURL=PointInTimeRestore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PointInTimeRestore.d.ts","sourceRoot":"","sources":["../../src/PointInTimeRestore.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAA;KAAE,EAAE,CAAC;IAC3D,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAmBD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAgNhE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { Reaction } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface ReactionPickerProps {
11
+ /** Existing reactions on the feed item */
12
+ reactions: Reaction[];
13
+ /** Called when user adds or removes a reaction */
14
+ onToggleReaction?: (emoji: string) => void | Promise<void>;
15
+ /** Available emoji options */
16
+ emojiOptions?: string[];
17
+ className?: string;
18
+ }
19
+ /**
20
+ * ReactionPicker — Emoji reaction selector and display.
21
+ * Shows existing reactions with counts, and a picker to add/remove.
22
+ * Aligned with @objectstack/spec ReactionSchema.
23
+ */
24
+ export declare const ReactionPicker: React.FC<ReactionPickerProps>;
25
+ //# sourceMappingURL=ReactionPicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReactionPicker.d.ts","sourceRoot":"","sources":["../../src/ReactionPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,MAAM,WAAW,mBAAmB;IAClC,0CAA0C;IAC1C,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA2ExD,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { FeedItem, RecordActivityComponentProps, RecordSubscription } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export type FeedFilterMode = 'all' | 'comments_only' | 'changes_only' | 'tasks_only';
11
+ export interface RecordActivityTimelineProps {
12
+ /** Feed items to display */
13
+ items: FeedItem[];
14
+ /** Activity configuration from RecordActivityComponentProps */
15
+ config?: RecordActivityComponentProps;
16
+ /** Filter mode for the timeline */
17
+ filterMode?: FeedFilterMode;
18
+ /** Called when filter mode changes */
19
+ onFilterChange?: (mode: FeedFilterMode) => void;
20
+ /** Whether there are more items to load */
21
+ hasMore?: boolean;
22
+ /** Called when user wants to load more items */
23
+ onLoadMore?: () => void | Promise<void>;
24
+ /** Loading state */
25
+ loading?: boolean;
26
+ /** Called when a comment is submitted */
27
+ onAddComment?: (text: string) => void | Promise<void>;
28
+ /** Called when a reply is submitted */
29
+ onAddReply?: (parentId: string | number, text: string) => void | Promise<void>;
30
+ /** Called when user toggles a reaction */
31
+ onToggleReaction?: (itemId: string | number, emoji: string) => void | Promise<void>;
32
+ /** Subscription state */
33
+ subscription?: RecordSubscription;
34
+ /** Called when user toggles subscription */
35
+ onToggleSubscription?: (subscribed: boolean) => void | Promise<void>;
36
+ /** When true, collapse to only the comment input when there are no items */
37
+ collapseWhenEmpty?: boolean;
38
+ className?: string;
39
+ }
40
+ /**
41
+ * RecordActivityTimeline — Unified timeline renderer for Airtable-style activity feeds.
42
+ *
43
+ * Renders different feed item types (comment, field_change, task, event, system, etc.)
44
+ * in a unified timeline. Supports filtering, pagination, reactions, and threading.
45
+ *
46
+ * Aligned with @objectstack/spec RecordActivityProps.
47
+ */
48
+ export declare const RecordActivityTimeline: React.FC<RecordActivityTimelineProps>;
49
+ //# sourceMappingURL=RecordActivityTimeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecordActivityTimeline.d.ts","sourceRoot":"","sources":["../../src/RecordActivityTimeline.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiB/B,OAAO,KAAK,EAAE,QAAQ,EAAgB,4BAA4B,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMjH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,eAAe,GAAG,cAAc,GAAG,YAAY,CAAC;AAErF,MAAM,WAAW,2BAA2B;IAC1C,4BAA4B;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,4BAA4B,CAAC;IACtC,mCAAmC;IACnC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,sCAAsC;IACtC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAChD,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yCAAyC;IACzC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,uCAAuC;IACvC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,yBAAyB;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6DD;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CA0SxE,CAAC"}
@@ -0,0 +1,48 @@
1
+ import { RecordChatterComponentProps, FeedItem, RecordSubscription } from '../../types/src';
2
+ import { FeedFilterMode } from './RecordActivityTimeline';
3
+ /**
4
+ * ObjectUI
5
+ * Copyright (c) 2024-present ObjectStack Inc.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */
10
+ import * as React from 'react';
11
+ export interface RecordChatterPanelProps {
12
+ /** Chatter panel configuration from RecordChatterComponentProps */
13
+ config?: RecordChatterComponentProps;
14
+ /** Feed items to display in the embedded timeline */
15
+ items: FeedItem[];
16
+ /** Whether there are more items to load */
17
+ hasMore?: boolean;
18
+ /** Called when user wants to load more */
19
+ onLoadMore?: () => void | Promise<void>;
20
+ /** Loading state */
21
+ loading?: boolean;
22
+ /** Called when a comment is submitted */
23
+ onAddComment?: (text: string) => void | Promise<void>;
24
+ /** Called when a reply is submitted */
25
+ onAddReply?: (parentId: string | number, text: string) => void | Promise<void>;
26
+ /** Called when user toggles a reaction */
27
+ onToggleReaction?: (itemId: string | number, emoji: string) => void | Promise<void>;
28
+ /** Subscription state */
29
+ subscription?: RecordSubscription;
30
+ /** Called when user toggles subscription */
31
+ onToggleSubscription?: (subscribed: boolean) => void | Promise<void>;
32
+ /** Filter mode */
33
+ filterMode?: FeedFilterMode;
34
+ /** Called when filter changes */
35
+ onFilterChange?: (mode: FeedFilterMode) => void;
36
+ className?: string;
37
+ }
38
+ /**
39
+ * RecordChatterPanel — Side/inline/drawer panel for record discussions.
40
+ *
41
+ * Consumes RecordChatterComponentProps from the spec protocol.
42
+ * Supports three positions: bottom (inline), right (sidebar), left (sidebar).
43
+ * Can be collapsible/expandable.
44
+ *
45
+ * Embeds RecordActivityTimeline as the feed sub-component.
46
+ */
47
+ export declare const RecordChatterPanel: React.FC<RecordChatterPanelProps>;
48
+ //# sourceMappingURL=RecordChatterPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecordChatterPanel.d.ts","sourceRoot":"","sources":["../../src/RecordChatterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,2BAA2B,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAElG,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,0BAA0B,CAAC;AAE5F,MAAM,WAAW,uBAAuB;IACtC,mEAAmE;IACnE,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,qDAAqD;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yCAAyC;IACzC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,uCAAuC;IACvC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,yBAAyB;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,kBAAkB;IAClB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,iCAAiC;IACjC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAqJhE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { CommentEntry } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface RecordCommentsProps {
11
+ comments: CommentEntry[];
12
+ onAddComment?: (text: string) => void | Promise<void>;
13
+ /** Callback to toggle pin/star on a comment */
14
+ onTogglePin?: (commentId: string | number) => void;
15
+ /** Enable search input for filtering comments */
16
+ searchable?: boolean;
17
+ className?: string;
18
+ }
19
+ export declare const RecordComments: React.FC<RecordCommentsProps>;
20
+ //# sourceMappingURL=RecordComments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecordComments.d.ts","sourceRoot":"","sources":["../../src/RecordComments.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,+CAA+C;IAC/C,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACnD,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAwBD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAyKxD,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface RecordNavigationEnhancedProps {
10
+ currentIndex: number;
11
+ totalRecords: number;
12
+ recordIds: string[];
13
+ onNavigate: (recordId: string) => void;
14
+ onSearch?: (query: string) => void;
15
+ className?: string;
16
+ }
17
+ export declare const RecordNavigationEnhanced: React.FC<RecordNavigationEnhancedProps>;
18
+ //# sourceMappingURL=RecordNavigationEnhanced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecordNavigationEnhanced.d.ts","sourceRoot":"","sources":["../../src/RecordNavigationEnhanced.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,MAAM,WAAW,6BAA6B;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAuL5E,CAAC"}
@@ -16,6 +16,26 @@ export interface RelatedListProps {
16
16
  columns?: any[];
17
17
  className?: string;
18
18
  dataSource?: DataSource;
19
+ /** Object name for i18n field label resolution */
20
+ objectName?: string;
21
+ /** Callback when "New" button is clicked */
22
+ onNew?: () => void;
23
+ /** Callback when "View All" button is clicked */
24
+ onViewAll?: () => void;
25
+ /** Callback when a row Edit action is clicked */
26
+ onRowEdit?: (row: any) => void;
27
+ /** Callback when a row Delete action is clicked */
28
+ onRowDelete?: (row: any) => void;
29
+ /** Page size for pagination (enables pagination when set) */
30
+ pageSize?: number;
31
+ /** Enable column sorting */
32
+ sortable?: boolean;
33
+ /** Enable text filtering */
34
+ filterable?: boolean;
35
+ /** Whether the card is collapsible */
36
+ collapsible?: boolean;
37
+ /** Whether the card starts collapsed (requires collapsible=true) */
38
+ defaultCollapsed?: boolean;
19
39
  }
20
40
  export declare const RelatedList: React.FC<RelatedListProps>;
21
41
  //# sourceMappingURL=RelatedList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelatedList.d.ts","sourceRoot":"","sources":["../../src/RelatedList.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6FlD,CAAC"}
1
+ {"version":3,"file":"RelatedList.d.ts","sourceRoot":"","sources":["../../src/RelatedList.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqB/B,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,kBAAkB,CAAC;AAKlE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iDAAiD;IACjD,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,mDAAmD;IACnD,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2VlD,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface GraphNode {
10
+ id: string;
11
+ label: string;
12
+ type?: string;
13
+ relatedRecords?: GraphNode[];
14
+ }
15
+ export interface RelationshipGraphProps {
16
+ record: GraphNode;
17
+ relatedRecords: GraphNode[];
18
+ levels?: number;
19
+ onNodeClick?: (nodeId: string) => void;
20
+ className?: string;
21
+ }
22
+ export declare const RelationshipGraph: React.FC<RelationshipGraphProps>;
23
+ //# sourceMappingURL=RelationshipGraph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipGraph.d.ts","sourceRoot":"","sources":["../../src/RelationshipGraph.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,SAAS,CAAC;IAClB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsHD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA8I9D,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * ObjectUI
3
+ * Copyright (c) 2024-present ObjectStack Inc.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import * as React from 'react';
9
+ export interface MentionSuggestion {
10
+ id: string;
11
+ label: string;
12
+ avatarUrl?: string;
13
+ }
14
+ export interface RichTextCommentInputProps {
15
+ value: string;
16
+ onChange: (value: string) => void;
17
+ onSubmit?: () => void | Promise<void>;
18
+ mentionSuggestions?: MentionSuggestion[];
19
+ placeholder?: string;
20
+ className?: string;
21
+ disabled?: boolean;
22
+ }
23
+ export declare const RichTextCommentInput: React.FC<RichTextCommentInputProps>;
24
+ //# sourceMappingURL=RichTextCommentInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichTextCommentInput.d.ts","sourceRoot":"","sources":["../../src/RichTextCommentInput.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAiCD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAuRpE,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { SectionGroup as SectionGroupType } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface SectionGroupProps {
11
+ group: SectionGroupType;
12
+ data?: any;
13
+ className?: string;
14
+ objectSchema?: any;
15
+ /** Object name for i18n field label resolution */
16
+ objectName?: string;
17
+ isEditing?: boolean;
18
+ onFieldChange?: (field: string, value: any) => void;
19
+ }
20
+ export declare const SectionGroup: React.FC<SectionGroupProps>;
21
+ //# sourceMappingURL=SectionGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionGroup.d.ts","sourceRoot":"","sources":["../../src/SectionGroup.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,OAAO,KAAK,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACrD;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsEpD,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { RecordSubscription } from '../../types/src';
2
+ /**
3
+ * ObjectUI
4
+ * Copyright (c) 2024-present ObjectStack Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ export interface SubscriptionToggleProps {
11
+ /** Current subscription state */
12
+ subscription: RecordSubscription;
13
+ /** Called when user toggles subscription */
14
+ onToggle?: (subscribed: boolean) => void | Promise<void>;
15
+ className?: string;
16
+ }
17
+ /**
18
+ * SubscriptionToggle — Bell icon toggle for record notification subscriptions.
19
+ * Aligned with @objectstack/spec RecordSubscriptionSchema.
20
+ */
21
+ export declare const SubscriptionToggle: React.FC<SubscriptionToggleProps>;
22
+ //# sourceMappingURL=SubscriptionToggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubscriptionToggle.d.ts","sourceRoot":"","sources":["../../src/SubscriptionToggle.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,WAAW,uBAAuB;IACtC,iCAAiC;IACjC,YAAY,EAAE,kBAAkB,CAAC;IACjC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAkChE,CAAC"}