@ourofoundation/ouro-js 3.1.1 → 3.2.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 (125) hide show
  1. package/dist/chunk-2NJRZN2A.js +2 -0
  2. package/dist/chunk-2NJRZN2A.js.map +1 -0
  3. package/dist/chunk-3EK6Q2YF.js +2 -0
  4. package/dist/chunk-3EK6Q2YF.js.map +1 -0
  5. package/dist/{chunk-ACWMAF3H.cjs → chunk-4JJ6JLXK.cjs} +2 -2
  6. package/dist/{chunk-ACWMAF3H.cjs.map → chunk-4JJ6JLXK.cjs.map} +1 -1
  7. package/dist/{chunk-4VEWTZNL.js → chunk-5ZISONMU.js} +2 -2
  8. package/dist/{chunk-4VEWTZNL.js.map → chunk-5ZISONMU.js.map} +1 -1
  9. package/dist/chunk-6MSNL636.cjs +2 -0
  10. package/dist/chunk-6MSNL636.cjs.map +1 -0
  11. package/dist/{chunk-KYQSTVIK.js → chunk-6PR63E3C.js} +2 -2
  12. package/dist/{chunk-KYQSTVIK.js.map → chunk-6PR63E3C.js.map} +1 -1
  13. package/dist/chunk-6VIPPUJT.cjs +2 -0
  14. package/dist/chunk-6VIPPUJT.cjs.map +1 -0
  15. package/dist/{chunk-6DQ5ZEGV.js → chunk-7GATZDKH.js} +2 -2
  16. package/dist/{chunk-6DQ5ZEGV.js.map → chunk-7GATZDKH.js.map} +1 -1
  17. package/dist/{chunk-XQE5MFWC.js → chunk-7XHIK5BY.js} +2 -2
  18. package/dist/{chunk-XQE5MFWC.js.map → chunk-7XHIK5BY.js.map} +1 -1
  19. package/dist/{chunk-ZE2OBRXV.js → chunk-AL7O4IAB.js} +2 -2
  20. package/dist/{chunk-ZE2OBRXV.js.map → chunk-AL7O4IAB.js.map} +1 -1
  21. package/dist/{chunk-ALQBCU4T.js → chunk-B75WL6RS.js} +2 -2
  22. package/dist/{chunk-ALQBCU4T.js.map → chunk-B75WL6RS.js.map} +1 -1
  23. package/dist/chunk-BDVKX5EB.cjs +2 -0
  24. package/dist/{chunk-Q5SQSLM7.cjs.map → chunk-BDVKX5EB.cjs.map} +1 -1
  25. package/dist/chunk-BSSU5PNI.js +8 -0
  26. package/dist/chunk-BSSU5PNI.js.map +1 -0
  27. package/dist/{chunk-LUAQEXTM.cjs → chunk-C5CSA2IE.cjs} +2 -2
  28. package/dist/{chunk-LUAQEXTM.cjs.map → chunk-C5CSA2IE.cjs.map} +1 -1
  29. package/dist/{chunk-VF2UIROP.cjs → chunk-CZ53CZIQ.cjs} +2 -2
  30. package/dist/{chunk-VF2UIROP.cjs.map → chunk-CZ53CZIQ.cjs.map} +1 -1
  31. package/dist/{chunk-TYOBHRLP.cjs → chunk-J6IXOTYT.cjs} +2 -2
  32. package/dist/{chunk-TYOBHRLP.cjs.map → chunk-J6IXOTYT.cjs.map} +1 -1
  33. package/dist/{chunk-Z44HJZBF.js → chunk-KOFLISSG.js} +2 -2
  34. package/dist/{chunk-Z44HJZBF.js.map → chunk-KOFLISSG.js.map} +1 -1
  35. package/dist/{chunk-T2FZOXMU.cjs → chunk-LAMEJFKJ.cjs} +2 -2
  36. package/dist/{chunk-T2FZOXMU.cjs.map → chunk-LAMEJFKJ.cjs.map} +1 -1
  37. package/dist/{chunk-FJZO6R7B.cjs → chunk-MFRUMVY6.cjs} +2 -2
  38. package/dist/{chunk-FJZO6R7B.cjs.map → chunk-MFRUMVY6.cjs.map} +1 -1
  39. package/dist/chunk-MKMFDR3M.cjs +2 -0
  40. package/dist/chunk-MKMFDR3M.cjs.map +1 -0
  41. package/dist/{chunk-BUSTKLOI.cjs → chunk-OILLE36G.cjs} +2 -2
  42. package/dist/{chunk-BUSTKLOI.cjs.map → chunk-OILLE36G.cjs.map} +1 -1
  43. package/dist/{chunk-UIPFVGSN.js → chunk-QMVYPQP3.js} +2 -2
  44. package/dist/{chunk-UIPFVGSN.js.map → chunk-QMVYPQP3.js.map} +1 -1
  45. package/dist/chunk-S2CP6IGR.js +2 -0
  46. package/dist/chunk-S2CP6IGR.js.map +1 -0
  47. package/dist/{chunk-OGPYSKWY.cjs → chunk-SRHZ5S5N.cjs} +2 -2
  48. package/dist/{chunk-OGPYSKWY.cjs.map → chunk-SRHZ5S5N.cjs.map} +1 -1
  49. package/dist/chunk-U5WHESJR.js +2 -0
  50. package/dist/chunk-U5WHESJR.js.map +1 -0
  51. package/dist/chunk-W3XNHFD6.cjs +2 -0
  52. package/dist/chunk-W3XNHFD6.cjs.map +1 -0
  53. package/dist/{chunk-UWVZZARS.js → chunk-XIDYDUVH.js} +2 -2
  54. package/dist/{chunk-UWVZZARS.js.map → chunk-XIDYDUVH.js.map} +1 -1
  55. package/dist/{chunk-7BEEJS6W.js → chunk-Y7MYLO3W.js} +2 -2
  56. package/dist/{chunk-7BEEJS6W.js.map → chunk-Y7MYLO3W.js.map} +1 -1
  57. package/dist/chunk-YB33F7QJ.cjs +8 -0
  58. package/dist/chunk-YB33F7QJ.cjs.map +1 -0
  59. package/dist/chunk-Z37VUR4P.cjs +2 -0
  60. package/dist/{chunk-AKXQDI77.cjs.map → chunk-Z37VUR4P.cjs.map} +1 -1
  61. package/dist/index.cjs +1 -1
  62. package/dist/index.d.cts +1 -1
  63. package/dist/index.d.ts +1 -1
  64. package/dist/index.js +1 -1
  65. package/dist/schema/assets.cjs +1 -1
  66. package/dist/schema/assets.js +1 -1
  67. package/dist/schema/blueprints.cjs +1 -1
  68. package/dist/schema/blueprints.js +1 -1
  69. package/dist/schema/comments.cjs +1 -1
  70. package/dist/schema/comments.js +1 -1
  71. package/dist/schema/common.cjs +1 -1
  72. package/dist/schema/common.d.cts +1 -0
  73. package/dist/schema/common.d.ts +1 -0
  74. package/dist/schema/common.js +1 -1
  75. package/dist/schema/conversations.cjs +1 -1
  76. package/dist/schema/conversations.js +1 -1
  77. package/dist/schema/datasets.cjs +1 -1
  78. package/dist/schema/datasets.js +1 -1
  79. package/dist/schema/files.cjs +1 -1
  80. package/dist/schema/files.js +1 -1
  81. package/dist/schema/notifications.cjs +1 -1
  82. package/dist/schema/notifications.d.cts +1 -0
  83. package/dist/schema/notifications.d.ts +1 -0
  84. package/dist/schema/notifications.js +1 -1
  85. package/dist/schema/organizations.cjs +1 -1
  86. package/dist/schema/organizations.js +1 -1
  87. package/dist/schema/posts.cjs +1 -1
  88. package/dist/schema/posts.js +1 -1
  89. package/dist/schema/replications.cjs +1 -1
  90. package/dist/schema/replications.js +1 -1
  91. package/dist/schema/services.cjs +1 -1
  92. package/dist/schema/services.d.cts +4 -7
  93. package/dist/schema/services.d.ts +4 -7
  94. package/dist/schema/services.js +1 -1
  95. package/dist/schema/teams.cjs +1 -1
  96. package/dist/schema/teams.js +1 -1
  97. package/dist/utils/air/index.cjs +1 -1
  98. package/dist/utils/air/index.d.cts +42 -7
  99. package/dist/utils/air/index.d.ts +42 -7
  100. package/dist/utils/air/index.js +1 -1
  101. package/dist/utils/air/markdown-parser.cjs +1 -1
  102. package/dist/utils/air/markdown-parser.js +1 -1
  103. package/package.json +1 -1
  104. package/dist/chunk-2JCUJKLB.js +0 -3
  105. package/dist/chunk-2JCUJKLB.js.map +0 -1
  106. package/dist/chunk-4KUHOXA5.cjs +0 -2
  107. package/dist/chunk-4KUHOXA5.cjs.map +0 -1
  108. package/dist/chunk-AKXQDI77.cjs +0 -2
  109. package/dist/chunk-B7NJYI4N.cjs +0 -2
  110. package/dist/chunk-B7NJYI4N.cjs.map +0 -1
  111. package/dist/chunk-BXNIUQ5W.js +0 -2
  112. package/dist/chunk-BXNIUQ5W.js.map +0 -1
  113. package/dist/chunk-CBWCC3NJ.js +0 -2
  114. package/dist/chunk-CBWCC3NJ.js.map +0 -1
  115. package/dist/chunk-FS5P754F.js +0 -2
  116. package/dist/chunk-FS5P754F.js.map +0 -1
  117. package/dist/chunk-K2JZZ624.cjs +0 -2
  118. package/dist/chunk-K2JZZ624.cjs.map +0 -1
  119. package/dist/chunk-MAHNRYUV.cjs +0 -2
  120. package/dist/chunk-MAHNRYUV.cjs.map +0 -1
  121. package/dist/chunk-Q5SQSLM7.cjs +0 -2
  122. package/dist/chunk-S5TPBKS6.js +0 -2
  123. package/dist/chunk-S5TPBKS6.js.map +0 -1
  124. package/dist/chunk-T3XKETDR.cjs +0 -3
  125. package/dist/chunk-T3XKETDR.cjs.map +0 -1
@@ -1,14 +1,48 @@
1
1
  import { Content } from '../../schema/posts.js';
2
2
  import 'zod';
3
3
 
