This commit is contained in:
bniwredyc 2023-04-20 15:58:56 +02:00
parent 61a6448b61
commit 11f0a25a96
10 changed files with 391 additions and 310 deletions

456
package-lock.json generated
View File

@ -12,7 +12,7 @@
"@aws-sdk/abort-controller": "3.303.0",
"@aws-sdk/client-s3": "3.303.0",
"@aws-sdk/lib-storage": "3.303.0",
"@hocuspocus/provider": "2.0.1",
"@hocuspocus/provider": "2.0.3",
"formidable": "2.1.1",
"i18next": "22.4.13",
"mailgun.js": "8.2.1",
@ -36,35 +36,35 @@
"@solid-primitives/upload": "0.0.110",
"@solidjs/meta": "0.28.2",
"@thisbeyond/solid-select": "0.13.0",
"@tiptap/core": "2.0.1",
"@tiptap/extension-blockquote": "2.0.1",
"@tiptap/extension-bold": "2.0.1",
"@tiptap/extension-bubble-menu": "2.0.1",
"@tiptap/extension-bullet-list": "2.0.1",
"@tiptap/extension-character-count": "2.0.1",
"@tiptap/extension-collaboration": "2.0.1",
"@tiptap/extension-collaboration-cursor": "2.0.1",
"@tiptap/extension-document": "2.0.1",
"@tiptap/extension-dropcursor": "2.0.1",
"@tiptap/extension-floating-menu": "2.0.1",
"@tiptap/extension-focus": "2.0.1",
"@tiptap/extension-gapcursor": "2.0.1",
"@tiptap/extension-hard-break": "2.0.1",
"@tiptap/extension-heading": "2.0.1",
"@tiptap/extension-highlight": "2.0.1",
"@tiptap/extension-history": "2.0.1",
"@tiptap/extension-horizontal-rule": "2.0.1",
"@tiptap/extension-image": "2.0.1",
"@tiptap/extension-italic": "2.0.1",
"@tiptap/extension-link": "2.0.1",
"@tiptap/extension-list-item": "2.0.1",
"@tiptap/extension-ordered-list": "2.0.1",
"@tiptap/extension-paragraph": "2.0.1",
"@tiptap/extension-placeholder": "2.0.1",
"@tiptap/extension-strike": "2.0.1",
"@tiptap/extension-text": "2.0.1",
"@tiptap/extension-underline": "2.0.1",
"@tiptap/extension-youtube": "2.0.1",
"@tiptap/core": "2.0.3",
"@tiptap/extension-blockquote": "2.0.3",
"@tiptap/extension-bold": "2.0.3",
"@tiptap/extension-bubble-menu": "2.0.3",
"@tiptap/extension-bullet-list": "2.0.3",
"@tiptap/extension-character-count": "2.0.3",
"@tiptap/extension-collaboration": "2.0.3",
"@tiptap/extension-collaboration-cursor": "2.0.3",
"@tiptap/extension-document": "2.0.3",
"@tiptap/extension-dropcursor": "2.0.3",
"@tiptap/extension-floating-menu": "2.0.3",
"@tiptap/extension-focus": "2.0.3",
"@tiptap/extension-gapcursor": "2.0.3",
"@tiptap/extension-hard-break": "2.0.3",
"@tiptap/extension-heading": "2.0.3",
"@tiptap/extension-highlight": "2.0.3",
"@tiptap/extension-history": "2.0.3",
"@tiptap/extension-horizontal-rule": "2.0.3",
"@tiptap/extension-image": "2.0.3",
"@tiptap/extension-italic": "2.0.3",
"@tiptap/extension-link": "2.0.3",
"@tiptap/extension-list-item": "2.0.3",
"@tiptap/extension-ordered-list": "2.0.3",
"@tiptap/extension-paragraph": "2.0.3",
"@tiptap/extension-placeholder": "2.0.3",
"@tiptap/extension-strike": "2.0.3",
"@tiptap/extension-text": "2.0.3",
"@tiptap/extension-underline": "2.0.3",
"@tiptap/extension-youtube": "2.0.3",
"@types/express": "4.17.17",
"@types/node": "18.15.11",
"@types/uuid": "9.0.1",
@ -131,7 +131,7 @@
"rollup-plugin-visualizer": "5.9.0",
"sass": "1.60.0",
"solid-js": "1.7.0",
"solid-tiptap": "0.5.1",
"solid-tiptap": "0.6.0",
"solid-transition-group": "0.2.2",
"sort-package-json": "2.4.1",
"stylelint": "15.3.0",
@ -4391,19 +4391,19 @@
}
},
"node_modules/@hocuspocus/common": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@hocuspocus/common/-/common-2.0.1.tgz",
"integrity": "sha512-KHF/e4LgE5C+df0Jgo+nZz19vfS9pQ13lrWBeynxYzmcpMln++U4TUZeZMSqlSTS/njg/LwDN/KdRxw6MZeR/g==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@hocuspocus/common/-/common-2.0.3.tgz",
"integrity": "sha512-m+aFLDuO/miQCcPNL4GtIVa2NFegoh6mkZ6Y6+ogOoIlI9MY7uvhJQziPDgZ7SQ9nlROUzc015hX/QpJWjZL4A==",
"dependencies": {
"lib0": "^0.2.47"
}
},
"node_modules/@hocuspocus/provider": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@hocuspocus/provider/-/provider-2.0.1.tgz",
"integrity": "sha512-3IFn8oFlGEPQhzswiCrMjuBa1+qKPphr2In8iSgkjZFfMiSDobAfYvQj281dZf7vuKZZ1rFn/s55TAWhDCAy0w==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@hocuspocus/provider/-/provider-2.0.3.tgz",
"integrity": "sha512-dPw0cYdBvKggqIWJyRK5i2u4wrndC/A3nFqmFhZUuPo5GuRKNHMCjX8z5wSFNS2vsHELMFsxmnm1+TnB2cAP2w==",
"dependencies": {
"@hocuspocus/common": "^2.0.1",
"@hocuspocus/common": "^2.0.3",
"@lifeomic/attempt": "^3.0.2",
"lib0": "^0.2.47",
"ws": "^7.5.9"
@ -5694,9 +5694,9 @@
}
},
"node_modules/@tiptap/core": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.0.1.tgz",
"integrity": "sha512-IY5K17e1YdlJIykCt3NuOyqK/SHyGwk2X7eyLYfZJGJwqzuPuf3y8X1zZQQN53t5UVfsgqsF9RweVEee40o1Aw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.0.3.tgz",
"integrity": "sha512-jLyVIWAdjjlNzrsRhSE2lVL/7N8228/1R1QtaVU85UlMIwHFAcdzhD8FeiKkqxpTnGpaDVaTy7VNEtEgaYdCyA==",
"dev": true,
"funding": {
"type": "github",
@ -5707,9 +5707,9 @@
}
},
"node_modules/@tiptap/extension-blockquote": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.1.tgz",
"integrity": "sha512-j4n5iTeBc/YIoW83nZPoc1/fKeoA32tPaOH/quQdtkBgXEM9r4PiK7NfsJxbFq7UGk0oa3ibRSiBxzODgZIVlw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.3.tgz",
"integrity": "sha512-rkUcFv2iL6f86DBBHoa4XdKNG2StvkJ7tfY9GoMpT46k3nxOaMTqak9/qZOo79TWxMLYtXzoxtKIkmWsbbcj4A==",
"dev": true,
"funding": {
"type": "github",
@ -5720,9 +5720,9 @@
}
},
"node_modules/@tiptap/extension-bold": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.1.tgz",
"integrity": "sha512-SYzs0e3FcAmJbYQkQ+LLRnoBNrFvG0i2zc+lFbrSYVCiEpqb5QPz5mgmQvnrH/Sl89WewnoeMu7pLqVEpfAWuw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.3.tgz",
"integrity": "sha512-OGT62fMRovSSayjehumygFWTg2Qn0IDbqyMpigg/RUAsnoOI2yBZFVrdM2gk1StyoSay7gTn2MLw97IUfr7FXg==",
"dev": true,
"funding": {
"type": "github",
@ -5733,9 +5733,9 @@
}
},
"node_modules/@tiptap/extension-bubble-menu": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.0.1.tgz",
"integrity": "sha512-ZA8T7+yjlHzEjBeOlWAqz/9XvBb/rJ7/PiYjM57UXuT/ZgPMPL7KXI/KtS7vaRCnmKaGL6EJ1tBcZhjU24vNzA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.0.3.tgz",
"integrity": "sha512-lPt1ELrYCuoQrQEUukqjp9xt38EwgPUwaKHI3wwt2Rbv+C6q1gmRsK1yeO/KqCNmFxNqF2p9ZF9srOnug/RZDQ==",
"dev": true,
"dependencies": {
"tippy.js": "^6.3.7"
@ -5750,9 +5750,9 @@
}
},
"node_modules/@tiptap/extension-bullet-list": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.0.1.tgz",
"integrity": "sha512-IniXv9VgHkyWF2wJKxoILhNnJPwWNlIRW2LNSlXzkl70k0BsPGcAfiEIJtPqpVwh03QPc5v1y5UeuOOO6VQbqA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.0.3.tgz",
"integrity": "sha512-RtaLiRvZbMTOje+FW5bn+mYogiIgNxOm065wmyLPypnTbLSeHeYkoqVSqzZeqUn+7GLnwgn1shirUe6csVE/BA==",
"dev": true,
"funding": {
"type": "github",
@ -5763,9 +5763,9 @@
}
},
"node_modules/@tiptap/extension-character-count": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.0.1.tgz",
"integrity": "sha512-mvSD7dTU/NhxQwcQyignDgtzXIf9iwAdfn0lyWOnbzjyUxMpS7cVqXZ1ZsjNRWxThpOeoiw4TjYRMMcfZfSlWQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.0.3.tgz",
"integrity": "sha512-Ge4aUmgYOmQR/HLPkbQSFKEywyRu6IalHAQmH3laY6LB9qrmT90AoaiFnaVCDpphYFQ7RygnBXJMgjtJ3WpZmw==",
"dev": true,
"funding": {
"type": "github",
@ -5777,9 +5777,9 @@
}
},
"node_modules/@tiptap/extension-collaboration": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.0.1.tgz",
"integrity": "sha512-317mxt/UymuQ+bWBz8h/p1IvPM+CPYH7b7jrcJhVgk1zFSsMr/6KfI0fHQJTM9Llfh1u+PD8Tk9Y9ChBYx5yIQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.0.3.tgz",
"integrity": "sha512-oA+5Dx+L1GfFrP2tUol8lfKNrLitYgHBaBJbAiqh/QPKVuUiEWgFS2W1oYaSGmwYjzdPCVJqXyQLzSJvEdnBWQ==",
"dev": true,
"funding": {
"type": "github",
@ -5792,9 +5792,9 @@
}
},
"node_modules/@tiptap/extension-collaboration-cursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration-cursor/-/extension-collaboration-cursor-2.0.1.tgz",
"integrity": "sha512-BdwQkvLk/+qY3G1SU5J5psEA1EJf1LNt7Tk/xqWoYEcbfAlXGI09Xcz8gGuYZc6tF6f0BekrfeHdPAAQ94iwpQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration-cursor/-/extension-collaboration-cursor-2.0.3.tgz",
"integrity": "sha512-pBcsk3ZkK8IQK6UP/a7Y4rjZRW/anhxFaTCcTxrUvn/azqRI+mcCsRwbc5lNLzcYq5JVOHGROjriNmGGkIr5jA==",
"dev": true,
"funding": {
"type": "github",
@ -5806,9 +5806,9 @@
}
},
"node_modules/@tiptap/extension-document": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.0.1.tgz",
"integrity": "sha512-9T14qBa6uKieJ+FCGm0nL9o8LTjwqlfc2pYQkkjXXWFivMXoVeL9rVIlarANgbJZKYsZ4L5tkyXcKQ32nZmMjg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.0.3.tgz",
"integrity": "sha512-PsYeNQQBYIU9ayz1R11Kv/kKNPFNIV8tApJ9pxelXjzcAhkjncNUazPN/dyho60mzo+WpsmS3ceTj/gK3bCtWA==",
"dev": true,
"funding": {
"type": "github",
@ -5819,9 +5819,9 @@
}
},
"node_modules/@tiptap/extension-dropcursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.1.tgz",
"integrity": "sha512-OuqMhj13hPSdxc6G3xDmGvwe3AfczMQjAoSPakNW9pSSzrjJJa3Tr08kI+TyZDUm3vKM4af+lL/oCeXSupGAbQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.3.tgz",
"integrity": "sha512-McthMrfusn6PjcaynJLheZJcXto8TaIW5iVitYh8qQrDXr31MALC/5GvWuiswmQ8bAXiWPwlLDYE/OJfwtggaw==",
"dev": true,
"funding": {
"type": "github",
@ -5833,9 +5833,9 @@
}
},
"node_modules/@tiptap/extension-floating-menu": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.1.tgz",
"integrity": "sha512-gOf7FyromNyQpdaU/MWV99KMu6vypN+IlK8ViCBPvcM7w+e5eTh39wY/u5OquM7LsXd8KXLC2neq1XzQsAVmzw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.3.tgz",
"integrity": "sha512-zN1vRGRvyK3pO2aHRmQSOTpl4UJraXYwKYM009n6WviYKUNm0LPGo+VD4OAtdzUhPXyccnlsTv2p6LIqFty6Bg==",
"dev": true,
"dependencies": {
"tippy.js": "^6.3.7"
@ -5850,9 +5850,9 @@
}
},
"node_modules/@tiptap/extension-focus": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-focus/-/extension-focus-2.0.1.tgz",
"integrity": "sha512-/G+V2JG4GvhVv1+diZBNTdkKcictSJuygRHDqkAgm44nfvyUUQ0odqknpDSIV1pvSjukgcBxlcFedgdgcFrqyg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-focus/-/extension-focus-2.0.3.tgz",
"integrity": "sha512-WTJEmbGyHK8F/v1k5/5viLAa7PqtNoWOO4Qt4PBoUPlFDW97QMEh5m8Cvqw/RtbxTiGDHz6T+I5IJsKXGJed/A==",
"dev": true,
"funding": {
"type": "github",
@ -5864,9 +5864,9 @@
}
},
"node_modules/@tiptap/extension-gapcursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.1.tgz",
"integrity": "sha512-NZbT4BIpXlf3gxqQMsZ173bJreGfr43eBwR/tJ8nBLcgBmFKiDfRTW3Whj7+EGD6Ek6rqUX0EekKG93Wes+I4w==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.3.tgz",
"integrity": "sha512-6I9EzzsYOyyqDvDvxIK6Rv3EXB+fHKFj8ntHO8IXmeNJ6pkhOinuXVsW6Yo7TcDYoTj4D5I2MNFAW2rIkgassw==",
"dev": true,
"funding": {
"type": "github",
@ -5878,9 +5878,9 @@
}
},
"node_modules/@tiptap/extension-hard-break": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.1.tgz",
"integrity": "sha512-H8NdmOuYehuMMRd0iWOeyN8ukAebqu6BWbDiZUKm+yx+1b7woadVofojLnGlreQT2II3cC4g8D9J7JfrcQtbyg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.3.tgz",
"integrity": "sha512-RCln6ARn16jvKTjhkcAD5KzYXYS0xRMc0/LrHeV8TKdCd4Yd0YYHe0PU4F9gAgAfPQn7Dgt4uTVJLN11ICl8sQ==",
"dev": true,
"funding": {
"type": "github",
@ -5891,9 +5891,9 @@
}
},
"node_modules/@tiptap/extension-heading": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.1.tgz",
"integrity": "sha512-JkwlePSyDraVrWisr5lE/yqK4FXm5YSiiQiIo/1W9vFLdMPsAbRCSZrBO4fV7gyppbFgQQikEWDgxYHshq/TOg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.3.tgz",
"integrity": "sha512-f0IEv5ms6aCzL80WeZ1qLCXTkRVwbpRr1qAETjg3gG4eoJN18+lZNOJYpyZy3P92C5KwF2T3Av00eFyVLIbb8Q==",
"dev": true,
"funding": {
"type": "github",
@ -5904,9 +5904,9 @@
}
},
"node_modules/@tiptap/extension-highlight": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.1.tgz",
"integrity": "sha512-k9rJnAGzjXWQSN3RqSVPQfsbtFAgZu2AnwSFH2VQ2Ea7oiAUOaD7Qcqrs0PLo/CxLEuWPAbULNngXUXZVseMBA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.3.tgz",
"integrity": "sha512-NrtibY8cZkIjZMQuHRrKd4php+plOvAoSo8g3uVFu275I/Ixt5HqJ53R4voCXs8W8BOBRs2HS2QX8Cjh79XhtA==",
"dev": true,
"funding": {
"type": "github",
@ -5917,9 +5917,9 @@
}
},
"node_modules/@tiptap/extension-history": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.1.tgz",
"integrity": "sha512-nT4XbZUEyi+xSnwIeG+JqfHmWhF+amCwYsr7oYM/oa/BFDGaRHaNIrS3D+DpzjRrKguuLDxyhZkJEu1K2Rjsqw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.3.tgz",
"integrity": "sha512-00KHIcJ8kivn2ARI6NQYphv2LfllVCXViHGm0EhzDW6NQxCrriJKE3tKDcTFCu7LlC5doMpq9Z6KXdljc4oVeQ==",
"dev": true,
"funding": {
"type": "github",
@ -5931,9 +5931,9 @@
}
},
"node_modules/@tiptap/extension-horizontal-rule": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.0.1.tgz",
"integrity": "sha512-JNgu0ioOBhn3Djn8vd41y3DrqeEfWMLIWNRVO81OqQRvWZhpRwIUuDoRrzR45wxjymq9flc+iz7zuFW1kszpQA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.0.3.tgz",
"integrity": "sha512-SZRUSh07b/M0kJHNKnfBwBMWrZBEm/E2LrK1NbluwT3DBhE+gvwiEdBxgB32zKHNxaDEXUJwUIPNC3JSbKvPUA==",
"dev": true,
"funding": {
"type": "github",
@ -5945,9 +5945,9 @@
}
},
"node_modules/@tiptap/extension-image": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.0.1.tgz",
"integrity": "sha512-FMXY0Y3nsDtAb1gNGidNhXnyJTZw6bOwYXg6jEV/K05HIz/svMQVkXLR04vSKczr7DWnlOmaJiqzge9Hc9WJ9Q==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.0.3.tgz",
"integrity": "sha512-hS9ZJwz0md07EHsC+o4NuuJkhCZsZn7TuRz/2CvRSj2fWFIz+40CyNAHf/2J0qNugG9ommXaemetsADeEZP9ag==",
"dev": true,
"funding": {
"type": "github",
@ -5958,9 +5958,9 @@
}
},
"node_modules/@tiptap/extension-italic": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.1.tgz",
"integrity": "sha512-lVIyKa3qjqD4rUKSzVghkS5xonJ8k+msvy5Sr5xd6duwEBOk7e0oKtXmdn7B1VBH64i/U3Cx0QRgDlEyukvV2Q==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.3.tgz",
"integrity": "sha512-cfS5sW0gu7qf4ihwnLtW/QMTBrBEXaT0sJl3RwkhjIBg/65ywJKE5Nz9ewnQHmDeT18hvMJJ1VIb4j4ze9jj9A==",
"dev": true,
"funding": {
"type": "github",
@ -5971,9 +5971,9 @@
}
},
"node_modules/@tiptap/extension-link": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.1.tgz",
"integrity": "sha512-C1m5UJEiRvuqTthGcSVGcg3+vMZLC1tELmxuA+YdHti3ZfZi1hAZc4dwWzOp6RcXdEljmHCCXOs6G5WQH1mReQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.3.tgz",
"integrity": "sha512-H72tXQ5rkVCkAhFaf08fbEU7EBUCK0uocsqOF+4th9sOlrhfgyJtc8Jv5EXPDpxNgG5jixSqWBo0zKXQm9s9eg==",
"dev": true,
"dependencies": {
"linkifyjs": "^4.1.0"
@ -5988,9 +5988,9 @@
}
},
"node_modules/@tiptap/extension-list-item": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.0.1.tgz",
"integrity": "sha512-WxLRcwhMGp12+hV1nLTRVxPJ3ZsjLzA3tyaYySBf6IQpmoikH8DbzvprwV30lHfYbZvcQWQJx3ECIcQdGbtPPg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.0.3.tgz",
"integrity": "sha512-p7cUsk0LpM1PfdAuFE8wYBNJ3gvA0UhNGR08Lo++rt9UaCeFLSN1SXRxg97c0oa5+Ski7SrCjIJ5Ynhz0viTjQ==",
"dev": true,
"funding": {
"type": "github",
@ -6001,9 +6001,9 @@
}
},
"node_modules/@tiptap/extension-ordered-list": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.0.1.tgz",
"integrity": "sha512-7Q3hqAy2TYZ1p3J0GtEDcUJrbC/NxzWNF1H4zKW3VQGQhffUDNgHBk4uCLLVyf1A3vm50JmEAwQFrrwoozFmqQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.0.3.tgz",
"integrity": "sha512-ZB3MpZh/GEy1zKgw7XDQF4FIwycZWNof1k9WbDZOI063Ch4qHZowhVttH2mTCELuyvTMM/o9a8CS7qMqQB48bw==",
"dev": true,
"funding": {
"type": "github",
@ -6014,9 +6014,9 @@
}
},
"node_modules/@tiptap/extension-paragraph": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.1.tgz",
"integrity": "sha512-fVr5BZ7glyf/80vIO+GSQdeIcTvuXKGW9QvU0Mw8y1ek9Edd3MLWMxKdDurTswApnxIluvJFjmzp4XEogHHlhg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.3.tgz",
"integrity": "sha512-a+tKtmj4bU3GVCH1NE8VHWnhVexxX5boTVxsHIr4yGG3UoKo1c5AO7YMaeX2W5xB5iIA+BQqOPCDPEAx34dd2A==",
"dev": true,
"funding": {
"type": "github",
@ -6027,9 +6027,9 @@
}
},
"node_modules/@tiptap/extension-placeholder": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.1.tgz",
"integrity": "sha512-Jc0SrZw6HQ6Ddxr58SAAw5QPYh2pgjc1OSfrKn7+zBzcZDMFLWWgx9lTRwlR5L5VqTEuWqatJCfDrgjbnE4hLw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.3.tgz",
"integrity": "sha512-Z42jo0termRAf0S0L8oxrts94IWX5waU4isS2CUw8xCUigYyCFslkhQXkWATO1qRbjNFLKN2C9qvCgGf4UeBrw==",
"dev": true,
"funding": {
"type": "github",
@ -6041,9 +6041,9 @@
}
},
"node_modules/@tiptap/extension-strike": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.1.tgz",
"integrity": "sha512-gHNO47T5tbeFzhjJUn2Ob5RrqkG4joVyvUv3fFkSqpNngTIcqT5hJ7A3tDj2CKQGmUpU5SxM68sHMoIGpXdWIQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.3.tgz",
"integrity": "sha512-RO4/EYe2iPD6ifDHORT8fF6O9tfdtnzxLGwZIKZXnEgtweH+MgoqevEzXYdS+54Wraq4TUQGNcsYhe49pv7Rlw==",
"dev": true,
"funding": {
"type": "github",
@ -6054,9 +6054,9 @@
}
},
"node_modules/@tiptap/extension-text": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.1.tgz",
"integrity": "sha512-jwfpf71JZn04T4xcOMGJXCHTZoyvVtBusn6ZyRSQT4cVnDUgWcIbmIW5xccvGy8klBepBDS2ff+Nce3pxQnqug==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.3.tgz",
"integrity": "sha512-LvzChcTCcPSMNLUjZe/A9SHXWGDHtvk73fR7CBqAeNU0MxhBPEBI03GFQ6RzW3xX0CmDmjpZoDxFMB+hDEtW1A==",
"dev": true,
"funding": {
"type": "github",
@ -6067,9 +6067,9 @@
}
},
"node_modules/@tiptap/extension-underline": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.0.1.tgz",
"integrity": "sha512-y36CDKqXAOHKNNEZsku34okz/9j1VF3NtB0CyvbP/2xW4s5KXSj0ywTUZPqqK+fuN4YNUoENoykwsd0cnL/oNg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.0.3.tgz",
"integrity": "sha512-oMYa7qib/5wJjpUp79GZEe+E/iyf1oZBsgiG26IspEtVTHZmpn3+Ktud7l43y/hpTeEzFTKOF1/uVbayHtSERg==",
"dev": true,
"funding": {
"type": "github",
@ -6080,9 +6080,9 @@
}
},
"node_modules/@tiptap/extension-youtube": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.0.1.tgz",
"integrity": "sha512-EiQI9e01f+ae8NVD1wNeoIb4XvB3hRKUEoCcnXfHQpDhq64jtsdQTXkOqHL/NDPMlQZftLNV4IjqWNUub1zPpQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.0.3.tgz",
"integrity": "sha512-iZsMr+88I3hvfbJNLmiPsz2/8ZGpMucyCxRbrZGg1D6wBw4oiUhRPHzGJ3APlECzpanCjyQNMHIk/gvSDDX3ig==",
"dev": true,
"funding": {
"type": "github",
@ -21210,17 +21210,17 @@
}
},
"node_modules/solid-tiptap": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.5.1.tgz",
"integrity": "sha512-Ced19tF2iJZeZwk1Q5Hne+UaIy3dQxwBLNSfq+IkT3xffMlu2t2YXWSUWadRh85xgPw0hFwHiSEG2SPhhtV/0w==",
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.6.0.tgz",
"integrity": "sha512-79soXY4lSGkCdlfKalawGyvPE0kOvrKd7w9Zy3o3MY4dppti5Yd2RUVqyNPtYPpvCyqaLg+kofq81RRGl/Ql4Q==",
"dev": true,
"engines": {
"node": ">=10"
},
"peerDependencies": {
"@tiptap/core": "^2.0.0-beta.220",
"@tiptap/pm": "^2.0.0-beta.220",
"solid-js": "^1.2"
"@tiptap/core": "^2",
"@tiptap/pm": "^2",
"solid-js": "^1.7"
}
},
"node_modules/solid-transition-group": {
@ -26625,19 +26625,19 @@
"requires": {}
},
"@hocuspocus/common": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@hocuspocus/common/-/common-2.0.1.tgz",
"integrity": "sha512-KHF/e4LgE5C+df0Jgo+nZz19vfS9pQ13lrWBeynxYzmcpMln++U4TUZeZMSqlSTS/njg/LwDN/KdRxw6MZeR/g==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@hocuspocus/common/-/common-2.0.3.tgz",
"integrity": "sha512-m+aFLDuO/miQCcPNL4GtIVa2NFegoh6mkZ6Y6+ogOoIlI9MY7uvhJQziPDgZ7SQ9nlROUzc015hX/QpJWjZL4A==",
"requires": {
"lib0": "^0.2.47"
}
},
"@hocuspocus/provider": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@hocuspocus/provider/-/provider-2.0.1.tgz",
"integrity": "sha512-3IFn8oFlGEPQhzswiCrMjuBa1+qKPphr2In8iSgkjZFfMiSDobAfYvQj281dZf7vuKZZ1rFn/s55TAWhDCAy0w==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@hocuspocus/provider/-/provider-2.0.3.tgz",
"integrity": "sha512-dPw0cYdBvKggqIWJyRK5i2u4wrndC/A3nFqmFhZUuPo5GuRKNHMCjX8z5wSFNS2vsHELMFsxmnm1+TnB2cAP2w==",
"requires": {
"@hocuspocus/common": "^2.0.1",
"@hocuspocus/common": "^2.0.3",
"@lifeomic/attempt": "^3.0.2",
"lib0": "^0.2.47",
"ws": "^7.5.9"
@ -27624,211 +27624,211 @@
"requires": {}
},
"@tiptap/core": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.0.1.tgz",
"integrity": "sha512-IY5K17e1YdlJIykCt3NuOyqK/SHyGwk2X7eyLYfZJGJwqzuPuf3y8X1zZQQN53t5UVfsgqsF9RweVEee40o1Aw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.0.3.tgz",
"integrity": "sha512-jLyVIWAdjjlNzrsRhSE2lVL/7N8228/1R1QtaVU85UlMIwHFAcdzhD8FeiKkqxpTnGpaDVaTy7VNEtEgaYdCyA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-blockquote": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.1.tgz",
"integrity": "sha512-j4n5iTeBc/YIoW83nZPoc1/fKeoA32tPaOH/quQdtkBgXEM9r4PiK7NfsJxbFq7UGk0oa3ibRSiBxzODgZIVlw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.3.tgz",
"integrity": "sha512-rkUcFv2iL6f86DBBHoa4XdKNG2StvkJ7tfY9GoMpT46k3nxOaMTqak9/qZOo79TWxMLYtXzoxtKIkmWsbbcj4A==",
"dev": true,
"requires": {}
},
"@tiptap/extension-bold": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.1.tgz",
"integrity": "sha512-SYzs0e3FcAmJbYQkQ+LLRnoBNrFvG0i2zc+lFbrSYVCiEpqb5QPz5mgmQvnrH/Sl89WewnoeMu7pLqVEpfAWuw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.3.tgz",
"integrity": "sha512-OGT62fMRovSSayjehumygFWTg2Qn0IDbqyMpigg/RUAsnoOI2yBZFVrdM2gk1StyoSay7gTn2MLw97IUfr7FXg==",
"dev": true,
"requires": {}
},
"@tiptap/extension-bubble-menu": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.0.1.tgz",
"integrity": "sha512-ZA8T7+yjlHzEjBeOlWAqz/9XvBb/rJ7/PiYjM57UXuT/ZgPMPL7KXI/KtS7vaRCnmKaGL6EJ1tBcZhjU24vNzA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.0.3.tgz",
"integrity": "sha512-lPt1ELrYCuoQrQEUukqjp9xt38EwgPUwaKHI3wwt2Rbv+C6q1gmRsK1yeO/KqCNmFxNqF2p9ZF9srOnug/RZDQ==",
"dev": true,
"requires": {
"tippy.js": "^6.3.7"
}
},
"@tiptap/extension-bullet-list": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.0.1.tgz",
"integrity": "sha512-IniXv9VgHkyWF2wJKxoILhNnJPwWNlIRW2LNSlXzkl70k0BsPGcAfiEIJtPqpVwh03QPc5v1y5UeuOOO6VQbqA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.0.3.tgz",
"integrity": "sha512-RtaLiRvZbMTOje+FW5bn+mYogiIgNxOm065wmyLPypnTbLSeHeYkoqVSqzZeqUn+7GLnwgn1shirUe6csVE/BA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-character-count": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.0.1.tgz",
"integrity": "sha512-mvSD7dTU/NhxQwcQyignDgtzXIf9iwAdfn0lyWOnbzjyUxMpS7cVqXZ1ZsjNRWxThpOeoiw4TjYRMMcfZfSlWQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.0.3.tgz",
"integrity": "sha512-Ge4aUmgYOmQR/HLPkbQSFKEywyRu6IalHAQmH3laY6LB9qrmT90AoaiFnaVCDpphYFQ7RygnBXJMgjtJ3WpZmw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-collaboration": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.0.1.tgz",
"integrity": "sha512-317mxt/UymuQ+bWBz8h/p1IvPM+CPYH7b7jrcJhVgk1zFSsMr/6KfI0fHQJTM9Llfh1u+PD8Tk9Y9ChBYx5yIQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.0.3.tgz",
"integrity": "sha512-oA+5Dx+L1GfFrP2tUol8lfKNrLitYgHBaBJbAiqh/QPKVuUiEWgFS2W1oYaSGmwYjzdPCVJqXyQLzSJvEdnBWQ==",
"dev": true,
"requires": {}
},
"@tiptap/extension-collaboration-cursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration-cursor/-/extension-collaboration-cursor-2.0.1.tgz",
"integrity": "sha512-BdwQkvLk/+qY3G1SU5J5psEA1EJf1LNt7Tk/xqWoYEcbfAlXGI09Xcz8gGuYZc6tF6f0BekrfeHdPAAQ94iwpQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration-cursor/-/extension-collaboration-cursor-2.0.3.tgz",
"integrity": "sha512-pBcsk3ZkK8IQK6UP/a7Y4rjZRW/anhxFaTCcTxrUvn/azqRI+mcCsRwbc5lNLzcYq5JVOHGROjriNmGGkIr5jA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-document": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.0.1.tgz",
"integrity": "sha512-9T14qBa6uKieJ+FCGm0nL9o8LTjwqlfc2pYQkkjXXWFivMXoVeL9rVIlarANgbJZKYsZ4L5tkyXcKQ32nZmMjg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.0.3.tgz",
"integrity": "sha512-PsYeNQQBYIU9ayz1R11Kv/kKNPFNIV8tApJ9pxelXjzcAhkjncNUazPN/dyho60mzo+WpsmS3ceTj/gK3bCtWA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-dropcursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.1.tgz",
"integrity": "sha512-OuqMhj13hPSdxc6G3xDmGvwe3AfczMQjAoSPakNW9pSSzrjJJa3Tr08kI+TyZDUm3vKM4af+lL/oCeXSupGAbQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.3.tgz",
"integrity": "sha512-McthMrfusn6PjcaynJLheZJcXto8TaIW5iVitYh8qQrDXr31MALC/5GvWuiswmQ8bAXiWPwlLDYE/OJfwtggaw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-floating-menu": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.1.tgz",
"integrity": "sha512-gOf7FyromNyQpdaU/MWV99KMu6vypN+IlK8ViCBPvcM7w+e5eTh39wY/u5OquM7LsXd8KXLC2neq1XzQsAVmzw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.3.tgz",
"integrity": "sha512-zN1vRGRvyK3pO2aHRmQSOTpl4UJraXYwKYM009n6WviYKUNm0LPGo+VD4OAtdzUhPXyccnlsTv2p6LIqFty6Bg==",
"dev": true,
"requires": {
"tippy.js": "^6.3.7"
}
},
"@tiptap/extension-focus": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-focus/-/extension-focus-2.0.1.tgz",
"integrity": "sha512-/G+V2JG4GvhVv1+diZBNTdkKcictSJuygRHDqkAgm44nfvyUUQ0odqknpDSIV1pvSjukgcBxlcFedgdgcFrqyg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-focus/-/extension-focus-2.0.3.tgz",
"integrity": "sha512-WTJEmbGyHK8F/v1k5/5viLAa7PqtNoWOO4Qt4PBoUPlFDW97QMEh5m8Cvqw/RtbxTiGDHz6T+I5IJsKXGJed/A==",
"dev": true,
"requires": {}
},
"@tiptap/extension-gapcursor": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.1.tgz",
"integrity": "sha512-NZbT4BIpXlf3gxqQMsZ173bJreGfr43eBwR/tJ8nBLcgBmFKiDfRTW3Whj7+EGD6Ek6rqUX0EekKG93Wes+I4w==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.3.tgz",
"integrity": "sha512-6I9EzzsYOyyqDvDvxIK6Rv3EXB+fHKFj8ntHO8IXmeNJ6pkhOinuXVsW6Yo7TcDYoTj4D5I2MNFAW2rIkgassw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-hard-break": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.1.tgz",
"integrity": "sha512-H8NdmOuYehuMMRd0iWOeyN8ukAebqu6BWbDiZUKm+yx+1b7woadVofojLnGlreQT2II3cC4g8D9J7JfrcQtbyg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.3.tgz",
"integrity": "sha512-RCln6ARn16jvKTjhkcAD5KzYXYS0xRMc0/LrHeV8TKdCd4Yd0YYHe0PU4F9gAgAfPQn7Dgt4uTVJLN11ICl8sQ==",
"dev": true,
"requires": {}
},
"@tiptap/extension-heading": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.1.tgz",
"integrity": "sha512-JkwlePSyDraVrWisr5lE/yqK4FXm5YSiiQiIo/1W9vFLdMPsAbRCSZrBO4fV7gyppbFgQQikEWDgxYHshq/TOg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.3.tgz",
"integrity": "sha512-f0IEv5ms6aCzL80WeZ1qLCXTkRVwbpRr1qAETjg3gG4eoJN18+lZNOJYpyZy3P92C5KwF2T3Av00eFyVLIbb8Q==",
"dev": true,
"requires": {}
},
"@tiptap/extension-highlight": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.1.tgz",
"integrity": "sha512-k9rJnAGzjXWQSN3RqSVPQfsbtFAgZu2AnwSFH2VQ2Ea7oiAUOaD7Qcqrs0PLo/CxLEuWPAbULNngXUXZVseMBA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.3.tgz",
"integrity": "sha512-NrtibY8cZkIjZMQuHRrKd4php+plOvAoSo8g3uVFu275I/Ixt5HqJ53R4voCXs8W8BOBRs2HS2QX8Cjh79XhtA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-history": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.1.tgz",
"integrity": "sha512-nT4XbZUEyi+xSnwIeG+JqfHmWhF+amCwYsr7oYM/oa/BFDGaRHaNIrS3D+DpzjRrKguuLDxyhZkJEu1K2Rjsqw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.3.tgz",
"integrity": "sha512-00KHIcJ8kivn2ARI6NQYphv2LfllVCXViHGm0EhzDW6NQxCrriJKE3tKDcTFCu7LlC5doMpq9Z6KXdljc4oVeQ==",
"dev": true,
"requires": {}
},
"@tiptap/extension-horizontal-rule": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.0.1.tgz",
"integrity": "sha512-JNgu0ioOBhn3Djn8vd41y3DrqeEfWMLIWNRVO81OqQRvWZhpRwIUuDoRrzR45wxjymq9flc+iz7zuFW1kszpQA==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.0.3.tgz",
"integrity": "sha512-SZRUSh07b/M0kJHNKnfBwBMWrZBEm/E2LrK1NbluwT3DBhE+gvwiEdBxgB32zKHNxaDEXUJwUIPNC3JSbKvPUA==",
"dev": true,
"requires": {}
},
"@tiptap/extension-image": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.0.1.tgz",
"integrity": "sha512-FMXY0Y3nsDtAb1gNGidNhXnyJTZw6bOwYXg6jEV/K05HIz/svMQVkXLR04vSKczr7DWnlOmaJiqzge9Hc9WJ9Q==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.0.3.tgz",
"integrity": "sha512-hS9ZJwz0md07EHsC+o4NuuJkhCZsZn7TuRz/2CvRSj2fWFIz+40CyNAHf/2J0qNugG9ommXaemetsADeEZP9ag==",
"dev": true,
"requires": {}
},
"@tiptap/extension-italic": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.1.tgz",
"integrity": "sha512-lVIyKa3qjqD4rUKSzVghkS5xonJ8k+msvy5Sr5xd6duwEBOk7e0oKtXmdn7B1VBH64i/U3Cx0QRgDlEyukvV2Q==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.3.tgz",
"integrity": "sha512-cfS5sW0gu7qf4ihwnLtW/QMTBrBEXaT0sJl3RwkhjIBg/65ywJKE5Nz9ewnQHmDeT18hvMJJ1VIb4j4ze9jj9A==",
"dev": true,
"requires": {}
},
"@tiptap/extension-link": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.1.tgz",
"integrity": "sha512-C1m5UJEiRvuqTthGcSVGcg3+vMZLC1tELmxuA+YdHti3ZfZi1hAZc4dwWzOp6RcXdEljmHCCXOs6G5WQH1mReQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.3.tgz",
"integrity": "sha512-H72tXQ5rkVCkAhFaf08fbEU7EBUCK0uocsqOF+4th9sOlrhfgyJtc8Jv5EXPDpxNgG5jixSqWBo0zKXQm9s9eg==",
"dev": true,
"requires": {
"linkifyjs": "^4.1.0"
}
},
"@tiptap/extension-list-item": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.0.1.tgz",
"integrity": "sha512-WxLRcwhMGp12+hV1nLTRVxPJ3ZsjLzA3tyaYySBf6IQpmoikH8DbzvprwV30lHfYbZvcQWQJx3ECIcQdGbtPPg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.0.3.tgz",
"integrity": "sha512-p7cUsk0LpM1PfdAuFE8wYBNJ3gvA0UhNGR08Lo++rt9UaCeFLSN1SXRxg97c0oa5+Ski7SrCjIJ5Ynhz0viTjQ==",
"dev": true,
"requires": {}
},
"@tiptap/extension-ordered-list": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.0.1.tgz",
"integrity": "sha512-7Q3hqAy2TYZ1p3J0GtEDcUJrbC/NxzWNF1H4zKW3VQGQhffUDNgHBk4uCLLVyf1A3vm50JmEAwQFrrwoozFmqQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.0.3.tgz",
"integrity": "sha512-ZB3MpZh/GEy1zKgw7XDQF4FIwycZWNof1k9WbDZOI063Ch4qHZowhVttH2mTCELuyvTMM/o9a8CS7qMqQB48bw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-paragraph": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.1.tgz",
"integrity": "sha512-fVr5BZ7glyf/80vIO+GSQdeIcTvuXKGW9QvU0Mw8y1ek9Edd3MLWMxKdDurTswApnxIluvJFjmzp4XEogHHlhg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.3.tgz",
"integrity": "sha512-a+tKtmj4bU3GVCH1NE8VHWnhVexxX5boTVxsHIr4yGG3UoKo1c5AO7YMaeX2W5xB5iIA+BQqOPCDPEAx34dd2A==",
"dev": true,
"requires": {}
},
"@tiptap/extension-placeholder": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.1.tgz",
"integrity": "sha512-Jc0SrZw6HQ6Ddxr58SAAw5QPYh2pgjc1OSfrKn7+zBzcZDMFLWWgx9lTRwlR5L5VqTEuWqatJCfDrgjbnE4hLw==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.3.tgz",
"integrity": "sha512-Z42jo0termRAf0S0L8oxrts94IWX5waU4isS2CUw8xCUigYyCFslkhQXkWATO1qRbjNFLKN2C9qvCgGf4UeBrw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-strike": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.1.tgz",
"integrity": "sha512-gHNO47T5tbeFzhjJUn2Ob5RrqkG4joVyvUv3fFkSqpNngTIcqT5hJ7A3tDj2CKQGmUpU5SxM68sHMoIGpXdWIQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.3.tgz",
"integrity": "sha512-RO4/EYe2iPD6ifDHORT8fF6O9tfdtnzxLGwZIKZXnEgtweH+MgoqevEzXYdS+54Wraq4TUQGNcsYhe49pv7Rlw==",
"dev": true,
"requires": {}
},
"@tiptap/extension-text": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.1.tgz",
"integrity": "sha512-jwfpf71JZn04T4xcOMGJXCHTZoyvVtBusn6ZyRSQT4cVnDUgWcIbmIW5xccvGy8klBepBDS2ff+Nce3pxQnqug==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.3.tgz",
"integrity": "sha512-LvzChcTCcPSMNLUjZe/A9SHXWGDHtvk73fR7CBqAeNU0MxhBPEBI03GFQ6RzW3xX0CmDmjpZoDxFMB+hDEtW1A==",
"dev": true,
"requires": {}
},
"@tiptap/extension-underline": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.0.1.tgz",
"integrity": "sha512-y36CDKqXAOHKNNEZsku34okz/9j1VF3NtB0CyvbP/2xW4s5KXSj0ywTUZPqqK+fuN4YNUoENoykwsd0cnL/oNg==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.0.3.tgz",
"integrity": "sha512-oMYa7qib/5wJjpUp79GZEe+E/iyf1oZBsgiG26IspEtVTHZmpn3+Ktud7l43y/hpTeEzFTKOF1/uVbayHtSERg==",
"dev": true,
"requires": {}
},
"@tiptap/extension-youtube": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.0.1.tgz",
"integrity": "sha512-EiQI9e01f+ae8NVD1wNeoIb4XvB3hRKUEoCcnXfHQpDhq64jtsdQTXkOqHL/NDPMlQZftLNV4IjqWNUub1zPpQ==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.0.3.tgz",
"integrity": "sha512-iZsMr+88I3hvfbJNLmiPsz2/8ZGpMucyCxRbrZGg1D6wBw4oiUhRPHzGJ3APlECzpanCjyQNMHIk/gvSDDX3ig==",
"dev": true,
"requires": {}
},
@ -38917,9 +38917,9 @@
}
},
"solid-tiptap": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.5.1.tgz",
"integrity": "sha512-Ced19tF2iJZeZwk1Q5Hne+UaIy3dQxwBLNSfq+IkT3xffMlu2t2YXWSUWadRh85xgPw0hFwHiSEG2SPhhtV/0w==",
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.6.0.tgz",
"integrity": "sha512-79soXY4lSGkCdlfKalawGyvPE0kOvrKd7w9Zy3o3MY4dppti5Yd2RUVqyNPtYPpvCyqaLg+kofq81RRGl/Ql4Q==",
"dev": true,
"requires": {}
},

