{"_id":"@affinity-lab/sk-carbonite-attachment-server","_rev":"5-e5f004e75cb95823b23a17d975a2f87c","name":"@affinity-lab/sk-carbonite-attachment-server","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.2":{"name":"@affinity-lab/sk-carbonite-attachment-server","version":"1.0.2","main":"index.js","author":{"name":"Gergely Laborci"},"dependencies":{},"gitHead":"6d3da50e920d117bda36c86cba22c24ce3512501","_id":"@affinity-lab/sk-carbonite-attachment-server@1.0.2","_nodeVersion":"18.9.0","_npmVersion":"8.19.1","dist":{"integrity":"sha512-a198cWE46m9ixxf97XDdGN8i8Dm5roYMi2VHKu4yo73IK+i21pxCIQ/aPnft/bBRx7ToQqueb8dQE4oQJMpftQ==","shasum":"9f46d948446a7e25498e637e55e0685327060610","tarball":"https://registry.npmjs.org/@affinity-lab/sk-carbonite-attachment-server/-/sk-carbonite-attachment-server-1.0.2.tgz","fileCount":4,"unpackedSize":4059,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCO2hoA+Uzw0ISqHGZZQUXq9oBAyBSLlJ78LOctNBflgQIgPInnirHG5NulIF5mroMZKlj8yamGE5VzAQNu7SbtmrI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkIp4SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrbtw//W15MCCPWOk9ckDR8h92Vl1+iedsxCDH4xXxfjOTh2A/zpkm0\r\nnDb6ZSzgVEQ1QvnnH8R7ZXTJYG9+mMhrZNS7e0A815UpPiZjI7mAFcF395Z8\r\nf0hvQ0K3n8eBHGo2uF7g0RtEC4IuZXZklfcnRxEG1aAQum0l3sap1LGHu07M\r\nyyL1L0bdmUXDJO12xFiD8TGVE4WuiXcNJpx/0Y6UDNmOEshrm/w8GxENXged\r\nUIw1dj0wfDwyuhtSAexhB+ltkn+8UyuQnX/6H+qRIuBYZKv44pnLeXcHfHQ4\r\nE9jMgW+VW57cUKMrPxq+Y3UjvxCFp/8Ru2oy2O4CNICIiKhUNVC9chkIajLa\r\nWnNwPvfJbabcSFuHbHdMBakX1mxyXWyDUXshraG6gWfG359UCgv4HmMHo7GF\r\nlbWllzZQGiONl0dH3Af3UB7BF+PNVE13aPB67jPpls6S/RQqPgJTtBZQwuHe\r\nDGKIa/cXWz7ey/+U+M7NKqkOJmfbffy3u3fvasWqMdnbzwEoVNedJwxOnvjS\r\nSuTtfK6j16GRqTRpZidwkCQKYITejp2GgY8KZDPI7lXqYF/qJMrOmJzcQU9H\r\n1pZgPHtnwo7XaSEL6pJy6pG5cOZH+L8zvIt3dP7cVOVJphFuNJdj1GnMLf19\r\nQ0eCFAZYkGf3Tjd8ZPTDHeTBHKX5CIpcElw=\r\n=JZqQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"laborci","email":"gergely@laborci.hu"},"directories":{},"maintainers":[{"name":"laborci","email":"gergely@laborci.hu"},{"name":"affinity-lab-organizer","email":"laborci.gergely+affinity@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sk-carbonite-attachment-server_1.0.2_1679990290375_0.6716637283654983"},"_hasShrinkwrap":false},"1.0.3":{"name":"@affinity-lab/sk-carbonite-attachment-server","version":"1.0.3","main":"index.js","author":{"name":"Gergely Laborci"},"dependencies":{},"gitHead":"6d3da50e920d117bda36c86cba22c24ce3512501","description":"It makes carbonite attachment files usable in SvelteKit projects.","_id":"@affinity-lab/sk-carbonite-attachment-server@1.0.3","_nodeVersion":"18.9.0","_npmVersion":"8.19.1","dist":{"integrity":"sha512-fQXHBq2GhNH8cwy88k9CWn7bsryhn/nOUf5gdwr4B1K0EhXlz319TXdsAJhf6ttgN4MLjoRGMTJe6Coe92Y9sg==","shasum":"e8a723880b3ba84738507f9268872e237d140628","tarball":"https://registry.npmjs.org/@affinity-lab/sk-carbonite-attachment-server/-/sk-carbonite-attachment-server-1.0.3.tgz","fileCount":5,"unpackedSize":6449,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDltQ98Ejcusy+HVvMdd3Ffp9kxYeXqrUjyVOzZyDELgAiEAhtDwlxGIGPScwJIRp85i5y9+D1E0v1z4priR46rhzsQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkIreUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZMg/9EDhG9GQGVqprzDqbkZhOgUzIlhC+4XK3Gy07yd9hxDSrUlR2\r\nDLoPsfPlJRd6PlSm3buRlMuESeU4a2hmHK9xgp3AzG/Kg02qJJJl9UoH+XyU\r\nMochyIDoWNswAt8rVnB5mhOVuhbuKqWzsIlA/EV2bWUarahl9dr2bkin10pz\r\nC/om7CwJh1ArgrHRe7+aiDIq3hP7rgwMM+dveA+zmqz0W4DKvdvYALl/2tyx\r\nT/FqGnw6nXUGNI3z/swDiCdn0IhlxNyzLPBBOa8Hn/PuByt8WtRrLmnjkryL\r\nu6IUxpKqujX1g6s6J4Q6rzw+5DrNkU6XBCk6mdoAjLzaWi1HMS0qIiym2tQd\r\nWJAmI7O0AK7e14WAultNAquzgxqsvqIC6KKrlKdRhorgY7BqAvyAJCC65EdK\r\n3t3n/sWzrYHSE9OnE3m+tr7kkI4Pzqsog0F/htGDDoolY7Ct9L4dEE9BFl0z\r\nFo47hB9sqSLxHorJCKoOQGjESn8cSf/OOkQAOpVE9xPm2icLTIr8UVKOgUwt\r\nMdTmSQRMLFX1JDl/guPJvGXn52URLG1JqYWfWhdVAPfMiNSVE8lm/0P84kxR\r\nQXWW57SG+18WHUWFJdbAXH4nHZHb1st0o1P6rPgnM9FuOenO0WNIKC5KQG4R\r\nkZj1OHo0ulcLbTwhylh8SiGwVO1Lv9sI+ws=\r\n=GH7P\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"laborci","email":"gergely@laborci.hu"},"directories":{},"maintainers":[{"name":"laborci","email":"gergely@laborci.hu"},{"name":"affinity-lab-organizer","email":"laborci.gergely+affinity@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sk-carbonite-attachment-server_1.0.3_1679996820483_0.9688673591984533"},"_hasShrinkwrap":false},"1.0.4":{"name":"@affinity-lab/sk-carbonite-attachment-server","version":"1.0.4","main":"index.js","author":{"name":"Gergely Laborci"},"dependencies":{},"gitHead":"6d3da50e920d117bda36c86cba22c24ce3512501","description":"It makes carbonite attachment files usable in SvelteKit projects.","_id":"@affinity-lab/sk-carbonite-attachment-server@1.0.4","_nodeVersion":"18.9.0","_npmVersion":"8.19.1","dist":{"integrity":"sha512-TBhZrr9+lr00V6/5rA04W3MJcukzmpIIlbWcMzVRDjZWmUV3bjGpYIdwNkOz9O6ScemHpXMty8eSBVk7+LdrwA==","shasum":"f097ec5352d76eaa7b4a1411f80b198a1e193b24","tarball":"https://registry.npmjs.org/@affinity-lab/sk-carbonite-attachment-server/-/sk-carbonite-attachment-server-1.0.4.tgz","fileCount":5,"unpackedSize":6536,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBhg5v1N9zVrFv4gWdoqtO0cmuHWDEF72oAWLHGPLeepAiEA6jsQLpM61I0BiK3y3LGTvhbGhaXnad2qxqHMH2aryRA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJE/0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoCMA//ciHuM22iW0TUWZ8jexE0Ena3W1xasB4IXmLUd1taNiTmSNEb\r\nvEoq0irtdOSrZhzTiONaXM9uMUJ8Y/qRC+45zrVoLDccSM8mkyJ7PX6zZvMw\r\nBCwU1SkMer1OPthp5bTVbFHwi588ctwHY6U5ZzgVXRsloHoLuyWklzqyGO8m\r\nYbQBlp4LXyvid73cLZzcdhBfXQA1dftcgIDzIFPLJ9omnrpgcHOVJeRyX0xr\r\nXMezb9AjJ2b3sRKWxfm5MTkj9rigjnRI2tRPn436+JjfQt1UvwEwrMIeIV3S\r\n0jOueMyZ4Z5HYy5A59xggksMxcNlmD3hJkg7zHfiCryI2LhY+G4qqZPDlYGi\r\nU2mlouq1dSPZRtDXzrCs9975G288IinMXRAQOv7dkkp47GGxid8N/64P56yl\r\nRip7mbGCqlJbwX8jMZteypdCvdi/jCqKukSGPOS+XXmqREn2n8waUklUgR9O\r\nL4VXStjDqHz8sAa12LBgzoL7m49GwABz9ByVTXJI9TGakPsR7RJMJqilF3V5\r\nqDDWgfBfV8ET2ezebUSrtYyW/6+UeB5l8C0054MqpIFhl+PnuDbEORWuVBFF\r\n+z4ZJDeSRguMWEqaOwdDKGo6mo9qFnyUu/dLcuUua0NVvrptUX4EE7pttHjA\r\nVnpKmUZXvj0UAGsKcLkElWVgYAQI/v9AYkY=\r\n=xl+o\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"laborci","email":"gergely@laborci.hu"},"directories":{},"maintainers":[{"name":"laborci","email":"gergely@laborci.hu"},{"name":"affinity-lab-organizer","email":"laborci.gergely+affinity@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sk-carbonite-attachment-server_1.0.4_1680101364490_0.1628396157751364"},"_hasShrinkwrap":false}},"time":{"created":"2023-03-28T07:58:10.225Z","1.0.2":"2023-03-28T07:58:10.532Z","modified":"2024-04-22T12:08:19.279Z","1.0.3":"2023-03-28T09:47:00.722Z","1.0.4":"2023-03-29T14:49:24.632Z"},"maintainers":[{"email":"szaj.szabolcs@gmail.com","name":"frogyboy"},{"email":"gabberson0312@gmail.com","name":"gabi0312"},{"email":"divad.sari@gmail.com","name":"davdom004"},{"email":"gergely@laborci.hu","name":"laborci"},{"email":"laborci.gergely+affinity@gmail.com","name":"affinity-lab-organizer"}],"author":{"name":"Gergely Laborci"},"readme":"# @affinity-lab/sk-carbonite-attachment-server\n\nIt makes carbonite attachment files usable in SvelteKit projects.\n\n## Installation\n\n```\nnpm i -s @affinity-lab/sk-carbonite-attachment-server\n```\n## Using the `FileUrlProvider`\n\n### Set up the service\n\n> `$lib/services/file-url-provider.ts`\n```ts\nimport {PUBLIC_FILE_URL_PREFIX, PUBLIC_IMG_URL_PREFIX} from \"$env/static/public\";\n// you must import the file itself!\nimport FileProvider from \"@affinity-lab/sk-carbonite-attachment-server/src/file-provider\";\n\n\nexport const fileUrlProvider = new FileProvider(PUBLIC_FILE_URL_PREFIX, PUBLIC_IMG_URL_PREFIX);\n```\n\nThis service can make url-s for carbonite attachments.\n\n```sveltehtml\n<script lang=\"ts\">\n\timport fileUrlProvider from \"$lib/services/file-url-provider.ts\"\n</script>\n\n<img src={fileUrlProvider.file(file)}>\n<!--\n\tThe file argument must be a carbonite attachment file:\n\ttype File = {\n\t\tid: number,\n\t\tname: string,\n\t\tsize: number,\n\t\ttitle: null | string,\n\t\tver: string,\n\t}\n-->\n```\n\nThis can also provide urls for thumbnail creation.\n```sveltehtml\n<script lang=\"ts\">\n\timport fileUrlProvider from \"$lib/services/file-url-provider.ts\"\n</script>\n\n<img src={fileUrlProvider.img(file, 64, 64).x1.png}>\n<!--\n\targuments: file:File, width:number, height:number\n\tyou can use x1...x4 to set the resolution multiplier (default x1)\n\tfinally you need to get png, webp, jpg to retrieve the real url for the file\n-->\n```\n\n## Using the `FileServer`\n\n### Set up the service\n\n> `$lib/services/file-server.ts`\n```ts\nimport {PRIVATE_ATTACHMENT_MAX_AGE, PRIVATE_IMG_MAX_AGE, PRIVATE_IMG_PATH} from \"$env/static/private\";\nimport FileServer from \"@affinity-lab/sk-carbonite-attachment-server/src/file-server\";\n\nexport const fileServer = new FileServer(\n\tPRIVATE_IMG_PATH,\n\tparseInt(PRIVATE_ATTACHMENT_MAX_AGE),\n\tparseInt(PRIVATE_IMG_MAX_AGE)\n);\n```\n\n### Add service to routes\n\n> `src/routes/(files)/~fs/[...path]/+server.ts`\n```ts\nimport type {RequestEvent} from \"@sveltejs/kit\";\nimport {fileServer} from \"$lib/services/file-server\";\nexport const GET = async (e: RequestEvent): Promise<Response> => fileServer.file(e.params.path, e);\n```\n\n> `src/routes/(files)/~img/[...path]/+server.ts`\n```ts\nimport type {RequestEvent} from \"@sveltejs/kit\";\nimport {fileServer} from \"$lib/services/file-server\";\nexport const GET = async (event: RequestEvent): Promise<Response> => fileServer.img(event.params.path, event);\n```","readmeFilename":"readme.md","description":"It makes carbonite attachment files usable in SvelteKit projects."}