4
- interface InlineAssetAttrs {
4
+ /** Assets pulled from Air JSON: embedded blocks or link href shorthands. */
5
+ type ExtractedContentAsset = {
5
6
  id: string;
6
7
  assetType: string;
7
- viewMode: "card" | "preview" | "list";
8
- filters?: any;
9
- partial?: boolean;
8
+ via: "embed";
9
+ } | {
10
+ id: string;
11
+ assetType: string;
12
+ via: "link";
13
+ legacy: false;
14
+ } | {
15
+ id: string;
16
+ via: "link";
17
+ legacy: true;
18
+ };
19
+ interface LinkedAssetRef {
20
+ assetType: string;
21
+ entity: string;
22
+ slug: string;
10
23
  }
11
- declare function getReferencesInContent(json: Content["json"]): {
24
+ /**
25
+ * Parse an inline link `href` for Ouro asset shorthands.
26
+ * - `post:<uuid>`, `file:<uuid>`, … → typed (asset type known from prefix)
27
+ * - `asset:<uuid>` → legacy (type resolved via DB when creating connections)
28
+ */
29
+ declare function parseAssetLinkShorthand(href: string): {
30
+ id: string;
31
+ assetType: string;
32
+ legacy: false;
33
+ } | {
34
+ id: string;
35
+ legacy: true;
36
+ } | null;
37
+ /**
38
+ * Parse an Ouro site URL into its asset components.
39
+ * Accepts both absolute URLs (https://ouro.foundation/posts/entity/slug)
40
+ * and relative paths (/posts/entity/slug).
41
+ */
42
+ declare function parseOuroAssetUrl(href: string, siteUrl?: string): LinkedAssetRef | null;
43
+ declare function getReferencesInContent(json: Content["json"], options?: {
44
+ siteUrl?: string;
45
+ }): {
12
46
  users: Partial<{
13
47
  id: string;
14
48
  user_id: string;
@@ -26,7 +60,8 @@ declare function getReferencesInContent(json: Content["json"]): {
26
60
  }[] | undefined;
27
61
  post_id?: string | null | undefined;
28
62
  }>[];
29
- assets: InlineAssetAttrs[];
63
+ assets: ExtractedContentAsset[];
64
+ linkedAssets: LinkedAssetRef[];
30
65
  };
31
66
 
32
- export { getReferencesInContent };
67
+ export { type ExtractedContentAsset, getReferencesInContent, parseAssetLinkShorthand, parseOuroAssetUrl };
@@ -1,2 +1,2 @@
1
- export{a as getReferencesInContent}from'../../chunk-S5TPBKS6.js';//# sourceMappingURL=index.js.map
1
+ export{c as getReferencesInContent,a as parseAssetLinkShorthand,b as parseOuroAssetUrl}from'../../chunk-U5WHESJR.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkT3XKETDR_cjs=require('../../chunk-T3XKETDR.cjs');Object.defineProperty(exports,"parseMarkdown",{enumerable:true,get:function(){return chunkT3XKETDR_cjs.a}});//# sourceMappingURL=markdown-parser.cjs.map
1
+ 'use strict';var chunkYB33F7QJ_cjs=require('../../chunk-YB33F7QJ.cjs');Object.defineProperty(exports,"parseMarkdown",{enumerable:true,get:function(){return chunkYB33F7QJ_cjs.a}});//# sourceMappingURL=markdown-parser.cjs.map
2
2
  //# sourceMappingURL=markdown-parser.cjs.map
@@ -1,2 +1,2 @@
1
- export{a as parseMarkdown}from'../../chunk-2JCUJKLB.js';//# sourceMappingURL=markdown-parser.js.map
1
+ export{a as parseMarkdown}from'../../chunk-BSSU5PNI.js';//# sourceMappingURL=markdown-parser.js.map
2
2
  //# sourceMappingURL=markdown-parser.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ourofoundation/ouro-js",
3
- "version": "3.1.1",
3
+ "version": "3.2.1",
4
4
  "description": "Interact with the Ouro platform in browser and node.js environments",
5
5
  "module": "./dist/index.js",
6
6
  "main": "./dist/index.cjs",
@@ -1,3 +0,0 @@
1
- import {marked}from'marked';var i={name:"katexBlock",level:"block",start(e){let n=e.match(/\\\[/);return n?n.index:void 0},end(e){var s,t,r;let n=e.match(/\s\\\]/);return n?((s=n.index)!=null?s:0)+((r=(t=n[0])==null?void 0:t.length)!=null?r:0):void 0},tokenizer(e,n){let t=/^\\\[([\s\S]*?)\\\]/.exec(e);if(t)return {type:"katexBlock",raw:t[0],latex:t[1].trim(),displayMode:true}},renderer(e){return `<span data-latex="${e.latex}" data-display-mode="${e.displayMode}"></span>`}},c={name:"katexInline",level:"inline",start(e){let n=e.match(/\\\(/);return n?n.index:void 0},end(e){var s,t,r;let n=e.match(/\s\\\)/);return n?((s=n.index)!=null?s:0)+((r=(t=n[0])==null?void 0:t.length)!=null?r:0):void 0},tokenizer(e,n){let t=/^\\\(([\s\S]*?)\\\)/.exec(e);if(t)return {type:"katexInline",raw:t[0],latex:t[1].trim(),displayMode:false}},renderer(e){return `<span data-latex="${e.latex}" data-display-mode="${e.displayMode}"></span>`}},l={name:"assetComponent",level:"block",start(e){var n;return (n=e.match(/^```assetComponent/))==null?void 0:n.index},end(e){var n;return (n=e.match(/^```/))==null?void 0:n.index},tokenizer(e,n){let t=/^```assetComponent\s+(\{[\s\S]*?\})\n```/.exec(e);if(t)return {type:"assetComponent",raw:t[0],properties:t[1],tokens:[]}},renderer(e){let n;try{n=JSON.parse(e.properties);}catch(t){console.error("Invalid JSON in assetComponent properties:",t),n={};}return `
2
- <asset-component ${Object.entries(n).map(([t,r])=>{let o=(typeof r=="object"&&r!==null?JSON.stringify(r):String(r)).replace(/"/g,"&quot;");return `${t}="${o}"`}).join(" ")}></asset-component>`}},d={name:"userMention",level:"inline",start(e){var n;return (n=e.match(/`\{@/))==null?void 0:n.index},end(e){var n;return (n=e.match(/\}`/))==null?void 0:n.index},tokenizer(e,n){let t=/^`\{@([a-zA-Z0-9_]+)\}`/.exec(e);if(t)return {type:"userMention",raw:t[0],username:t[1]}},renderer(e){return `<user-mention username="${e.username}" data-label="${e.username}"></user-mention>`}};marked.use({gfm:true,extensions:[l,d,i,c]});function p(e){return marked.parse(e)}export{p as a};//# sourceMappingURL=chunk-2JCUJKLB.js.map
3
- //# sourceMappingURL=chunk-2JCUJKLB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/air/markdown-parser.ts"],"names":["katexBlockParser","src","match","_a","_b","_c","tokens","token","katexInlineParser","assetComponentExtension","properties","e","key","value","escapedValue","userMentionExtension","marked","parseMarkdown","markdown"],"mappings":"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","file":"chunk-2JCUJKLB.js","sourcesContent":["import { marked } from \"marked\";\n\nconst katexBlockParser = {\n name: \"katexBlock\",\n level: \"block\",\n start(src: string) {\n const match = src.match(/\\\\\\[/);\n return match ? match.index : undefined;\n },\n end(src: string) {\n const match = src.match(/\\s\\\\\\]/);\n return match ? (match.index ?? 0) + (match[0]?.length ?? 0) : undefined;\n },\n tokenizer(src: string, tokens: any) {\n const displayRule = /^\\\\\\[([\\s\\S]*?)\\\\\\]/;\n const match = displayRule.exec(src);\n if (match) {\n return {\n type: \"katexBlock\",\n raw: match[0],\n latex: match[1].trim(),\n displayMode: true,\n };\n }\n },\n renderer(token: any) {\n // Non-self-closing span is important for client-side inline flow around the node.\n return `<span data-latex=\"${token.latex}\" data-display-mode=\"${token.displayMode}\"></span>`;\n },\n};\n\nconst katexInlineParser = {\n name: \"katexInline\",\n level: \"inline\",\n start(src: string) {\n const match = src.match(/\\\\\\(/);\n return match ? match.index : undefined;\n },\n end(src: string) {\n const match = src.match(/\\s\\\\\\)/);\n return match ? (match.index ?? 0) + (match[0]?.length ?? 0) : undefined;\n },\n tokenizer(src: string, tokens: any) {\n const inlineRule = /^\\\\\\(([\\s\\S]*?)\\\\\\)/;\n const match = inlineRule.exec(src);\n if (match) {\n return {\n type: \"katexInline\",\n raw: match[0],\n latex: match[1].trim(),\n displayMode: false,\n };\n }\n },\n renderer(token: any) {\n // STRANGE: The non-self-closing tag is important for client side to render as inline and render text after it\n return `<span data-latex=\"${token.latex}\" data-display-mode=\"${token.displayMode}\"></span>`;\n },\n};\n\nconst assetComponentExtension = {\n name: \"assetComponent\",\n level: \"block\",\n start(src: string) {\n return src.match(/^```assetComponent/)?.index;\n },\n end(src: string) {\n return src.match(/^```/)?.index;\n },\n tokenizer(src: string, tokens: any) {\n const rule = /^```assetComponent\\s+(\\{[\\s\\S]*?\\})\\n```/;\n const match = rule.exec(src);\n if (match) {\n const token = {\n type: \"assetComponent\",\n raw: match[0],\n properties: match[1],\n tokens: [],\n };\n return token;\n }\n },\n renderer(token: any) {\n let properties;\n try {\n properties = JSON.parse(token.properties);\n } catch (e) {\n console.error(\"Invalid JSON in assetComponent properties:\", e);\n properties = {};\n }\n const componentHtml = `\n <asset-component ${Object.entries(properties)\n .map(([key, value]) => {\n // Stringify arrays and objects, keep primitives as-is\n const stringValue = typeof value === 'object' && value !== null\n ? JSON.stringify(value)\n : String(value);\n // Escape quotes for HTML attributes\n const escapedValue = stringValue.replace(/\"/g, '&quot;');\n return `${key}=\"${escapedValue}\"`;\n })\n .join(\" \")}></asset-component>`;\n\n return componentHtml;\n },\n};\n\nconst userMentionExtension = {\n name: \"userMention\",\n level: \"inline\",\n start(src: string) {\n return src.match(/`\\{@/)?.index;\n },\n end(src: string) {\n return src.match(/\\}`/)?.index;\n },\n tokenizer(src: string, tokens: any) {\n const rule = /^`\\{@([a-zA-Z0-9_]+)\\}`/;\n const match = rule.exec(src);\n if (match) {\n return {\n type: \"userMention\",\n raw: match[0],\n username: match[1],\n };\n }\n },\n renderer(token: any) {\n return `<user-mention username=\"${token.username}\" data-label=\"${token.username}\"></user-mention>`;\n },\n};\n\nmarked.use({\n gfm: true,\n extensions: [\n assetComponentExtension,\n userMentionExtension,\n katexBlockParser,\n katexInlineParser,\n ],\n});\n\nexport function parseMarkdown(markdown: string) {\n return marked.parse(markdown);\n}\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkMAHNRYUV_cjs=require('./chunk-MAHNRYUV.cjs'),zod=require('zod');var s=zod.enum(["follow","like","comment","reply","mention","reference","invite","payment","event","share","badge","reaction","deposit","action-complete","action-failed","quest-entry","quest-entry-accepted","onboarding-complete","onboarding-action-required","route-earnings-milestone","route-payout","other"]),p=zod.object({id:zod.uuid(),source_user_id:zod.uuid(),destination_user_id:zod.uuid(),org_id:zod.optional(zod.uuid()),asset_id:zod.optional(zod.uuid()),reaction_id:zod.optional(zod.uuid()),action_id:zod.optional(zod.uuid()),type:s,content:zod.object({text:zod.optional(zod.string()),asset:zod.optional(zod.object({assetId:zod.string(),assetType:chunkMAHNRYUV_cjs.a})),mention:zod.optional(zod.object({})),event:zod.optional(zod.object({type:zod.enum(["success","error"])})),badge:zod.optional(zod.object({name:zod.string(),description:zod.optional(zod.string()),slug:zod.optional(zod.string())})),value:zod.optional(zod.string())}).loose(),viewed:zod.boolean(),created_at:zod.string(),last_updated:zod.string()});exports.a=p;//# sourceMappingURL=chunk-4KUHOXA5.cjs.map
2
- //# sourceMappingURL=chunk-4KUHOXA5.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/notifications.ts"],"names":["NotificationTypeSchema","zodEnum","NotificationSchema","object","uuid","optional","string","AssetTypeSchema","boolean"],"mappings":"sFAYA,IAAMA,EAAyBC,QAAQ,CAAA,CACrC,QACA,CAAA,MAAA,CACA,UACA,OACA,CAAA,SAAA,CACA,WACA,CAAA,QAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,OACA,CAAA,UAAA,CACA,UACA,iBACA,CAAA,eAAA,CACA,aACA,CAAA,sBAAA,CACA,sBACA,4BACA,CAAA,0BAAA,CACA,cACA,CAAA,OACF,CAAC,CAEKC,CAAAA,CAAAA,CAAqBC,UAAO,CAAA,CAChC,GAAIC,QAAK,EAAA,CACT,cAAgBA,CAAAA,QAAAA,GAChB,mBAAqBA,CAAAA,QAAAA,EACrB,CAAA,MAAA,CAAQC,aAASD,QAAK,EAAC,CACvB,CAAA,QAAA,CAAUC,aAASD,QAAK,EAAC,CACzB,CAAA,WAAA,CAAaC,aAASD,QAAK,EAAC,CAC5B,CAAA,SAAA,CAAWC,aAASD,QAAK,EAAC,CAC1B,CAAA,IAAA,CAAMJ,EACN,OAASG,CAAAA,UAAAA,CAAO,CACd,IAAA,CAAME,YAASC,CAAAA,UAAAA,EAAQ,CAAA,CACvB,MAAOD,YACLF,CAAAA,UAAAA,CAAO,CACL,OAAA,CAASG,YACT,CAAA,SAAA,CAAWC,mBACb,CAAC,CACH,CACA,CAAA,OAAA,CAASF,YAASF,CAAAA,UAAAA,CAAO,EAAE,CAAC,CAC5B,CAAA,KAAA,CAAOE,aACLF,UAAO,CAAA,CACL,IAAMF,CAAAA,QAAAA,CAAQ,CAAC,SAAW,CAAA,OAAO,CAAC,CACpC,CAAC,CACH,CAAA,CACA,KAAOI,CAAAA,YAAAA,CACLF,WAAO,CACL,IAAA,CAAMG,UAAO,EAAA,CACb,YAAaD,YAASC,CAAAA,UAAAA,EAAQ,CAAA,CAC9B,KAAMD,YAASC,CAAAA,UAAAA,EAAQ,CACzB,CAAC,CACH,CAAA,CACA,KAAOD,CAAAA,YAAAA,CAASC,YAAQ,CAC1B,CAAC,CAAA,CAAE,OACH,CAAA,MAAA,CAAQE,WAAQ,EAAA,CAChB,WAAYF,UAAO,EAAA,CACnB,YAAcA,CAAAA,UAAAA,EAChB,CAAC","file":"chunk-4KUHOXA5.cjs","sourcesContent":["import {\n object,\n string,\n boolean,\n type z,\n enum as zodEnum,\n optional,\n uuid\n} from \"zod\";\n\nimport { AssetTypeSchema } from \"./common\";\n\nconst NotificationTypeSchema = zodEnum([\n \"follow\",\n \"like\",\n \"comment\",\n \"reply\",\n \"mention\",\n \"reference\",\n \"invite\",\n \"payment\",\n \"event\",\n \"share\",\n \"badge\",\n \"reaction\",\n \"deposit\",\n \"action-complete\",\n \"action-failed\",\n \"quest-entry\",\n \"quest-entry-accepted\",\n \"onboarding-complete\",\n \"onboarding-action-required\",\n \"route-earnings-milestone\",\n \"route-payout\",\n \"other\",\n]);\n\nconst NotificationSchema = object({\n id: uuid(),\n source_user_id: uuid(),\n destination_user_id: uuid(),\n org_id: optional(uuid()),\n asset_id: optional(uuid()),\n reaction_id: optional(uuid()),\n action_id: optional(uuid()),\n type: NotificationTypeSchema,\n content: object({\n text: optional(string()),\n asset: optional(\n object({\n assetId: string(),\n assetType: AssetTypeSchema,\n })\n ),\n mention: optional(object({})),\n event: optional(\n object({\n type: zodEnum([\"success\", \"error\"]),\n })\n ),\n badge: optional(\n object({\n name: string(),\n description: optional(string()),\n slug: optional(string()),\n })\n ),\n value: optional(string()),\n }).loose(),\n viewed: boolean(),\n created_at: string(),\n last_updated: string(),\n});\n\nexport { NotificationSchema };\nexport type Notification = z.infer<typeof NotificationSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkLUAQEXTM_cjs=require('./chunk-LUAQEXTM.cjs'),chunkACWMAF3H_cjs=require('./chunk-ACWMAF3H.cjs'),chunkGY6SLMMJ_cjs=require('./chunk-GY6SLMMJ.cjs'),chunkMAHNRYUV_cjs=require('./chunk-MAHNRYUV.cjs'),zod=require('zod');var z=zod.object({members:zod.array(zod.string())}),C=z.extend(chunkACWMAF3H_cjs.b.partial().shape),T=chunkACWMAF3H_cjs.c.extend({asset_type:chunkMAHNRYUV_cjs.a.default("conversation"),metadata:C,users:zod.optional(zod.nullable(zod.array(chunkGY6SLMMJ_cjs.b)))}),l=chunkACWMAF3H_cjs.d.extend({asset_type:zod.literal("conversation").default("conversation"),monetization:chunkMAHNRYUV_cjs.d.default("none"),visibility:chunkMAHNRYUV_cjs.b.default("private"),metadata:C}),U=l.transform(a=>chunkACWMAF3H_cjs.a(a)),j=l.omit({id:true,org_id:true,team_id:true}).partial().transform(a=>chunkACWMAF3H_cjs.a(a)),B=zod.object({id:zod.uuid(),conversation_id:zod.uuid(),user_id:zod.uuid(),user:zod.optional(zod.nullable(chunkGY6SLMMJ_cjs.b)),created_at:zod.string(),last_updated:zod.string(),viewers:zod.array(zod.uuid()),json:chunkLUAQEXTM_cjs.a,text:zod.string(),metadata:zod.optional(zod.nullable(zod.record(zod.string(),zod.any())))});exports.a=T;exports.b=U;exports.c=j;exports.d=B;//# sourceMappingURL=chunk-AKXQDI77.cjs.map
2
- //# sourceMappingURL=chunk-AKXQDI77.cjs.map
@@ -1,2 +0,0 @@
1
- 'use strict';var s=e=>Array.isArray(e)?e.map(s):e!=null&&e.content?Array.isArray(e.content)?e.content.map(s).flat():s(e.content):e;function y(e){if(!e||!(e!=null&&e.content))return {users:[],assets:[]};let a=e.content.map(s).flat(),l=a.filter(r=>r.type==="mention").map(r=>{var t,n,o;return {user_id:(t=r.attrs)==null?void 0:t.id,username:((n=r.attrs)==null?void 0:n.label)||((o=r.attrs)==null?void 0:o.username)}}).reduce((r,t)=>(r.some(n=>n.user_id&&t.user_id&&n.user_id===t.user_id||n.username&&t.username&&n.username===t.username)||r.push(t),r),[]),p=a.filter(r=>{var t,n;return r.type==="assetComponent"&&((t=r.attrs)==null?void 0:t.id)&&!((n=r.attrs)!=null&&n.partial)}).map(({attrs:r})=>({id:r.id,assetType:r.assetType})).reduce((r,t)=>(r.some(n=>n.id===t.id)||r.push(t),r),[]);return {users:l,assets:p}}exports.a=y;//# sourceMappingURL=chunk-B7NJYI4N.cjs.map
2
- //# sourceMappingURL=chunk-B7NJYI4N.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/air/index.ts"],"names":["extractContent","item","getReferencesInContent","json","content","users","_a","_b","_c","unique","u","assets","attrs"],"mappings":"aAWA,IAAMA,CAAAA,CAAkBC,GAClB,KAAM,CAAA,OAAA,CAAQA,CAAI,CAAUA,CAAAA,CAAAA,CAAK,IAAID,CAAc,CAAA,CACnDC,GAAA,IAAAA,EAAAA,CAAAA,CAAM,QACJ,KAAM,CAAA,OAAA,CAAQA,EAAK,OAAO,CAAA,CACrBA,CAAK,CAAA,OAAA,CAAQ,GAAID,CAAAA,CAAc,EAAE,IAAK,EAAA,CACnCA,EAAeC,CAAK,CAAA,OAAO,EAC3BA,CAGhB,CAAA,SAASC,EAAuBC,CAAuB,CAAA,CACrD,GAAI,CAACA,CAAAA,EAAQ,EAACA,CAAA,EAAA,IAAA,EAAAA,EAAM,OAAS,CAAA,CAAA,OAAO,CAAE,KAAA,CAAO,EAAC,CAAG,OAAQ,EAAG,EAC5D,IAAMC,CAAAA,CAAUD,EAAK,OAAQ,CAAA,GAAA,CAAIH,CAAc,CAAE,CAAA,IAAA,GAE3CK,CAAQD,CAAAA,CAAAA,CACX,OAAQH,CAAcA,EAAAA,CAAAA,CAAK,OAAS,SAAS,CAAA,CAC7C,GAAKA,CAAAA,CAAAA,EAAW,CA1BrB,IAAAK,EAAAC,CAAAC,CAAAA,CAAAA,CA0ByB,QACnB,OAASF,CAAAA,CAAAA,CAAAA,CAAAL,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAK,CAAY,CAAA,EAAA,CACrB,QAAUC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAM,EAAY,KAASC,IAAAA,CAAAA,CAAAA,CAAAP,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAO,CAAY,CAAA,QAAA,CAC7C,CAAE,CAAA,CAAA,CAED,OAAO,CAACC,CAAAA,CAAeR,KACjBQ,CAAO,CAAA,IAAA,CAAMC,GACfA,CAAE,CAAA,OAAA,EAAWT,EAAK,OAAWS,EAAAA,CAAAA,CAAE,UAAYT,CAAK,CAAA,OAAA,EAChDS,EAAE,QAAYT,EAAAA,CAAAA,CAAK,UAAYS,CAAE,CAAA,QAAA,GAAaT,CAAK,CAAA,QACtD,CACEQ,EAAAA,CAAAA,CAAO,KAAKR,CAAI,CAAA,CAEXQ,GACN,EAAE,EAEDE,CAASP,CAAAA,CAAAA,CAEZ,OACEH,CAAW,EAAA,CA5ClB,IAAAK,CAAAC,CAAAA,CAAAA,CA6CQ,OAAAN,CAAK,CAAA,IAAA,GAAS,oBAAoBK,CAAAL,CAAAA,CAAAA,CAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAK,CAAY,CAAA,EAAA,CAAA,EAAM,GAACC,CAAAN,CAAAA,CAAAA,CAAK,QAAL,IAAAM,EAAAA,CAAAA,CAAY,SACrE,CACC,CAAA,GAAA,CAAI,CAAC,CAAE,KAAA,CAAAK,CAAM,CAAoC,IAAA,CAChD,GAAIA,CAAM,CAAA,EAAA,CACV,UAAWA,CAAM,CAAA,SACnB,CAAE,CAAA,CAAA,CACD,MAAO,CAAA,CAACH,EAAeR,CACjBQ,IAAAA,CAAAA,CAAO,KAAMC,CAAMA,EAAAA,CAAAA,CAAE,KAAOT,CAAK,CAAA,EAAE,CACtCQ,EAAAA,CAAAA,CAAO,IAAKR,CAAAA,CAAI,EAEXQ,CACN,CAAA,CAAA,EAAE,CAEP,CAAA,OAAO,CACL,KAAAJ,CAAAA,CAAAA,CACA,MAAAM,CAAAA,CACF,CACF","file":"chunk-B7NJYI4N.cjs","sourcesContent":["import { Content } from \"../../schema/posts\";\nimport { Profile } from \"../../schema/users\";\n\ninterface InlineAssetAttrs {\n id: string;\n assetType: string;\n viewMode: \"card\" | \"preview\" | \"list\";\n filters?: any;\n partial?: boolean;\n}\n\nconst extractContent = (item: any): any => {\n if (Array.isArray(item)) return item.map(extractContent);\n if (item?.content) {\n if (Array.isArray(item.content))\n return item.content.map(extractContent).flat();\n else return extractContent(item.content);\n } else return item; // leaf\n};\n\nfunction getReferencesInContent(json: Content[\"json\"]) {\n if (!json || !json?.content) return { users: [], assets: [] };\n const content = json.content.map(extractContent).flat();\n // TODO: should keep the structure instead of flattening to list of strings\n const users = content\n .filter((item: any) => item.type === \"mention\")\n .map((item: any) => ({\n user_id: item.attrs?.id,\n username: item.attrs?.label || item.attrs?.username,\n }))\n // User could have user_id or only username, so we need to check both\n .reduce((unique: any[], item: any) => {\n if (!unique.some((u) =>\n (u.user_id && item.user_id && u.user_id === item.user_id) ||\n (u.username && item.username && u.username === item.username)\n )) {\n unique.push(item);\n }\n return unique;\n }, []) as Partial<Profile>[];\n\n const assets = content\n // Filter out assets that still have partial data, must have id\n .filter(\n (item: any) =>\n item.type === \"assetComponent\" && item.attrs?.id && !item.attrs?.partial\n )\n .map(({ attrs }: { attrs: InlineAssetAttrs }) => ({\n id: attrs.id,\n assetType: attrs.assetType,\n }))\n .reduce((unique: any[], item: any) => {\n if (!unique.some((u) => u.id === item.id)) {\n unique.push(item);\n }\n return unique;\n }, []) as InlineAssetAttrs[];\n\n return {\n users,\n assets,\n };\n}\n\nexport { getReferencesInContent };\n"]}
@@ -1,2 +0,0 @@
1
- import {b as b$1,c,d,a as a$1}from'./chunk-UWVZZARS.js';import {a}from'./chunk-CBWCC3NJ.js';import {enum as _enum,object,optional,string,nullable,number,record,any,array,boolean,uuid}from'zod';var y=_enum(["Personal Access Token","Ouro","None","OAuth 2.0"]),A=object({authentication:y,base_url:string(),version:optional(nullable(string())),spec_path:optional(nullable(string())),spec_url:optional(nullable(string())),auth_token:optional(nullable(string())),auth_url:optional(nullable(string()))}),l=A.extend(b$1.partial().shape),x=c.extend({asset_type:a.refine(r=>r==="service"),metadata:l}),b=d.extend({asset_type:a.refine(r=>r==="service"),metadata:l}).transform(r=>a$1(r)),R=x.partial().omit({user_id:true,id:true,created_at:true,last_updated:true,organization:true,user:true,team:true,slug:true}).extend({last_updated:string().default(()=>new Date().toISOString())}).transform(r=>a$1(r)),v=object({id:string(),user_id:string(),service_id:string(),path:string(),method:_enum(["GET","POST","PUT","PATCH","DELETE"]),summary:optional(nullable(string())),parameters:optional(nullable(array(record(string(),any())))),request_body:optional(nullable(record(string(),any()))),responses:optional(nullable(array(record(string(),any())))),input_type:optional(nullable(_enum(["file","dataset","post"]))),input_filter:optional(nullable(_enum(["audio","video","image","pdf","3d model","atomic structure"]))),input_file_extension:optional(nullable(string())),output_type:optional(nullable(_enum(["file","dataset","post"]))),output_file_extension:optional(nullable(string())),security:optional(nullable(record(string(),any()))),rate_limit:optional(nullable(number())),last_updated:string()}),D=c.extend({asset_type:a.refine(r=>r==="route"),route:v}),E=object({id:uuid(),user_id:uuid(),route_id:uuid(),metadata:optional(nullable(record(string(),any()))),response:optional(nullable(record(string(),any()))),side_effects:boolean().default(true),input_asset_id:optional(nullable(uuid())),output_asset_id:optional(nullable(uuid())),input_asset:optional(nullable(c)),output_asset:optional(nullable(c)),status:_enum(["queued","in-progress","success","error","done"]),created_at:string(),last_updated:string(),started_at:optional(nullable(string())),finished_at:optional(nullable(string()))});export{x as a,b,R as c,D as d,E as e};//# sourceMappingURL=chunk-BXNIUQ5W.js.map
2
- //# sourceMappingURL=chunk-BXNIUQ5W.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/services.ts"],"names":["AuthType","zodEnum","BaseServiceMetadataSchema","object","string","optional","nullable","ServiceMetadataSchema","AssetMetadataSchema","ServiceSchema","AssetSchema","AssetTypeSchema","x","CreateServiceSchema","CreateAssetSchema","value","normalizeAssetConfigForParsing","UpdateServiceSchema","RouteDetailSchema","array","record","any","number","RouteSchema","ActionSchema","uuid","boolean"],"mappings":"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","file":"chunk-BXNIUQ5W.js","sourcesContent":["import {\n object,\n string,\n uuid,\n number,\n array,\n type z,\n record,\n any,\n enum as zodEnum,\n optional,\n nullable,\n boolean\n} from \"zod\";\n\nimport { AssetTypeSchema } from \"./common\";\nimport {\n AssetMetadataSchema,\n AssetSchema,\n CreateAssetSchema,\n normalizeAssetConfigForParsing,\n} from \"./assets\";\n\nconst AuthType = zodEnum([\"Personal Access Token\", \"Ouro\", \"None\", \"OAuth 2.0\"]);\n\nconst BaseServiceMetadataSchema = object({\n authentication: AuthType,\n base_url: string(),\n version: optional(nullable(string())),\n spec_path: optional(nullable(string())),\n spec_url: optional(nullable(string())),\n auth_token: optional(nullable(string())),\n auth_url: optional(nullable(string())),\n});\n\nconst ServiceMetadataSchema = BaseServiceMetadataSchema.extend(\n AssetMetadataSchema.partial().shape\n);\n\nconst ServiceSchema = AssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"service\" === x),\n metadata: ServiceMetadataSchema,\n});\n\nconst CreateServiceSchema = CreateAssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"service\" === x),\n metadata: ServiceMetadataSchema,\n}).transform((value) => normalizeAssetConfigForParsing(value));\n\nconst UpdateServiceSchema = ServiceSchema.partial()\n .omit({\n user_id: true,\n id: true,\n created_at: true,\n last_updated: true,\n organization: true,\n user: true,\n team: true,\n slug: true,\n })\n .extend({\n last_updated: string().default(() => new Date().toISOString()),\n })\n .transform((value) => normalizeAssetConfigForParsing(value));\n\nconst RouteDetailSchema = object({\n id: string(),\n user_id: string(),\n service_id: string(),\n path: string(),\n method: zodEnum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"]),\n summary: optional(nullable(string())),\n parameters: optional(nullable(array(record(string(), any())))),\n request_body: optional(nullable(record(string(), any()))),\n responses: optional(nullable(array(record(string(), any())))),\n input_type: optional(nullable(zodEnum([\"file\", \"dataset\", \"post\"]))),\n input_filter: optional(nullable(zodEnum([\"audio\", \"video\", \"image\", \"pdf\", \"3d model\", \"atomic structure\"]))),\n input_file_extension: optional(nullable(string())),\n output_type: optional(nullable(zodEnum([\"file\", \"dataset\", \"post\"]))),\n output_file_extension: optional(nullable(string())),\n security: optional(nullable(record(string(), any()))),\n rate_limit: optional(nullable(number())),\n last_updated: string(),\n});\n\nconst RouteSchema = AssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"route\" === x),\n route: RouteDetailSchema,\n});\n\nconst ActionSchema = object({\n id: uuid(),\n user_id: uuid(),\n route_id: uuid(),\n metadata: optional(nullable(record(string(), any()))),\n response: optional(nullable(record(string(), any()))),\n side_effects: boolean().default(true),\n input_asset_id: optional(nullable(uuid())),\n output_asset_id: optional(nullable(uuid())),\n input_asset: optional(nullable(AssetSchema)),\n output_asset: optional(nullable(AssetSchema)),\n status: zodEnum([\"queued\", \"in-progress\", \"success\", \"error\", 'done']),\n created_at: string(),\n last_updated: string(),\n started_at: optional(nullable(string())),\n finished_at: optional(nullable(string())),\n});\n\nexport { RouteSchema, ServiceSchema, CreateServiceSchema, UpdateServiceSchema, ActionSchema };\nexport type Service = z.infer<typeof ServiceSchema>;\nexport type Route = z.infer<typeof RouteSchema>;\nexport type RouteDetail = z.infer<typeof RouteDetailSchema>;\nexport type AuthType = z.infer<typeof AuthType>;\nexport type Action = z.infer<typeof ActionSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- import {enum as _enum,object,string,optional,array,nullable,record,any,number,uuid}from'zod';var r=_enum(["user","organization","team","dataset","file","service","route","post","quest","comment","conversation","blueprint","replication"]),h=_enum(["public","private","organization","monetized","inherit"]),d=_enum(["admin","read","write","none"]),S=_enum(["none","pay-to-unlock","pay-per-use"]),f=_enum(["usd","btc"]),_=object({id:string(),user_id:string(),org_id:optional(nullable(string())),embedding:array(number()),content:string(),asset_type:r,asset_id:string(),metadata:optional(nullable(record(string(),any()))),created_at:string(),last_updated:string()}),y=_enum(["comment","reference","mention","action","component"]),l=object({id:uuid(),user_id:uuid(),type:y,action_id:optional(nullable(uuid())),source_id:uuid(),target_id:uuid(),source_asset_type:r,target_asset_type:r,created_at:string(),last_updated:string()}),z=object({assetId:uuid(),method:_enum(["checkout","api"]),assetType:r}),b=object({id:uuid(),role:d,user:object({user_id:uuid()}),user_id:nullable(uuid()),org_id:nullable(uuid()),asset_type:r,asset_id:uuid(),created_at:string(),last_updated:string()}),g=_enum(["queued","in-progress","success","error"]),x=_enum(["web","api"]);export{r as a,h as b,d as c,S as d,f as e,_ as f,l as g,z as h,b as i,g as j,x as k};//# sourceMappingURL=chunk-CBWCC3NJ.js.map
2
- //# sourceMappingURL=chunk-CBWCC3NJ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/common.ts"],"names":["AssetTypeSchema","zodEnum","VisibilitySchema","RoleSchema","MonetizationSchema","PriceCurrencySchema","EmbeddingSchema","object","string","optional","nullable","array","number","record","any","ConnectionTypeSchema","ConnectionSchema","uuid","PurchaseAssetSchema","PermissionSchema","StatusSchema","SourceSchema"],"mappings":"6FAcA,IAAMA,CAAkBC,CAAAA,KAAAA,CAAQ,CAC9B,MAAA,CACA,cACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,SAAA,CACA,OACA,CAAA,MAAA,CACA,OACA,CAAA,SAAA,CACA,cACA,CAAA,WAAA,CACA,aACF,CAAC,CAEKC,CAAAA,CAAAA,CAAmBD,KAAQ,CAAA,CAC/B,SACA,SACA,CAAA,cAAA,CACA,WACA,CAAA,SACF,CAAC,CAAA,CAEKE,CAAaF,CAAAA,KAAAA,CAAQ,CAAC,OAAA,CAAS,MAAQ,CAAA,OAAA,CAAS,MAAM,CAAC,EAEvDG,CAAqBH,CAAAA,KAAAA,CAAQ,CAAC,MAAA,CAAQ,eAAiB,CAAA,aAAa,CAAC,CAAA,CAErEI,CAAsBJ,CAAAA,KAAAA,CAAQ,CAAC,KAAA,CAAO,KAAK,CAAC,EAE5CK,CAAkBC,CAAAA,MAAAA,CAAO,CAC7B,EAAA,CAAIC,MAAO,EAAA,CACX,OAASA,CAAAA,MAAAA,EACT,CAAA,MAAA,CAAQC,QAASC,CAAAA,QAAAA,CAASF,MAAO,EAAC,CAAC,CACnC,CAAA,SAAA,CAAWG,KAAMC,CAAAA,MAAAA,EAAQ,CAAA,CACzB,OAASJ,CAAAA,MAAAA,EACT,CAAA,UAAA,CAAYR,CACZ,CAAA,QAAA,CAAUQ,MAAO,EAAA,CACjB,QAAUC,CAAAA,QAAAA,CAASC,QAASG,CAAAA,MAAAA,CAAOL,MAAO,EAAA,CAAGM,GAAI,EAAC,CAAC,CAAC,CACpD,CAAA,UAAA,CAAYN,MAAO,EAAA,CACnB,YAAcA,CAAAA,MAAAA,EAChB,CAAC,CAAA,CAEKO,CAAuBd,CAAAA,KAAAA,CAAQ,CACnC,SAAA,CACA,WACA,CAAA,SAAA,CACA,QACA,CAAA,WACF,CAAC,CAAA,CAEKe,CAAmBT,CAAAA,MAAAA,CAAO,CAC9B,EAAIU,CAAAA,IAAAA,EACJ,CAAA,OAAA,CAASA,IAAK,EAAA,CACd,IAAMF,CAAAA,CAAAA,CACN,SAAWN,CAAAA,QAAAA,CAASC,QAASO,CAAAA,IAAAA,EAAM,CAAC,EACpC,SAAWA,CAAAA,IAAAA,EACX,CAAA,SAAA,CAAWA,IAAK,EAAA,CAChB,iBAAmBjB,CAAAA,CAAAA,CACnB,iBAAmBA,CAAAA,CAAAA,CACnB,UAAYQ,CAAAA,MAAAA,EACZ,CAAA,YAAA,CAAcA,QAChB,CAAC,CAEKU,CAAAA,CAAAA,CAAsBX,MAAO,CAAA,CACjC,OAASU,CAAAA,IAAAA,EACT,CAAA,MAAA,CAAQhB,KAAQ,CAAA,CAAC,UAAY,CAAA,KAAK,CAAC,CACnC,CAAA,SAAA,CAAWD,CACb,CAAC,CAEKmB,CAAAA,CAAAA,CAAmBZ,MAAO,CAAA,CAC9B,EAAIU,CAAAA,IAAAA,EACJ,CAAA,IAAA,CAAMd,CACN,CAAA,IAAA,CAAMI,OAAO,CACX,OAAA,CAASU,IAAK,EAChB,CAAC,CAAA,CACD,OAASP,CAAAA,QAAAA,CAASO,IAAK,EAAC,CACxB,CAAA,MAAA,CAAQP,QAASO,CAAAA,IAAAA,EAAM,CACvB,CAAA,UAAA,CAAYjB,CACZ,CAAA,QAAA,CAAUiB,IAAK,EAAA,CACf,UAAYT,CAAAA,MAAAA,EACZ,CAAA,YAAA,CAAcA,MAAO,EACvB,CAAC,CAAA,CAEKY,CAAenB,CAAAA,KAAAA,CAAQ,CAAC,QAAA,CAAU,aAAe,CAAA,SAAA,CAAW,OAAO,CAAC,CAEpEoB,CAAAA,CAAAA,CAAepB,KAAQ,CAAA,CAAC,KAAO,CAAA,KAAK,CAAC","file":"chunk-CBWCC3NJ.js","sourcesContent":["import {\n object,\n string,\n uuid,\n number,\n array,\n enum as zodEnum,\n type z,\n any,\n nullable,\n optional,\n record\n} from \"zod\";\n\nconst AssetTypeSchema = zodEnum([\n \"user\",\n \"organization\",\n \"team\",\n \"dataset\",\n \"file\",\n \"service\",\n \"route\",\n \"post\",\n \"quest\",\n \"comment\",\n \"conversation\",\n \"blueprint\",\n \"replication\",\n]);\n\nconst VisibilitySchema = zodEnum([\n \"public\",\n \"private\",\n \"organization\",\n \"monetized\",\n \"inherit\",\n]);\n\nconst RoleSchema = zodEnum([\"admin\", \"read\", \"write\", \"none\"]);\n\nconst MonetizationSchema = zodEnum([\"none\", \"pay-to-unlock\", \"pay-per-use\"]);\n\nconst PriceCurrencySchema = zodEnum([\"usd\", \"btc\"]);\n\nconst EmbeddingSchema = object({\n id: string(),\n user_id: string(),\n org_id: optional(nullable(string())),\n embedding: array(number()),\n content: string(),\n asset_type: AssetTypeSchema,\n asset_id: string(),\n metadata: optional(nullable(record(string(), any()))),\n created_at: string(),\n last_updated: string(),\n});\n\nconst ConnectionTypeSchema = zodEnum([\n \"comment\",\n \"reference\",\n \"mention\",\n \"action\",\n \"component\",\n]);\n\nconst ConnectionSchema = object({\n id: uuid(),\n user_id: uuid(),\n type: ConnectionTypeSchema,\n action_id: optional(nullable(uuid())),\n source_id: uuid(),\n target_id: uuid(),\n source_asset_type: AssetTypeSchema,\n target_asset_type: AssetTypeSchema,\n created_at: string(),\n last_updated: string(),\n});\n\nconst PurchaseAssetSchema = object({\n assetId: uuid(),\n method: zodEnum([\"checkout\", \"api\"]),\n assetType: AssetTypeSchema,\n});\n\nconst PermissionSchema = object({\n id: uuid(),\n role: RoleSchema,\n user: object({\n user_id: uuid(),\n }),\n user_id: nullable(uuid()),\n org_id: nullable(uuid()),\n asset_type: AssetTypeSchema,\n asset_id: uuid(),\n created_at: string(),\n last_updated: string(),\n});\n\nconst StatusSchema = zodEnum([\"queued\", \"in-progress\", \"success\", \"error\"]);\n\nconst SourceSchema = zodEnum([\"web\", \"api\"]);\n\nexport {\n RoleSchema,\n VisibilitySchema,\n MonetizationSchema,\n PriceCurrencySchema,\n ConnectionSchema,\n EmbeddingSchema,\n AssetTypeSchema,\n PurchaseAssetSchema,\n PermissionSchema,\n StatusSchema,\n SourceSchema,\n};\n\nexport type Role = z.infer<typeof RoleSchema>;\nexport type Connection = z.infer<typeof ConnectionSchema>;\nexport type Embedding = z.infer<typeof EmbeddingSchema>;\nexport type Visibility = z.infer<typeof VisibilitySchema>;\nexport type Monetization = z.infer<typeof MonetizationSchema>;\nexport type PriceCurrency = z.infer<typeof PriceCurrencySchema>;\nexport type AssetTypes = z.infer<typeof AssetTypeSchema>;\nexport type PurchaseAsset = z.infer<typeof PurchaseAssetSchema>;\nexport type Permission = z.infer<typeof PermissionSchema>;\nexport type Status = z.infer<typeof StatusSchema>;\nexport type Source = z.infer<typeof SourceSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- import {a}from'./chunk-CBWCC3NJ.js';import {enum as _enum,object,string,boolean,optional,uuid}from'zod';var s=_enum(["follow","like","comment","reply","mention","reference","invite","payment","event","share","badge","reaction","deposit","action-complete","action-failed","quest-entry","quest-entry-accepted","onboarding-complete","onboarding-action-required","route-earnings-milestone","route-payout","other"]),p=object({id:uuid(),source_user_id:uuid(),destination_user_id:uuid(),org_id:optional(uuid()),asset_id:optional(uuid()),reaction_id:optional(uuid()),action_id:optional(uuid()),type:s,content:object({text:optional(string()),asset:optional(object({assetId:string(),assetType:a})),mention:optional(object({})),event:optional(object({type:_enum(["success","error"])})),badge:optional(object({name:string(),description:optional(string()),slug:optional(string())})),value:optional(string())}).loose(),viewed:boolean(),created_at:string(),last_updated:string()});export{p as a};//# sourceMappingURL=chunk-FS5P754F.js.map
2
- //# sourceMappingURL=chunk-FS5P754F.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/notifications.ts"],"names":["NotificationTypeSchema","zodEnum","NotificationSchema","object","uuid","optional","string","AssetTypeSchema","boolean"],"mappings":"wGAYA,IAAMA,EAAyBC,KAAQ,CAAA,CACrC,QACA,CAAA,MAAA,CACA,UACA,OACA,CAAA,SAAA,CACA,WACA,CAAA,QAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,OACA,CAAA,UAAA,CACA,UACA,iBACA,CAAA,eAAA,CACA,aACA,CAAA,sBAAA,CACA,sBACA,4BACA,CAAA,0BAAA,CACA,cACA,CAAA,OACF,CAAC,CAEKC,CAAAA,CAAAA,CAAqBC,MAAO,CAAA,CAChC,GAAIC,IAAK,EAAA,CACT,cAAgBA,CAAAA,IAAAA,GAChB,mBAAqBA,CAAAA,IAAAA,EACrB,CAAA,MAAA,CAAQC,SAASD,IAAK,EAAC,CACvB,CAAA,QAAA,CAAUC,SAASD,IAAK,EAAC,CACzB,CAAA,WAAA,CAAaC,SAASD,IAAK,EAAC,CAC5B,CAAA,SAAA,CAAWC,SAASD,IAAK,EAAC,CAC1B,CAAA,IAAA,CAAMJ,EACN,OAASG,CAAAA,MAAAA,CAAO,CACd,IAAA,CAAME,QAASC,CAAAA,MAAAA,EAAQ,CAAA,CACvB,MAAOD,QACLF,CAAAA,MAAAA,CAAO,CACL,OAAA,CAASG,QACT,CAAA,SAAA,CAAWC,CACb,CAAC,CACH,CACA,CAAA,OAAA,CAASF,QAASF,CAAAA,MAAAA,CAAO,EAAE,CAAC,CAC5B,CAAA,KAAA,CAAOE,SACLF,MAAO,CAAA,CACL,IAAMF,CAAAA,KAAAA,CAAQ,CAAC,SAAW,CAAA,OAAO,CAAC,CACpC,CAAC,CACH,CAAA,CACA,KAAOI,CAAAA,QAAAA,CACLF,OAAO,CACL,IAAA,CAAMG,MAAO,EAAA,CACb,YAAaD,QAASC,CAAAA,MAAAA,EAAQ,CAAA,CAC9B,KAAMD,QAASC,CAAAA,MAAAA,EAAQ,CACzB,CAAC,CACH,CAAA,CACA,KAAOD,CAAAA,QAAAA,CAASC,QAAQ,CAC1B,CAAC,CAAA,CAAE,OACH,CAAA,MAAA,CAAQE,OAAQ,EAAA,CAChB,WAAYF,MAAO,EAAA,CACnB,YAAcA,CAAAA,MAAAA,EAChB,CAAC","file":"chunk-FS5P754F.js","sourcesContent":["import {\n object,\n string,\n boolean,\n type z,\n enum as zodEnum,\n optional,\n uuid\n} from \"zod\";\n\nimport { AssetTypeSchema } from \"./common\";\n\nconst NotificationTypeSchema = zodEnum([\n \"follow\",\n \"like\",\n \"comment\",\n \"reply\",\n \"mention\",\n \"reference\",\n \"invite\",\n \"payment\",\n \"event\",\n \"share\",\n \"badge\",\n \"reaction\",\n \"deposit\",\n \"action-complete\",\n \"action-failed\",\n \"quest-entry\",\n \"quest-entry-accepted\",\n \"onboarding-complete\",\n \"onboarding-action-required\",\n \"route-earnings-milestone\",\n \"route-payout\",\n \"other\",\n]);\n\nconst NotificationSchema = object({\n id: uuid(),\n source_user_id: uuid(),\n destination_user_id: uuid(),\n org_id: optional(uuid()),\n asset_id: optional(uuid()),\n reaction_id: optional(uuid()),\n action_id: optional(uuid()),\n type: NotificationTypeSchema,\n content: object({\n text: optional(string()),\n asset: optional(\n object({\n assetId: string(),\n assetType: AssetTypeSchema,\n })\n ),\n mention: optional(object({})),\n event: optional(\n object({\n type: zodEnum([\"success\", \"error\"]),\n })\n ),\n badge: optional(\n object({\n name: string(),\n description: optional(string()),\n slug: optional(string()),\n })\n ),\n value: optional(string()),\n }).loose(),\n viewed: boolean(),\n created_at: string(),\n last_updated: string(),\n});\n\nexport { NotificationSchema };\nexport type Notification = z.infer<typeof NotificationSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkACWMAF3H_cjs=require('./chunk-ACWMAF3H.cjs'),chunkMAHNRYUV_cjs=require('./chunk-MAHNRYUV.cjs'),zod=require('zod');var y=zod.enum(["Personal Access Token","Ouro","None","OAuth 2.0"]),A=zod.object({authentication:y,base_url:zod.string(),version:zod.optional(zod.nullable(zod.string())),spec_path:zod.optional(zod.nullable(zod.string())),spec_url:zod.optional(zod.nullable(zod.string())),auth_token:zod.optional(zod.nullable(zod.string())),auth_url:zod.optional(zod.nullable(zod.string()))}),l=A.extend(chunkACWMAF3H_cjs.b.partial().shape),x=chunkACWMAF3H_cjs.c.extend({asset_type:chunkMAHNRYUV_cjs.a.refine(r=>r==="service"),metadata:l}),b=chunkACWMAF3H_cjs.d.extend({asset_type:chunkMAHNRYUV_cjs.a.refine(r=>r==="service"),metadata:l}).transform(r=>chunkACWMAF3H_cjs.a(r)),R=x.partial().omit({user_id:true,id:true,created_at:true,last_updated:true,organization:true,user:true,team:true,slug:true}).extend({last_updated:zod.string().default(()=>new Date().toISOString())}).transform(r=>chunkACWMAF3H_cjs.a(r)),v=zod.object({id:zod.string(),user_id:zod.string(),service_id:zod.string(),path:zod.string(),method:zod.enum(["GET","POST","PUT","PATCH","DELETE"]),summary:zod.optional(zod.nullable(zod.string())),parameters:zod.optional(zod.nullable(zod.array(zod.record(zod.string(),zod.any())))),request_body:zod.optional(zod.nullable(zod.record(zod.string(),zod.any()))),responses:zod.optional(zod.nullable(zod.array(zod.record(zod.string(),zod.any())))),input_type:zod.optional(zod.nullable(zod.enum(["file","dataset","post"]))),input_filter:zod.optional(zod.nullable(zod.enum(["audio","video","image","pdf","3d model","atomic structure"]))),input_file_extension:zod.optional(zod.nullable(zod.string())),output_type:zod.optional(zod.nullable(zod.enum(["file","dataset","post"]))),output_file_extension:zod.optional(zod.nullable(zod.string())),security:zod.optional(zod.nullable(zod.record(zod.string(),zod.any()))),rate_limit:zod.optional(zod.nullable(zod.number())),last_updated:zod.string()}),D=chunkACWMAF3H_cjs.c.extend({asset_type:chunkMAHNRYUV_cjs.a.refine(r=>r==="route"),route:v}),E=zod.object({id:zod.uuid(),user_id:zod.uuid(),route_id:zod.uuid(),metadata:zod.optional(zod.nullable(zod.record(zod.string(),zod.any()))),response:zod.optional(zod.nullable(zod.record(zod.string(),zod.any()))),side_effects:zod.boolean().default(true),input_asset_id:zod.optional(zod.nullable(zod.uuid())),output_asset_id:zod.optional(zod.nullable(zod.uuid())),input_asset:zod.optional(zod.nullable(chunkACWMAF3H_cjs.c)),output_asset:zod.optional(zod.nullable(chunkACWMAF3H_cjs.c)),status:zod.enum(["queued","in-progress","success","error","done"]),created_at:zod.string(),last_updated:zod.string(),started_at:zod.optional(zod.nullable(zod.string())),finished_at:zod.optional(zod.nullable(zod.string()))});exports.a=x;exports.b=b;exports.c=R;exports.d=D;exports.e=E;//# sourceMappingURL=chunk-K2JZZ624.cjs.map
2
- //# sourceMappingURL=chunk-K2JZZ624.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/services.ts"],"names":["AuthType","zodEnum","BaseServiceMetadataSchema","object","string","optional","nullable","ServiceMetadataSchema","AssetMetadataSchema","ServiceSchema","AssetSchema","AssetTypeSchema","x","CreateServiceSchema","CreateAssetSchema","value","normalizeAssetConfigForParsing","UpdateServiceSchema","RouteDetailSchema","array","record","any","number","RouteSchema","ActionSchema","uuid","boolean"],"mappings":"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","file":"chunk-K2JZZ624.cjs","sourcesContent":["import {\n object,\n string,\n uuid,\n number,\n array,\n type z,\n record,\n any,\n enum as zodEnum,\n optional,\n nullable,\n boolean\n} from \"zod\";\n\nimport { AssetTypeSchema } from \"./common\";\nimport {\n AssetMetadataSchema,\n AssetSchema,\n CreateAssetSchema,\n normalizeAssetConfigForParsing,\n} from \"./assets\";\n\nconst AuthType = zodEnum([\"Personal Access Token\", \"Ouro\", \"None\", \"OAuth 2.0\"]);\n\nconst BaseServiceMetadataSchema = object({\n authentication: AuthType,\n base_url: string(),\n version: optional(nullable(string())),\n spec_path: optional(nullable(string())),\n spec_url: optional(nullable(string())),\n auth_token: optional(nullable(string())),\n auth_url: optional(nullable(string())),\n});\n\nconst ServiceMetadataSchema = BaseServiceMetadataSchema.extend(\n AssetMetadataSchema.partial().shape\n);\n\nconst ServiceSchema = AssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"service\" === x),\n metadata: ServiceMetadataSchema,\n});\n\nconst CreateServiceSchema = CreateAssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"service\" === x),\n metadata: ServiceMetadataSchema,\n}).transform((value) => normalizeAssetConfigForParsing(value));\n\nconst UpdateServiceSchema = ServiceSchema.partial()\n .omit({\n user_id: true,\n id: true,\n created_at: true,\n last_updated: true,\n organization: true,\n user: true,\n team: true,\n slug: true,\n })\n .extend({\n last_updated: string().default(() => new Date().toISOString()),\n })\n .transform((value) => normalizeAssetConfigForParsing(value));\n\nconst RouteDetailSchema = object({\n id: string(),\n user_id: string(),\n service_id: string(),\n path: string(),\n method: zodEnum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"]),\n summary: optional(nullable(string())),\n parameters: optional(nullable(array(record(string(), any())))),\n request_body: optional(nullable(record(string(), any()))),\n responses: optional(nullable(array(record(string(), any())))),\n input_type: optional(nullable(zodEnum([\"file\", \"dataset\", \"post\"]))),\n input_filter: optional(nullable(zodEnum([\"audio\", \"video\", \"image\", \"pdf\", \"3d model\", \"atomic structure\"]))),\n input_file_extension: optional(nullable(string())),\n output_type: optional(nullable(zodEnum([\"file\", \"dataset\", \"post\"]))),\n output_file_extension: optional(nullable(string())),\n security: optional(nullable(record(string(), any()))),\n rate_limit: optional(nullable(number())),\n last_updated: string(),\n});\n\nconst RouteSchema = AssetSchema.extend({\n asset_type: AssetTypeSchema.refine((x) => \"route\" === x),\n route: RouteDetailSchema,\n});\n\nconst ActionSchema = object({\n id: uuid(),\n user_id: uuid(),\n route_id: uuid(),\n metadata: optional(nullable(record(string(), any()))),\n response: optional(nullable(record(string(), any()))),\n side_effects: boolean().default(true),\n input_asset_id: optional(nullable(uuid())),\n output_asset_id: optional(nullable(uuid())),\n input_asset: optional(nullable(AssetSchema)),\n output_asset: optional(nullable(AssetSchema)),\n status: zodEnum([\"queued\", \"in-progress\", \"success\", \"error\", 'done']),\n created_at: string(),\n last_updated: string(),\n started_at: optional(nullable(string())),\n finished_at: optional(nullable(string())),\n});\n\nexport { RouteSchema, ServiceSchema, CreateServiceSchema, UpdateServiceSchema, ActionSchema };\nexport type Service = z.infer<typeof ServiceSchema>;\nexport type Route = z.infer<typeof RouteSchema>;\nexport type RouteDetail = z.infer<typeof RouteDetailSchema>;\nexport type AuthType = z.infer<typeof AuthType>;\nexport type Action = z.infer<typeof ActionSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var zod=require('zod');var r=zod.enum(["user","organization","team","dataset","file","service","route","post","quest","comment","conversation","blueprint","replication"]),h=zod.enum(["public","private","organization","monetized","inherit"]),d=zod.enum(["admin","read","write","none"]),S=zod.enum(["none","pay-to-unlock","pay-per-use"]),f=zod.enum(["usd","btc"]),_=zod.object({id:zod.string(),user_id:zod.string(),org_id:zod.optional(zod.nullable(zod.string())),embedding:zod.array(zod.number()),content:zod.string(),asset_type:r,asset_id:zod.string(),metadata:zod.optional(zod.nullable(zod.record(zod.string(),zod.any()))),created_at:zod.string(),last_updated:zod.string()}),y=zod.enum(["comment","reference","mention","action","component"]),l=zod.object({id:zod.uuid(),user_id:zod.uuid(),type:y,action_id:zod.optional(zod.nullable(zod.uuid())),source_id:zod.uuid(),target_id:zod.uuid(),source_asset_type:r,target_asset_type:r,created_at:zod.string(),last_updated:zod.string()}),z=zod.object({assetId:zod.uuid(),method:zod.enum(["checkout","api"]),assetType:r}),b=zod.object({id:zod.uuid(),role:d,user:zod.object({user_id:zod.uuid()}),user_id:zod.nullable(zod.uuid()),org_id:zod.nullable(zod.uuid()),asset_type:r,asset_id:zod.uuid(),created_at:zod.string(),last_updated:zod.string()}),g=zod.enum(["queued","in-progress","success","error"]),x=zod.enum(["web","api"]);exports.a=r;exports.b=h;exports.c=d;exports.d=S;exports.e=f;exports.f=_;exports.g=l;exports.h=z;exports.i=b;exports.j=g;exports.k=x;//# sourceMappingURL=chunk-MAHNRYUV.cjs.map
2
- //# sourceMappingURL=chunk-MAHNRYUV.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schema/common.ts"],"names":["AssetTypeSchema","zodEnum","VisibilitySchema","RoleSchema","MonetizationSchema","PriceCurrencySchema","EmbeddingSchema","object","string","optional","nullable","array","number","record","any","ConnectionTypeSchema","ConnectionSchema","uuid","PurchaseAssetSchema","PermissionSchema","StatusSchema","SourceSchema"],"mappings":"oCAcA,IAAMA,CAAkBC,CAAAA,QAAAA,CAAQ,CAC9B,MAAA,CACA,cACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,SAAA,CACA,OACA,CAAA,MAAA,CACA,OACA,CAAA,SAAA,CACA,cACA,CAAA,WAAA,CACA,aACF,CAAC,CAEKC,CAAAA,CAAAA,CAAmBD,QAAQ,CAAA,CAC/B,SACA,SACA,CAAA,cAAA,CACA,WACA,CAAA,SACF,CAAC,CAAA,CAEKE,CAAaF,CAAAA,QAAAA,CAAQ,CAAC,OAAA,CAAS,MAAQ,CAAA,OAAA,CAAS,MAAM,CAAC,EAEvDG,CAAqBH,CAAAA,QAAAA,CAAQ,CAAC,MAAA,CAAQ,eAAiB,CAAA,aAAa,CAAC,CAAA,CAErEI,CAAsBJ,CAAAA,QAAAA,CAAQ,CAAC,KAAA,CAAO,KAAK,CAAC,EAE5CK,CAAkBC,CAAAA,UAAAA,CAAO,CAC7B,EAAA,CAAIC,UAAO,EAAA,CACX,OAASA,CAAAA,UAAAA,EACT,CAAA,MAAA,CAAQC,YAASC,CAAAA,YAAAA,CAASF,UAAO,EAAC,CAAC,CACnC,CAAA,SAAA,CAAWG,SAAMC,CAAAA,UAAAA,EAAQ,CAAA,CACzB,OAASJ,CAAAA,UAAAA,EACT,CAAA,UAAA,CAAYR,CACZ,CAAA,QAAA,CAAUQ,UAAO,EAAA,CACjB,QAAUC,CAAAA,YAAAA,CAASC,YAASG,CAAAA,UAAAA,CAAOL,UAAO,EAAA,CAAGM,OAAI,EAAC,CAAC,CAAC,CACpD,CAAA,UAAA,CAAYN,UAAO,EAAA,CACnB,YAAcA,CAAAA,UAAAA,EAChB,CAAC,CAAA,CAEKO,CAAuBd,CAAAA,QAAAA,CAAQ,CACnC,SAAA,CACA,WACA,CAAA,SAAA,CACA,QACA,CAAA,WACF,CAAC,CAAA,CAEKe,CAAmBT,CAAAA,UAAAA,CAAO,CAC9B,EAAIU,CAAAA,QAAAA,EACJ,CAAA,OAAA,CAASA,QAAK,EAAA,CACd,IAAMF,CAAAA,CAAAA,CACN,SAAWN,CAAAA,YAAAA,CAASC,YAASO,CAAAA,QAAAA,EAAM,CAAC,EACpC,SAAWA,CAAAA,QAAAA,EACX,CAAA,SAAA,CAAWA,QAAK,EAAA,CAChB,iBAAmBjB,CAAAA,CAAAA,CACnB,iBAAmBA,CAAAA,CAAAA,CACnB,UAAYQ,CAAAA,UAAAA,EACZ,CAAA,YAAA,CAAcA,YAChB,CAAC,CAEKU,CAAAA,CAAAA,CAAsBX,UAAO,CAAA,CACjC,OAASU,CAAAA,QAAAA,EACT,CAAA,MAAA,CAAQhB,QAAQ,CAAA,CAAC,UAAY,CAAA,KAAK,CAAC,CACnC,CAAA,SAAA,CAAWD,CACb,CAAC,CAEKmB,CAAAA,CAAAA,CAAmBZ,UAAO,CAAA,CAC9B,EAAIU,CAAAA,QAAAA,EACJ,CAAA,IAAA,CAAMd,CACN,CAAA,IAAA,CAAMI,WAAO,CACX,OAAA,CAASU,QAAK,EAChB,CAAC,CAAA,CACD,OAASP,CAAAA,YAAAA,CAASO,QAAK,EAAC,CACxB,CAAA,MAAA,CAAQP,YAASO,CAAAA,QAAAA,EAAM,CACvB,CAAA,UAAA,CAAYjB,CACZ,CAAA,QAAA,CAAUiB,QAAK,EAAA,CACf,UAAYT,CAAAA,UAAAA,EACZ,CAAA,YAAA,CAAcA,UAAO,EACvB,CAAC,CAAA,CAEKY,CAAenB,CAAAA,QAAAA,CAAQ,CAAC,QAAA,CAAU,aAAe,CAAA,SAAA,CAAW,OAAO,CAAC,CAEpEoB,CAAAA,CAAAA,CAAepB,QAAQ,CAAA,CAAC,KAAO,CAAA,KAAK,CAAC","file":"chunk-MAHNRYUV.cjs","sourcesContent":["import {\n object,\n string,\n uuid,\n number,\n array,\n enum as zodEnum,\n type z,\n any,\n nullable,\n optional,\n record\n} from \"zod\";\n\nconst AssetTypeSchema = zodEnum([\n \"user\",\n \"organization\",\n \"team\",\n \"dataset\",\n \"file\",\n \"service\",\n \"route\",\n \"post\",\n \"quest\",\n \"comment\",\n \"conversation\",\n \"blueprint\",\n \"replication\",\n]);\n\nconst VisibilitySchema = zodEnum([\n \"public\",\n \"private\",\n \"organization\",\n \"monetized\",\n \"inherit\",\n]);\n\nconst RoleSchema = zodEnum([\"admin\", \"read\", \"write\", \"none\"]);\n\nconst MonetizationSchema = zodEnum([\"none\", \"pay-to-unlock\", \"pay-per-use\"]);\n\nconst PriceCurrencySchema = zodEnum([\"usd\", \"btc\"]);\n\nconst EmbeddingSchema = object({\n id: string(),\n user_id: string(),\n org_id: optional(nullable(string())),\n embedding: array(number()),\n content: string(),\n asset_type: AssetTypeSchema,\n asset_id: string(),\n metadata: optional(nullable(record(string(), any()))),\n created_at: string(),\n last_updated: string(),\n});\n\nconst ConnectionTypeSchema = zodEnum([\n \"comment\",\n \"reference\",\n \"mention\",\n \"action\",\n \"component\",\n]);\n\nconst ConnectionSchema = object({\n id: uuid(),\n user_id: uuid(),\n type: ConnectionTypeSchema,\n action_id: optional(nullable(uuid())),\n source_id: uuid(),\n target_id: uuid(),\n source_asset_type: AssetTypeSchema,\n target_asset_type: AssetTypeSchema,\n created_at: string(),\n last_updated: string(),\n});\n\nconst PurchaseAssetSchema = object({\n assetId: uuid(),\n method: zodEnum([\"checkout\", \"api\"]),\n assetType: AssetTypeSchema,\n});\n\nconst PermissionSchema = object({\n id: uuid(),\n role: RoleSchema,\n user: object({\n user_id: uuid(),\n }),\n user_id: nullable(uuid()),\n org_id: nullable(uuid()),\n asset_type: AssetTypeSchema,\n asset_id: uuid(),\n created_at: string(),\n last_updated: string(),\n});\n\nconst StatusSchema = zodEnum([\"queued\", \"in-progress\", \"success\", \"error\"]);\n\nconst SourceSchema = zodEnum([\"web\", \"api\"]);\n\nexport {\n RoleSchema,\n VisibilitySchema,\n MonetizationSchema,\n PriceCurrencySchema,\n ConnectionSchema,\n EmbeddingSchema,\n AssetTypeSchema,\n PurchaseAssetSchema,\n PermissionSchema,\n StatusSchema,\n SourceSchema,\n};\n\nexport type Role = z.infer<typeof RoleSchema>;\nexport type Connection = z.infer<typeof ConnectionSchema>;\nexport type Embedding = z.infer<typeof EmbeddingSchema>;\nexport type Visibility = z.infer<typeof VisibilitySchema>;\nexport type Monetization = z.infer<typeof MonetizationSchema>;\nexport type PriceCurrency = z.infer<typeof PriceCurrencySchema>;\nexport type AssetTypes = z.infer<typeof AssetTypeSchema>;\nexport type PurchaseAsset = z.infer<typeof PurchaseAssetSchema>;\nexport type Permission = z.infer<typeof PermissionSchema>;\nexport type Status = z.infer<typeof StatusSchema>;\nexport type Source = z.infer<typeof SourceSchema>;\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkT2FZOXMU_cjs=require('./chunk-T2FZOXMU.cjs'),chunkGY6SLMMJ_cjs=require('./chunk-GY6SLMMJ.cjs'),chunkMAHNRYUV_cjs=require('./chunk-MAHNRYUV.cjs'),uuidv7=require('uuidv7'),zod=require('zod');var u=zod.object({id:zod.uuid(),org_id:zod.uuid(),organization:chunkT2FZOXMU_cjs.c,name:zod.string(),description:zod.optional(zod.nullable(zod.object({text:zod.string(),json:zod.record(zod.string(),zod.any())}))),default_role:chunkMAHNRYUV_cjs.c,visibility:chunkMAHNRYUV_cjs.b,actor_type_policy:zod.optional(zod.nullable(chunkT2FZOXMU_cjs.a)),source_policy:zod.optional(zod.nullable(chunkT2FZOXMU_cjs.b)),userMembership:zod.optional(zod.nullable(zod.object({user_id:zod.uuid(),role:chunkMAHNRYUV_cjs.c}))),memberCount:zod.optional(zod.nullable(zod.number())),members:zod.array(zod.object({user_id:zod.uuid(),role:chunkMAHNRYUV_cjs.c,added_at:zod.string(),user:zod.optional(zod.nullable(chunkGY6SLMMJ_cjs.b.partial()))})),created_at:zod.string()}),w=u.extend({id:zod.string().default(()=>uuidv7.uuidv7()),default_role:chunkMAHNRYUV_cjs.c.default("write").refine(m=>m==="read"||m==="write"),visibility:chunkMAHNRYUV_cjs.b.default("public").refine(m=>m==="public"||m==="organization"),created_at:zod.string().default(()=>new Date().toISOString())}).omit({organization:true,userMembership:true,memberCount:true,members:true,created_at:true}),_=u.extend({userMembership:zod.optional(zod.nullable(zod.object({user_id:zod.uuid(),role:chunkMAHNRYUV_cjs.c}))),memberCount:zod.number(),members:zod.array(zod.object({user_id:zod.uuid(),role:chunkMAHNRYUV_cjs.c,added_at:zod.string(),user:zod.optional(zod.nullable(chunkGY6SLMMJ_cjs.b.partial()))})),organization:zod.optional(zod.nullable(chunkT2FZOXMU_cjs.c.partial())),assets:zod.optional(zod.nullable(zod.array(zod.record(zod.string(),zod.any())))),users:zod.optional(zod.nullable(zod.array(chunkGY6SLMMJ_cjs.b.partial())))}),M=zod.array(_.extend({label:zod.string(),value:zod.string()})),P=u.partial().omit({org_id:true,organization:true,created_at:true}).extend({id:zod.uuid()});exports.a=u;exports.b=w;exports.c=_;exports.d=M;exports.e=P;//# sourceMappingURL=chunk-Q5SQSLM7.cjs.map
2
- //# sourceMappingURL=chunk-Q5SQSLM7.cjs.map
@@ -1,2 +0,0 @@
1
- var s=e=>Array.isArray(e)?e.map(s):e!=null&&e.content?Array.isArray(e.content)?e.content.map(s).flat():s(e.content):e;function y(e){if(!e||!(e!=null&&e.content))return {users:[],assets:[]};let a=e.content.map(s).flat(),l=a.filter(r=>r.type==="mention").map(r=>{var t,n,o;return {user_id:(t=r.attrs)==null?void 0:t.id,username:((n=r.attrs)==null?void 0:n.label)||((o=r.attrs)==null?void 0:o.username)}}).reduce((r,t)=>(r.some(n=>n.user_id&&t.user_id&&n.user_id===t.user_id||n.username&&t.username&&n.username===t.username)||r.push(t),r),[]),p=a.filter(r=>{var t,n;return r.type==="assetComponent"&&((t=r.attrs)==null?void 0:t.id)&&!((n=r.attrs)!=null&&n.partial)}).map(({attrs:r})=>({id:r.id,assetType:r.assetType})).reduce((r,t)=>(r.some(n=>n.id===t.id)||r.push(t),r),[]);return {users:l,assets:p}}export{y as a};//# sourceMappingURL=chunk-S5TPBKS6.js.map
2
- //# sourceMappingURL=chunk-S5TPBKS6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/air/index.ts"],"names":["extractContent","item","getReferencesInContent","json","content","users","_a","_b","_c","unique","u","assets","attrs"],"mappings":"AAWA,IAAMA,CAAAA,CAAkBC,GAClB,KAAM,CAAA,OAAA,CAAQA,CAAI,CAAUA,CAAAA,CAAAA,CAAK,IAAID,CAAc,CAAA,CACnDC,GAAA,IAAAA,EAAAA,CAAAA,CAAM,QACJ,KAAM,CAAA,OAAA,CAAQA,EAAK,OAAO,CAAA,CACrBA,CAAK,CAAA,OAAA,CAAQ,GAAID,CAAAA,CAAc,EAAE,IAAK,EAAA,CACnCA,EAAeC,CAAK,CAAA,OAAO,EAC3BA,CAGhB,CAAA,SAASC,EAAuBC,CAAuB,CAAA,CACrD,GAAI,CAACA,CAAAA,EAAQ,EAACA,CAAA,EAAA,IAAA,EAAAA,EAAM,OAAS,CAAA,CAAA,OAAO,CAAE,KAAA,CAAO,EAAC,CAAG,OAAQ,EAAG,EAC5D,IAAMC,CAAAA,CAAUD,EAAK,OAAQ,CAAA,GAAA,CAAIH,CAAc,CAAE,CAAA,IAAA,GAE3CK,CAAQD,CAAAA,CAAAA,CACX,OAAQH,CAAcA,EAAAA,CAAAA,CAAK,OAAS,SAAS,CAAA,CAC7C,GAAKA,CAAAA,CAAAA,EAAW,CA1BrB,IAAAK,EAAAC,CAAAC,CAAAA,CAAAA,CA0ByB,QACnB,OAASF,CAAAA,CAAAA,CAAAA,CAAAL,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAK,CAAY,CAAA,EAAA,CACrB,QAAUC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAM,EAAY,KAASC,IAAAA,CAAAA,CAAAA,CAAAP,EAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAO,CAAY,CAAA,QAAA,CAC7C,CAAE,CAAA,CAAA,CAED,OAAO,CAACC,CAAAA,CAAeR,KACjBQ,CAAO,CAAA,IAAA,CAAMC,GACfA,CAAE,CAAA,OAAA,EAAWT,EAAK,OAAWS,EAAAA,CAAAA,CAAE,UAAYT,CAAK,CAAA,OAAA,EAChDS,EAAE,QAAYT,EAAAA,CAAAA,CAAK,UAAYS,CAAE,CAAA,QAAA,GAAaT,CAAK,CAAA,QACtD,CACEQ,EAAAA,CAAAA,CAAO,KAAKR,CAAI,CAAA,CAEXQ,GACN,EAAE,EAEDE,CAASP,CAAAA,CAAAA,CAEZ,OACEH,CAAW,EAAA,CA5ClB,IAAAK,CAAAC,CAAAA,CAAAA,CA6CQ,OAAAN,CAAK,CAAA,IAAA,GAAS,oBAAoBK,CAAAL,CAAAA,CAAAA,CAAK,KAAL,GAAA,IAAA,CAAA,MAAA,CAAAK,CAAY,CAAA,EAAA,CAAA,EAAM,GAACC,CAAAN,CAAAA,CAAAA,CAAK,QAAL,IAAAM,EAAAA,CAAAA,CAAY,SACrE,CACC,CAAA,GAAA,CAAI,CAAC,CAAE,KAAA,CAAAK,CAAM,CAAoC,IAAA,CAChD,GAAIA,CAAM,CAAA,EAAA,CACV,UAAWA,CAAM,CAAA,SACnB,CAAE,CAAA,CAAA,CACD,MAAO,CAAA,CAACH,EAAeR,CACjBQ,IAAAA,CAAAA,CAAO,KAAMC,CAAMA,EAAAA,CAAAA,CAAE,KAAOT,CAAK,CAAA,EAAE,CACtCQ,EAAAA,CAAAA,CAAO,IAAKR,CAAAA,CAAI,EAEXQ,CACN,CAAA,CAAA,EAAE,CAEP,CAAA,OAAO,CACL,KAAAJ,CAAAA,CAAAA,CACA,MAAAM,CAAAA,CACF,CACF","file":"chunk-S5TPBKS6.js","sourcesContent":["import { Content } from \"../../schema/posts\";\nimport { Profile } from \"../../schema/users\";\n\ninterface InlineAssetAttrs {\n id: string;\n assetType: string;\n viewMode: \"card\" | \"preview\" | \"list\";\n filters?: any;\n partial?: boolean;\n}\n\nconst extractContent = (item: any): any => {\n if (Array.isArray(item)) return item.map(extractContent);\n if (item?.content) {\n if (Array.isArray(item.content))\n return item.content.map(extractContent).flat();\n else return extractContent(item.content);\n } else return item; // leaf\n};\n\nfunction getReferencesInContent(json: Content[\"json\"]) {\n if (!json || !json?.content) return { users: [], assets: [] };\n const content = json.content.map(extractContent).flat();\n // TODO: should keep the structure instead of flattening to list of strings\n const users = content\n .filter((item: any) => item.type === \"mention\")\n .map((item: any) => ({\n user_id: item.attrs?.id,\n username: item.attrs?.label || item.attrs?.username,\n }))\n // User could have user_id or only username, so we need to check both\n .reduce((unique: any[], item: any) => {\n if (!unique.some((u) =>\n (u.user_id && item.user_id && u.user_id === item.user_id) ||\n (u.username && item.username && u.username === item.username)\n )) {\n unique.push(item);\n }\n return unique;\n }, []) as Partial<Profile>[];\n\n const assets = content\n // Filter out assets that still have partial data, must have id\n .filter(\n (item: any) =>\n item.type === \"assetComponent\" && item.attrs?.id && !item.attrs?.partial\n )\n .map(({ attrs }: { attrs: InlineAssetAttrs }) => ({\n id: attrs.id,\n assetType: attrs.assetType,\n }))\n .reduce((unique: any[], item: any) => {\n if (!unique.some((u) => u.id === item.id)) {\n unique.push(item);\n }\n return unique;\n }, []) as InlineAssetAttrs[];\n\n return {\n users,\n assets,\n };\n}\n\nexport { getReferencesInContent };\n"]}
@@ -1,3 +0,0 @@
1
- 'use strict';var marked=require('marked');var i={name:"katexBlock",level:"block",start(e){let n=e.match(/\\\[/);return n?n.index:void 0},end(e){var s,t,r;let n=e.match(/\s\\\]/);return n?((s=n.index)!=null?s:0)+((r=(t=n[0])==null?void 0:t.length)!=null?r:0):void 0},tokenizer(e,n){let t=/^\\\[([\s\S]*?)\\\]/.exec(e);if(t)return {type:"katexBlock",raw:t[0],latex:t[1].trim(),displayMode:true}},renderer(e){return `<span data-latex="${e.latex}" data-display-mode="${e.displayMode}"></span>`}},c={name:"katexInline",level:"inline",start(e){let n=e.match(/\\\(/);return n?n.index:void 0},end(e){var s,t,r;let n=e.match(/\s\\\)/);return n?((s=n.index)!=null?s:0)+((r=(t=n[0])==null?void 0:t.length)!=null?r:0):void 0},tokenizer(e,n){let t=/^\\\(([\s\S]*?)\\\)/.exec(e);if(t)return {type:"katexInline",raw:t[0],latex:t[1].trim(),displayMode:false}},renderer(e){return `<span data-latex="${e.latex}" data-display-mode="${e.displayMode}"></span>`}},l={name:"assetComponent",level:"block",start(e){var n;return (n=e.match(/^```assetComponent/))==null?void 0:n.index},end(e){var n;return (n=e.match(/^```/))==null?void 0:n.index},tokenizer(e,n){let t=/^```assetComponent\s+(\{[\s\S]*?\})\n```/.exec(e);if(t)return {type:"assetComponent",raw:t[0],properties:t[1],tokens:[]}},renderer(e){let n;try{n=JSON.parse(e.properties);}catch(t){console.error("Invalid JSON in assetComponent properties:",t),n={};}return `
2
- <asset-component ${Object.entries(n).map(([t,r])=>{let o=(typeof r=="object"&&r!==null?JSON.stringify(r):String(r)).replace(/"/g,"&quot;");return `${t}="${o}"`}).join(" ")}></asset-component>`}},d={name:"userMention",level:"inline",start(e){var n;return (n=e.match(/`\{@/))==null?void 0:n.index},end(e){var n;return (n=e.match(/\}`/))==null?void 0:n.index},tokenizer(e,n){let t=/^`\{@([a-zA-Z0-9_]+)\}`/.exec(e);if(t)return {type:"userMention",raw:t[0],username:t[1]}},renderer(e){return `<user-mention username="${e.username}" data-label="${e.username}"></user-mention>`}};marked.marked.use({gfm:true,extensions:[l,d,i,c]});function p(e){return marked.marked.parse(e)}exports.a=p;//# sourceMappingURL=chunk-T3XKETDR.cjs.map
3
- //# sourceMappingURL=chunk-T3XKETDR.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/air/markdown-parser.ts"],"names":["katexBlockParser","src","match","_a","_b","_c","tokens","token","katexInlineParser","assetComponentExtension","properties","e","key","value","escapedValue","userMentionExtension","marked","parseMarkdown","markdown"],"mappings":"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","file":"chunk-T3XKETDR.cjs","sourcesContent":["import { marked } from \"marked\";\n\nconst katexBlockParser = {\n name: \"katexBlock\",\n level: \"block\",\n start(src: string) {\n const match = src.match(/\\\\\\[/);\n return match ? match.index : undefined;\n },\n end(src: string) {\n const match = src.match(/\\s\\\\\\]/);\n return match ? (match.index ?? 0) + (match[0]?.length ?? 0) : undefined;\n },\n tokenizer(src: string, tokens: any) {\n const displayRule = /^\\\\\\[([\\s\\S]*?)\\\\\\]/;\n const match = displayRule.exec(src);\n if (match) {\n return {\n type: \"katexBlock\",\n raw: match[0],\n latex: match[1].trim(),\n displayMode: true,\n };\n }\n },\n renderer(token: any) {\n // Non-self-closing span is important for client-side inline flow around the node.\n return `<span data-latex=\"${token.latex}\" data-display-mode=\"${token.displayMode}\"></span>`;\n },\n};\n\nconst katexInlineParser = {\n name: \"katexInline\",\n level: \"inline\",\n start(src: string) {\n const match = src.match(/\\\\\\(/);\n return match ? match.index : undefined;\n },\n end(src: string) {\n const match = src.match(/\\s\\\\\\)/);\n return match ? (match.index ?? 0) + (match[0]?.length ?? 0) : undefined;\n },\n tokenizer(src: string, tokens: any) {\n const inlineRule = /^\\\\\\(([\\s\\S]*?)\\\\\\)/;\n const match = inlineRule.exec(src);\n if (match) {\n return {\n type: \"katexInline\",\n raw: match[0],\n latex: match[1].trim(),\n displayMode: false,\n };\n }\n },\n renderer(token: any) {\n // STRANGE: The non-self-closing tag is important for client side to render as inline and render text after it\n return `<span data-latex=\"${token.latex}\" data-display-mode=\"${token.displayMode}\"></span>`;\n },\n};\n\nconst assetComponentExtension = {\n name: \"assetComponent\",\n level: \"block\",\n start(src: string) {\n return src.match(/^```assetComponent/)?.index;\n },\n end(src: string) {\n return src.match(/^```/)?.index;\n },\n tokenizer(src: string, tokens: any) {\n const rule = /^```assetComponent\\s+(\\{[\\s\\S]*?\\})\\n```/;\n const match = rule.exec(src);\n if (match) {\n const token = {\n type: \"assetComponent\",\n raw: match[0],\n properties: match[1],\n tokens: [],\n };\n return token;\n }\n },\n renderer(token: any) {\n let properties;\n try {\n properties = JSON.parse(token.properties);\n } catch (e) {\n console.error(\"Invalid JSON in assetComponent properties:\", e);\n properties = {};\n }\n const componentHtml = `\n <asset-component ${Object.entries(properties)\n .map(([key, value]) => {\n // Stringify arrays and objects, keep primitives as-is\n const stringValue = typeof value === 'object' && value !== null\n ? JSON.stringify(value)\n : String(value);\n // Escape quotes for HTML attributes\n const escapedValue = stringValue.replace(/\"/g, '&quot;');\n return `${key}=\"${escapedValue}\"`;\n })\n .join(\" \")}></asset-component>`;\n\n return componentHtml;\n },\n};\n\nconst userMentionExtension = {\n name: \"userMention\",\n level: \"inline\",\n start(src: string) {\n return src.match(/`\\{@/)?.index;\n },\n end(src: string) {\n return src.match(/\\}`/)?.index;\n },\n tokenizer(src: string, tokens: any) {\n const rule = /^`\\{@([a-zA-Z0-9_]+)\\}`/;\n const match = rule.exec(src);\n if (match) {\n return {\n type: \"userMention\",\n raw: match[0],\n username: match[1],\n };\n }\n },\n renderer(token: any) {\n return `<user-mention username=\"${token.username}\" data-label=\"${token.username}\"></user-mention>`;\n },\n};\n\nmarked.use({\n gfm: true,\n extensions: [\n assetComponentExtension,\n userMentionExtension,\n katexBlockParser,\n katexInlineParser,\n ],\n});\n\nexport function parseMarkdown(markdown: string) {\n return marked.parse(markdown);\n}\n"]}