diff --git a/biome.json b/biome.json index f248843e..6ac756c7 100644 --- a/biome.json +++ b/biome.json @@ -29,7 +29,7 @@ } }, "linter": { - "ignore": ["*.scss", "*.md", ".DS_Store", "*.svg"], + "ignore": ["*.scss", "*.md", ".DS_Store", "*.svg", "*.d.ts"], "enabled": true, "rules": { "all": true, diff --git a/package-lock.json b/package-lock.json index aa3ed7dd..fd2191b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,35 +46,35 @@ "@solid-primitives/upload": "0.0.110", "@solidjs/meta": "0.29.1", "@thisbeyond/solid-select": "0.14.0", - "@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", + "@tiptap/core": "2.2.2", + "@tiptap/extension-blockquote": "2.2.2", + "@tiptap/extension-bold": "2.2.2", + "@tiptap/extension-bubble-menu": "2.2.2", + "@tiptap/extension-bullet-list": "2.2.2", + "@tiptap/extension-character-count": "2.2.2", + "@tiptap/extension-collaboration": "2.2.2", + "@tiptap/extension-collaboration-cursor": "2.2.2", + "@tiptap/extension-document": "2.2.2", + "@tiptap/extension-dropcursor": "2.2.2", + "@tiptap/extension-floating-menu": "2.2.2", + "@tiptap/extension-focus": "2.2.2", + "@tiptap/extension-gapcursor": "2.2.2", + "@tiptap/extension-hard-break": "2.2.2", + "@tiptap/extension-heading": "2.2.2", + "@tiptap/extension-highlight": "2.2.2", + "@tiptap/extension-history": "2.2.2", + "@tiptap/extension-horizontal-rule": "2.2.2", + "@tiptap/extension-image": "2.2.2", + "@tiptap/extension-italic": "2.2.2", + "@tiptap/extension-link": "2.2.2", + "@tiptap/extension-list-item": "2.2.2", + "@tiptap/extension-ordered-list": "2.2.2", + "@tiptap/extension-paragraph": "2.2.2", + "@tiptap/extension-placeholder": "2.2.2", + "@tiptap/extension-strike": "2.2.2", + "@tiptap/extension-text": "2.2.2", + "@tiptap/extension-underline": "2.2.2", + "@tiptap/extension-youtube": "2.2.2", "@types/js-cookie": "3.0.6", "@types/node": "20.9.0", "@urql/core": "4.2.3", @@ -105,7 +105,7 @@ "sass": "1.69.5", "solid-js": "1.8.7", "solid-popper": "0.3.0", - "solid-tiptap": "0.6.0", + "solid-tiptap": "0.7.0", "solid-transition-group": "0.2.3", "sort-json": "2.0.1", "sort-package-json": "2.6.0", @@ -4892,9 +4892,9 @@ } }, "node_modules/@tiptap/core": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.0.3.tgz", - "integrity": "sha512-jLyVIWAdjjlNzrsRhSE2lVL/7N8228/1R1QtaVU85UlMIwHFAcdzhD8FeiKkqxpTnGpaDVaTy7VNEtEgaYdCyA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.2.2.tgz", + "integrity": "sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==", "dev": true, "funding": { "type": "github", @@ -4905,9 +4905,9 @@ } }, "node_modules/@tiptap/extension-blockquote": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.3.tgz", - "integrity": "sha512-rkUcFv2iL6f86DBBHoa4XdKNG2StvkJ7tfY9GoMpT46k3nxOaMTqak9/qZOo79TWxMLYtXzoxtKIkmWsbbcj4A==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.2.2.tgz", + "integrity": "sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==", "dev": true, "funding": { "type": "github", @@ -4918,9 +4918,9 @@ } }, "node_modules/@tiptap/extension-bold": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.3.tgz", - "integrity": "sha512-OGT62fMRovSSayjehumygFWTg2Qn0IDbqyMpigg/RUAsnoOI2yBZFVrdM2gk1StyoSay7gTn2MLw97IUfr7FXg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.2.2.tgz", + "integrity": "sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==", "dev": true, "funding": { "type": "github", @@ -4931,9 +4931,9 @@ } }, "node_modules/@tiptap/extension-bubble-menu": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.2.2.tgz", + "integrity": "sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==", "dev": true, "dependencies": { "tippy.js": "^6.3.7" @@ -4948,9 +4948,9 @@ } }, "node_modules/@tiptap/extension-bullet-list": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.2.2.tgz", + "integrity": "sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==", "dev": true, "funding": { "type": "github", @@ -4961,9 +4961,9 @@ } }, "node_modules/@tiptap/extension-character-count": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.0.3.tgz", - "integrity": "sha512-Ge4aUmgYOmQR/HLPkbQSFKEywyRu6IalHAQmH3laY6LB9qrmT90AoaiFnaVCDpphYFQ7RygnBXJMgjtJ3WpZmw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.2.2.tgz", + "integrity": "sha512-aObDoKXxVEi3sLaJFfaFLtKMH6e3zgKCkPhXOROUsrdapmvn/ubTuEXdVjiV9YZ7U6t57IYjlXV/jiVwDSgIjA==", "dev": true, "funding": { "type": "github", @@ -4975,9 +4975,9 @@ } }, "node_modules/@tiptap/extension-collaboration": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.0.3.tgz", - "integrity": "sha512-oA+5Dx+L1GfFrP2tUol8lfKNrLitYgHBaBJbAiqh/QPKVuUiEWgFS2W1oYaSGmwYjzdPCVJqXyQLzSJvEdnBWQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration/-/extension-collaboration-2.2.2.tgz", + "integrity": "sha512-tbElPmwAFIbsE/2hF9TaZJPjc37X8HKmbDES/KB9gdf6g/RL1MQiDOeO0j/8szbIUBiBHnh8jejl2Pd9D8lz+A==", "dev": true, "funding": { "type": "github", @@ -4986,13 +4986,13 @@ "peerDependencies": { "@tiptap/core": "^2.0.0", "@tiptap/pm": "^2.0.0", - "y-prosemirror": "1.0.20" + "y-prosemirror": "^1.2.1" } }, "node_modules/@tiptap/extension-collaboration-cursor": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-collaboration-cursor/-/extension-collaboration-cursor-2.2.2.tgz", + "integrity": "sha512-98h1N5oP3E0jGOFLUa2e1gmrgRxlvHh2qULVkvvQo5et9tjPlKu7eCatCbFNnR5+jRoQSN1t77GZ9GcfIETVVw==", "dev": true, "funding": { "type": "github", @@ -5000,13 +5000,13 @@ }, "peerDependencies": { "@tiptap/core": "^2.0.0", - "y-prosemirror": "1.0.20" + "y-prosemirror": "^1.2.1" } }, "node_modules/@tiptap/extension-document": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.2.2.tgz", + "integrity": "sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==", "dev": true, "funding": { "type": "github", @@ -5017,9 +5017,9 @@ } }, "node_modules/@tiptap/extension-dropcursor": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.3.tgz", - "integrity": "sha512-McthMrfusn6PjcaynJLheZJcXto8TaIW5iVitYh8qQrDXr31MALC/5GvWuiswmQ8bAXiWPwlLDYE/OJfwtggaw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.2.2.tgz", + "integrity": "sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==", "dev": true, "funding": { "type": "github", @@ -5031,9 +5031,9 @@ } }, "node_modules/@tiptap/extension-floating-menu": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.3.tgz", - "integrity": "sha512-zN1vRGRvyK3pO2aHRmQSOTpl4UJraXYwKYM009n6WviYKUNm0LPGo+VD4OAtdzUhPXyccnlsTv2p6LIqFty6Bg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.2.2.tgz", + "integrity": "sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==", "dev": true, "dependencies": { "tippy.js": "^6.3.7" @@ -5048,9 +5048,9 @@ } }, "node_modules/@tiptap/extension-focus": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-focus/-/extension-focus-2.2.2.tgz", + "integrity": "sha512-AAkFu4bdqOU/fnYs6sI2UfNxBEwkWAFfqUlwe6UYj5a0tQCcAXdP64JECEVRQPH91IY562jvs6MNHKPZpnfLQQ==", "dev": true, "funding": { "type": "github", @@ -5062,9 +5062,9 @@ } }, "node_modules/@tiptap/extension-gapcursor": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.3.tgz", - "integrity": "sha512-6I9EzzsYOyyqDvDvxIK6Rv3EXB+fHKFj8ntHO8IXmeNJ6pkhOinuXVsW6Yo7TcDYoTj4D5I2MNFAW2rIkgassw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.2.2.tgz", + "integrity": "sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==", "dev": true, "funding": { "type": "github", @@ -5076,9 +5076,9 @@ } }, "node_modules/@tiptap/extension-hard-break": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.3.tgz", - "integrity": "sha512-RCln6ARn16jvKTjhkcAD5KzYXYS0xRMc0/LrHeV8TKdCd4Yd0YYHe0PU4F9gAgAfPQn7Dgt4uTVJLN11ICl8sQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.2.2.tgz", + "integrity": "sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==", "dev": true, "funding": { "type": "github", @@ -5089,9 +5089,9 @@ } }, "node_modules/@tiptap/extension-heading": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.3.tgz", - "integrity": "sha512-f0IEv5ms6aCzL80WeZ1qLCXTkRVwbpRr1qAETjg3gG4eoJN18+lZNOJYpyZy3P92C5KwF2T3Av00eFyVLIbb8Q==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.2.2.tgz", + "integrity": "sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==", "dev": true, "funding": { "type": "github", @@ -5102,9 +5102,9 @@ } }, "node_modules/@tiptap/extension-highlight": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.3.tgz", - "integrity": "sha512-NrtibY8cZkIjZMQuHRrKd4php+plOvAoSo8g3uVFu275I/Ixt5HqJ53R4voCXs8W8BOBRs2HS2QX8Cjh79XhtA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.2.2.tgz", + "integrity": "sha512-tNDx0u54H/cnBVfGflq7a9WHzPTOdDgz0BzSj3ujHT8xAZG+yQWhm8bnq0BZc+7xODbGIQ22ZEzypIC7KNUzZQ==", "dev": true, "funding": { "type": "github", @@ -5115,9 +5115,9 @@ } }, "node_modules/@tiptap/extension-history": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.3.tgz", - "integrity": "sha512-00KHIcJ8kivn2ARI6NQYphv2LfllVCXViHGm0EhzDW6NQxCrriJKE3tKDcTFCu7LlC5doMpq9Z6KXdljc4oVeQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.2.2.tgz", + "integrity": "sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==", "dev": true, "funding": { "type": "github", @@ -5129,9 +5129,9 @@ } }, "node_modules/@tiptap/extension-horizontal-rule": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.2.2.tgz", + "integrity": "sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==", "dev": true, "funding": { "type": "github", @@ -5143,9 +5143,9 @@ } }, "node_modules/@tiptap/extension-image": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.2.2.tgz", + "integrity": "sha512-fqZ2VB3K/c/Mi/2QTfav6CmTe33yGRkeQEivllSCCxgDD+kNYGto/P9maHSIJSG3RZWZHYfIPHmUJKfUlJRTXQ==", "dev": true, "funding": { "type": "github", @@ -5156,9 +5156,9 @@ } }, "node_modules/@tiptap/extension-italic": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.3.tgz", - "integrity": "sha512-cfS5sW0gu7qf4ihwnLtW/QMTBrBEXaT0sJl3RwkhjIBg/65ywJKE5Nz9ewnQHmDeT18hvMJJ1VIb4j4ze9jj9A==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.2.2.tgz", + "integrity": "sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==", "dev": true, "funding": { "type": "github", @@ -5169,9 +5169,9 @@ } }, "node_modules/@tiptap/extension-link": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.3.tgz", - "integrity": "sha512-H72tXQ5rkVCkAhFaf08fbEU7EBUCK0uocsqOF+4th9sOlrhfgyJtc8Jv5EXPDpxNgG5jixSqWBo0zKXQm9s9eg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.2.2.tgz", + "integrity": "sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==", "dev": true, "dependencies": { "linkifyjs": "^4.1.0" @@ -5186,9 +5186,9 @@ } }, "node_modules/@tiptap/extension-list-item": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.2.2.tgz", + "integrity": "sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==", "dev": true, "funding": { "type": "github", @@ -5199,9 +5199,9 @@ } }, "node_modules/@tiptap/extension-ordered-list": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.2.2.tgz", + "integrity": "sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==", "dev": true, "funding": { "type": "github", @@ -5212,9 +5212,9 @@ } }, "node_modules/@tiptap/extension-paragraph": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.3.tgz", - "integrity": "sha512-a+tKtmj4bU3GVCH1NE8VHWnhVexxX5boTVxsHIr4yGG3UoKo1c5AO7YMaeX2W5xB5iIA+BQqOPCDPEAx34dd2A==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.2.2.tgz", + "integrity": "sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==", "dev": true, "funding": { "type": "github", @@ -5225,9 +5225,9 @@ } }, "node_modules/@tiptap/extension-placeholder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.3.tgz", - "integrity": "sha512-Z42jo0termRAf0S0L8oxrts94IWX5waU4isS2CUw8xCUigYyCFslkhQXkWATO1qRbjNFLKN2C9qvCgGf4UeBrw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.2.2.tgz", + "integrity": "sha512-dPN15nVu+HlONJSCiKjEl9n5/61CltTLSefhyRVQJeE7lmtMUGrsErUdOYMxGskehDQWIQW1VM0OiF63ln/3sA==", "dev": true, "funding": { "type": "github", @@ -5239,9 +5239,9 @@ } }, "node_modules/@tiptap/extension-strike": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.3.tgz", - "integrity": "sha512-RO4/EYe2iPD6ifDHORT8fF6O9tfdtnzxLGwZIKZXnEgtweH+MgoqevEzXYdS+54Wraq4TUQGNcsYhe49pv7Rlw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.2.2.tgz", + "integrity": "sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==", "dev": true, "funding": { "type": "github", @@ -5252,9 +5252,9 @@ } }, "node_modules/@tiptap/extension-text": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.3.tgz", - "integrity": "sha512-LvzChcTCcPSMNLUjZe/A9SHXWGDHtvk73fR7CBqAeNU0MxhBPEBI03GFQ6RzW3xX0CmDmjpZoDxFMB+hDEtW1A==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.2.2.tgz", + "integrity": "sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==", "dev": true, "funding": { "type": "github", @@ -5265,9 +5265,9 @@ } }, "node_modules/@tiptap/extension-underline": { - "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==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.2.2.tgz", + "integrity": "sha512-sCgbFbBU1fMWKCmDjZ6Am257kXM6ZjCV24AwbNusweieQnnD3aTXC7/iZg101sa2VshLsXozm8t2QDTyafnL+Q==", "dev": true, "funding": { "type": "github", @@ -5278,9 +5278,9 @@ } }, "node_modules/@tiptap/extension-youtube": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.0.3.tgz", - "integrity": "sha512-iZsMr+88I3hvfbJNLmiPsz2/8ZGpMucyCxRbrZGg1D6wBw4oiUhRPHzGJ3APlECzpanCjyQNMHIk/gvSDDX3ig==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@tiptap/extension-youtube/-/extension-youtube-2.2.2.tgz", + "integrity": "sha512-kBLIRxEAfQbd/YmMuVeeqJLXb9p1pviAtPFmlufCt3tXeBc6Lqz9iOscdqOHOFSiNdzvFnN7016kKEpOwLftSw==", "dev": true, "funding": { "type": "github", @@ -14097,9 +14097,9 @@ } }, "node_modules/solid-tiptap": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.6.0.tgz", - "integrity": "sha512-79soXY4lSGkCdlfKalawGyvPE0kOvrKd7w9Zy3o3MY4dppti5Yd2RUVqyNPtYPpvCyqaLg+kofq81RRGl/Ql4Q==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/solid-tiptap/-/solid-tiptap-0.7.0.tgz", + "integrity": "sha512-EIOopM1gcV6Pjp6R5l5iQy5RqFodDpHzQDRdDJAqffi3XqMSu6lzd7dcDtb1DPbZtvl1uNTXRxmpUGGvB8KD0A==", "dev": true, "engines": { "node": ">=10" diff --git a/package.json b/package.json index a1d46279..ef5f2a90 100644 --- a/package.json +++ b/package.json @@ -68,35 +68,35 @@ "@solid-primitives/upload": "0.0.110", "@solidjs/meta": "0.29.1", "@thisbeyond/solid-select": "0.14.0", - "@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", + "@tiptap/core": "2.2.2", + "@tiptap/extension-blockquote": "2.2.2", + "@tiptap/extension-bold": "2.2.2", + "@tiptap/extension-bubble-menu": "2.2.2", + "@tiptap/extension-bullet-list": "2.2.2", + "@tiptap/extension-character-count": "2.2.2", + "@tiptap/extension-collaboration": "2.2.2", + "@tiptap/extension-collaboration-cursor": "2.2.2", + "@tiptap/extension-document": "2.2.2", + "@tiptap/extension-dropcursor": "2.2.2", + "@tiptap/extension-floating-menu": "2.2.2", + "@tiptap/extension-focus": "2.2.2", + "@tiptap/extension-gapcursor": "2.2.2", + "@tiptap/extension-hard-break": "2.2.2", + "@tiptap/extension-heading": "2.2.2", + "@tiptap/extension-highlight": "2.2.2", + "@tiptap/extension-history": "2.2.2", + "@tiptap/extension-horizontal-rule": "2.2.2", + "@tiptap/extension-image": "2.2.2", + "@tiptap/extension-italic": "2.2.2", + "@tiptap/extension-link": "2.2.2", + "@tiptap/extension-list-item": "2.2.2", + "@tiptap/extension-ordered-list": "2.2.2", + "@tiptap/extension-paragraph": "2.2.2", + "@tiptap/extension-placeholder": "2.2.2", + "@tiptap/extension-strike": "2.2.2", + "@tiptap/extension-text": "2.2.2", + "@tiptap/extension-underline": "2.2.2", + "@tiptap/extension-youtube": "2.2.2", "@types/js-cookie": "3.0.6", "@types/node": "20.9.0", "@urql/core": "4.2.3", @@ -127,7 +127,7 @@ "sass": "1.69.5", "solid-js": "1.8.7", "solid-popper": "0.3.0", - "solid-tiptap": "0.6.0", + "solid-tiptap": "0.7.0", "solid-transition-group": "0.2.3", "sort-json": "2.0.1", "sort-package-json": "2.6.0", diff --git a/src/components/Author/AuthorBadge/AuthorBadge.tsx b/src/components/Author/AuthorBadge/AuthorBadge.tsx index 250b5e07..752c6eaa 100644 --- a/src/components/Author/AuthorBadge/AuthorBadge.tsx +++ b/src/components/Author/AuthorBadge/AuthorBadge.tsx @@ -16,13 +16,10 @@ import { ConditionalWrapper } from '../../_shared/ConditionalWrapper' import { Icon } from '../../_shared/Icon' import { Userpic } from '../Userpic' +import { FollowedInfo } from '../../../pages/types' import stylesButton from '../../_shared/Button/Button.module.scss' import styles from './AuthorBadge.module.scss' -type FollowedInfo = { - value?: boolean - loaded?: boolean -} type Props = { author: Author minimizeSubscribeButton?: boolean diff --git a/src/components/Author/AuthorCard/AuthorCard.tsx b/src/components/Author/AuthorCard/AuthorCard.tsx index e686cb42..17f25a17 100644 --- a/src/components/Author/AuthorCard/AuthorCard.tsx +++ b/src/components/Author/AuthorCard/AuthorCard.tsx @@ -308,7 +308,13 @@ export const AuthorCard = (props: Props) => { author={subscription} /> ) : ( - + ) } diff --git a/src/components/Editor/Editor.tsx b/src/components/Editor/Editor.tsx index 27bb67bd..7472fe9e 100644 --- a/src/components/Editor/Editor.tsx +++ b/src/components/Editor/Editor.tsx @@ -75,7 +75,7 @@ const providers: Record = {} export const Editor = (props: Props) => { const { t } = useLocalize() - const { author } = useSession() + const { author, session } = useSession() const [isCommonMarkup, setIsCommonMarkup] = createSignal(false) const [shouldShowTextBubbleMenu, setShouldShowTextBubbleMenu] = createSignal(false) @@ -92,7 +92,8 @@ export const Editor = (props: Props) => { providers[docName] = new HocuspocusProvider({ url: 'wss://hocuspocus.discours.io', name: docName, - document: yDocs[docName] + document: yDocs[docName], + token: session()?.access_token || '', }) } diff --git a/src/components/Topic/TopicBadge/TopicBadge.module.scss b/src/components/Topic/TopicBadge/TopicBadge.module.scss index e5166ef1..3f9d8436 100644 --- a/src/components/Topic/TopicBadge/TopicBadge.module.scss +++ b/src/components/Topic/TopicBadge/TopicBadge.module.scss @@ -1,10 +1,13 @@ .TopicBadge { - display: flex; - flex-direction: row; - align-items: flex-start; margin-bottom: 2rem; gap: 1rem; + .content { + align-items: flex-start; + display: flex; + flex-direction: row; + margin-bottom: .8rem; + } .basicInfo { display: flex; flex-flow: row nowrap; @@ -78,3 +81,34 @@ width: 9em; } } + +.stats { + @include font-size(1.5rem); + + color: var(--secondary-color); + display: flex; + margin: 0 0 1em; + + @include media-breakpoint-down(md) { + flex-wrap: wrap; + } + + @include media-breakpoint-down(sm) { + margin-top: 0.5em; + } + + .statsItem { + @include font-size(1.4rem); + + margin-right: 1.6rem; + white-space: nowrap; + + &:last-child { + margin-right: 0; + } + + &.followers { + word-break: keep-all; + } + } +} diff --git a/src/components/Topic/TopicBadge/TopicBadge.tsx b/src/components/Topic/TopicBadge/TopicBadge.tsx index 47347c4e..a4ccd348 100644 --- a/src/components/Topic/TopicBadge/TopicBadge.tsx +++ b/src/components/Topic/TopicBadge/TopicBadge.tsx @@ -1,5 +1,5 @@ import { clsx } from 'clsx' -import { Show, createEffect, createSignal } from 'solid-js' +import { Show, createEffect, createSignal, on } from 'solid-js' import { useFollowing } from '../../../context/following' import { useLocalize } from '../../../context/localize' @@ -11,11 +11,14 @@ import { getImageUrl } from '../../../utils/getImageUrl' import { Button } from '../../_shared/Button' import { CheckButton } from '../../_shared/CheckButton' +import { FollowedInfo } from '../../../pages/types' import styles from './TopicBadge.module.scss' type Props = { topic: Topic minimizeSubscribeButton?: boolean + isFollowed?: FollowedInfo + showStat?: boolean } export const TopicBadge = (props: Props) => { @@ -24,12 +27,12 @@ export const TopicBadge = (props: Props) => { const [isMobileView, setIsMobileView] = createSignal(false) const { requireAuthentication } = useSession() const { setFollowing, loading: subLoading } = useFollowing() - const [followed, setFollowed] = createSignal() + const [isFollowed, setIsFollowed] = createSignal() const handleFollowClick = () => { - const value = !followed() + const value = !isFollowed() requireAuthentication(() => { - setFollowed(value) + setIsFollowed(value) setFollowing(FollowingEntity.Topic, props.topic.slug, value) }, 'subscribe') } @@ -38,67 +41,85 @@ export const TopicBadge = (props: Props) => { setIsMobileView(!mediaMatches.sm) }) + createEffect( + on( + () => props.isFollowed, + () => { + setIsFollowed(props.isFollowed.value) + }, + ), + ) + const title = () => lang() === 'en' ? capitalize(props.topic.slug.replaceAll('-', ' ')) : props.topic.title return (
- + +
- {t('PublicationsWithCount', { count: props.topic.stat.shouts ?? 0 })} -
+ } > -
{props.topic.body}
- - -
- -
- - } - > - + } + >
+ +
+ {t('shoutsWithCount', { count: props.topic?.stat?.shouts })} + {t('authorsWithCount', { count: props.topic?.stat?.authors })} + + {t('followersWithCount', { count: props.topic?.stat?.followers })} +
) diff --git a/src/components/Views/AllTopics.module.scss b/src/components/Views/AllTopics/AllTopics.module.scss similarity index 67% rename from src/components/Views/AllTopics.module.scss rename to src/components/Views/AllTopics/AllTopics.module.scss index 1793d81b..cb4bb1d5 100644 --- a/src/components/Views/AllTopics.module.scss +++ b/src/components/Views/AllTopics/AllTopics.module.scss @@ -32,45 +32,6 @@ } } -.stats { - @include font-size(1.7rem); - - color: #9fa1a7; - display: flex; - margin: 0 0 1em; - - @include media-breakpoint-down(md) { - flex-wrap: wrap; - } - - @include media-breakpoint-down(sm) { - margin-top: 0.5em; - } - - .statsItem { - @include font-size(1.5rem); - - margin-right: 1.6rem; - white-space: nowrap; - - &:last-child { - margin-right: 0; - } - - &.compact { - font-size: small; - } - - &.followers { - word-break: keep-all; - } - - &.button { - float: right; - } - } -} - .loadMoreContainer { margin-top: 48px; text-align: center; diff --git a/src/components/Views/AllTopics.tsx b/src/components/Views/AllTopics/AllTopics.tsx similarity index 80% rename from src/components/Views/AllTopics.tsx rename to src/components/Views/AllTopics/AllTopics.tsx index 1e55fc7a..f56dca03 100644 --- a/src/components/Views/AllTopics.tsx +++ b/src/components/Views/AllTopics/AllTopics.tsx @@ -1,21 +1,22 @@ -import type { Topic } from '../../graphql/schema/core.gen' +import type { Topic } from '../../../graphql/schema/core.gen' import { Meta } from '@solidjs/meta' import { clsx } from 'clsx' import { For, Show, createEffect, createMemo, createSignal } from 'solid-js' -import { useFollowing } from '../../context/following' -import { useLocalize } from '../../context/localize' -import { useRouter } from '../../stores/router' -import { setTopicsSort, useTopicsStore } from '../../stores/zine/topics' -import { capitalize } from '../../utils/capitalize' -import { dummyFilter } from '../../utils/dummyFilter' -import { getImageUrl } from '../../utils/getImageUrl' -import { scrollHandler } from '../../utils/scroll' -import { TopicCard } from '../Topic/Card' -import { Loading } from '../_shared/Loading' -import { SearchField } from '../_shared/SearchField' +import { useFollowing } from '../../../context/following' +import { useLocalize } from '../../../context/localize' +import { useRouter } from '../../../stores/router' +import { setTopicsSort, useTopicsStore } from '../../../stores/zine/topics' +import { capitalize } from '../../../utils/capitalize' +import { dummyFilter } from '../../../utils/dummyFilter' +import { getImageUrl } from '../../../utils/getImageUrl' +import { scrollHandler } from '../../../utils/scroll' +import { TopicCard } from '../../Topic/Card' +import { Loading } from '../../_shared/Loading' +import { SearchField } from '../../_shared/SearchField' +import { TopicBadge } from '../../Topic/TopicBadge' import styles from './AllTopics.module.scss' type AllTopicsPageSearchParams = { @@ -29,7 +30,7 @@ type Props = { const PAGE_SIZE = 20 -export const AllTopicsView = (props: Props) => { +export const AllTopics = (props: Props) => { const { t, lang } = useLocalize() const { searchParams, changeSearchParams } = useRouter() const [limit, setLimit] = createSignal(PAGE_SIZE) @@ -41,8 +42,6 @@ export const AllTopicsView = (props: Props) => { sortBy: searchParams().by || 'shouts' }) - const { subscriptions } = useFollowing() - createEffect(() => { if (!searchParams().by) { changeSearchParams({ @@ -76,7 +75,7 @@ export const AllTopicsView = (props: Props) => { return keys }) - const subscribed = (topicSlug: string) => subscriptions.topics.some((topic) => topic.slug === topicSlug) + const { isOwnerSubscribed } = useFollowing() const showMore = () => setLimit((oldLimit) => oldLimit + PAGE_SIZE) const [searchQuery, setSearchQuery] = createSignal('') @@ -186,28 +185,18 @@ export const AllTopicsView = (props: Props) => {
-
+
{(topic) => ( <> - 0, + value: isOwnerSubscribed(topic.slug), + }} + showStat={true} /> -
- - {t('shoutsWithCount', { count: topic.stat.shouts })} - - - {t('authorsWithCount', { count: topic.stat.authors })} - - - {t('followersWithCount', { count: topic.stat.followers })} - -
)}
diff --git a/src/components/Views/AllTopics/index.ts b/src/components/Views/AllTopics/index.ts new file mode 100644 index 00000000..8e3c8f84 --- /dev/null +++ b/src/components/Views/AllTopics/index.ts @@ -0,0 +1 @@ +export { AllTopics } from './AllTopics' diff --git a/src/components/Views/Author/Author.tsx b/src/components/Views/Author/Author.tsx index ae514e4a..a023de3c 100644 --- a/src/components/Views/Author/Author.tsx +++ b/src/components/Views/Author/Author.tsx @@ -128,7 +128,6 @@ export const AuthorView = (props: Props) => { const data = await apiClient.getReactionsBy({ by: { comment: false, created_by: commenter.id } }) - console.debug('[components.Author] fetched comments', data) setCommented(data) } diff --git a/src/components/Views/StaticPage.tsx b/src/components/Views/StaticPage.tsx index 26886285..4b7bd556 100644 --- a/src/components/Views/StaticPage.tsx +++ b/src/components/Views/StaticPage.tsx @@ -12,17 +12,15 @@ export const StaticPage = (props: Props) => { return ( -
+
(articleBodyElement.current = el)} + >
-
(articleBodyElement.current = el)} - > - {props.children} -
+
{props.children}
-
+
{ />
-
+
) } diff --git a/src/context/following.tsx b/src/context/following.tsx index f2f9de8b..64236881 100644 --- a/src/context/following.tsx +++ b/src/context/following.tsx @@ -20,7 +20,7 @@ interface FollowingContextType { loadSubscriptions: () => void follow: (what: FollowingEntity, slug: string) => Promise unfollow: (what: FollowingEntity, slug: string) => Promise - isOwnerSubscribed: (userId: number) => boolean + isOwnerSubscribed: (id: number | string) => boolean } const FollowingContext = createContext() @@ -109,9 +109,11 @@ export const FollowingProvider = (props: { children: JSX.Element }) => { } } - const isOwnerSubscribed = (userId: number) => { - if (!author()) return - return !!subscriptions?.authors?.some((authorEntity) => authorEntity.id === userId) + const isOwnerSubscribed = (id?: number | string) => { + if (!author() || !subscriptions) return + const isAuthorSubscribed = subscriptions.authors?.some((authorEntity) => authorEntity.id === id) + const isTopicSubscribed = subscriptions.topics?.some((topicEntity) => topicEntity.slug === id) + return !!isAuthorSubscribed || !!isTopicSubscribed } const value: FollowingContextType = { diff --git a/src/pages/about/discussionRules.page.tsx b/src/pages/about/discussionRules.page.tsx index 0be0fce9..38a0e19d 100644 --- a/src/pages/about/discussionRules.page.tsx +++ b/src/pages/about/discussionRules.page.tsx @@ -15,115 +15,113 @@ export const DiscussionRulesPage = () => { return ( -
- - - - - - - - - - + + + + + + + + + + -

{ogTitle}

+

{ogTitle}

-

- Открытая редакция существует благодаря дружному сообществу авторов и читателей — - вдумчивых и сознательных людей, приверженных ценностям гуманизма, демократии и прав - человека. Мы очень ценим атмосферу осмысленного общения, которая здесь сложилась. Чтобы - сохранить ее такой же уютной и творческой, мы составили правила общения - в сообществе, руководствуясь которыми каждый мог бы соучаствовать в плодотворных - дискуссиях, не задевая других. Ключевой принцип этих правил предельно прост — - уважайте ближних, постарайтесь не нарушать законы Российской Федерации без крайней - на то необходимости и помните, что в дискуссиях чутких и здравомыслящих - людей рождается истина. -

+

+ Открытая редакция существует благодаря дружному сообществу авторов и читателей — + вдумчивых и сознательных людей, приверженных ценностям гуманизма, демократии и прав + человека. Мы очень ценим атмосферу осмысленного общения, которая здесь сложилась. Чтобы + сохранить ее такой же уютной и творческой, мы составили правила общения + в сообществе, руководствуясь которыми каждый мог бы соучаствовать в плодотворных + дискуссиях, не задевая других. Ключевой принцип этих правил предельно прост — + уважайте ближних, постарайтесь не нарушать законы Российской Федерации без крайней + на то необходимости и помните, что в дискуссиях чутких и здравомыслящих + людей рождается истина. +

-

За что можно получить дырку в карме и выиграть бан в сообществе

-
    -
  1. -

    - Оскорбления, личные нападки, травля и угрозы. В любом виде. Конкретного человека или - социальной группы — не суть. Агрессия, переход на личности - и токсичность едва ли способствуют плодотворному общению. -

    -
  2. +

    За что можно получить дырку в карме и выиграть бан в сообществе

    +
      +
    1. +

      + Оскорбления, личные нападки, травля и угрозы. В любом виде. Конкретного человека или + социальной группы — не суть. Агрессия, переход на личности + и токсичность едва ли способствуют плодотворному общению. +

      +
    2. -
    3. -

      - Шовинизм, расизм, сексизм, гомофобия, пропаганда ненависти, педофилии, суицида, - распространение детской порнографии и другого человеконенавистнического контента. -

      -
    4. +
    5. +

      + Шовинизм, расизм, сексизм, гомофобия, пропаганда ненависти, педофилии, суицида, распространение + детской порнографии и другого человеконенавистнического контента. +

      +
    6. -
    7. -

      - Спам, реклама, фейкньюз, ссылки на пропагандистские СМИ, вбросы дезинформации, специально - уводящий от темы флуд, провокации, разжигание конфликтов, намеренный срыв дискуссий. -

      -
    8. +
    9. +

      + Спам, реклама, фейкньюз, ссылки на пропагандистские СМИ, вбросы дезинформации, специально + уводящий от темы флуд, провокации, разжигание конфликтов, намеренный срыв дискуссий. +

      +
    10. -
    11. -

      - Неаргументированная критика и комментарии вроде «отстой», «зачем - я это увидел/а», «не читал, но осуждаю», «либераху - порвало», «лол», «скатились», «первый нах» - и тому подобные. Односложные реплики не подразумевают возможность обогащающего - диалога, не продуктивны и никак не помогают авторам делать материалы лучше, - а читателям — разобраться. -

      -
    12. -
    +
  3. +

    + Неаргументированная критика и комментарии вроде «отстой», «зачем + я это увидел/а», «не читал, но осуждаю», «либераху + порвало», «лол», «скатились», «первый нах» и тому + подобные. Односложные реплики не подразумевают возможность обогащающего диалога, + не продуктивны и никак не помогают авторам делать материалы лучше, + а читателям — разобраться. +

    +
  4. +
-

За что можно получить лучи добра и благодарности в сообществе

-
    -
  1. -

    - Вежливость и конструктивность. Мы выступаем за конструктивный - диалог, аргументированные комментарии и доброжелательное отношение друг к другу. - Задавайте содержательные вопросы, пишите развернутые комментарии, подкрепляйте - их аргументами, чтобы диалог был полезен всем участникам, помогая глубже понять тему - и разобраться в вопросе. И, пожалуйста, уважайте собеседника, даже если он вам - лично не импонирует: только так получаются продуктивные дискуссии. -

    -
  2. +

    За что можно получить лучи добра и благодарности в сообществе

    +
      +
    1. +

      + Вежливость и конструктивность. Мы выступаем за конструктивный + диалог, аргументированные комментарии и доброжелательное отношение друг к другу. + Задавайте содержательные вопросы, пишите развернутые комментарии, подкрепляйте + их аргументами, чтобы диалог был полезен всем участникам, помогая глубже понять тему + и разобраться в вопросе. И, пожалуйста, уважайте собеседника, даже если он вам + лично не импонирует: только так получаются продуктивные дискуссии. +

      +
    2. -
    3. -

      - Обмен знаниями и историями. Осмысленные высказывания по теме поста, - оригинальные рассуждения, рассказы о личном опыте и проектах, обмен профессиональной - экспертизой, наблюдения и реальные истории из жизни — чем больше - мы делимся друг с другом знаниями, тем интереснее и плодотворнее становится - наше общение. Помните, что каждый вдумчивый ответ повышает качество дискуссий - в сообществе и делает чтение самиздата ещё интереснее. -

      -
    4. +
    5. +

      + Обмен знаниями и историями. Осмысленные высказывания по теме поста, + оригинальные рассуждения, рассказы о личном опыте и проектах, обмен профессиональной + экспертизой, наблюдения и реальные истории из жизни — чем больше + мы делимся друг с другом знаниями, тем интереснее и плодотворнее становится наше + общение. Помните, что каждый вдумчивый ответ повышает качество дискуссий в сообществе + и делает чтение самиздата ещё интереснее. +

      +
    6. -
    7. -

      - Чувство юмора и добродушие. Остроумие и дружелюбие не только - направляют дискуссии в продуктивное русло, но и улучшают настроение. - Не вредите негативом, которого в интернете и без нас хватает, - и не травите на корню классные инициативы — всё великое начинается - с малого. Мы за поддерживающую и вдохновляющую атмосферу - в сообществе. Надеемся, вы тоже. -

      -
    8. +
    9. +

      + Чувство юмора и добродушие. Остроумие и дружелюбие не только + направляют дискуссии в продуктивное русло, но и улучшают настроение. + Не вредите негативом, которого в интернете и без нас хватает, + и не травите на корню классные инициативы — всё великое начинается + с малого. Мы за поддерживающую и вдохновляющую атмосферу в сообществе. + Надеемся, вы тоже. +

      +
    10. -
    11. -

      - Благодарность и поддержка. Если публикация вам зашла, - не стесняйтесь ставить лайки, делиться понравившимися материалами, благодарить авторов, - читателей, художников и редакторов в комментариях. Цените и поддерживайте - классные проекты, сильные тексты, новое искусство, осмысленные комментарии и вклад других - в самиздат — сотрудничество делает нас сильнее и усиливает звучание идей - и смыслов, которые помогают лучше понимать мир. -

      -
    12. -
    -
+
  • +

    + Благодарность и поддержка. Если публикация вам зашла, не стесняйтесь + ставить лайки, делиться понравившимися материалами, благодарить авторов, читателей, художников + и редакторов в комментариях. Цените и поддерживайте классные проекты, сильные + тексты, новое искусство, осмысленные комментарии и вклад других + в самиздат — сотрудничество делает нас сильнее и усиливает звучание идей + и смыслов, которые помогают лучше понимать мир. +

    +
  • +
    ) } diff --git a/src/pages/about/dogma.page.tsx b/src/pages/about/dogma.page.tsx index 82250fb9..8fa5130b 100644 --- a/src/pages/about/dogma.page.tsx +++ b/src/pages/about/dogma.page.tsx @@ -23,47 +23,49 @@ export const DogmaPage = () => { -
    -

    Редакционные принципы

    -

    - Дискурс — журнал с открытой горизонтальной редакцией. Содержание журнала определяется прямым - голосованием его авторов. Мы нередко занимаем различные позиции по разным проблемам, но - придерживаемся общих профессиональных принципов: -

    -
      -
    1. - На первое место ставим факты. Наша задача — не судить, а наблюдать и непредвзято - фиксировать происходящее. Все утверждения и выводы, которые мы делаем, подтверждаются фактами, - цифрами, мнениями экспертов или ссылками на авторитетные источники. -
    2. -
    3. - Ответственно относимся к источникам. - Мы выбираем только надежные источники, проверяем информацию и рассказываем, как и откуда мы её - получили, кроме случаев, когда это может нанести вред источникам. Тогда мы не раскроем их, даже - в суде. -
    4. -
    5. - Выбираем компетентных и независимых экспертов, понимая всю степень ответственности перед - аудиторией. -
    6. -
    7. - - Даем возможность высказаться всем заинтересованным сторонам, но не присоединяемся ни к чьему - лагерю. - - Ко всем событиям, компаниям и людям мы относимся с одинаковым скептицизмом. -
    8. -
    9. - Всегда исправляем ошибки, если мы их допустили. - Никто не безгрешен, иногда и мы ошибаемся. Заметили ошибку — отправьте{' '} - ремарку автору или напишите нам на{' '} - - welcome@discours.io - - . -
    10. -
    -
    + +

    + Редакционные принципы +

    + +

    + Дискурс — журнал с открытой горизонтальной редакцией. Содержание журнала определяется прямым + голосованием его авторов. Мы нередко занимаем различные позиции по разным проблемам, но + придерживаемся общих профессиональных принципов: +

    +
      +
    1. + На первое место ставим факты. Наша задача — не судить, а наблюдать и непредвзято + фиксировать происходящее. Все утверждения и выводы, которые мы делаем, подтверждаются фактами, + цифрами, мнениями экспертов или ссылками на авторитетные источники. +
    2. +
    3. + Ответственно относимся к источникам. + Мы выбираем только надежные источники, проверяем информацию и рассказываем, как и откуда мы её + получили, кроме случаев, когда это может нанести вред источникам. Тогда мы не раскроем их, даже в + суде. +
    4. +
    5. + Выбираем компетентных и независимых экспертов, понимая всю степень ответственности перед + аудиторией. +
    6. +
    7. + + Даем возможность высказаться всем заинтересованным сторонам, но не присоединяемся ни к чьему + лагерю. + + Ко всем событиям, компаниям и людям мы относимся с одинаковым скептицизмом. +
    8. +
    9. + Всегда исправляем ошибки, если мы их допустили. + Никто не безгрешен, иногда и мы ошибаемся. Заметили ошибку — отправьте{' '} + ремарку автору или напишите нам на{' '} + + welcome@discours.io + + . +
    10. +
    ) } diff --git a/src/pages/about/guide.page.tsx b/src/pages/about/guide.page.tsx index 8d8a81a6..95e34f5f 100644 --- a/src/pages/about/guide.page.tsx +++ b/src/pages/about/guide.page.tsx @@ -24,38 +24,37 @@ export const GuidePage = () => { -
    -

    - {ogTitle} -

    -

    - Дискурс — независимый журнал о культуре, науке, искусстве и обществе - с  - открытой редакцией. У нас нет главного редактора, инвестора - и вообще никого, кто бы принимал единоличные решения. Вместо традиционных иерархий - Дискурс основан на принципах прямой демократии: в нашем горизонтальном сообществе все - редакционные вопросы решаются открытым голосованием авторов журнала. Вот как это работает. -

    -

    Как устроен сайт Дискурса

    -

    Дискурс состоит из четырех основных разделов:

    -
      -
    • -

      - Темы -  — у нас публикуются исследования, обзоры, эссе, интервью, репортажи, - аналитика и другие материалы о культуре, науке, искусстве и обществе. -

      -
    • -
    • -

      - Искусство -  — здесь, например, представлены художественные произведения: литература, - живопись, музыка, фотографии, видео. Этот раздел помогает прозвучать новому искусству, - которое создают российские художники, писатели, режиссёры и музыканты. -

      -
    • - {/* +

      + {ogTitle} +

      + +

      + Дискурс — независимый журнал о культуре, науке, искусстве и обществе с  + открытой редакцией. У нас нет главного редактора, инвестора + и вообще никого, кто бы принимал единоличные решения. Вместо традиционных иерархий + Дискурс основан на принципах прямой демократии: в нашем горизонтальном сообществе все + редакционные вопросы решаются открытым голосованием авторов журнала. Вот как это работает. +

      +

      Как устроен сайт Дискурса

      +

      Дискурс состоит из четырех основных разделов:

      +
        +
      • +

        + Темы +  — у нас публикуются исследования, обзоры, эссе, интервью, репортажи, + аналитика и другие материалы о культуре, науке, искусстве и обществе. +

        +
      • +
      • +

        + Искусство +  — здесь, например, представлены художественные произведения: литература, живопись, + музыка, фотографии, видео. Этот раздел помогает прозвучать новому искусству, которое создают + российские художники, писатели, режиссёры и музыканты. +

        +
      • + {/*
      • События — в этом разделе @@ -76,172 +75,170 @@ export const GuidePage = () => {

      • */} -
      -

      - Материалы в Дискурсе объединяются по темам - — ключевым словам, которые располагаются в конце материалов и связывают - материалы по жанрам (например, интервью,{' '} - репортажи, эссе,{' '} - ликбезы - ), по тематике (кино, философия - , история, абсурдизм,{' '} - секс и т.д.) или в серии (как « - Законы мира» или « - За линией Маннергейма - »). Темы объединяют сотни публикаций, помогают ориентироваться в журнале - и следить за интересными материалами. -

      +
    +

    + Материалы в Дискурсе объединяются по темам + — ключевым словам, которые располагаются в конце материалов и связывают + материалы по жанрам (например, интервью,{' '} + репортажи, эссе,{' '} + ликбезы + ), по тематике (кино, философия,{' '} + история, абсурдизм,{' '} + секс и т.д.) или в серии (как « + Законы мира» или « + За линией Маннергейма + »). Темы объединяют сотни публикаций, помогают ориентироваться в журнале и следить + за интересными материалами. +

    -
    -

    Как стать автором журнала

    +
    +

    Как стать автором журнала

    +

    + Дискурс объединяет журналистов, активистов, музыкантов, художников, фотографов, режиссеров, + философов, ученых и других замечательных людей. Каждый может прислать{' '} + свой материал в журнал. Формат и тематика не имеют значения, единственное, что + важно — хороший ли материал. Если + сообщество поддержит вашу публикацию, она выйдет в журнале и станет доступна тысячам + наших читателей. +

    +
    + +

    Как проходит голосование

    +

    + Все присылаемые в Дискурс материалы попадают в  + «Редакцию». Это внутренний раздел сайта, где участники сообщества + решают, что будет опубликовано в Дискурсе. Как только работа получает одобрение как минимум + пятерых авторов открытой редакции, она немедленно публикуется в журнале. Если же + материал набирает более 20% голосов «против», он не выходит + и может быть отправлен на доработку. Жестких сроков рассмотрения материалов у нас + нет, иногда это занимает час, иногда месяц, обычно — несколько дней. +

    +
    +

    + Как только сообщество поддержит публикацию, вы получите приглашение + в интернет-редакцию и сможете голосовать за новые материалы. +

    +
    + +

    Как мы делаем тексты друг друга лучше

    +

    + Дискурс — журнал с совместным редактированием. Совершенствовать тексты нам + помогает система ремарок. Вы можете выделить часть текста в любой статье + и оставить к ней замечание, вопрос или предложение — автор текста получит + совет на почту и сможет его учесть. Так мы устраняем опечатки, неточности + и советуем друг другу, как сделать тексты качественнее и интереснее. +

    +

    + Среди участников сообщества есть профессиональные редакторы, которые помогают авторам делать + тексты лучше. Если вашему материалу потребуется доработка, они помогут отредактировать текст, + подобрать иллюстрации, придумать заголовок и красиво сверстать публикацию. Если + вы хотите обсудить текст, прежде чем загрузить материал в интернет-редакцию — + разместите его в google-документе, откройте доступ к редактированию по ссылке + и напишите нам на  + + welcome@discours.io + + . +

    +

    + Если у вас возникают трудности с тем, чтобы подобрать к своему материалу + иллюстрации, тоже пишите на  + + почту + + — наши коллеги-художники могут вам помочь{' '} + + в режиме совместного редактирования + + . +

    + +

    Что сообщество дает авторам

    +
      +
    • - Дискурс объединяет журналистов, активистов, музыкантов, художников, фотографов, режиссеров, - философов, ученых и других замечательных людей. Каждый может{' '} - прислать свой материал в журнал. Формат и тематика - не имеют значения, единственное, что важно —{' '} - хороший ли материал. Если сообщество поддержит - вашу публикацию, она выйдет в журнале и станет доступна тысячам наших читателей. + Право определять, каким будет журнал. Дискурс — это общественная + институция, созданная людьми и ради людей, функционирующая на условиях прямой + демократии. Авторы публикуют статьи и художественные проекты, участвуют + в обсуждениях, голосуют за работы коллег и таким образом вносят свой вклад + в развитие проекта, определяя содержание и направление журнала.

      -
    - -

    Как проходит голосование

    -

    - Все присылаемые в Дискурс материалы попадают в  - «Редакцию». Это внутренний раздел сайта, где участники сообщества - решают, что будет опубликовано в Дискурсе. Как только работа получает одобрение как минимум - пятерых авторов открытой редакции, она немедленно публикуется в журнале. Если же - материал набирает более 20% голосов «против», он не выходит - и может быть отправлен на доработку. Жестких сроков рассмотрения материалов у нас - нет, иногда это занимает час, иногда месяц, обычно — несколько дней. -

    -
    + +
  • - Как только сообщество поддержит публикацию, вы получите приглашение - в интернет-редакцию и сможете голосовать за новые материалы. + Возможность обратиться к широкой аудитории. Дискурс читают десятки тысяч + людей, и с каждым днем их становится больше.

    -
  • + +
  • +

    + Поддержка редакции. Дискурс предоставляет авторам аккредитацию + на мероприятия, базу контактов, юридическую поддержку, ознакомление с книжными, + кино- и музыкальными новинками до их выхода в свет. Если что-то + из этого вам понадобится, пишите на почту{' '} + + welcome@discours.io + +  — поможем. +

    +
  • +
  • +

    + Пресс-карты для корреспондентов. Три опубликованные статьи позволяют авторам + Дискурса получить официальные удостоверения журналистов (пресс-карты) на следующий год. + Пресс-карты удостоверяют, что вы журналист и можете пользоваться всеми теми правами, + которые гарантирует Закон о СМИ. Кроме того, многие культурные институции (музеи, галереи + и др.) предоставляют журналистам право свободного входа. +

    +
  • +
  • +

    + Помощь сотен специалистов в разных областях. В основе Дискурса + лежит идея совместного редактирования. Участники редакционного сообщества — + несколько сотен журналистов, исследователей, художников, литераторов из разных стран + — изучают материалы друг друга до публикации и помогают сделать + их качественнее и интереснее. Так, в редакции нередко складываются творческие + союзы: например, авторов текстов и художников, создающих для них иллюстрации. +

    +
  • +
  • +

    + Пространство общения полное выдающихся людей. Дискурс — большое + живое сообщество интеллектуалов, разбросанных по всему земному шару. Вступив + в редакцию, вы сможете познакомиться со множеством интересных людей, которые + определяют повестку завтрашнего дня, вдохновляют окружающих, создают новое и изучают + старое, ищут знания и готовы ими делиться, чтобы менять мир в соответствии + со своими идеалами. +

    +
  • + -

    Как мы делаем тексты друг друга лучше

    -

    - Дискурс — журнал с совместным редактированием. Совершенствовать тексты нам - помогает система ремарок. Вы можете выделить часть текста в любой статье - и оставить к ней замечание, вопрос или предложение — автор текста получит - совет на почту и сможет его учесть. Так мы устраняем опечатки, неточности - и советуем друг другу, как сделать тексты качественнее и интереснее. -

    -

    - Среди участников сообщества есть профессиональные редакторы, которые помогают авторам делать - тексты лучше. Если вашему материалу потребуется доработка, они помогут отредактировать текст, - подобрать иллюстрации, придумать заголовок и красиво сверстать публикацию. Если - вы хотите обсудить текст, прежде чем загрузить материал в интернет-редакцию — - разместите его в google-документе, откройте доступ к редактированию по ссылке - и напишите нам на  - - welcome@discours.io - - . -

    -

    - Если у вас возникают трудности с тем, чтобы подобрать к своему материалу - иллюстрации, тоже пишите на  - - почту - - — наши коллеги-художники могут вам помочь{' '} - - в режиме совместного редактирования - - . -

    - -

    Что сообщество дает авторам

    -
      -
    • -

      - Право определять, каким будет журнал. Дискурс — это общественная - институция, созданная людьми и ради людей, функционирующая на условиях прямой - демократии. Авторы публикуют статьи и художественные проекты, участвуют - в обсуждениях, голосуют за работы коллег и таким образом вносят свой вклад - в развитие проекта, определяя содержание и направление журнала. -

      -
    • -
    • -

      - Возможность обратиться к широкой аудитории. Дискурс читают десятки - тысяч людей, и с каждым днем их становится больше. -

      -
    • -
    • -

      - Поддержка редакции. Дискурс предоставляет авторам аккредитацию - на мероприятия, базу контактов, юридическую поддержку, ознакомление с книжными, - кино- и музыкальными новинками до их выхода в свет. Если что-то - из этого вам понадобится, пишите на почту{' '} - - welcome@discours.io - -  — поможем. -

      -
    • -
    • -

      - Пресс-карты для корреспондентов. Три опубликованные статьи позволяют - авторам Дискурса получить официальные удостоверения журналистов (пресс-карты) - на следующий год. Пресс-карты удостоверяют, что вы журналист и можете - пользоваться всеми теми правами, которые гарантирует Закон о СМИ. Кроме того, многие - культурные институции (музеи, галереи и др.) предоставляют журналистам право свободного - входа. -

      -
    • -
    • -

      - Помощь сотен специалистов в разных областях. В основе Дискурса - лежит идея совместного редактирования. Участники редакционного сообщества — - несколько сотен журналистов, исследователей, художников, литераторов из разных стран - — изучают материалы друг друга до публикации и помогают сделать - их качественнее и интереснее. Так, в редакции нередко складываются творческие - союзы: например, авторов текстов и художников, создающих для них иллюстрации. -

      -
    • -
    • -

      - Пространство общения полное выдающихся людей. Дискурс — большое - живое сообщество интеллектуалов, разбросанных по всему земному шару. Вступив - в редакцию, вы сможете познакомиться со множеством интересных людей, которые - определяют повестку завтрашнего дня, вдохновляют окружающих, создают новое и изучают - старое, ищут знания и готовы ими делиться, чтобы менять мир в соответствии - со своими идеалами. -

      -
    • -
    - -

    Как быть в курсе

    -

    - За свежими публикациями Дискурса можно следить не только на сайте, - но и на страницах в  - - Фейсбуке - - ,{' '} - - ВКонтакте - {' '} - и  - - Телеграме - - . А ещё раз в месяц мы отправляем почтовую рассылку{' '} - с дайджестом лучших материалов. -

    -

    - Если вы хотите сотрудничать, что-то обсудить или предложить — пожалуйста, пишите - на  - - welcome@discours.io - - . Мы обязательно ответим. -

    -
    +

    Как быть в курсе

    +

    + За свежими публикациями Дискурса можно следить не только на сайте, + но и на страницах в  + + Фейсбуке + + ,{' '} + + ВКонтакте + {' '} + и  + + Телеграме + + . А ещё раз в месяц мы отправляем почтовую рассылку{' '} + с дайджестом лучших материалов. +

    +

    + Если вы хотите сотрудничать, что-то обсудить или предложить — пожалуйста, пишите + на  + + welcome@discours.io + + . Мы обязательно ответим. +

    ) diff --git a/src/pages/about/help.page.tsx b/src/pages/about/help.page.tsx index 4e5f3f8b..c89bfdd0 100644 --- a/src/pages/about/help.page.tsx +++ b/src/pages/about/help.page.tsx @@ -27,113 +27,111 @@ export const HelpPage = () => { -
    -

    - Как вы можете поддержать Дискурс? -

    -

    - Дискурс — уникальное независимое издание с горизонтальной редакцией, - существующее в интересах своих читателей. Ваша поддержка действительно много - значит — не только для редакции Дискурса, но и для сохранения - свободной мысли и некоммерческого искусства в нашем обществе. -

    -

    - Дискурс существует на добровольных началах. Никакой медиахолдинг, фонд или государственная - структура не финансирует нас — благодаря этому мы можем писать о том, - что важно, а не о том, что выгодно. Сообщество наших волонтеров ежедневно - трудится, чтобы рассказывать вам интересные, не освещенные другими изданиями - истории — но мы не сможем делать это без вашей помощи. Пожертвования - читателей составляют основу нашего бюджета и позволяют нам существовать. -

    -

    - Если вам нравится то, что мы делаем и вы хотите, чтобы Дискурс продолжался, - пожалуйста, поддержите проект. -

    -
    -
    - -
    +

    + Как вы можете поддержать Дискурс? +

    + +

    + Дискурс — уникальное независимое издание с горизонтальной редакцией, существующее + в интересах своих читателей. Ваша поддержка действительно много значит — + не только для редакции Дискурса, но и для сохранения свободной мысли + и некоммерческого искусства в нашем обществе. +

    +

    + Дискурс существует на добровольных началах. Никакой медиахолдинг, фонд или государственная + структура не финансирует нас — благодаря этому мы можем писать о том, + что важно, а не о том, что выгодно. Сообщество наших волонтеров ежедневно трудится, + чтобы рассказывать вам интересные, не освещенные другими изданиями истории — + но мы не сможем делать это без вашей помощи. Пожертвования читателей составляют + основу нашего бюджета и позволяют нам существовать. +

    +

    + Если вам нравится то, что мы делаем и вы хотите, чтобы Дискурс продолжался, + пожалуйста, поддержите проект. +

    +
    +
    +
    -

    На что пойдут деньги?

    -

    - Ваши пожертвования пойдут на оплату серверов, содержание офиса, зарплату редакции - и налоги, оплату юридического сопровождения и труда бухгалтера, совершенствование - сайта, аренду помещения для открытой редакции, на печать альманаха Дискурс с лучшими - текстами авторов за полгода, а также на другие редакционные и технические - расходы. -

    -

    Ваша помощь позволит нам

    -
      -
    • -

      Оставаться бесплатным изданием.

      -

      - Мы делаем открытый журнал для всех желающих, а также собираем искусство лучших - авторов по всему миру. Ваша поддержка позволяет нам становиться лучше. -

      -
    • -
    • -

      Создавать еще больше контента.

      -

      - Каждый день к нам присоединяются новые люди, и чем больше нас становится, тем - больше мы творим и строже оцениваем результаты творчества друг друга. - В результате повышается и количество, и качество контента. Каждый день мы - трудимся, чтобы открывать нашим читателям новые грани окружающего мира. -

      -
    • -
    • -

      Развивать форматы и расширять деятельность Дискурса.

      -

      - Мы создаем различные спецпроекты и регулярно проводим необычные мероприятия. - Мы хотим приносить пользу человечеству всеми возможными способами. -

      -
    • -
    • -

      Модернизировать сайт.

      -

      - Мы совершенствуем платформу и стараемся сделать проект максимально удобным для - вас. Мы работаем над мобильной версией, новым дизайном, фукционалом, системой - регистрации, навигации и рекомендаций, которые сделают наше общение еще увлекательней. -

      -
    • -
    • -

      Выпускать альманах.

      -

      - Выпускать раз в полугодие печатный альманах Дискурс с 33 лучшими текстами - сайта. -

      -
    • -
    • -

      Захватить весь мир

      -

      и принести «Дискурс» в каждый дом.

      -
    • -
    -

    Войдите в попечительский совет Дискурса

    -

    - Вы хотите сделать крупное пожертвование? Станьте попечителем Дискурса —{' '} - - напишите нам - - , мы будем рады единомышленникам. -

    -

    Как ещё можно поддержать Дискурс?

    -

    - Есть много других способов поддержать Дискурс и труд наших авторов. Например, - вы можете периодически рассказывать о проекте своим друзьям в соцсетях, делиться - хорошими материалами или — что еще лучше — публиковать свои статьи - в «Дискурсе». Но главное, что вы можете сделать для Дискурса, — - читать нас. Мы вкладываем в журнал душу, и внимание каждого читателя убеждает нас - в правильности выбранного пути. Не переключайтесь. -

    -

    - Если вы хотите помочь проекту, но у вас возникли вопросы, напишите нам письмо - по адресу{' '} - - welcome@discours.io - - . -

    -
    +
    +

    На что пойдут деньги?

    +

    + Ваши пожертвования пойдут на оплату серверов, содержание офиса, зарплату редакции + и налоги, оплату юридического сопровождения и труда бухгалтера, совершенствование сайта, + аренду помещения для открытой редакции, на печать альманаха Дискурс с лучшими текстами + авторов за полгода, а также на другие редакционные и технические расходы. +

    +

    Ваша помощь позволит нам

    +
      +
    • +

      Оставаться бесплатным изданием.

      +

      + Мы делаем открытый журнал для всех желающих, а также собираем искусство лучших + авторов по всему миру. Ваша поддержка позволяет нам становиться лучше. +

      +
    • +
    • +

      Создавать еще больше контента.

      +

      + Каждый день к нам присоединяются новые люди, и чем больше нас становится, тем больше + мы творим и строже оцениваем результаты творчества друг друга. В результате + повышается и количество, и качество контента. Каждый день мы трудимся, чтобы + открывать нашим читателям новые грани окружающего мира. +

      +
    • +
    • +

      Развивать форматы и расширять деятельность Дискурса.

      +

      + Мы создаем различные спецпроекты и регулярно проводим необычные мероприятия. + Мы хотим приносить пользу человечеству всеми возможными способами. +

      +
    • +
    • +

      Модернизировать сайт.

      +

      + Мы совершенствуем платформу и стараемся сделать проект максимально удобным для вас. + Мы работаем над мобильной версией, новым дизайном, фукционалом, системой регистрации, + навигации и рекомендаций, которые сделают наше общение еще увлекательней. +

      +
    • +
    • +

      Выпускать альманах.

      +

      + Выпускать раз в полугодие печатный альманах Дискурс с 33 лучшими текстами + сайта. +

      +
    • +
    • +

      Захватить весь мир

      +

      и принести «Дискурс» в каждый дом.

      +
    • +
    +

    Войдите в попечительский совет Дискурса

    +

    + Вы хотите сделать крупное пожертвование? Станьте попечителем Дискурса —{' '} + + напишите нам + + , мы будем рады единомышленникам. +

    +

    Как ещё можно поддержать Дискурс?

    +

    + Есть много других способов поддержать Дискурс и труд наших авторов. Например, вы можете + периодически рассказывать о проекте своим друзьям в соцсетях, делиться хорошими + материалами или — что еще лучше — публиковать свои статьи + в «Дискурсе». Но главное, что вы можете сделать для Дискурса, — + читать нас. Мы вкладываем в журнал душу, и внимание каждого читателя убеждает нас + в правильности выбранного пути. Не переключайтесь. +

    +

    + Если вы хотите помочь проекту, но у вас возникли вопросы, напишите нам письмо + по адресу{' '} + + welcome@discours.io + + . +

    ) diff --git a/src/pages/about/manifest.page.tsx b/src/pages/about/manifest.page.tsx index 226ffc12..533b5cbc 100644 --- a/src/pages/about/manifest.page.tsx +++ b/src/pages/about/manifest.page.tsx @@ -36,128 +36,127 @@ export const ManifestPage = () => { -
    -

    - Манифест -

    +

    + Манифест +

    + +

    + Дискурс — независимый художественно-аналитический журнал с горизонтальной + редакцией, основанный на принципах свободы слова, прямой демократии и совместного + редактирования. Дискурс создаётся открытым медиасообществом ученых, журналистов, музыкантов, + писателей, предпринимателей, философов, инженеров, художников и специалистов со всего + мира, объединившихся, чтобы вместе делать общий журнал и объяснять с разных точек зрения + мозаичную картину современности. +

    +

    + Мы пишем о культуре, науке и обществе, рассказываем о новых идеях + и современном искусстве, публикуем статьи, исследования, репортажи, интервью людей, чью + прямую речь стоит услышать, и работы художников из разных стран — + от фильмов и музыки до живописи и фотографии. Помогая друг другу делать + публикации качественнее и общим голосованием выбирая лучшие материалы для журнала, + мы создаём новую горизонтальную журналистику, чтобы честно рассказывать о важном + и интересном. +

    +

    + Редакция Дискурса открыта для всех: у нас нет цензуры, запретных тем и идеологических + рамок. Каждый может прислать материал в журнал и  + присоединиться к редакции. Предоставляя трибуну для независимой + журналистики и художественных проектов, мы помогаем людям рассказывать свои истории так, + чтобы они были услышаны. Мы убеждены: чем больше голосов будет звучать на Дискурсе, тем + громче в полифонии мнений будет слышна истина. +

    + +

    + Как участвовать в самиздате +

    + +

    + Дискурс создается открытым сообществом энтузиастов новой независимой + журналистики. Участвовать в открытой редакции и помогать журналу можно следующими + способами: +

    +
    + +

    Предлагать материалы

    +

    - Дискурс — независимый художественно-аналитический журнал с горизонтальной - редакцией, основанный на принципах свободы слова, прямой демократии и совместного - редактирования. Дискурс создаётся открытым медиасообществом ученых, журналистов, музыкантов, - писателей, предпринимателей, философов, инженеров, художников и специалистов со всего - мира, объединившихся, чтобы вместе делать общий журнал и объяснять с разных точек - зрения мозаичную картину современности. + Создавайте свои статьи и художественные работы — лучшие из + них будут опубликованы в журнале. Дискурс — некоммерческое издание, авторы + публикуются в журнале на общественных началах, получая при этом{' '} + поддержку редакции, право голоса, множество других + возможностей и читателей по всему миру. +

    +
    + +
    + + + +

    + Дискурс существует на пожертвования читателей. Если вам нравится журнал, пожалуйста,{' '} + поддержите нашу работу. Ваши пожертвования пойдут на выпуск новых + материалов, оплату серверов, труда программистов, дизайнеров и редакторов. +

    +
    + +
    + +

    Сотрудничать с журналом

    +
    +

    + Мы всегда открыты для сотрудничества и рады единомышленникам. Если вы хотите помогать + журналу с редактурой, корректурой, иллюстрациями, переводами, версткой, подкастами, + мероприятиями, фандрайзингом или как-то ещё — скорее пишите нам на  + welcome@discours.io.

    - Мы пишем о культуре, науке и обществе, рассказываем о новых идеях - и современном искусстве, публикуем статьи, исследования, репортажи, интервью людей, чью - прямую речь стоит услышать, и работы художников из разных стран — - от фильмов и музыки до живописи и фотографии. Помогая друг другу делать - публикации качественнее и общим голосованием выбирая лучшие материалы для журнала, - мы создаём новую горизонтальную журналистику, чтобы честно рассказывать о важном - и интересном. + Если вы представляете некоммерческую организацию и хотите сделать с нами совместный + проект, получить информационную поддержку или предложить другую форму + сотрудничества — пишите.

    - Редакция Дискурса открыта для всех: у нас нет цензуры, запретных тем и идеологических - рамок. Каждый может прислать материал в журнал и  - присоединиться к редакции. Предоставляя трибуну для независимой - журналистики и художественных проектов, мы помогаем людям рассказывать свои истории - так, чтобы они были услышаны. Мы убеждены: чем больше голосов будет звучать - на Дискурсе, тем громче в полифонии мнений будет слышна истина. + Если вы разработчик и хотите помогать с развитием сайта Дискурса,{' '} + присоединяйтесь к IT-команде самиздата. Открытый + код платформы для независимой журналистики, а также всех наших спецпроектов + и медиаинструментов находится{' '} + в свободном доступе на GitHub.

    +
    -

    - Как участвовать в самиздате -

    - +
    + +

    Как еще можно помочь

    +

    - Дискурс создается открытым сообществом энтузиастов новой независимой - журналистики. Участвовать в открытой редакции и помогать журналу можно следующими - способами: + Советуйте Дискурс друзьям и знакомым. Обсуждайте и распространяйте наши + публикации — все материалы открытой редакции можно читать и перепечатывать + бесплатно. Подпишитесь на самиздат ВКонтакте, + в  + Фейсбуке и в  + Телеграме, а также на  + рассылку лучших материалов, чтобы не пропустить ничего + интересного.

    -
    - -

    Предлагать материалы

    -
    -

    - Создавайте свои статьи и художественные работы — лучшие - из них будут опубликованы в журнале. Дискурс — некоммерческое издание, авторы - публикуются в журнале на общественных началах, получая при этом{' '} - поддержку редакции, право голоса, множество других - возможностей и читателей по всему миру. -

    -
    - -
    - - - -

    - Дискурс существует на пожертвования читателей. Если вам нравится журнал, пожалуйста,{' '} - поддержите нашу работу. Ваши пожертвования пойдут на выпуск - новых материалов, оплату серверов, труда программистов, дизайнеров и редакторов. -

    -
    - -
    - -

    Сотрудничать с журналом

    -
    -

    - Мы всегда открыты для сотрудничества и рады единомышленникам. Если вы хотите помогать - журналу с редактурой, корректурой, иллюстрациями, переводами, версткой, подкастами, - мероприятиями, фандрайзингом или как-то ещё — скорее пишите нам на  - welcome@discours.io. -

    -

    - Если вы представляете некоммерческую организацию и хотите сделать с нами совместный - проект, получить информационную поддержку или предложить другую форму - сотрудничества — пишите. -

    -

    - Если вы разработчик и хотите помогать с развитием сайта Дискурса,{' '} - присоединяйтесь к IT-команде самиздата. - Открытый код платформы для независимой журналистики, а также всех наших спецпроектов - и медиаинструментов находится{' '} - в свободном доступе на GitHub. -

    -
    - -
    - -

    Как еще можно помочь

    -
    -

    - Советуйте Дискурс друзьям и знакомым. Обсуждайте и распространяйте наши - публикации — все материалы открытой редакции можно читать и перепечатывать - бесплатно. Подпишитесь на самиздат ВКонтакте, - в  - Фейсбуке и в  - Телеграме, а также на  - рассылку лучших материалов, чтобы не пропустить ничего - интересного. -

    -

    - Рассказывайте о впечатлениях{' '} - от материалов открытой редакции, делитесь идеями, - интересными темами, о которых хотели бы узнать больше, и историями, которые нужно - рассказать. -

    -
    - -

    - Будем на связи -

    -

    - Если вы хотите предложить материал, сотрудничать, рассказать о проблеме, которую нужно - осветить, сообщить об ошибке или баге, что-то обсудить, уточнить или посоветовать, - пожалуйста, напишите нам здесь или на почту{' '} - welcome@discours.io. Мы обязательно ответим - и постараемся реализовать все хорошие задумки. + Рассказывайте о впечатлениях{' '} + от материалов открытой редакции, делитесь идеями, + интересными темами, о которых хотели бы узнать больше, и историями, которые нужно + рассказать.

    -
    + + +

    + Будем на связи +

    + +

    + Если вы хотите предложить материал, сотрудничать, рассказать о проблеме, которую нужно + осветить, сообщить об ошибке или баге, что-то обсудить, уточнить или посоветовать, + пожалуйста, напишите нам здесь или на почту{' '} + welcome@discours.io. Мы обязательно ответим + и постараемся реализовать все хорошие задумки. +

    ) diff --git a/src/pages/about/partners.page.tsx b/src/pages/about/partners.page.tsx index f8cf2ce5..64038137 100644 --- a/src/pages/about/partners.page.tsx +++ b/src/pages/about/partners.page.tsx @@ -13,23 +13,18 @@ export const PartnersPage = () => { return ( -
    - - - - - - - - - - -
    -
    -

    {t('Partners')}

    -
    -
    -
    + + + + + + + + + + + +

    {t('Partners')}

    ) } diff --git a/src/pages/about/principles.page.tsx b/src/pages/about/principles.page.tsx index c704d457..a5f102ea 100644 --- a/src/pages/about/principles.page.tsx +++ b/src/pages/about/principles.page.tsx @@ -13,177 +13,174 @@ export const PrinciplesPage = () => { return ( -
    - - - - - - - - - - -

    - {ogTitle} -

    + + + + + + + + + + -
      -
    1. -

      - Горизонтальность. Мы все разные, и это классно. Вертикалей - в мире достаточно, мы — горизонтальное сообщество и ценим наши различия, - потому что знаем — в них наша сила. Благодаря разнообразию сотен голосов, - усиливающих друг друга, в сообществе складывается неповторимая синергия, которая помогает - вместе достигать большего. -

      -
    2. -
    3. -

      - Многоголосие. Мы ценим свободу слова и аргументированные мнения. - Предоставляя трибуну каждому, кому есть что сказать, самиздат отражает полифонию позиций, - знаний и опыта, которые открывают более полную картину реальности. -

      -
    4. -
    5. -

      - Взаимопомощь. Мы помогаем друг другу, потому что хотим, чтобы - в мире было еще больше хорошего. Обсуждая что-то, мы всегда интересуемся, чем можем - помочь. В самиздате можно найти специалистов практически в любых сферах - и получить поддержку от сотен людей. Благодаря коллективной экспертизе глобального - сообщества в самиздате выходят крутейшие публикации, которыми можно вечно гордиться. -

      -
    6. -
    7. -

      - Взаимоуважение. Мы ценим, искренне уважаем друг друга и вместо - борщевиков враждебности культивируем цветы добра, мира, знания и юмора. Нам некогда - доказывать друг другу, кто круче. Гораздо приятнее сотрудничать, помогать и создавать - что-то важное, интересное и полезное. -

      -
    8. -
    9. -

      - Созидание. Мы создаем, потому что любим создавать. Мы открыто - делимся опытом, дарим идеи, обмениваемся мнениями и благодарим за критику, используя - ее для совершенствования мастерства и саморазвития. Мы знаем, что мир - не идеальное место, и делаем всё возможное, чтобы он стал лучше. -

      -
    10. -
    +

    + {ogTitle} +

    -

    - Как у нас принято себя вести -

    +
      +
    1. +

      + Горизонтальность. Мы все разные, и это классно. Вертикалей + в мире достаточно, мы — горизонтальное сообщество и ценим наши различия, + потому что знаем — в них наша сила. Благодаря разнообразию сотен голосов, + усиливающих друг друга, в сообществе складывается неповторимая синергия, которая помогает + вместе достигать большего. +

      +
    2. +
    3. +

      + Многоголосие. Мы ценим свободу слова и аргументированные мнения. + Предоставляя трибуну каждому, кому есть что сказать, самиздат отражает полифонию позиций, знаний + и опыта, которые открывают более полную картину реальности. +

      +
    4. +
    5. +

      + Взаимопомощь. Мы помогаем друг другу, потому что хотим, чтобы в мире + было еще больше хорошего. Обсуждая что-то, мы всегда интересуемся, чем можем помочь. + В самиздате можно найти специалистов практически в любых сферах и получить + поддержку от сотен людей. Благодаря коллективной экспертизе глобального сообщества + в самиздате выходят крутейшие публикации, которыми можно вечно гордиться. +

      +
    6. +
    7. +

      + Взаимоуважение. Мы ценим, искренне уважаем друг друга и вместо + борщевиков враждебности культивируем цветы добра, мира, знания и юмора. Нам некогда + доказывать друг другу, кто круче. Гораздо приятнее сотрудничать, помогать и создавать + что-то важное, интересное и полезное. +

      +
    8. +
    9. +

      + Созидание. Мы создаем, потому что любим создавать. Мы открыто делимся + опытом, дарим идеи, обмениваемся мнениями и благодарим за критику, используя + ее для совершенствования мастерства и саморазвития. Мы знаем, что мир + не идеальное место, и делаем всё возможное, чтобы он стал лучше. +

      +
    10. +
    -

    - Открытая редакция объединяет сотни потрясающих людей со всего мира, которые делают крутейшие - вещи. Это пространство, где доверяют, вдохновляют, исследуют и создают новое вместе. - Поскольку все в сообществе очень разные, как-то мы собрались и решили зафиксировать - базовые ценности открытой редакции, а заодно придумали универсальные правила взаимодействия, - чтобы общение было не только плодотворным, но и приятным для всех участников - сообщества. -

    -
      -
    1. -

      - Действуем, помогаем и делимся. В редакции мы создаем свои - проекты и помогаем другим создавать свои — советами, делом, участием, - вовлеченностью. Мы открыто делимся опытом, мнениями и идеями, потому что ценим силу - сотрудничества и знаем, что идеи реализуются скорее, лучше и веселее, если над ними - трудиться сообща. -

      -
    2. +

      + Как у нас принято себя вести +

      -
    3. -

      - Общаемся дружелюбно. Помните, по ту сторону монитора находятся - реальные люди. Неуважение ранит других так же, как ранило бы вас самих. Поэтому - не стоит кричать (даже капслоком), заполнять эфир желчью и бросаться - грубостями — так вы рискуете не только растерять доверие окружающих, - но и остаться непонятым. -

      -
    4. +

      + Открытая редакция объединяет сотни потрясающих людей со всего мира, которые делают крутейшие + вещи. Это пространство, где доверяют, вдохновляют, исследуют и создают новое вместе. Поскольку + все в сообществе очень разные, как-то мы собрались и решили зафиксировать базовые + ценности открытой редакции, а заодно придумали универсальные правила взаимодействия, чтобы + общение было не только плодотворным, но и приятным для всех участников сообщества. +

      +
        +
      1. +

        + Действуем, помогаем и делимся. В редакции мы создаем свои + проекты и помогаем другим создавать свои — советами, делом, участием, + вовлеченностью. Мы открыто делимся опытом, мнениями и идеями, потому что ценим силу + сотрудничества и знаем, что идеи реализуются скорее, лучше и веселее, если над ними + трудиться сообща. +

        +
      2. -
      3. -

        - Критикуем и реагируем конструктивно. Самиздат про то, чтобы - разбираться в сложных вещах всем сообществом, поэтому мы тактично и без - агрессии делимся мнениями, стараясь убедительно аргументировать позиции. - И с благодарностью принимаем критику, используя ее для улучшения наших - проектов. Мы верим, что каждый участник сообщества имеет добрые намерения, - и придерживаемся принципов доброжелательной критики, стараемся делиться - советами — лучшим средством для самосовершенствования. Обоснованная критика - помогает и адресату, и всем участникам сообщества досконально изучить тему - и глубже разобраться в проблеме. -

        -
      4. +
      5. +

        + Общаемся дружелюбно. Помните, по ту сторону монитора находятся + реальные люди. Неуважение ранит других так же, как ранило бы вас самих. Поэтому + не стоит кричать (даже капслоком), заполнять эфир желчью и бросаться + грубостями — так вы рискуете не только растерять доверие окружающих, + но и остаться непонятым. +

        +
      6. -
      7. -

        - Решаем трудности не агрессией, а диалогом. Обесценивать мнения - и оскорблять других людей только потому, что вы с ними - не согласны, — не лучший способ донести свою точку зрения. Конечно, важно - высказаться, если вас что-то не устраивает и откровенно бесит. Но прежде чем - сжигать оппонента гневом, попробуйте понять, почему этот «нехороший человек» так - поступает. Возможно, аргументы собеседника окажутся убедительными или вам удастся изменить его - мнение. В любом случае конфликты решаются в диалогах и проходят, - а налаженное взаимопонимание останется надолго. -

        -
      8. +
      9. +

        + Критикуем и реагируем конструктивно. Самиздат про то, чтобы + разбираться в сложных вещах всем сообществом, поэтому мы тактично и без агрессии + делимся мнениями, стараясь убедительно аргументировать позиции. И с благодарностью + принимаем критику, используя ее для улучшения наших проектов. Мы верим, что каждый + участник сообщества имеет добрые намерения, и придерживаемся принципов доброжелательной + критики, стараемся делиться советами — лучшим средством для самосовершенствования. + Обоснованная критика помогает и адресату, и всем участникам сообщества досконально + изучить тему и глубже разобраться в проблеме. +

        +
      10. -
      11. -

        - Не переходим на личности — это признак токсичности. - Всегда мудрее обсуждать точку зрения человека, а не его самого, даже если - он вам не импонирует. Предвзятое отношение ограничивает кругозор, добавляет - преждевременные морщины и не помогает окружающим стать лучше. Вежливость - и взаимоуважение — краеугольная основа вдумчивых и осмысленных дискуссий. -

        -
      12. +
      13. +

        + Решаем трудности не агрессией, а диалогом. Обесценивать мнения + и оскорблять других людей только потому, что вы с ними + не согласны, — не лучший способ донести свою точку зрения. Конечно, важно + высказаться, если вас что-то не устраивает и откровенно бесит. Но прежде чем + сжигать оппонента гневом, попробуйте понять, почему этот «нехороший человек» так + поступает. Возможно, аргументы собеседника окажутся убедительными или вам удастся изменить его + мнение. В любом случае конфликты решаются в диалогах и проходят, + а налаженное взаимопонимание останется надолго. +

        +
      14. -
      15. -

        - Благодарим за помощь. Благодарите коллег даже за самые, - казалось бы, простые вещи. «Спасибо» не зря называют волшебным - словом — на искренней благодарности держится любое подлинное сотрудничество. - Поддержка воодушевляет на новые подвиги и напоминает, что мир делают прекрасным - не машины, а живые люди. -

        -
      16. +
      17. +

        + Не переходим на личности — это признак токсичности. Всегда + мудрее обсуждать точку зрения человека, а не его самого, даже если он вам + не импонирует. Предвзятое отношение ограничивает кругозор, добавляет преждевременные + морщины и не помогает окружающим стать лучше. Вежливость + и взаимоуважение — краеугольная основа вдумчивых и осмысленных дискуссий. +

        +
      18. -
      19. -

        - Даем еще один шанс. Все совершают ошибки, и за один проступок - не стоит вычеркивать людей из жизни. Ошибки нужны, чтобы на них учиться - и делать выводы. Однако если многократно и систематически нарушать правила - сообщества, наверняка можно заслужить минусы в карму от других участников - и потерять доступ к сообществу. -

        -
      20. +
      21. +

        + Благодарим за помощь. Благодарите коллег даже за самые, + казалось бы, простые вещи. «Спасибо» не зря называют волшебным + словом — на искренней благодарности держится любое подлинное сотрудничество. + Поддержка воодушевляет на новые подвиги и напоминает, что мир делают прекрасным + не машины, а живые люди. +

        +
      22. -
      23. -

        - Вместе создаем идеальную среду общения. Открытая редакция — это - утопическое пространство обогащающей и осмысленной коммуникации. Атмосфера - горизонтального сообщества складывается из действий каждого, поэтому мы действуем - так, чтобы способствовать сотворчеству, коллективному познанию и развитию самиздата - и нашей альтернативной интеллектуальной медиасреды. -

        -
      24. +
      25. +

        + Даем еще один шанс. Все совершают ошибки, и за один проступок + не стоит вычеркивать людей из жизни. Ошибки нужны, чтобы на них учиться + и делать выводы. Однако если многократно и систематически нарушать правила сообщества, + наверняка можно заслужить минусы в карму от других участников и потерять доступ + к сообществу. +

        +
      26. -
      27. -

        - Помним, что всё в сообществе зависит от нас. Если нам чего-то - не хватает, мы начинаем действовать — рассказываем об идее, находим - единомышленников, готовим и запускаем проект. Так в сообществе становится - на одну крутую активность больше. Так появилось наше сообщество. Так появился самиздат - и все проекты открытой редакции. Чтобы в сообществе случилось что-то прекрасное, - достаточно просто положить этому начало. -

        -
      28. -
      -
    +
  • +

    + Вместе создаем идеальную среду общения. Открытая редакция — это + утопическое пространство обогащающей и осмысленной коммуникации. Атмосфера горизонтального + сообщества складывается из действий каждого, поэтому мы действуем так, чтобы + способствовать сотворчеству, коллективному познанию и развитию самиздата и нашей + альтернативной интеллектуальной медиасреды. +

    +
  • + +
  • +

    + Помним, что всё в сообществе зависит от нас. Если нам чего-то + не хватает, мы начинаем действовать — рассказываем об идее, находим + единомышленников, готовим и запускаем проект. Так в сообществе становится на одну + крутую активность больше. Так появилось наше сообщество. Так появился самиздат и все + проекты открытой редакции. Чтобы в сообществе случилось что-то прекрасное, достаточно + просто положить этому начало. +

    +
  • +
    ) } diff --git a/src/pages/about/termsOfUse.page.tsx b/src/pages/about/termsOfUse.page.tsx index 7373aa94..7811ed96 100644 --- a/src/pages/about/termsOfUse.page.tsx +++ b/src/pages/about/termsOfUse.page.tsx @@ -24,223 +24,221 @@ export const TermsOfUsePage = () => { -
    -

    - Пользовательское соглашение -

    +

    + Пользовательское соглашение +

    -

    - Дискурс — это сообщество творческих людей, объединенных идеей делать интересный журнал - для всех желающих. Авторы Дискурса сообща посредством прямого голосования определяют содержание - журнала. -

    -

    Для того, чтобы Дискурс работал без помех, разработаны настоящие Правила.

    -

    Определения

    -

    - Сайт — портал discours.io -

    -

    - Пользователь — лицо, пользующееся Сайтом, либо юридическое лицо, - обладающее правами на интеллектуальную собственность. -

    -

    - Публикация контента — размещение Пользователем посредством Сайта - объектов авторских прав и другой информации для других пользователей. -

    -

    - Издательство — администрация сайта, которая занимается технической - и издательской деятельностью для обеспечения функционирования Сайта и Альманаха. - Издательство не вмешивается в принятие редакционных решений авторским сообществом. -

    -

    - Альманах «Дискурс» (свидетельство о регистрации СМИ: ПИ № - ФС77-63947 от 18.12.15) — печатное периодическое издание, которое выходит раз - в год и состоит из лучших публикаций на Сайте за это время. -

    - -
      -
    1. -

      - Вся информация на сайте (включая тексты, изображения, видеоматериалы, аудиозаписи, - программный код, дизайн сайта и т.д.) является объектом интеллектуальной собственности - ее правообладателей и охраняется законодательством РФ. -

      -
    2. -
    3. -

      - Публикуя контент на сайте, Пользователь на безвозмездной основе предоставляет - Издательству право на воспроизведение, распространение, перевод, редактирование контента. - Данное право предоставляется Издательству на весь срок действия авторских прав - Пользователя. -

      -
    4. -
    5. -

      - Пользователь предоставляет Издательству право редактировать контент, в том числе вносить - в него изменения, сокращения и дополнения, снабжать его иллюстрациями - и пояснениями, исправлять ошибки и уточнять фактические сведения, при условии, что - этим не искажается авторский замысел. -

      -
    6. -
    7. -

      - Обнародование контента осуществляется Издательством в соответствии с условиями - лицензии{' '} - - Creative Commons BY-NC-ND 4.0 - - . Все материалы сайта предназначены исключительно для личного некоммерческого использования. - Права на дизайн и программный код сайта принадлежат Издательству. -

      -
    8. -
    9. -

      - Все аудиовизуальные произведения являются собственностью своих авторов и правообладателей - и используются только в образовательных и информационных целях. Если - вы являетесь собственником того или иного произведения и не согласны с его - размещением на сайте, пожалуйста, напишите на  - - welcome@discours.io - - . -

      -
    10. -
    11. -

      - Цитирование, распространение, доведение до всеобщего сведения материалов Cайта - приветствуется. При использовании материалов сайта необходимо указать имя автора - и активную ссылку на материал на Сайте. -

      -
    12. -
    -

    Правила поведения

    -
      -
    1. -

      - Находясь на Сайте, Пользователь подтверждает свое совершеннолетие, правоспособность, - а также согласие с настоящими Правилами и политикой конфиденциальности - и готовность нести полную ответственность за их соблюдение. -

      -
    2. -
    3. -

      На сайте запрещено:

      -
        -
      • - Публиковать контент, авторские права на который принадлежат третьим лицам, без согласия - этих лиц. Если авторские права на контент принадлежат нескольким лицам, то его - публикация предполагает согласие их всех. -
      • -
      • Размещать коммерческую и политическую рекламу.
      • -
      • - Целенаправленно препятствовать нормальному функционированию сообщества и сайта - discours.io -
      • -
      • Выдавать себя за другого человека и представляться его именем.
      • -
      • - Размещать информацию, которая не соответствует целям создания Сайта, ущемляет интересы - других пользователей или третьих лиц, нарушает законы Российской Федерации. -
      • -
      -
    4. -
    5. -

      - Пользователь несет всю ответственность за содержание публикуемого контента и свое - взаимодействие с другими пользователями, и обязуется возместить все расходы - в случае предъявления каких-либо претензий третьими лицами. Издательство не несет - ответственности за содержание публикуемой пользователями информации, в том числе - за размещенные на сайте комментарии. Переписка между Пользователем - и Издательством считается юридически значимой. Настоящие Правила могут быть изменены - Издательством, изменения вступают в силу с момента публикации на Сайте. -

      -
    6. -
    7. -

      - Если Пользователь очевидно и целенаправленно нарушает правила, Издательство может - и принять в отношении автора следующие меры: вынести предупреждение и обязать - автора устранить допущенное нарушение, удалить контент, нарушающий правила, заблокировать или - удалить аккаунт нарушителя. -

      -
    8. -
    -

    Политика конфиденциальности

    -
      -
    1. -

      Сайт может собирать у пользователей следующие данные:

      -
        -
      • -

        - Данные, которые пользователи сообщают о себе сами при подаче заявки, регистрации, - авторизации или заполнения профиля, в том числе ФИО и контактную информацию. - Конфиденциальные данные, такие как идентификатор и электронный адрес, используются - для идентификации пользователя. Данные профиля, размещённые публично по желанию - пользователя, которое выражается фактом их предоставления, используется для - демонстрации другим пользователям той информации о себе, которую пользователь готов - предоставить. -

        -
      • -
      • -

        - Данные, собранные автоматическим путем, такие, как cookie-файлы. Эти неперсонализированные - данные могут использоваться для сбора статистики и улучшения работы сайта. -

        -
      • -
      -
    2. -
    3. -

      - Издательство обеспечивает конфиденциальность персональных данных и применяет все - необходимые организационные и технические меры по их защите. -

      -
    4. -
    5. -

      - По желанию пользователя Издательство готово удалить любую информацию о нем, - собранную автоматическим путем. Для этого следует написать на адрес электронной почты{' '} - - welcome@discours.io - - . -

      -
    6. -
    7. -

      - Если в информации, предоставляемой Издательству Пользователем, содержатся персональные - данные последнего, то фактом их предоставления он соглашается - на их обработку любым способом, не запрещенным законодательством РФ. -

      -

      - Общедоступные видео на сайте могут транслироваться с YouTube и регулируются{' '} - - политикой конфиденциальности Google - - . Загрузка видео на сайт также означает согласие с  - - Условиями использования YouTube - - . -

      -
    8. -
    9. -

      - Данные, которые мы получаем от вас, мы используем только в соответствии - с принципами обработки данных, указанными в этом документе. -

      -
    10. -
    -

    Обратная связь

    -

    - Любые вопросы и предложения по поводу функционирования сайта можно направить - по электронной почте{' '} - - welcome@discours.io - {' '} - или через форму «предложить идею». -

    -
    +

    + Дискурс — это сообщество творческих людей, объединенных идеей делать интересный журнал + для всех желающих. Авторы Дискурса сообща посредством прямого голосования определяют содержание + журнала. +

    +

    Для того, чтобы Дискурс работал без помех, разработаны настоящие Правила.

    +

    Определения

    +

    + Сайт — портал discours.io +

    +

    + Пользователь — лицо, пользующееся Сайтом, либо юридическое лицо, + обладающее правами на интеллектуальную собственность. +

    +

    + Публикация контента — размещение Пользователем посредством Сайта + объектов авторских прав и другой информации для других пользователей. +

    +

    + Издательство — администрация сайта, которая занимается технической + и издательской деятельностью для обеспечения функционирования Сайта и Альманаха. + Издательство не вмешивается в принятие редакционных решений авторским сообществом. +

    +

    + Альманах «Дискурс» (свидетельство о регистрации СМИ: ПИ № + ФС77-63947 от 18.12.15) — печатное периодическое издание, которое выходит раз + в год и состоит из лучших публикаций на Сайте за это время. +

    + +
      +
    1. +

      + Вся информация на сайте (включая тексты, изображения, видеоматериалы, аудиозаписи, + программный код, дизайн сайта и т.д.) является объектом интеллектуальной собственности + ее правообладателей и охраняется законодательством РФ. +

      +
    2. +
    3. +

      + Публикуя контент на сайте, Пользователь на безвозмездной основе предоставляет + Издательству право на воспроизведение, распространение, перевод, редактирование контента. + Данное право предоставляется Издательству на весь срок действия авторских прав + Пользователя. +

      +
    4. +
    5. +

      + Пользователь предоставляет Издательству право редактировать контент, в том числе вносить + в него изменения, сокращения и дополнения, снабжать его иллюстрациями + и пояснениями, исправлять ошибки и уточнять фактические сведения, при условии, что + этим не искажается авторский замысел. +

      +
    6. +
    7. +

      + Обнародование контента осуществляется Издательством в соответствии с условиями + лицензии{' '} + + Creative Commons BY-NC-ND 4.0 + + . Все материалы сайта предназначены исключительно для личного некоммерческого использования. + Права на дизайн и программный код сайта принадлежат Издательству. +

      +
    8. +
    9. +

      + Все аудиовизуальные произведения являются собственностью своих авторов и правообладателей + и используются только в образовательных и информационных целях. Если + вы являетесь собственником того или иного произведения и не согласны с его + размещением на сайте, пожалуйста, напишите на  + + welcome@discours.io + + . +

      +
    10. +
    11. +

      + Цитирование, распространение, доведение до всеобщего сведения материалов Cайта + приветствуется. При использовании материалов сайта необходимо указать имя автора и активную + ссылку на материал на Сайте. +

      +
    12. +
    +

    Правила поведения

    +
      +
    1. +

      + Находясь на Сайте, Пользователь подтверждает свое совершеннолетие, правоспособность, + а также согласие с настоящими Правилами и политикой конфиденциальности + и готовность нести полную ответственность за их соблюдение. +

      +
    2. +
    3. +

      На сайте запрещено:

      +
        +
      • + Публиковать контент, авторские права на который принадлежат третьим лицам, без согласия + этих лиц. Если авторские права на контент принадлежат нескольким лицам, то его публикация + предполагает согласие их всех. +
      • +
      • Размещать коммерческую и политическую рекламу.
      • +
      • + Целенаправленно препятствовать нормальному функционированию сообщества и сайта + discours.io +
      • +
      • Выдавать себя за другого человека и представляться его именем.
      • +
      • + Размещать информацию, которая не соответствует целям создания Сайта, ущемляет интересы + других пользователей или третьих лиц, нарушает законы Российской Федерации. +
      • +
      +
    4. +
    5. +

      + Пользователь несет всю ответственность за содержание публикуемого контента и свое + взаимодействие с другими пользователями, и обязуется возместить все расходы + в случае предъявления каких-либо претензий третьими лицами. Издательство не несет + ответственности за содержание публикуемой пользователями информации, в том числе + за размещенные на сайте комментарии. Переписка между Пользователем + и Издательством считается юридически значимой. Настоящие Правила могут быть изменены + Издательством, изменения вступают в силу с момента публикации на Сайте. +

      +
    6. +
    7. +

      + Если Пользователь очевидно и целенаправленно нарушает правила, Издательство может + и принять в отношении автора следующие меры: вынести предупреждение и обязать + автора устранить допущенное нарушение, удалить контент, нарушающий правила, заблокировать или + удалить аккаунт нарушителя. +

      +
    8. +
    +

    Политика конфиденциальности

    +
      +
    1. +

      Сайт может собирать у пользователей следующие данные:

      +
        +
      • +

        + Данные, которые пользователи сообщают о себе сами при подаче заявки, регистрации, + авторизации или заполнения профиля, в том числе ФИО и контактную информацию. + Конфиденциальные данные, такие как идентификатор и электронный адрес, используются для + идентификации пользователя. Данные профиля, размещённые публично по желанию + пользователя, которое выражается фактом их предоставления, используется для + демонстрации другим пользователям той информации о себе, которую пользователь готов + предоставить. +

        +
      • +
      • +

        + Данные, собранные автоматическим путем, такие, как cookie-файлы. Эти неперсонализированные + данные могут использоваться для сбора статистики и улучшения работы сайта. +

        +
      • +
      +
    2. +
    3. +

      + Издательство обеспечивает конфиденциальность персональных данных и применяет все + необходимые организационные и технические меры по их защите. +

      +
    4. +
    5. +

      + По желанию пользователя Издательство готово удалить любую информацию о нем, собранную + автоматическим путем. Для этого следует написать на адрес электронной почты{' '} + + welcome@discours.io + + . +

      +
    6. +
    7. +

      + Если в информации, предоставляемой Издательству Пользователем, содержатся персональные + данные последнего, то фактом их предоставления он соглашается + на их обработку любым способом, не запрещенным законодательством РФ. +

      +

      + Общедоступные видео на сайте могут транслироваться с YouTube и регулируются{' '} + + политикой конфиденциальности Google + + . Загрузка видео на сайт также означает согласие с  + + Условиями использования YouTube + + . +

      +
    8. +
    9. +

      + Данные, которые мы получаем от вас, мы используем только в соответствии + с принципами обработки данных, указанными в этом документе. +

      +
    10. +
    +

    Обратная связь

    +

    + Любые вопросы и предложения по поводу функционирования сайта можно направить + по электронной почте{' '} + + welcome@discours.io + {' '} + или через форму «предложить идею». +

    ) } diff --git a/src/pages/about/thanks.page.tsx b/src/pages/about/thanks.page.tsx index a11a9afd..4827f392 100644 --- a/src/pages/about/thanks.page.tsx +++ b/src/pages/about/thanks.page.tsx @@ -14,21 +14,21 @@ export const ThanksPage = () => { return ( -
    - - - - - - - - - - -

    - {ogTitle} -

    - {/* + + + + + + + + + + + +

    + {ogTitle} +

    + {/*

    Команда

    Константин Ворович — исполнительный директор, @@ -53,42 +53,41 @@ export const ThanksPage = () => { >

    */} -

    Неоценимый вклад в Дискурс внесли и вносят

    -

    - Мария Бессмертная, Дамир Бикчурин, Константин Ворович, Ян Выговский, Эльдар Гариффулин, Павел - Гафаров, Виктория Гендлина, Александр Гусев, Данила Давыдов, Константин Дубовик, Вячеслав - Еременко, Кристина Ибрагим, Екатерина Ильина, Анна Капаева, Яна Климова, Александр Коренков, Ирэна - Лесневская, Игорь Лобанов, Анастасия Лозовая, Григорий Ломизе, Евгений Медведев, Павел Никулин, - Николай Носачевский, Андрей Орловский, Михаил Панин, Антон Панов, Павел Пепперштейн, Любовь - Покровская, Илья Розовский, Денис Светличный, Павел Соколов, Сергей Стрельников, Глеб Струнников, - Николай Тарковский, Кирилл Филимонов, Алексей Хапов, Екатерина Харитонова -

    -

    Авторы

    -

    - Мы безмерно благодарны{' '} - - каждому автору - {' '} - за участие и поддержку проекта. Сегодня, когда для большинства деньги стали целью - и основным источником мотивации, бескорыстная помощь и основанный на энтузиазме - труд бесценны. Именно вы своим трудом каждый день делаете Дискурс таким, какой он есть. -

    -

    Иллюстраторы

    -

    - Ольга Аверинова, Регина Акчурина, Айгуль Берхеева, Екатерина Вакуленко, Анастасия Викулова, Мария - Власенко, Ванесса Гаврилова, Ольга Горше, Ксения Горшкова, Ангелина Гребенюкова, Илья Diliago, - Антон Жаголкин, Саша Керова, Ольга Машинец, Злата Мечетина, Тала Никитина, Никита Поздняков, - Матвей Сапегин, Татьяна Сафонова, Виктория Шибаева -

    -

    Меценаты

    -

    - Дискурс существует исключительно на пожертвования читателей. Мы бесконечно признательны - всем, кто нас поддерживает. Ваши пожертвования — финансовый фундамент журнала. - Благодаря вам мы развиваем платформу качественной журналистики, которая помогает самым разным - авторам быть услышанными. Стать нашим меценатом и подписаться на ежемесячную поддержку - проекта можно здесь. -

    -
    +

    Неоценимый вклад в Дискурс внесли и вносят

    +

    + Мария Бессмертная, Дамир Бикчурин, Константин Ворович, Ян Выговский, Эльдар Гариффулин, Павел + Гафаров, Виктория Гендлина, Александр Гусев, Данила Давыдов, Константин Дубовик, Вячеслав Еременко, + Кристина Ибрагим, Екатерина Ильина, Анна Капаева, Яна Климова, Александр Коренков, Ирэна Лесневская, + Игорь Лобанов, Анастасия Лозовая, Григорий Ломизе, Евгений Медведев, Павел Никулин, Николай + Носачевский, Андрей Орловский, Михаил Панин, Антон Панов, Павел Пепперштейн, Любовь Покровская, Илья + Розовский, Денис Светличный, Павел Соколов, Сергей Стрельников, Глеб Струнников, Николай Тарковский, + Кирилл Филимонов, Алексей Хапов, Екатерина Харитонова +

    +

    Авторы

    +

    + Мы безмерно благодарны{' '} + + каждому автору + {' '} + за участие и поддержку проекта. Сегодня, когда для большинства деньги стали целью + и основным источником мотивации, бескорыстная помощь и основанный на энтузиазме труд + бесценны. Именно вы своим трудом каждый день делаете Дискурс таким, какой он есть. +

    +

    Иллюстраторы

    +

    + Ольга Аверинова, Регина Акчурина, Айгуль Берхеева, Екатерина Вакуленко, Анастасия Викулова, Мария + Власенко, Ванесса Гаврилова, Ольга Горше, Ксения Горшкова, Ангелина Гребенюкова, Илья Diliago, Антон + Жаголкин, Саша Керова, Ольга Машинец, Злата Мечетина, Тала Никитина, Никита Поздняков, Матвей + Сапегин, Татьяна Сафонова, Виктория Шибаева +

    +

    Меценаты

    +

    + Дискурс существует исключительно на пожертвования читателей. Мы бесконечно признательны + всем, кто нас поддерживает. Ваши пожертвования — финансовый фундамент журнала. Благодаря + вам мы развиваем платформу качественной журналистики, которая помогает самым разным авторам + быть услышанными. Стать нашим меценатом и подписаться на ежемесячную поддержку проекта + можно здесь. +

    ) } diff --git a/src/pages/allTopics.page.tsx b/src/pages/allTopics.page.tsx index fa2daa37..49d54626 100644 --- a/src/pages/allTopics.page.tsx +++ b/src/pages/allTopics.page.tsx @@ -2,7 +2,7 @@ import type { PageProps } from './types' import { createSignal, onMount } from 'solid-js' -import { AllTopicsView } from '../components/Views/AllTopics' +import { AllTopics } from '../components/Views/AllTopics' import { PageLayout } from '../components/_shared/PageLayout' import { useLocalize } from '../context/localize' import { loadAllTopics } from '../stores/zine/topics' @@ -23,7 +23,7 @@ export const AllTopicsPage = (props: PageProps) => { return ( - + ) } diff --git a/src/pages/types.ts b/src/pages/types.ts index b36a7612..05fd3f61 100644 --- a/src/pages/types.ts +++ b/src/pages/types.ts @@ -50,4 +50,9 @@ export type UploadedFile = { originalFilename?: string } +export type FollowedInfo = { + value?: boolean + loaded?: boolean +} + export type SubscriptionFilter = 'all' | 'authors' | 'topics' | 'communities'