diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index a6e52b4d9a..6bdeebf555 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -368,6 +368,9 @@ dependencies: '@rush-temp/pod-backup': specifier: file:./projects/pod-backup.tgz version: file:projects/pod-backup.tgz(svelte@4.2.5) + '@rush-temp/pod-collaborator': + specifier: file:./projects/pod-collaborator.tgz + version: file:projects/pod-collaborator.tgz(svelte@4.2.5) '@rush-temp/pod-front': specifier: file:./projects/pod-front.tgz version: file:projects/pod-front.tgz(svelte@4.2.5) @@ -17382,7 +17385,7 @@ packages: dev: false file:projects/activity-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(ts-node@10.9.1): - resolution: {integrity: sha512-Nn2I0+ojLD+z9MVAzXaLhKCSRlxvD0Zcn3zdA9dITSw/AqaSf5DWHqRAKV9bN7BtYc6hQJCDQ8rXtkO4z1GFLw==, tarball: file:projects/activity-resources.tgz} + resolution: {integrity: sha512-DVHj9i9C5lbJ32UBOF+g2PFNkto0xeOjjTO3q0lfOUw/pyRji3eDOomUlQowQF/Ssfj2ENj2zbVf0qfwkajqFg==, tarball: file:projects/activity-resources.tgz} id: file:projects/activity-resources.tgz name: '@rush-temp/activity-resources' version: 0.0.0 @@ -17428,7 +17431,7 @@ packages: dev: false file:projects/activity.tgz(@types/node@16.11.68)(esbuild@0.16.17)(svelte@4.2.5)(ts-node@10.9.1): - resolution: {integrity: sha512-DwKYrRwF0ueeZMJ/FS/LEg+r/HhwqApV4K8cCmy0snR8ANFai7ySCs+4kswontH7boYtqqYXPc0Mh3GbJt9PKw==, tarball: file:projects/activity.tgz} + resolution: {integrity: sha512-h7I/WsfTBnPccjlbHUvZmZk8FQLucSPZ7kHmei9tY1rqKMX6MgDYnRN5sDQlrcKOJSwxoGRBK63OU1L2WBnzZg==, tarball: file:projects/activity.tgz} id: file:projects/activity.tgz name: '@rush-temp/activity' version: 0.0.0 @@ -17526,7 +17529,7 @@ packages: dev: false file:projects/attachment-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(ts-node@10.9.1): - resolution: {integrity: sha512-+Zr0eBeCAPnbhW+YAVY53/OQ0IY+ORNdIJXxWONDojcEvg7ANDm7EL/P/fyXMC6zst21/rJK/Wr+QDSK0zxQXA==, tarball: file:projects/attachment-resources.tgz} + resolution: {integrity: sha512-QPfn6dtMu8QvYwO0UoayUlCuk6qMfyOo836hndO4KKPvt71Q+1uTw5c2Q4vMNckG50tOH65S/gmTuPuNm9DQug==, tarball: file:projects/attachment-resources.tgz} id: file:projects/attachment-resources.tgz name: '@rush-temp/attachment-resources' version: 0.0.0 @@ -17687,7 +17690,7 @@ packages: dev: false file:projects/bitrix.tgz(@types/node@16.11.68)(esbuild@0.16.17)(svelte@4.2.5)(ts-node@10.9.1): - resolution: {integrity: sha512-b6hu02DfbmNCgR4rJ3btQJeOMKvH5Ce/+ctqexUT48rqdVQCcETVqLM7OU1oUKekwU5wRpiW5lhwXKeYqwh5Sw==, tarball: file:projects/bitrix.tgz} + resolution: {integrity: sha512-KSTAiioVIT5On4ssg74B1eLoBrcbAMC7iO6LIoIIvVZu9bftEF+3jJ443j4x9mdgUPABKo/c31bRwLNxl+K+Lw==, tarball: file:projects/bitrix.tgz} id: file:projects/bitrix.tgz name: '@rush-temp/bitrix' version: 0.0.0 @@ -18611,7 +18614,7 @@ packages: dev: false file:projects/generator.tgz(bufferutil@4.0.7)(svelte@4.2.5): - resolution: {integrity: sha512-bCdu7ucZf1ZuL61Q87kjGOzabTM8XkD11vvWNi7o7DPDr8ud3/aHp6y4SICqjMbUhrl/2ZEgLkUPYVCvfPifqw==, tarball: file:projects/generator.tgz} + resolution: {integrity: sha512-WqJiSVlaQiwgbKKdFJwEQPa2Ush2vKE2fpdG7g7YHA9dutOf15zJRRmsHh2tOPB3uXMK9Zuwt/6Z86VaCtLcvQ==, tarball: file:projects/generator.tgz} id: file:projects/generator.tgz name: '@rush-temp/generator' version: 0.0.0 @@ -19144,7 +19147,7 @@ packages: dev: false file:projects/lead-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(ts-node@10.9.1): - resolution: {integrity: sha512-3emCyoXlbVb3tt8RdawDUBOIkvZLcx+MhIP3UUToQMcV1JJRtEbTECGkzeH9bRQkrd868Gk//FCkcT1OrdsTYw==, tarball: file:projects/lead-resources.tgz} + resolution: {integrity: sha512-2OALBMPiNRw0MmWRFqPjSWhhu9MZ54e3o3Aq7YAUATHnnFMHDV5IkXxKHoMu4QGYU9zl4g2HZkhtkoHVvFwYNA==, tarball: file:projects/lead-resources.tgz} id: file:projects/lead-resources.tgz name: '@rush-temp/lead-resources' version: 0.0.0 @@ -19402,7 +19405,7 @@ packages: dev: false file:projects/model-activity.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-//ASHL5dpish05KjBlFlA0nq1KJgGKzy9vDxi3DRsO1qoW/YzoUH5dDoin/lpUpPFcQL/MYiXGUEzLRdSTKEiQ==, tarball: file:projects/model-activity.tgz} + resolution: {integrity: sha512-h99S1TU2W/00QUaigRyLYFQRVkDEVgftPYEQQ9rDFBriWC+jXu7A0ki5kn2DBOhMXElrVt29fH6u1apC3VSn/Q==, tarball: file:projects/model-activity.tgz} id: file:projects/model-activity.tgz name: '@rush-temp/model-activity' version: 0.0.0 @@ -19448,7 +19451,7 @@ packages: dev: false file:projects/model-attachment.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-tfIKh4gsy4ZnW70ClMfiKnGFIOz6S/vrzhJL7/Duz5CyR74+8woJjkXWS5iEO6d8XeuC1T3mpWVg2wb2FFLhmg==, tarball: file:projects/model-attachment.tgz} + resolution: {integrity: sha512-ScJBJ4HDMgGndwGTTm/BcYC2YRSdWn8L2OgZkWtWL4B5BtcKOGoiA5u9DZkov/zNHquW35XsT32zY2zCxpCqXQ==, tarball: file:projects/model-attachment.tgz} id: file:projects/model-attachment.tgz name: '@rush-temp/model-attachment' version: 0.0.0 @@ -19532,7 +19535,7 @@ packages: dev: false file:projects/model-chunter.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-CyZnNM0JmEbP2fPXJ78adHoszn6fTQ7liTJMR5ne7HtEVJDRY/gEl8uQrEZiy5x3ePb+05Xd5vj29+7SNNyGUQ==, tarball: file:projects/model-chunter.tgz} + resolution: {integrity: sha512-krEyc8zzxs/qe5tQdmEK6rzvW/unCd4dl6VyVev0QPucCbW2KAsT6jSTgQx99RoG4qL5bDuNpZQVeKPJ4mVZVg==, tarball: file:projects/model-chunter.tgz} id: file:projects/model-chunter.tgz name: '@rush-temp/model-chunter' version: 0.0.0 @@ -19618,7 +19621,7 @@ packages: dev: false file:projects/model-hr.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-UBeHLgRS2KIY+XTo/250tjhfqPD7zLv3cBGLK2FcV0hV+X/a6/6prm5d3NvK1vtO5TLwXmKRbws2Ceu1TlqlHA==, tarball: file:projects/model-hr.tgz} + resolution: {integrity: sha512-XAFnodBxPnnUfZ6BoXhKfgOsZdorvnDHcD4SB4RcBuxCaiqEcGvwLIM8Ju1fRS9ve8Vw8vYID8DDV3SHG0zUcw==, tarball: file:projects/model-hr.tgz} id: file:projects/model-hr.tgz name: '@rush-temp/model-hr' version: 0.0.0 @@ -19639,7 +19642,7 @@ packages: dev: false file:projects/model-inventory.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-LKv3XdE42Y6zqrVilgv08N5XhTvMfEoOqSttC1og32ZC8t+LkWaAEBUZcYJQ2+uwDIFDX/Uvumm4dCqDYLuohg==, tarball: file:projects/model-inventory.tgz} + resolution: {integrity: sha512-yeVONwzUERSl/byljh8wOhy3bIrJtgDrVm8acBe3labVP1c0N+OZI5hKw8vuNwit0eZfWrSN7XROBq1J/D4lqA==, tarball: file:projects/model-inventory.tgz} id: file:projects/model-inventory.tgz name: '@rush-temp/model-inventory' version: 0.0.0 @@ -19660,7 +19663,7 @@ packages: dev: false file:projects/model-lead.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-JUDsj9jK/I88S2NL+Q7GDBJwCxXfOP0EHxZo1g7ADI2309vIbUJ8YfL+UECnFCCD/qnlubEuslqP+hzGMYGRjA==, tarball: file:projects/model-lead.tgz} + resolution: {integrity: sha512-bWWfPoFmx7IpwRci83NyRUA5Eb3Cq4UXlXbMQUZo8oEcaslbN+6r720qxt6UrbInutM+FKG5H/O0LVh3vebEXQ==, tarball: file:projects/model-lead.tgz} id: file:projects/model-lead.tgz name: '@rush-temp/model-lead' version: 0.0.0 @@ -19681,7 +19684,7 @@ packages: dev: false file:projects/model-notification.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-vSP2+/pWeAJ06TB7b6K/fYJnQBHW/wNspoRjnEQodlBhhacSphYb5gcktf+XQ+vBXd25OaYnWryKnvKBSJu2FA==, tarball: file:projects/model-notification.tgz} + resolution: {integrity: sha512-fuNplsfiGO15yczpXNMUYg4OqqgpdrlJgXjVpwvyrdwgRfnpA+ICdqE96/2ql7swB35GuYgBb4gDWiAZkpYhWg==, tarball: file:projects/model-notification.tgz} id: file:projects/model-notification.tgz name: '@rush-temp/model-notification' version: 0.0.0 @@ -19744,7 +19747,7 @@ packages: dev: false file:projects/model-recruit.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-JQlaVZDojvVRJ4gGlmdZBnXGM2vXijUYOuAS06+s4TBrw1JzZ8dLpkVat38F+sys6uSR05sIC9dLU89EyewfLg==, tarball: file:projects/model-recruit.tgz} + resolution: {integrity: sha512-GhR4U4IsfC7Vf9izqW7yNlHyF3eiG/IhzQBdj44KaHk9nc8Kli4OR/Z0V08M8IIxAVWW1hrkuzw7fTbNZCk6LA==, tarball: file:projects/model-recruit.tgz} id: file:projects/model-recruit.tgz name: '@rush-temp/model-recruit' version: 0.0.0 @@ -19766,7 +19769,7 @@ packages: dev: false file:projects/model-request.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-yo5/lhZXaascZyAlNZqjnTSkbr2GGIfvQXRBOLhHx1iros836MuX2VyZOzRads70hwGmvOfTKRPjqU4V40BFFg==, tarball: file:projects/model-request.tgz} + resolution: {integrity: sha512-NVYMNnX309n7Y1dJS0WsO9EGSZCpe9Ek1z5aqPWpPE9lNrAPTDg9k5u+jXSAdLx3KCXWRfdat/h7I6vmebhpyQ==, tarball: file:projects/model-request.tgz} id: file:projects/model-request.tgz name: '@rush-temp/model-request' version: 0.0.0 @@ -19976,7 +19979,7 @@ packages: dev: false file:projects/model-server-notification.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-z53zr71kahP67Y2Qj2/doUj1Mjy6URxH9EZcndOnDfgezGF7keF4kxcGbnd/3lTI1PrXIuO63u861Mqi3P9jUg==, tarball: file:projects/model-server-notification.tgz} + resolution: {integrity: sha512-4F8IILvkrQD0AD9NOXKjHQLO/vEmgqbGAFg97Jg1KSgQQCLTbai0Igh67eP+CQEolOIKNgn2Jy315UlUd+ZmEw==, tarball: file:projects/model-server-notification.tgz} id: file:projects/model-server-notification.tgz name: '@rush-temp/model-server-notification' version: 0.0.0 @@ -19997,7 +20000,7 @@ packages: dev: false file:projects/model-server-openai.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-Y1pj31vk0lLKbre1OFF7s/GCeeaybWeJz2OAecowV5DvM4TV6kmhdbzy/Yxm/OpSdSv5eeNQt0NMMg+OhBkPHQ==, tarball: file:projects/model-server-openai.tgz} + resolution: {integrity: sha512-F3GyJcngnQm+XiZOom711tSgbyDnxPesEMrF5E99OcAo/OSAuq5FRuQApJIiSvIzxG3OkY5d9xg1fdqa/se27A==, tarball: file:projects/model-server-openai.tgz} id: file:projects/model-server-openai.tgz name: '@rush-temp/model-server-openai' version: 0.0.0 @@ -20249,7 +20252,7 @@ packages: dev: false file:projects/model-tags.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-G8EaEkiB9sG4VJejXMcbkwWOc4WRH1b+aPXzCTULz01j2jX8SgO6RbkpZfci8+dKQ97DkOJQ1Th9EBMd+y2nCQ==, tarball: file:projects/model-tags.tgz} + resolution: {integrity: sha512-8IMdeZBRZMTuVzzAMB3RVNm/XumQTKt+2mzeMjD5wF2YadXreHf95rLtYAR2URnToZPO0BS74KGR6+toixYVUw==, tarball: file:projects/model-tags.tgz} id: file:projects/model-tags.tgz name: '@rush-temp/model-tags' version: 0.0.0 @@ -20270,7 +20273,7 @@ packages: dev: false file:projects/model-task.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-Atb3myov3Z+KhKmxAZrLt4sR1MGKsJo2hkNBedoyZlZjSElB3F1sQO5ejX6kvIHuG3BTMbLmW1rY7yRVcCCKJg==, tarball: file:projects/model-task.tgz} + resolution: {integrity: sha512-/XjIgfOs85WSw9zRSG1qO85SgLU+V0H4BWMSg7bRznAPcikjvgpcItgaNslZZfU7+k/QSyKl+1CF97TdXqH0dQ==, tarball: file:projects/model-task.tgz} id: file:projects/model-task.tgz name: '@rush-temp/model-task' version: 0.0.0 @@ -20354,7 +20357,7 @@ packages: dev: false file:projects/model-tracker.tgz(svelte@4.2.5)(typescript@5.2.2): - resolution: {integrity: sha512-5pdixqnOwweq0OoASESuc5ymLIxfYew4R0MUtmvfZnZBWKABdzWsd/umRcOeHwvCyNVUkO4xYAgdMSx3btHwAA==, tarball: file:projects/model-tracker.tgz} + resolution: {integrity: sha512-Y2c+Z8HD/+Y1TM/YunTdFgA7psJjgf6SPFXREQSFXE8Xl+lEFg9UCiQlNDEjuyYEVbwgTWKw96jdTlcZnW7p6w==, tarball: file:projects/model-tracker.tgz} id: file:projects/model-tracker.tgz name: '@rush-temp/model-tracker' version: 0.0.0 @@ -20564,7 +20567,7 @@ packages: dev: false file:projects/notification.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(svelte@4.2.5)(ts-node@10.9.1)(typescript@5.2.2): - resolution: {integrity: sha512-mBA6utxqy/brBs/vIdyJhtoonI09UxzK5T3qRipVAZgyB+Gbq5Jh6PdRTHQilbM48+dE9SXkXzLKymrbR9Toiw==, tarball: file:projects/notification.tgz} + resolution: {integrity: sha512-oNhayGgvuFovvHZ4jXtAQg4j2EvLraxND2eh1kFBvkwgIMN7yE6Y2Fu+298r4A6Es69WO9tKicFJN8HXMxnUFw==, tarball: file:projects/notification.tgz} id: file:projects/notification.tgz name: '@rush-temp/notification' version: 0.0.0 @@ -20608,7 +20611,7 @@ packages: dev: false file:projects/openai.tgz(esbuild@0.16.17)(svelte@4.2.5)(ts-node@10.9.1): - resolution: {integrity: sha512-UHhuZXtZmgJWqGKl5NeenuYo69rrXtEsdind7OXNXM7MRmli9p0l66mX2fqAKgioALCU6nYFqtB1VCSPO4w+OQ==, tarball: file:projects/openai.tgz} + resolution: {integrity: sha512-2CuxM12rHcF5scfPqNHy+a6+Zb0f7Ff1Pi2jxSitF3QCVlxjc/RRemwcBBlnbqDVK3OMooYsGhIvFaV5c4b3AA==, tarball: file:projects/openai.tgz} id: file:projects/openai.tgz name: '@rush-temp/openai' version: 0.0.0 @@ -20826,6 +20829,41 @@ packages: - svelte dev: false + file:projects/pod-collaborator.tgz(svelte@4.2.5): + resolution: {integrity: sha512-EA4haWnRWJfmZcVe+p/tnb5qOwtYKak0sQ/aZoGGsKOxd/iV9VpcJezhDWui79iQ4dzVAnXEGyyTKB3Qqyk7cg==, tarball: file:projects/pod-collaborator.tgz} + id: file:projects/pod-collaborator.tgz + name: '@rush-temp/pod-collaborator' + version: 0.0.0 + dependencies: + '@types/jest': 29.5.5 + '@types/node': 16.11.68 + '@typescript-eslint/eslint-plugin': 6.11.0(@typescript-eslint/parser@6.11.0)(eslint@8.54.0)(typescript@5.2.2) + '@typescript-eslint/parser': 6.11.0(eslint@8.54.0)(typescript@5.2.2) + cross-env: 7.0.3 + esbuild: 0.16.17 + eslint: 8.54.0 + eslint-config-standard-with-typescript: 40.0.0(@typescript-eslint/eslint-plugin@6.11.0)(eslint-plugin-import@2.28.1)(eslint-plugin-n@15.7.0)(eslint-plugin-promise@6.1.1)(eslint@8.54.0)(typescript@5.2.2) + eslint-plugin-import: 2.28.1(eslint@8.54.0) + eslint-plugin-n: 15.7.0(eslint@8.54.0) + eslint-plugin-promise: 6.1.1(eslint@8.54.0) + jest: 29.7.0(@types/node@16.11.68)(ts-node@10.9.1) + prettier: 3.1.0 + prettier-plugin-svelte: 3.1.0(prettier@3.1.0)(svelte@4.2.5) + ts-jest: 29.1.1(esbuild@0.16.17)(jest@29.7.0)(typescript@5.2.2) + ts-node: 10.9.1(@types/node@16.11.68)(typescript@5.2.2) + typescript: 5.2.2 + transitivePeerDependencies: + - '@babel/core' + - '@jest/types' + - '@swc/core' + - '@swc/wasm' + - babel-jest + - babel-plugin-macros + - node-notifier + - supports-color + - svelte + dev: false + file:projects/pod-front.tgz(svelte@4.2.5): resolution: {integrity: sha512-zddL78pZTraJUeh9Bw71Z/OvME1mNxa6KHTBoCEo4Tla77Nl3bHyoziS5DgfJgCgXF3Y1Fc/3dCUM507YmHNlg==, tarball: file:projects/pod-front.tgz} id: file:projects/pod-front.tgz @@ -21139,7 +21177,7 @@ packages: dev: false file:projects/recruit-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(ts-node@10.9.1): - resolution: {integrity: sha512-CbiUlc0hGZj3qYBtg81txJzmsmz/3SWel5s9QnFv5K30Mf4zB5wGdMlPWqDsZqGMS5InzVYzVZdUL5vcX0USeQ==, tarball: file:projects/recruit-resources.tgz} + resolution: {integrity: sha512-Nar9I1V9+JCj02w1RctelBTjD3B6r9/D6qgxi7YpvnqHXCz7F0Qo7D+tAUFLzanRxkMbVBRVmm1B7qHpLG2b7Q==, tarball: file:projects/recruit-resources.tgz} id: file:projects/recruit-resources.tgz name: '@rush-temp/recruit-resources' version: 0.0.0 @@ -21327,7 +21365,7 @@ packages: dev: false file:projects/request.tgz(@types/node@16.11.68)(esbuild@0.16.17)(svelte@4.2.5)(ts-node@10.9.1): - resolution: {integrity: sha512-RH9Wtmwqxgp8ByBW5JJmLNai8oD3GYCgGJQqQHRJKmoU0h+nOBA6apNFp42PRE0U4GIyD0U88hILq1VILae7aA==, tarball: file:projects/request.tgz} + resolution: {integrity: sha512-zd3j5QUy82jmuGhaPB2ZvI0kR1kE8m0IUdU7ICnsFYfwk1UL3IPYZ1tkAPlYmNwWpYJ16Ll6pkq96hXNXdOIbg==, tarball: file:projects/request.tgz} id: file:projects/request.tgz name: '@rush-temp/request' version: 0.0.0 @@ -22525,7 +22563,7 @@ packages: dev: false file:projects/server-tracker-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(svelte@4.2.5)(ts-node@10.9.1): - resolution: {integrity: sha512-eP7iOhbsVOTizFoVY89Fk5u29U3U9y1EqKA9thJX/xy7E6WIsB9FZv0pfyBNPR0RTbvEEOb8lAhJmogmKijaoQ==, tarball: file:projects/server-tracker-resources.tgz} + resolution: {integrity: sha512-rzxlBU4Qtlyl6AO2W9zl7OY1GqKFrsbcZeenImwi2A3L+d79DYg2IWm+3ay8feGL6TVsOYZTwapA/yTyBD/1eg==, tarball: file:projects/server-tracker-resources.tgz} id: file:projects/server-tracker-resources.tgz name: '@rush-temp/server-tracker-resources' version: 0.0.0 @@ -23659,7 +23697,7 @@ packages: dev: false file:projects/tool.tgz(bufferutil@4.0.7)(svelte@4.2.5): - resolution: {integrity: sha512-3LtreorPtuADisnmP66QJXf2y52bla0wTDim2qACqYdSaf+Hjnd0ZJuvF3++Z7IkeeJ83kxJSMqnKrrAPqhhpQ==, tarball: file:projects/tool.tgz} + resolution: {integrity: sha512-YiOLUsyhvShU6cXfy9vf+CMJ+i0fQlj/nP5izXKEgU3/pzMwCnbWDlwkk5HKVplbPh1o/mx5s6m9cFt4Gp5Tng==, tarball: file:projects/tool.tgz} id: file:projects/tool.tgz name: '@rush-temp/tool' version: 0.0.0 @@ -23745,7 +23783,7 @@ packages: dev: false file:projects/tracker-resources.tgz(@types/node@16.11.68)(esbuild@0.16.17)(postcss-load-config@4.0.1)(postcss@8.4.31)(ts-node@10.9.1): - resolution: {integrity: sha512-XVKgXymWjzBDxg3Xj5OeZJ5IO87apijMaqD7MP6Mp4GgmRB9rYY5CItxS+1qq5FukhsO/ucQQNs49oZCO9SCiw==, tarball: file:projects/tracker-resources.tgz} + resolution: {integrity: sha512-i5zsncnHR61JBuwKvbmRaDRYA0okuWVXL1hva8n3SG39CO9aPg1fZZ3i+HDR3kUsuJxNMo61YitYXoKtjCJv0w==, tarball: file:projects/tracker-resources.tgz} id: file:projects/tracker-resources.tgz name: '@rush-temp/tracker-resources' version: 0.0.0 diff --git a/pods/collaborator/package.json b/pods/collaborator/package.json index 9f58b229df..3cefa1ed22 100644 --- a/pods/collaborator/package.json +++ b/pods/collaborator/package.json @@ -1,5 +1,5 @@ { - "name": "@hcengineering/collaborator", + "name": "@hcengineering/pod-collaborator", "version": "0.6.0", "main": "lib/index.js", "author": "Hardcore Engineering Inc.", @@ -33,11 +33,6 @@ "prettier": "^3.1.0", "ts-node": "^10.8.0", "typescript": "^5.2.2", - "@types/body-parser": "~1.19.2", - "@types/express": "^4.17.13", - "@types/cors": "^2.8.12", - "@types/compression": "~1.7.2", - "@types/ws": "^8.5.3", "jest": "^29.7.0", "ts-jest": "^29.1.1", "@types/jest": "^29.5.5", @@ -45,21 +40,7 @@ }, "dependencies": { "@hcengineering/core": "^0.6.28", - "@hcengineering/account": "^0.6.0", - "@hcengineering/platform": "^0.6.9", - "@hcengineering/server-tool": "^0.6.0", - "@hcengineering/server-token": "^0.6.7", - "@hcengineering/server-core": "^0.6.1", - "@hcengineering/attachment": "^0.6.9", - "@hcengineering/client": "^0.6.14", - "@hcengineering/client-resources": "^0.6.23", - "@hcengineering/minio": "^0.6.0", - "yjs": "^13.5.52", - "@hocuspocus/server": "^2.5.0", - "express": "^4.17.1", - "body-parser": "~1.19.1", - "cors": "^2.8.5", - "compression": "~1.7.4", - "ws": "^8.10.0" + "@hcengineering/collaborator": "^0.6.0", + "@hcengineering/platform": "^0.6.9" } } diff --git a/pods/collaborator/src/__start.ts b/pods/collaborator/src/__start.ts index 450774deb0..474f0679e7 100644 --- a/pods/collaborator/src/__start.ts +++ b/pods/collaborator/src/__start.ts @@ -1,6 +1,5 @@ // -// Copyright © 2020, 2021 Anticrm Platform Contributors. -// Copyright © 2021 Hardcore Engineering Inc. +// Copyright © 2023 Hardcore Engineering Inc. // // Licensed under the Eclipse Public License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. You may @@ -14,37 +13,5 @@ // limitations under the License. // -import { setMetadata } from '@hcengineering/platform' -import serverToken from '@hcengineering/server-token' -import { metricsContext } from './metrics' -import { start } from './server' - -import { MinioService } from '@hcengineering/minio' -import config from './config' - -setMetadata(serverToken.metadata.Secret, config.Secret) - -let minioPort = 9000 -let minioEndpoint = config.MinioEndpoint -const sp = minioEndpoint.split(':') -if (sp.length > 1) { - minioEndpoint = sp[0] - minioPort = parseInt(sp[1]) -} - -const minio = new MinioService({ - endPoint: minioEndpoint, - port: minioPort, - useSSL: false, - accessKey: config.MinioAccessKey, - secretKey: config.MinioSecretKey -}) - -const server = start(metricsContext, config, minio) - -const close = (): void => { - server() -} -process.on('SIGINT', close) -process.on('SIGTERM', close) -process.on('exit', close) +import { startCollaborator } from '@hcengineering/collaborator' +startCollaborator() diff --git a/pods/collaborator/src/index.ts b/pods/collaborator/src/index.ts index d53e278b0d..75c8db4cf1 100644 --- a/pods/collaborator/src/index.ts +++ b/pods/collaborator/src/index.ts @@ -1,6 +1,5 @@ // -// Copyright © 2020, 2021 Anticrm Platform Contributors. -// Copyright © 2021, 2022 Hardcore Engineering Inc. +// Copyright © 2023 Hardcore Engineering Inc. // // Licensed under the Eclipse Public License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. You may @@ -14,5 +13,4 @@ // limitations under the License. // -export type { Config } from './config' -export { start } from './server' +export * from '@hcengineering/collaborator' diff --git a/rush.json b/rush.json index 79d020d44e..6cbe72f9fe 100644 --- a/rush.json +++ b/rush.json @@ -786,6 +786,11 @@ "projectFolder": "server/account", "shouldPublish": false }, + { + "packageName": "@hcengineering/collaborator", + "projectFolder": "server/collaborator", + "shouldPublish": false + }, { "packageName": "@hcengineering/tool", "projectFolder": "dev/tool", @@ -797,7 +802,7 @@ "shouldPublish": false }, { - "packageName": "@hcengineering/collaborator", + "packageName": "@hcengineering/pod-collaborator", "projectFolder": "pods/collaborator", "shouldPublish": false }, diff --git a/server/collaborator/.eslintrc.js b/server/collaborator/.eslintrc.js new file mode 100644 index 0000000000..72235dc283 --- /dev/null +++ b/server/collaborator/.eslintrc.js @@ -0,0 +1,7 @@ +module.exports = { + extends: ['./node_modules/@hcengineering/platform-rig/profiles/default/eslint.config.json'], + parserOptions: { + tsconfigRootDir: __dirname, + project: './tsconfig.json' + } +} diff --git a/server/collaborator/.npmignore b/server/collaborator/.npmignore new file mode 100644 index 0000000000..e3ec093c38 --- /dev/null +++ b/server/collaborator/.npmignore @@ -0,0 +1,4 @@ +* +!/lib/** +!CHANGELOG.md +/lib/**/__tests__/ diff --git a/server/collaborator/Dockerfile b/server/collaborator/Dockerfile new file mode 100644 index 0000000000..c773895ada --- /dev/null +++ b/server/collaborator/Dockerfile @@ -0,0 +1,9 @@ + +FROM node:20-alpine + +WORKDIR /usr/src/app + +COPY bundle.js ./ + +EXPOSE 3078 +CMD [ "node", "bundle.js" ] diff --git a/server/collaborator/build.sh b/server/collaborator/build.sh new file mode 100755 index 0000000000..0301e46926 --- /dev/null +++ b/server/collaborator/build.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# +# Copyright © 2020, 2021 Anticrm Platform Contributors. +# Copyright © 2021 Hardcore Engineering Inc. +# +# Licensed under the Eclipse Public License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. You may +# obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# +# See the License for the specific language governing permissions and +# limitations under the License. +# + +rushx bundle +rushx docker:build +rushx docker:push diff --git a/server/collaborator/config/rig.json b/server/collaborator/config/rig.json new file mode 100644 index 0000000000..0110930f55 --- /dev/null +++ b/server/collaborator/config/rig.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json", + "rigPackageName": "@hcengineering/platform-rig" +} diff --git a/server/collaborator/jest.config.js b/server/collaborator/jest.config.js new file mode 100644 index 0000000000..2cfd408b67 --- /dev/null +++ b/server/collaborator/jest.config.js @@ -0,0 +1,7 @@ +module.exports = { + preset: 'ts-jest', + testEnvironment: 'node', + testMatch: ['**/?(*.)+(spec|test).[jt]s?(x)'], + roots: ["./src"], + coverageReporters: ["text-summary", "html"] +} diff --git a/server/collaborator/package.json b/server/collaborator/package.json new file mode 100644 index 0000000000..9f58b229df --- /dev/null +++ b/server/collaborator/package.json @@ -0,0 +1,65 @@ +{ + "name": "@hcengineering/collaborator", + "version": "0.6.0", + "main": "lib/index.js", + "author": "Hardcore Engineering Inc.", + "license": "EPL-2.0", + "scripts": { + "build": "tsc", + "build:watch": "tsc", + "lint:fix": "eslint --fix src", + "bundle": "esbuild src/__start.ts --bundle --platform=node > bundle.js", + "docker:build": "docker build -t hardcoreeng/collaborator .", + "docker:staging": "../../common/scripts/docker_tag.sh hardcoreeng/collaborator staging", + "docker:push": "../../common/scripts/docker_tag.sh hardcoreeng/collaborator", + "run-local": "cross-env TRANSACTOR_URL=ws://localhost:3333 SECRET=secret MINIO_ENDPOINT=localhost MINIO_ACCESS_KEY=minioadmin MINIO_SECRET_KEY=minioadmin ts-node src/__start.ts", + "run-bundle": "cross-env TRANSACTOR_URL=ws://localhost:3333 SECRET=secret MINIO_ENDPOINT=localhost MINIO_ACCESS_KEY=minioadmin MINIO_SECRET_KEY=minioadmin node ./bundle.js", + "lint": "eslint src", + "format": "format src", + "test": "jest --passWithNoTests --silent" + }, + "devDependencies": { + "cross-env": "~7.0.3", + "@hcengineering/platform-rig": "^0.6.0", + "@types/node": "~16.11.12", + "@typescript-eslint/eslint-plugin": "^6.11.0", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-promise": "^6.1.1", + "eslint-plugin-n": "^15.4.0", + "eslint": "^8.54.0", + "esbuild": "^0.16.14", + "@typescript-eslint/parser": "^6.11.0", + "eslint-config-standard-with-typescript": "^40.0.0", + "prettier": "^3.1.0", + "ts-node": "^10.8.0", + "typescript": "^5.2.2", + "@types/body-parser": "~1.19.2", + "@types/express": "^4.17.13", + "@types/cors": "^2.8.12", + "@types/compression": "~1.7.2", + "@types/ws": "^8.5.3", + "jest": "^29.7.0", + "ts-jest": "^29.1.1", + "@types/jest": "^29.5.5", + "prettier-plugin-svelte": "^3.1.0" + }, + "dependencies": { + "@hcengineering/core": "^0.6.28", + "@hcengineering/account": "^0.6.0", + "@hcengineering/platform": "^0.6.9", + "@hcengineering/server-tool": "^0.6.0", + "@hcengineering/server-token": "^0.6.7", + "@hcengineering/server-core": "^0.6.1", + "@hcengineering/attachment": "^0.6.9", + "@hcengineering/client": "^0.6.14", + "@hcengineering/client-resources": "^0.6.23", + "@hcengineering/minio": "^0.6.0", + "yjs": "^13.5.52", + "@hocuspocus/server": "^2.5.0", + "express": "^4.17.1", + "body-parser": "~1.19.1", + "cors": "^2.8.5", + "compression": "~1.7.4", + "ws": "^8.10.0" + } +} diff --git a/server/collaborator/src/__start.ts b/server/collaborator/src/__start.ts new file mode 100644 index 0000000000..96bc1d1239 --- /dev/null +++ b/server/collaborator/src/__start.ts @@ -0,0 +1,18 @@ +// +// Copyright © 2020, 2021 Anticrm Platform Contributors. +// Copyright © 2021 Hardcore Engineering Inc. +// +// Licensed under the Eclipse Public License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. You may +// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import { startCollaborator } from './starter' +startCollaborator() diff --git a/pods/collaborator/src/config.ts b/server/collaborator/src/config.ts similarity index 100% rename from pods/collaborator/src/config.ts rename to server/collaborator/src/config.ts diff --git a/pods/collaborator/src/context.ts b/server/collaborator/src/context.ts similarity index 100% rename from pods/collaborator/src/context.ts rename to server/collaborator/src/context.ts diff --git a/pods/collaborator/src/extensions/action.ts b/server/collaborator/src/extensions/action.ts similarity index 100% rename from pods/collaborator/src/extensions/action.ts rename to server/collaborator/src/extensions/action.ts diff --git a/pods/collaborator/src/extensions/request.ts b/server/collaborator/src/extensions/request.ts similarity index 100% rename from pods/collaborator/src/extensions/request.ts rename to server/collaborator/src/extensions/request.ts diff --git a/pods/collaborator/src/extensions/storage.ts b/server/collaborator/src/extensions/storage.ts similarity index 100% rename from pods/collaborator/src/extensions/storage.ts rename to server/collaborator/src/extensions/storage.ts diff --git a/server/collaborator/src/index.ts b/server/collaborator/src/index.ts new file mode 100644 index 0000000000..fed2809351 --- /dev/null +++ b/server/collaborator/src/index.ts @@ -0,0 +1,19 @@ +// +// Copyright © 2020, 2021 Anticrm Platform Contributors. +// Copyright © 2021, 2022 Hardcore Engineering Inc. +// +// Licensed under the Eclipse Public License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. You may +// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// +// See the License for the specific language governing permissions and +// limitations under the License. +// + +export type { Config } from './config' +export { start } from './server' +export { startCollaborator } from './starter' diff --git a/pods/collaborator/src/metrics.ts b/server/collaborator/src/metrics.ts similarity index 100% rename from pods/collaborator/src/metrics.ts rename to server/collaborator/src/metrics.ts diff --git a/pods/collaborator/src/server.ts b/server/collaborator/src/server.ts similarity index 100% rename from pods/collaborator/src/server.ts rename to server/collaborator/src/server.ts diff --git a/server/collaborator/src/starter.ts b/server/collaborator/src/starter.ts new file mode 100644 index 0000000000..0ac31d0c5a --- /dev/null +++ b/server/collaborator/src/starter.ts @@ -0,0 +1,53 @@ +// +// Copyright © 2020, 2021 Anticrm Platform Contributors. +// Copyright © 2021 Hardcore Engineering Inc. +// +// Licensed under the Eclipse Public License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. You may +// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import { MinioService } from '@hcengineering/minio' +import { setMetadata } from '@hcengineering/platform' +import serverToken from '@hcengineering/server-token' + +import config from './config' +import { metricsContext } from './metrics' +import { start } from './server' + +export function startCollaborator (): void { + setMetadata(serverToken.metadata.Secret, config.Secret) + + let minioPort = 9000 + let minioEndpoint = config.MinioEndpoint + const sp = minioEndpoint.split(':') + if (sp.length > 1) { + minioEndpoint = sp[0] + minioPort = parseInt(sp[1]) + } + + const minio = new MinioService({ + endPoint: minioEndpoint, + port: minioPort, + useSSL: false, + accessKey: config.MinioAccessKey, + secretKey: config.MinioSecretKey + }) + + const server = start(metricsContext, config, minio) + + const close = (): void => { + server() + } + + process.on('SIGINT', close) + process.on('SIGTERM', close) + process.on('exit', close) +} diff --git a/pods/collaborator/src/types.ts b/server/collaborator/src/types.ts similarity index 100% rename from pods/collaborator/src/types.ts rename to server/collaborator/src/types.ts diff --git a/server/collaborator/tsconfig.json b/server/collaborator/tsconfig.json new file mode 100644 index 0000000000..4e0fa3fe7f --- /dev/null +++ b/server/collaborator/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "./node_modules/@hcengineering/platform-rig/profiles/default/tsconfig.json", + + "compilerOptions": { + "rootDir": "./src", + "outDir": "./lib", + "tsBuildInfoFile": ".build/build.tsbuildinfo" + } +} \ No newline at end of file