@carlonicora/nextjs-jsonapi 1.79.0 → 1.80.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/{AssistantMessageInterface-DWnbd6J7.d.ts → AssistantMessageInterface-BpEhx2pC.d.ts} +18 -1
  2. package/dist/{AssistantMessageInterface-Mla6kgPe.d.mts → AssistantMessageInterface-DJ3Me16Y.d.mts} +18 -1
  3. package/dist/{BlockNoteEditor-6CBDTVKV.mjs → BlockNoteEditor-3M5PD3BZ.mjs} +4 -4
  4. package/dist/{BlockNoteEditor-EH4HWI7H.js → BlockNoteEditor-YLTPJPTV.js} +14 -14
  5. package/dist/{BlockNoteEditor-EH4HWI7H.js.map → BlockNoteEditor-YLTPJPTV.js.map} +1 -1
  6. package/dist/billing/index.js +346 -346
  7. package/dist/billing/index.mjs +3 -3
  8. package/dist/{chunk-ZDP3MBUI.js → chunk-4NOQNTFI.js} +1151 -740
  9. package/dist/chunk-4NOQNTFI.js.map +1 -0
  10. package/dist/{chunk-BKM5U3DE.mjs → chunk-6UMB5LTQ.mjs} +98 -7
  11. package/dist/chunk-6UMB5LTQ.mjs.map +1 -0
  12. package/dist/{chunk-5IEWLLLD.js → chunk-N4YZ45SK.js} +115 -24
  13. package/dist/chunk-N4YZ45SK.js.map +1 -0
  14. package/dist/{chunk-ENRSFVOS.mjs → chunk-NQV5RDCK.mjs} +1112 -701
  15. package/dist/chunk-NQV5RDCK.mjs.map +1 -0
  16. package/dist/{chunk-MEWXQEVE.mjs → chunk-PV5V6CVW.mjs} +2 -2
  17. package/dist/{chunk-TWDSDTHU.js → chunk-ZEJSPTHS.js} +7 -7
  18. package/dist/{chunk-TWDSDTHU.js.map → chunk-ZEJSPTHS.js.map} +1 -1
  19. package/dist/client/index.js +4 -4
  20. package/dist/client/index.mjs +3 -3
  21. package/dist/components/index.d.mts +25 -7
  22. package/dist/components/index.d.ts +25 -7
  23. package/dist/components/index.js +6 -4
  24. package/dist/components/index.js.map +1 -1
  25. package/dist/components/index.mjs +5 -3
  26. package/dist/contexts/index.d.mts +1 -1
  27. package/dist/contexts/index.d.ts +1 -1
  28. package/dist/contexts/index.js +4 -4
  29. package/dist/contexts/index.mjs +3 -3
  30. package/dist/core/index.d.mts +35 -3
  31. package/dist/core/index.d.ts +35 -3
  32. package/dist/core/index.js +6 -2
  33. package/dist/core/index.js.map +1 -1
  34. package/dist/core/index.mjs +5 -1
  35. package/dist/index.d.mts +2 -2
  36. package/dist/index.d.ts +2 -2
  37. package/dist/index.js +7 -3
  38. package/dist/index.js.map +1 -1
  39. package/dist/index.mjs +6 -2
  40. package/dist/server/index.js +3 -3
  41. package/dist/server/index.mjs +1 -1
  42. package/package.json +1 -1
  43. package/src/core/index.ts +2 -0
  44. package/src/core/registry/ModuleRegistry.ts +1 -0
  45. package/src/features/assistant/components/parts/AssistantThread.tsx +1 -1
  46. package/src/features/assistant-message/AssistantMessageModule.ts +4 -0
  47. package/src/features/assistant-message/components/MessageItem.tsx +7 -7
  48. package/src/features/assistant-message/components/MessageList.tsx +1 -1
  49. package/src/features/assistant-message/components/__tests__/MessageItem.spec.tsx +11 -7
  50. package/src/features/assistant-message/components/index.ts +1 -0
  51. package/src/features/assistant-message/components/parts/MessageSourcesContainer.tsx +135 -0
  52. package/src/features/assistant-message/components/parts/MessageSourcesPanel.tsx +151 -0
  53. package/src/features/assistant-message/components/parts/RelevanceMeter.tsx +29 -0
  54. package/src/features/assistant-message/components/parts/__tests__/MessageSourcesPanel.spec.tsx +70 -0
  55. package/src/features/assistant-message/components/parts/tabs/CitationsTab.tsx +105 -0
  56. package/src/features/assistant-message/components/parts/tabs/ContentsTab.tsx +88 -0
  57. package/src/features/assistant-message/components/parts/tabs/ReferencesTab.tsx +51 -0
  58. package/src/features/assistant-message/components/parts/tabs/SuggestedQuestionsTab.tsx +24 -0
  59. package/src/features/assistant-message/components/parts/tabs/UsersTab.tsx +142 -0
  60. package/src/features/assistant-message/data/AssistantMessage.ts +20 -0
  61. package/src/features/assistant-message/data/AssistantMessageInterface.ts +2 -0
  62. package/src/features/assistant-message/data/AssistantMessageService.ts +13 -4
  63. package/src/features/assistant-message/data/__tests__/AssistantMessage.citations.spec.ts +65 -0
  64. package/src/features/assistant-message/data/__tests__/AssistantMessage.spec.ts +8 -0
  65. package/src/features/chunk/ChunkModule.ts +18 -0
  66. package/src/features/chunk/data/Chunk.ts +49 -0
  67. package/src/features/chunk/data/ChunkInput.ts +3 -0
  68. package/src/features/chunk/data/ChunkInterface.ts +18 -0
  69. package/src/features/chunk/data/__tests__/Chunk.spec.ts +83 -0
  70. package/src/features/chunk/data/index.ts +3 -0
  71. package/src/features/chunk/index.ts +2 -0
  72. package/dist/chunk-5IEWLLLD.js.map +0 -1
  73. package/dist/chunk-BKM5U3DE.mjs.map +0 -1
  74. package/dist/chunk-ENRSFVOS.mjs.map +0 -1
  75. package/dist/chunk-ZDP3MBUI.js.map +0 -1
  76. package/src/features/assistant-message/components/parts/ReferenceBadges.tsx +0 -46
  77. package/src/features/assistant-message/components/parts/SuggestedFollowUps.tsx +0 -52
  78. package/src/features/assistant-message/components/parts/__tests__/ReferenceBadges.spec.tsx +0 -59
  79. package/src/features/assistant-message/components/parts/__tests__/SuggestedFollowUps.spec.tsx +0 -29
  80. /package/dist/{BlockNoteEditor-6CBDTVKV.mjs.map → BlockNoteEditor-3M5PD3BZ.mjs.map} +0 -0
  81. /package/dist/{chunk-MEWXQEVE.mjs.map → chunk-PV5V6CVW.mjs.map} +0 -0