View File

@ -32,7 +32,7 @@
"@aws-sdk/abort-controller": "3.303.0",
"@aws-sdk/client-s3": "3.303.0",
"@aws-sdk/lib-storage": "3.303.0",
"@hocuspocus/provider": "2.0.1",
"@hocuspocus/provider": "2.0.3",
"formidable": "2.1.1",
"i18next": "22.4.13",
"mailgun.js": "8.2.1",
@ -56,35 +56,35 @@
"@solid-primitives/upload": "0.0.110",
"@solidjs/meta": "0.28.2",
"@thisbeyond/solid-select": "0.13.0",
"@tiptap/core": "2.0.1",
"@tiptap/extension-blockquote": "2.0.1",
"@tiptap/extension-bold": "2.0.1",
"@tiptap/extension-bubble-menu": "2.0.1",
"@tiptap/extension-bullet-list": "2.0.1",
"@tiptap/extension-character-count": "2.0.1",
"@tiptap/extension-collaboration": "2.0.1",
"@tiptap/extension-collaboration-cursor": "2.0.1",
"@tiptap/extension-document": "2.0.1",
"@tiptap/extension-dropcursor": "2.0.1",
"@tiptap/extension-floating-menu": "2.0.1",
"@tiptap/extension-focus": "2.0.1",
"@tiptap/extension-gapcursor": "2.0.1",
"@tiptap/extension-hard-break": "2.0.1",
"@tiptap/extension-heading": "2.0.1",
"@tiptap/extension-highlight": "2.0.1",
"@tiptap/extension-history": "2.0.1",
"@tiptap/extension-horizontal-rule": "2.0.1",
"@tiptap/extension-image": "2.0.1",
"@tiptap/extension-italic": "2.0.1",
"@tiptap/extension-link": "2.0.1",
"@tiptap/extension-list-item": "2.0.1",
"@tiptap/extension-ordered-list": "2.0.1",
"@tiptap/extension-paragraph": "2.0.1",
"@tiptap/extension-placeholder": "2.0.1",
"@tiptap/extension-strike": "2.0.1",
"@tiptap/extension-text": "2.0.1",
"@tiptap/extension-underline": "2.0.1",
"@tiptap/extension-youtube": "2.0.1",
"@tiptap/core": "2.0.3",
"@tiptap/extension-blockquote": "2.0.3",
"@tiptap/extension-bold": "2.0.3",
"@tiptap/extension-bubble-menu": "2.0.3",
"@tiptap/extension-bullet-list": "2.0.3",
"@tiptap/extension-character-count": "2.0.3",
"@tiptap/extension-collaboration": "2.0.3",
"@tiptap/extension-collaboration-cursor": "2.0.3",
"@tiptap/extension-document": "2.0.3",
"@tiptap/extension-dropcursor": "2.0.3",
"@tiptap/extension-floating-menu": "2.0.3",
"@tiptap/extension-focus": "2.0.3",
"@tiptap/extension-gapcursor": "2.0.3",
"@tiptap/extension-hard-break": "2.0.3",
"@tiptap/extension-heading": "2.0.3",
"@tiptap/extension-highlight": "2.0.3",
"@tiptap/extension-history": "2.0.3",
"@tiptap/extension-horizontal-rule": "2.0.3",
"@tiptap/extension-image": "2.0.3",
"@tiptap/extension-italic": "2.0.3",
"@tiptap/extension-link": "2.0.3",
"@tiptap/extension-list-item": "2.0.3",
"@tiptap/extension-ordered-list": "2.0.3",
"@tiptap/extension-paragraph": "2.0.3",
"@tiptap/extension-placeholder": "2.0.3",
"@tiptap/extension-strike": "2.0.3",
"@tiptap/extension-text": "2.0.3",
"@tiptap/extension-underline": "2.0.3",
"@tiptap/extension-youtube": "2.0.3",
"@types/express": "4.17.17",
"@types/node": "18.15.11",
"@types/uuid": "9.0.1",
@ -151,7 +151,7 @@
"rollup-plugin-visualizer": "5.9.0",
"sass": "1.60.0",
"solid-js": "1.7.0",
"solid-tiptap": "0.5.1",
"solid-tiptap": "0.6.0",
"solid-transition-group": "0.2.2",
"sort-package-json": "2.4.1",
"stylelint": "15.3.0",