@@ -5526,6 +5526,7 @@ var AssistantMessage = class _AssistantMessage extends AbstractApiData {
5526
5526
  _inputTokens;
5527
5527
  _outputTokens;
5528
5528
  _references;
5529
+ _citations;
5529
5530
  get role() {
5530
5531
  return this._role ?? "assistant";
5531
5532
  }
@@ -5547,6 +5548,9 @@ var AssistantMessage = class _AssistantMessage extends AbstractApiData {
5547
5548
  get references() {
5548
5549
  return this._references ?? [];
5549
5550
  }
5551
+ get citations() {
5552
+ return this._citations ?? [];
5553
+ }
5550
5554
  rehydrate(data) {
5551
5555
  super.rehydrate(data);
5552
5556
  const attrs = data.jsonApi.attributes ?? {};
@@ -5558,6 +5562,16 @@ var AssistantMessage = class _AssistantMessage extends AbstractApiData {
5558
5562
  this._outputTokens = attrs.outputTokens;
5559
5563
  const refs = this._readIncludedPolymorphic(data, "references", resolveReferenceableModules());
5560
5564
  this._references = Array.isArray(refs) ? refs : refs ? [refs] : [];
5565
+ if (data.jsonApi.relationships?.citations?.data) {
5566
+ const citations = this._readIncludedWithMeta(
5567
+ data,
5568
+ "citations",
5569
+ Modules.Chunk
5570
+ );
5571
+ this._citations = Array.isArray(citations) ? citations : citations ? [citations] : [];
5572
+ } else {
5573
+ this._citations = [];
5574
+ }
5561
5575
  return this;
5562
5576
  }
5563
5577
  createJsonApi(data) {
@@ -5609,6 +5623,7 @@ var AssistantMessageModule = /* @__PURE__ */ __name((factory) => factory({
5609
5623
  icon: MessageSquareIcon,
5610
5624
  inclusions: {
5611
5625
  lists: {
5626
+ types: [`references`, `citations`, `citations.source`, `citations.source.author`],
5612
5627
  fields: [
5613
5628
  createJsonApiInclusion("assistant-messages", [
5614
5629
  `role`,
@@ -5617,8 +5632,11 @@ var AssistantMessageModule = /* @__PURE__ */ __name((factory) => factory({
5617
5632
  `suggestedQuestions`,
5618
5633
  `inputTokens`,
5619
5634
  `outputTokens`,
5620
- `references`
5621
- ])
5635
+ `references`,
5636
+ `citations`
5637
+ ]),
5638
+ createJsonApiInclusion("chunks", [`content`, `nodeId`, `nodeType`, `imagePath`, `source`]),
5639
+ createJsonApiInclusion("users", [`name`, `avatar`])
5622
5640
  ]
5623
5641
  }
5624
5642
  }
@@ -5635,6 +5653,10 @@ var AssistantMessageService = class extends AbstractService {
5635
5653
  id: params.assistantId,
5636
5654
  childEndpoint: Modules.AssistantMessage
5637
5655
  });
5656
+ if (Modules.AssistantMessage.inclusions?.lists?.fields)
5657
+ endpoint.limitToFields(Modules.AssistantMessage.inclusions.lists.fields);
5658
+ if (Modules.AssistantMessage.inclusions?.lists?.types)
5659
+ endpoint.limitToType(Modules.AssistantMessage.inclusions.lists.types);
5638
5660
  return this.callApi({
5639
5661
  type: Modules.AssistantMessage,
5640
5662
  method: "GET" /* GET */,
@@ -5643,13 +5665,18 @@ var AssistantMessageService = class extends AbstractService {
5643
5665
  });
5644
5666
  }
5645
5667
  static async findOne(params) {
5668
+ const endpoint = new EndpointCreator({
5669
+ endpoint: Modules.AssistantMessage,
5670
+ id: params.id
5671
+ });
5672
+ if (Modules.AssistantMessage.inclusions?.lists?.fields)
5673
+ endpoint.limitToFields(Modules.AssistantMessage.inclusions.lists.fields);
5674
+ if (Modules.AssistantMessage.inclusions?.lists?.types)
5675
+ endpoint.limitToType(Modules.AssistantMessage.inclusions.lists.types);
5646
5676
  return this.callApi({
5647
5677
  type: Modules.AssistantMessage,
5648
5678
  method: "GET" /* GET */,
5649
- endpoint: new EndpointCreator({
5650
- endpoint: Modules.AssistantMessage,
5651
- id: params.id
5652
- }).generate()
5679
+ endpoint: endpoint.generate()
5653
5680
  });
5654
5681
  }
5655
5682
  static async delete(params) {
@@ -5664,6 +5691,68 @@ var AssistantMessageService = class extends AbstractService {
5664
5691
  }
5665
5692
  };
5666
5693
 
5694
+ // src/features/chunk/ChunkModule.ts
5695
+ import { FileTextIcon } from "lucide-react";
5696
+
5697
+ // src/features/chunk/data/Chunk.ts
5698
+ var Chunk = class extends AbstractApiData {
5699
+ static {
5700
+ __name(this, "Chunk");
5701
+ }
5702
+ _content;
5703
+ _nodeId;
5704
+ _nodeType;
5705
+ _imagePath;
5706
+ _source;
5707
+ get content() {
5708
+ return this._content ?? "";
5709
+ }
5710
+ get nodeId() {
5711
+ return this._nodeId;
5712
+ }
5713
+ get nodeType() {
5714
+ return this._nodeType;
5715
+ }
5716
+ get imagePath() {
5717
+ return this._imagePath;
5718
+ }
5719
+ get source() {
5720
+ return this._source;
5721
+ }
5722
+ rehydrate(data) {
5723
+ super.rehydrate(data);
5724
+ const attrs = data.jsonApi.attributes ?? {};
5725
+ const meta = data.jsonApi.meta ?? {};
5726
+ this._content = attrs.content;
5727
+ this._nodeId = meta.nodeId ?? attrs.nodeId;
5728
+ this._nodeType = meta.nodeType ?? attrs.nodeType;
5729
+ this._imagePath = attrs.imagePath;
5730
+ const src = this._readIncludedPolymorphic(data, "source", resolveReferenceableModules());
5731
+ this._source = Array.isArray(src) ? src[0] : src;
5732
+ return this;
5733
+ }
5734
+ createJsonApi() {
5735
+ return {
5736
+ data: { type: Modules.Chunk.name, id: this.id, attributes: {}, relationships: {} },
5737
+ included: []
5738
+ };
5739
+ }
5740
+ };
5741
+
5742
+ // src/features/chunk/ChunkModule.ts
5743
+ var ChunkModule = /* @__PURE__ */ __name((factory) => factory({
5744
+ pageUrl: "/chunks",
5745
+ name: "chunks",
5746
+ model: Chunk,
5747
+ moduleId: "9b1c2f64-7ea3-4df5-8b2a-91b6a8d0e3a4",
5748
+ icon: FileTextIcon,
5749
+ inclusions: {
5750
+ lists: {
5751
+ fields: [createJsonApiInclusion("chunks", ["content", "nodeId", "nodeType", "imagePath", "source"])]
5752
+ }
5753
+ }
5754
+ }), "ChunkModule");
5755
+
5667
5756
  // src/features/feature/data/feature.ts
5668
5757
  var Feature = class extends AbstractApiData {
5669
5758
  static {
@@ -7472,6 +7561,8 @@ export {
7472
7561
  AssistantMessage,
7473
7562
  AssistantMessageModule,
7474
7563
  AssistantMessageService,
7564
+ Chunk,
7565
+ ChunkModule,
7475
7566
  Feature,
7476
7567
  FeatureService,
7477
7568
  FeatureModule,
@@ -7521,4 +7612,4 @@ export {
7521
7612
  AuditLogService,
7522
7613
  AuditLogModule
7523
7614
  };
7524
- //# sourceMappingURL=chunk-BKM5U3DE.mjs.map
7615
+ //# sourceMappingURL=chunk-6UMB5LTQ.mjs.map