View File

@ -1,4 +1,3 @@
import { createEffect } from 'solid-js'
import { createTiptapEditor, useEditorHTML } from 'solid-tiptap'
import { useLocalize } from '../../context/localize'
import { Blockquote } from '@tiptap/extension-blockquote'
@ -89,6 +88,7 @@ export const Editor = (props: EditorProps) => {
const editor = createTiptapEditor(() => ({
element: editorElRef.current,
content: props.initialContent,
//onTransaction: handleEditorTransaction,
extensions: [
Document,
Text,
@ -106,15 +106,6 @@ export const Editor = (props: EditorProps) => {
Heading.configure({
levels: [1, 2, 3]
}),
BubbleMenu.configure({
element: bubbleMenuRef.current
}),
FloatingMenu.configure({
tippyOptions: {
placement: 'left'
},
element: floatingMenuRef.current
}),
BulletList,
OrderedList,
ListItem,
@ -138,16 +129,19 @@ export const Editor = (props: EditorProps) => {
Highlight,
Image,
Youtube,
TrailingNode
TrailingNode,
BubbleMenu.configure({
element: bubbleMenuRef.current
}),
FloatingMenu.configure({
tippyOptions: {
placement: 'left'
},
element: floatingMenuRef.current
})
]
}))
const html = useEditorHTML(() => editor())
createEffect(() => {
props.onChange(html())
})
return (
<>
<div ref={(el) => (editorElRef.current = el)} />

View File

@ -3,7 +3,7 @@ import { clsx } from 'clsx'
import { router, useRouter } from '../../stores/router'
import { Icon } from '../_shared/Icon'
import { createSignal, Show } from 'solid-js'
import { createMemo, createSignal, Show } from 'solid-js'
import Notifications from './Notifications'
import { ProfilePopup } from './ProfilePopup'
import Userpic from '../Author/Userpic'
@ -40,12 +40,18 @@ export const HeaderAuth = (props: HeaderAuthProps) => {
toggleWarnings()
}
const isEditorPage = createMemo(() => page().route === 'create' || page().route === 'edit')
const showNotifications = createMemo(() => isAuthenticated() && !isEditorPage())
const showSaveButton = createMemo(() => isAuthenticated() && isEditorPage())
const showCreatePostButton = createMemo(() => isAuthenticated() && !isEditorPage())
return (
<ShowOnlyOnClient>
<Show when={isSessionLoaded()} keyed={true}>
<div class={clsx(styles.usernav, 'col')}>
<div class={clsx(styles.userControl, styles.userControl, 'col')}>
<Show when={page().route !== 'edit'}>
<Show when={showCreatePostButton()}>
<div class={clsx(styles.userControlItem, styles.userControlItemVerbose)}>
<a href={getPagePath(router, 'create')}>
<span class={styles.textLabel}>{t('Create post')}</span>
@ -54,7 +60,7 @@ export const HeaderAuth = (props: HeaderAuthProps) => {
</div>
</Show>
<Show when={isAuthenticated() && page().route !== 'create'}>
<Show when={showNotifications()}>
<div class={styles.userControlItem}>
<a href="#" onClick={handleBellIconClick}>
<div>
@ -64,7 +70,7 @@ export const HeaderAuth = (props: HeaderAuthProps) => {
</div>
</Show>
<Show when={isAuthenticated() && page().route === 'create'}>
<Show when={showSaveButton()}>
<div class={clsx(styles.userControlItem, styles.userControlItemVerbose)}>
<Button
value={
@ -128,7 +134,7 @@ export const HeaderAuth = (props: HeaderAuthProps) => {
<div class={styles.userControlItem}>
<button class={styles.button}>
<div classList={{ entered: page().path === `/${session().user?.slug}` }}>
<Userpic user={session().user as Author} class={styles.userpic} />
<Userpic user={session().user} class={styles.userpic} />
</div>
</button>
</div>

View File

@ -55,18 +55,14 @@ export const EditView = (props: EditViewProps) => {
const handleFormSubmit = async (e) => {
e.preventDefault()
// const newShout = await apiClient.updateArticle({
// article: {
// slug: form.slug,
// title: form.title,
// subtitle: form.subtitle,
// body: form.body,
// topics: form.selectedTopics.map((topic) => topic.slug),
// mainTopic: form.selectedTopics[0].slug
// }
// })
const article = await apiClient.updateArticle({
article: {
slug: props.shout.slug,
visibility: 'community'
}
})
// openPage(getPagePath(router, 'article', { slug: newShout.slug }))
openPage(router, 'article', { slug: article.slug })
}
const handleTitleInputChange = (e) => {
@ -92,6 +88,24 @@ export const EditView = (props: EditViewProps) => {
setIsEditorPanelOPened(!isEditorPanelOPened())
}
const handleSaveButtonClick = async (e) => {
e.preventDefault()
await apiClient.updateArticle({
slug: props.shout.slug,
article: {
slug: form.slug,
title: form.title,
subtitle: form.subtitle,
body: form.body,
topics: form.selectedTopics.map((topic) => topic.slug),
mainTopic: form.selectedTopics[0].slug
}
})
openPage(router, 'drafts')
}
return (
<>
<div class={styles.container}>
@ -222,8 +236,13 @@ export const EditView = (props: EditViewProps) => {
Проверьте ещё раз введённые данные, если всё верно, вы&nbsp;можете сохранить или
опубликовать ваш текст
</p>
<button class={clsx('button button--outline', styles.button)}>Сохранить</button>
<a href={getPagePath(router, 'edit', { shoutSlug: props.shout.slug })}>Назад</a>
<button
onClick={handleSaveButtonClick}
class={clsx('button button--outline', styles.button)}
>
Сохранить
</button>
<button type="submit" class={clsx('button button--submit', styles.button)}>
Опубликовать
</button>

View File

@ -0,0 +1,16 @@
import { gql } from '@urql/core'
export default gql`
mutation UpdateShoutMutation($slug: String!) {
publishShout(slug: $slug) {
error
shout {
id
slug
title
subtitle
body
}
}
}
`

View File

@ -1,29 +1,15 @@
import { gql } from '@urql/core'
export default gql`
mutation UpdateShoutMutation($shout: Shout!) {
updateShout(input: $shout) {
mutation UpdateShoutMutation($slug: String!, $shout: ShoutInput!) {
updateShout(slug: $slug, inp: $shout) {
error
shout {
_id: slug
id
slug
title
subtitle
image
body
topics {
# id
title
slug
image
}
authors {
id
name
slug
userpic
caption
}
}
}
}

View File

@ -0,0 +1,36 @@
import { gql } from '@urql/core'
export default gql`
query LoadDraftsQuery($options: LoadShoutsOptions) {
loadDrafts(options: $options) {
id
title
subtitle
slug
layout
cover
# community
mainTopic
topics {
# id
title
body
slug
stat {
_id: shouts
shouts
authors
followers
}
}
authors {
id
name
slug
userpic
}
createdAt
publishedAt
}
}
`

View File

@ -173,6 +173,7 @@ export type Mutation = {
follow: Result
getSession: AuthResult
markAsRead: Result
publishShout: Result
rateUser: Result
registerUser: AuthResult
sendLink: Result
@ -244,6 +245,10 @@ export type MutationMarkAsReadArgs = {
ids: Array<InputMaybe<Scalars['Int']>>
}
export type MutationPublishShoutArgs = {
inp: ShoutInput
}
export type MutationRateUserArgs = {
slug: Scalars['String']
value: Scalars['Int']
@ -287,6 +292,7 @@ export type MutationUpdateReactionArgs = {
export type MutationUpdateShoutArgs = {
inp: ShoutInput
slug: Scalars['String']
}
export type MutationUpdateTopicArgs = {
@ -325,6 +331,7 @@ export type Query = {
isEmailUsed: Scalars['Boolean']
loadAuthorsBy: Array<Maybe<Author>>
loadChats: Result
loadDrafts: Array<Maybe<Shout>>
loadMessagesBy: Result
loadReactionsBy: Array<Maybe<Reaction>>
loadRecipients: Result
@ -332,6 +339,7 @@ export type Query = {
loadShouts: Array<Maybe<Shout>>
markdownBody: Scalars['String']
myFeed?: Maybe<Array<Maybe<Shout>>>
publishShout: Array<Maybe<Shout>>
searchMessages: Result
searchRecipients: Result
signIn: AuthResult
@ -368,6 +376,10 @@ export type QueryLoadChatsArgs = {
offset?: InputMaybe<Scalars['Int']>
}
export type QueryLoadDraftsArgs = {
options?: InputMaybe<LoadShoutsOptions>
}
export type QueryLoadMessagesByArgs = {
by: MessagesBy
limit?: InputMaybe<Scalars['Int']>
@ -401,6 +413,10 @@ export type QueryMyFeedArgs = {
options?: InputMaybe<LoadShoutsOptions>
}
export type QueryPublishShoutArgs = {
slug: Scalars['String']
}
export type QuerySearchMessagesArgs = {
by: MessagesBy
limit?: InputMaybe<Scalars['Int']>

View File

@ -49,6 +49,7 @@ import shoutLoad from '../graphql/query/article-load'
import loadRecipients from '../graphql/query/chat-recipients'
import createMessage from '../graphql/mutation/create-chat-message'
import updateProfile from '../graphql/mutation/update-profile'
import updateArticle from '../graphql/mutation/article-update'
type ApiErrorCode =
| 'unknown'
@ -240,6 +241,13 @@ export const apiClient = {
console.debug('[createArticle]:', response.data)
return response.data.createShout.shout
},
updateArticle: async ({ slug, article }: { slug: string; article: ShoutInput }): Promise<Shout> => {
const response = await privateGraphQLClient
.mutation(updateArticle, { slug, shout: article })
.toPromise()
console.debug('[updateArticle]:', response.data)
return response.data.updateArticle.shout
},
createReaction: async (input: ReactionInput) => {
const response = await privateGraphQLClient.mutation(reactionCreate, { reaction: input }).toPromise()
console.debug('[createReaction]:', response)