diff --git a/bun.lock b/bun.lock index 10ebde3..377cc20 100644 --- a/bun.lock +++ b/bun.lock @@ -10,37 +10,37 @@ "@hattip/adapter-node": "^0.0.49", "@hiogawa/tiny-rpc": "^0.2.3-pre.18", "@hiogawa/utils": "^1.7.0", - "@hono/node-server": "^1.19.11", + "@hono/node-server": "^1.19.12", "@hono/zod-validator": "^0.7.6", - "@pinia/colada": "^1.0.0", + "@pinia/colada": "^1.1.0", "@tanstack/vue-table": "^8.21.3", "@unhead/vue": "^2.1.12", "@vueuse/core": "^14.2.1", "aws4fetch": "^1.0.20", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "hono": "^4.12.7", - "i18next": "^25.8.18", - "i18next-http-backend": "^3.0.2", + "hono": "^4.12.9", + "i18next": "^26.0.3", + "i18next-http-backend": "^3.0.4", "i18next-vue": "^5.4.0", "is-mobile": "^5.0.0", "pinia": "^3.0.4", "superjson": "^2.2.6", "tailwind-merge": "^3.5.0", "tweetnacl": "^1.0.3", - "vue": "^3.5.30", - "vue-router": "^5.0.3", + "vue": "^3.5.31", + "vue-router": "^5.0.4", "zod": "^4.3.6", }, "devDependencies": { - "@types/bun": "^1.3.10", - "@vitejs/plugin-vue": "^6.0.4", - "@vitejs/plugin-vue-jsx": "^5.1.4", - "estree-walker": "2.0.2", - "unocss": "^66.6.6", + "@types/bun": "^1.3.11", + "@vitejs/plugin-vue": "^6.0.5", + "@vitejs/plugin-vue-jsx": "^5.1.5", + "estree-walker": "3.0.3", + "unocss": "^66.6.7", "unplugin-auto-import": "^21.0.0", - "unplugin-vue-components": "^31.0.0", - "vite": "^8.0.0-beta.16", + "unplugin-vue-components": "^32.0.0", + "vite": "^8.0.3", "vite-ssr-components": "^0.5.2", }, }, @@ -128,7 +128,7 @@ "@hiogawa/utils": ["@hiogawa/utils@1.7.0", "", {}, "sha512-ghiEFWBR1NENoHn+lSuW7liicTIzVPN+8Srm5UedCTw43gus0mlse6Wp2lz6GmbOXJ/CalMPp/0Tz2X8tajkAg=="], - "@hono/node-server": ["@hono/node-server@1.19.11", "", { "peerDependencies": { "hono": "^4" } }, "sha512-dr8/3zEaB+p0D2n/IUrlPF1HZm586qgJNXK1a9fhg/PzdtkK7Ksd5l312tJX2yBuALqDYBlG20QEbayqPyxn+g=="], + "@hono/node-server": ["@hono/node-server@1.19.12", "", { "peerDependencies": { "hono": "^4" } }, "sha512-txsUW4SQ1iilgE0l9/e9VQWmELXifEFvmdA1j6WFh/aFPj99hIntrSsq/if0UWyGVkmrRPKA1wCeP+UCr1B9Uw=="], "@hono/zod-validator": ["@hono/zod-validator@0.7.6", "", { "peerDependencies": { "hono": ">=3.9.0", "zod": "^3.25.0 || ^4.0.0" } }, "sha512-Io1B6d011Gj1KknV4rXYz4le5+5EubcWEU/speUjuw9XMMIaP3n78yXLhjd2A3PXaXaUwEAluOiAyLqhBEJgsw=="], @@ -194,7 +194,7 @@ "@oxc-project/types": ["@oxc-project/types@0.122.0", "", {}, "sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA=="], - "@pinia/colada": ["@pinia/colada@1.0.0", "", { "peerDependencies": { "pinia": "^2.2.6 || ^3.0.0", "vue": "^3.5.17" } }, "sha512-YKSybA6wusFK4CAUPzItoSgPCfScVnnnO2MSlmaaisE/L7luE77GxFyhTzipM8IbvbXh4zkCy97OE7w9WX34wA=="], + "@pinia/colada": ["@pinia/colada@1.1.0", "", { "peerDependencies": { "pinia": "^2.2.6 || ^3.0.0", "vue": "^3.5.17" } }, "sha512-GoTOlaDuQuF+9Lj5MbY2oOOZeJSP/I0U9/+Ugo5nfCymlWSyjFFjE7QcHageNL7tQr+tfepb13ks8+qO6uSV/A=="], "@polka/url": ["@polka/url@1.0.0-next.29", "", {}, "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww=="], @@ -220,35 +220,35 @@ "@quansync/fs": ["@quansync/fs@1.0.0", "", { "dependencies": { "quansync": "^1.0.0" } }, "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ=="], - "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0-rc.11", "", { "os": "android", "cpu": "arm64" }, "sha512-SJ+/g+xNnOh6NqYxD0V3uVN4W3VfnrGsC9/hoglicgTNfABFG9JjISvkkU0dNY84MNHLWyOgxP9v9Y9pX4S7+A=="], + "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0-rc.12", "", { "os": "android", "cpu": "arm64" }, "sha512-pv1y2Fv0JybcykuiiD3qBOBdz6RteYojRFY1d+b95WVuzx211CRh+ytI/+9iVyWQ6koTh5dawe4S/yRfOFjgaA=="], - "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0-rc.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-7WQgR8SfOPwmDZGFkThUvsmd/nwAWv91oCO4I5LS7RKrssPZmOt7jONN0cW17ydGC1n/+puol1IpoieKqQidmg=="], + "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0-rc.12", "", { "os": "darwin", "cpu": "arm64" }, "sha512-cFYr6zTG/3PXXF3pUO+umXxt1wkRK/0AYT8lDwuqvRC+LuKYWSAQAQZjCWDQpAH172ZV6ieYrNnFzVVcnSflAg=="], - "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0-rc.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-39Ks6UvIHq4rEogIfQBoBRusj0Q0nPVWIvqmwBLaT6aqQGIakHdESBVOPRRLacy4WwUPIx4ZKzfZ9PMW+IeyUQ=="], + "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0-rc.12", "", { "os": "darwin", "cpu": "x64" }, "sha512-ZCsYknnHzeXYps0lGBz8JrF37GpE9bFVefrlmDrAQhOEi4IOIlcoU1+FwHEtyXGx2VkYAvhu7dyBf75EJQffBw=="], - "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0-rc.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-jfsm0ZHfhiqrvWjJAmzsqiIFPz5e7mAoCOPBNTcNgkiid/LaFKiq92+0ojH+nmJmKYkre4t71BWXUZDNp7vsag=="], + "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0-rc.12", "", { "os": "freebsd", "cpu": "x64" }, "sha512-dMLeprcVsyJsKolRXyoTH3NL6qtsT0Y2xeuEA8WQJquWFXkEC4bcu1rLZZSnZRMtAqwtrF/Ib9Ddtpa/Gkge9Q=="], - "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.11", "", { "os": "linux", "cpu": "arm" }, "sha512-zjQaUtSyq1nVe3nxmlSCuR96T1LPlpvmJ0SZy0WJFEsV4kFbXcq2u68L4E6O0XeFj4aex9bEauqjW8UQBeAvfQ=="], + "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm" }, "sha512-YqWjAgGC/9M1lz3GR1r1rP79nMgo3mQiiA+Hfo+pvKFK1fAJ1bCi0ZQVh8noOqNacuY1qIcfyVfP6HoyBRZ85Q=="], - "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0-rc.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-WMW1yE6IOnehTcFE9eipFkm3XN63zypWlrJQ2iF7NrQ9b2LDRjumFoOGJE8RJJTJCTBAdmLMnJ8uVitACUUo1Q=="], + "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-/I5AS4cIroLpslsmzXfwbe5OmWvSsrFuEw3mwvbQ1kDxJ822hFHIx+vsN/TAzNVyepI/j/GSzrtCIwQPeKCLIg=="], - "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0-rc.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-jfndI9tsfm4APzjNt6QdBkYwre5lRPUgHeDHoI7ydKUuJvz3lZeCfMsI56BZj+7BYqiKsJm7cfd/6KYV7ubrBg=="], + "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-V6/wZztnBqlx5hJQqNWwFdxIKN0m38p8Jas+VoSfgH54HSj9tKTt1dZvG6JRHcjh6D7TvrJPWFGaY9UBVOaWPw=="], - "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.11", "", { "os": "linux", "cpu": "ppc64" }, "sha512-ZlFgw46NOAGMgcdvdYwAGu2Q+SLFA9LzbJLW+iyMOJyhj5wk6P3KEE9Gct4xWwSzFoPI7JCdYmYMzVtlgQ+zfw=="], + "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "ppc64" }, "sha512-AP3E9BpcUYliZCxa3w5Kwj9OtEVDYK6sVoUzy4vTOJsjPOgdaJZKFmN4oOlX0Wp0RPV2ETfmIra9x1xuayFB7g=="], - "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.0.0-rc.11", "", { "os": "linux", "cpu": "s390x" }, "sha512-hIOYmuT6ofM4K04XAZd3OzMySEO4K0/nc9+jmNcxNAxRi6c5UWpqfw3KMFV4MVFWL+jQsSh+bGw2VqmaPMTLyw=="], + "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "s390x" }, "sha512-nWwpvUSPkoFmZo0kQazZYOrT7J5DGOJ/+QHHzjvNlooDZED8oH82Yg67HvehPPLAg5fUff7TfWFHQS8IV1n3og=="], - "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0-rc.11", "", { "os": "linux", "cpu": "x64" }, "sha512-qXBQQO9OvkjjQPLdUVr7Nr2t3QTZI7s4KZtfw7HzBgjbmAPSFwSv4rmET9lLSgq3rH/ndA3ngv3Qb8l2njoPNA=="], + "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "x64" }, "sha512-RNrafz5bcwRy+O9e6P8Z/OCAJW/A+qtBczIqVYwTs14pf4iV1/+eKEjdOUta93q2TsT/FI0XYDP3TCky38LMAg=="], - "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0-rc.11", "", { "os": "linux", "cpu": "x64" }, "sha512-/tpFfoSTzUkH9LPY+cYbqZBDyyX62w5fICq9qzsHLL8uTI6BHip3Q9Uzft0wylk/i8OOwKik8OxW+QAhDmzwmg=="], + "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0-rc.12", "", { "os": "linux", "cpu": "x64" }, "sha512-Jpw/0iwoKWx3LJ2rc1yjFrj+T7iHZn2JDg1Yny1ma0luviFS4mhAIcd1LFNxK3EYu3DHWCps0ydXQ5i/rrJ2ig=="], - "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0-rc.11", "", { "os": "none", "cpu": "arm64" }, "sha512-mcp3Rio2w72IvdZG0oQ4bM2c2oumtwHfUfKncUM6zGgz0KgPz4YmDPQfnXEiY5t3+KD/i8HG2rOB/LxdmieK2g=="], + "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0-rc.12", "", { "os": "none", "cpu": "arm64" }, "sha512-vRugONE4yMfVn0+7lUKdKvN4D5YusEiPilaoO2sgUWpCvrncvWgPMzK00ZFFJuiPgLwgFNP5eSiUlv2tfc+lpA=="], - "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0-rc.11", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.1.1" }, "cpu": "none" }, "sha512-LXk5Hii1Ph9asuGRjBuz8TUxdc1lWzB7nyfdoRgI0WGPZKmCxvlKk8KfYysqtr4MfGElu/f/pEQRh8fcEgkrWw=="], + "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0-rc.12", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.1.1" }, "cpu": "none" }, "sha512-ykGiLr/6kkiHc0XnBfmFJuCjr5ZYKKofkx+chJWDjitX+KsJuAmrzWhwyOMSHzPhzOHOy7u9HlFoa5MoAOJ/Zg=="], - "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0-rc.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-dDwf5otnx0XgRY1yqxOC4ITizcdzS/8cQ3goOWv3jFAo4F+xQYni+hnMuO6+LssHHdJW7+OCVL3CoU4ycnh35Q=="], + "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12", "", { "os": "win32", "cpu": "arm64" }, "sha512-5eOND4duWkwx1AzCxadcOrNeighiLwMInEADT0YM7xeEOOFcovWZCq8dadXgcRHSf3Ulh1kFo/qvzoFiCLOL1Q=="], - "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0-rc.11", "", { "os": "win32", "cpu": "x64" }, "sha512-LN4/skhSggybX71ews7dAj6r2geaMJfm3kMbK2KhFMg9B10AZXnKoLCVVgzhMHL0S+aKtr4p8QbAW8k+w95bAA=="], + "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0-rc.12", "", { "os": "win32", "cpu": "x64" }, "sha512-PyqoipaswDLAZtot351MLhrlrh6lcZPo2LSYE+VDxbVk24LVKAGOuE4hb8xZQmrPAuEtTZW8E6D2zc5EUZX4Lw=="], "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.2", "", {}, "sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw=="], @@ -322,13 +322,13 @@ "@vue/babel-plugin-resolve-type": ["@vue/babel-plugin-resolve-type@2.0.1", "", { "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/helper-module-imports": "^7.27.1", "@babel/helper-plugin-utils": "^7.27.1", "@babel/parser": "^7.28.4", "@vue/compiler-sfc": "^3.5.22" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-ybwgIuRGRRBhOU37GImDoWQoz+TlSqap65qVI6iwg/J7FfLTLmMf97TS7xQH9I7Qtr/gp161kYVdhr1ZMraSYQ=="], - "@vue/compiler-core": ["@vue/compiler-core@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/shared": "3.5.30", "entities": "^7.0.1", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw=="], + "@vue/compiler-core": ["@vue/compiler-core@3.5.31", "", { "dependencies": { "@babel/parser": "^7.29.2", "@vue/shared": "3.5.31", "entities": "^7.0.1", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "sha512-k/ueL14aNIEy5Onf0OVzR8kiqF/WThgLdFhxwa4e/KF/0qe38IwIdofoSWBTvvxQOesaz6riAFAUaYjoF9fLLQ=="], - "@vue/compiler-dom": ["@vue/compiler-dom@3.5.30", "", { "dependencies": { "@vue/compiler-core": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g=="], + "@vue/compiler-dom": ["@vue/compiler-dom@3.5.31", "", { "dependencies": { "@vue/compiler-core": "3.5.31", "@vue/shared": "3.5.31" } }, "sha512-BMY/ozS/xxjYqRFL+tKdRpATJYDTTgWSo0+AJvJNg4ig+Hgb0dOsHPXvloHQ5hmlivUqw1Yt2pPIqp4e0v1GUw=="], - "@vue/compiler-sfc": ["@vue/compiler-sfc@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/compiler-core": "3.5.30", "@vue/compiler-dom": "3.5.30", "@vue/compiler-ssr": "3.5.30", "@vue/shared": "3.5.30", "estree-walker": "^2.0.2", "magic-string": "^0.30.21", "postcss": "^8.5.8", "source-map-js": "^1.2.1" } }, "sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A=="], + "@vue/compiler-sfc": ["@vue/compiler-sfc@3.5.31", "", { "dependencies": { "@babel/parser": "^7.29.2", "@vue/compiler-core": "3.5.31", "@vue/compiler-dom": "3.5.31", "@vue/compiler-ssr": "3.5.31", "@vue/shared": "3.5.31", "estree-walker": "^2.0.2", "magic-string": "^0.30.21", "postcss": "^8.5.8", "source-map-js": "^1.2.1" } }, "sha512-M8wpPgR9UJ8MiRGjppvx9uWJfLV7A/T+/rL8s/y3QG3u0c2/YZgff3d6SuimKRIhcYnWg5fTfDMlz2E6seUW8Q=="], - "@vue/compiler-ssr": ["@vue/compiler-ssr@3.5.30", "", { "dependencies": { "@vue/compiler-dom": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA=="], + "@vue/compiler-ssr": ["@vue/compiler-ssr@3.5.31", "", { "dependencies": { "@vue/compiler-dom": "3.5.31", "@vue/shared": "3.5.31" } }, "sha512-h0xIMxrt/LHOvJKMri+vdYT92BrK3HFLtDqq9Pr/lVVfE4IyKZKvWf0vJFW10Yr6nX02OR4MkJwI0c1HDa1hog=="], "@vue/devtools-api": ["@vue/devtools-api@7.7.9", "", { "dependencies": { "@vue/devtools-kit": "^7.7.9" } }, "sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g=="], @@ -336,15 +336,15 @@ "@vue/devtools-shared": ["@vue/devtools-shared@7.7.9", "", { "dependencies": { "rfdc": "^1.4.1" } }, "sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA=="], - "@vue/reactivity": ["@vue/reactivity@3.5.30", "", { "dependencies": { "@vue/shared": "3.5.30" } }, "sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q=="], + "@vue/reactivity": ["@vue/reactivity@3.5.31", "", { "dependencies": { "@vue/shared": "3.5.31" } }, "sha512-DtKXxk9E/KuVvt8VxWu+6Luc9I9ETNcqR1T1oW1gf02nXaZ1kuAx58oVu7uX9XxJR0iJCro6fqBLw9oSBELo5g=="], - "@vue/runtime-core": ["@vue/runtime-core@3.5.30", "", { "dependencies": { "@vue/reactivity": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg=="], + "@vue/runtime-core": ["@vue/runtime-core@3.5.31", "", { "dependencies": { "@vue/reactivity": "3.5.31", "@vue/shared": "3.5.31" } }, "sha512-AZPmIHXEAyhpkmN7aWlqjSfYynmkWlluDNPHMCZKFHH+lLtxP/30UJmoVhXmbDoP1Ng0jG0fyY2zCj1PnSSA6Q=="], - "@vue/runtime-dom": ["@vue/runtime-dom@3.5.30", "", { "dependencies": { "@vue/reactivity": "3.5.30", "@vue/runtime-core": "3.5.30", "@vue/shared": "3.5.30", "csstype": "^3.2.3" } }, "sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw=="], + "@vue/runtime-dom": ["@vue/runtime-dom@3.5.31", "", { "dependencies": { "@vue/reactivity": "3.5.31", "@vue/runtime-core": "3.5.31", "@vue/shared": "3.5.31", "csstype": "^3.2.3" } }, "sha512-xQJsNRmGPeDCJq/u813tyonNgWBFjzfVkBwDREdEWndBnGdHLHgkwNBQxLtg4zDrzKTEcnikUy1UUNecb3lJ6g=="], - "@vue/server-renderer": ["@vue/server-renderer@3.5.30", "", { "dependencies": { "@vue/compiler-ssr": "3.5.30", "@vue/shared": "3.5.30" }, "peerDependencies": { "vue": "3.5.30" } }, "sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ=="], + "@vue/server-renderer": ["@vue/server-renderer@3.5.31", "", { "dependencies": { "@vue/compiler-ssr": "3.5.31", "@vue/shared": "3.5.31" }, "peerDependencies": { "vue": "3.5.31" } }, "sha512-GJuwRvMcdZX/CriUnyIIOGkx3rMV3H6sOu0JhdKbduaeCji6zb60iOGMY7tFoN24NfsUYoFBhshZtGxGpxO4iA=="], - "@vue/shared": ["@vue/shared@3.5.30", "", {}, "sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ=="], + "@vue/shared": ["@vue/shared@3.5.31", "", {}, "sha512-nBxuiuS9Lj5bPkPbWogPUnjxxWpkRniX7e5UBQDWl6Fsf4roq9wwV+cR7ezQ4zXswNvPIlsdj1slcLB7XCsRAw=="], "@vueuse/core": ["@vueuse/core@14.2.1", "", { "dependencies": { "@types/web-bluetooth": "^0.0.21", "@vueuse/metadata": "14.2.1", "@vueuse/shared": "14.2.1" }, "peerDependencies": { "vue": "^3.5.0" } }, "sha512-3vwDzV+GDUNpdegRY6kzpLm4Igptq+GA0QkJ3W61Iv27YWwW/ufSlOfgQIpN6FZRMG0mkaz4gglJRtq5SeJyIQ=="], @@ -404,7 +404,7 @@ "copy-anything": ["copy-anything@4.0.5", "", { "dependencies": { "is-what": "^5.2.0" } }, "sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA=="], - "cross-fetch": ["cross-fetch@4.0.0", "", { "dependencies": { "node-fetch": "^2.6.12" } }, "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g=="], + "cross-fetch": ["cross-fetch@4.1.0", "", { "dependencies": { "node-fetch": "^2.7.0" } }, "sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw=="], "css-tree": ["css-tree@3.2.1", "", { "dependencies": { "mdn-data": "2.27.1", "source-map-js": "^1.2.1" } }, "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA=="], @@ -430,7 +430,7 @@ "escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], - "estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + "estree-walker": ["estree-walker@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g=="], "exsolve": ["exsolve@1.0.8", "", {}, "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA=="], @@ -452,9 +452,9 @@ "hookable": ["hookable@6.1.0", "", {}, "sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw=="], - "i18next": ["i18next@25.10.9", "", { "dependencies": { "@babel/runtime": "^7.29.2" }, "peerDependencies": { "typescript": "^5 || ^6" }, "optionalPeers": ["typescript"] }, "sha512-hQY9/bFoQKGlSKMlaCuLR8w1h5JjieqrsnZvEmj1Ja6Ec7fbyc4cTrCsY9mb9Sd8YQ/swsrKz1S9M8AcvVI70w=="], + "i18next": ["i18next@26.0.3", "", { "dependencies": { "@babel/runtime": "^7.29.2" }, "peerDependencies": { "typescript": "^5 || ^6" }, "optionalPeers": ["typescript"] }, "sha512-1571kXINxHKY7LksWp8wP+zP0YqHSSpl/OW0Y0owFEf2H3s8gCAffWaZivcz14rMkOvn3R/psiQxVsR9t2Nafg=="], - "i18next-http-backend": ["i18next-http-backend@3.0.2", "", { "dependencies": { "cross-fetch": "4.0.0" } }, "sha512-PdlvPnvIp4E1sYi46Ik4tBYh/v/NbYfFFgTjkwFl0is8A18s7/bx9aXqsrOax9WUbeNS6mD2oix7Z0yGGf6m5g=="], + "i18next-http-backend": ["i18next-http-backend@3.0.4", "", { "dependencies": { "cross-fetch": "4.1.0" } }, "sha512-udwrBIE6cNpqn1gRAqRULq3+7MzIIuaiKRWrz++dVz5SqWW2VwXmPJtAgkI0JtMLFaADC9qNmnZAxWAhsxXx2g=="], "i18next-vue": ["i18next-vue@5.4.0", "", { "peerDependencies": { "i18next": ">=23", "vue": "^3.4.38" } }, "sha512-GDj0Xvmis5Xgcvo9gMBJMgJCtewYMLZP6gAEPDDGCMjA+QeB4uS4qUf1MK79mkz/FukhaJdC+nlj0y1qk6NO2Q=="], @@ -570,7 +570,7 @@ "rfdc": ["rfdc@1.4.1", "", {}, "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA=="], - "rolldown": ["rolldown@1.0.0-rc.11", "", { "dependencies": { "@oxc-project/types": "=0.122.0", "@rolldown/pluginutils": "1.0.0-rc.11" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0-rc.11", "@rolldown/binding-darwin-arm64": "1.0.0-rc.11", "@rolldown/binding-darwin-x64": "1.0.0-rc.11", "@rolldown/binding-freebsd-x64": "1.0.0-rc.11", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.11", "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.11", "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.11", "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.11", "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.11", "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.11", "@rolldown/binding-linux-x64-musl": "1.0.0-rc.11", "@rolldown/binding-openharmony-arm64": "1.0.0-rc.11", "@rolldown/binding-wasm32-wasi": "1.0.0-rc.11", "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.11", "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.11" }, "bin": { "rolldown": "bin/cli.mjs" } }, "sha512-NRjoKMusSjfRbSYiH3VSumlkgFe7kYAa3pzVOsVYVFY3zb5d7nS+a3KGQ7hJKXuYWbzJKPVQ9Wxq2UvyK+ENpw=="], + "rolldown": ["rolldown@1.0.0-rc.12", "", { "dependencies": { "@oxc-project/types": "=0.122.0", "@rolldown/pluginutils": "1.0.0-rc.12" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0-rc.12", "@rolldown/binding-darwin-arm64": "1.0.0-rc.12", "@rolldown/binding-darwin-x64": "1.0.0-rc.12", "@rolldown/binding-freebsd-x64": "1.0.0-rc.12", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.12", "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.12", "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-x64-musl": "1.0.0-rc.12", "@rolldown/binding-openharmony-arm64": "1.0.0-rc.12", "@rolldown/binding-wasm32-wasi": "1.0.0-rc.12", "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.12", "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.12" }, "bin": { "rolldown": "bin/cli.mjs" } }, "sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A=="], "scule": ["scule@1.3.0", "", {}, "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g=="], @@ -628,17 +628,17 @@ "unplugin-utils": ["unplugin-utils@0.3.1", "", { "dependencies": { "pathe": "^2.0.3", "picomatch": "^4.0.3" } }, "sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog=="], - "unplugin-vue-components": ["unplugin-vue-components@31.1.0", "", { "dependencies": { "chokidar": "^5.0.0", "local-pkg": "^1.1.2", "magic-string": "^0.30.21", "mlly": "^1.8.2", "obug": "^2.1.1", "picomatch": "^4.0.3", "tinyglobby": "^0.2.15", "unplugin": "^2.3.11", "unplugin-utils": "^0.3.1" }, "peerDependencies": { "@nuxt/kit": "^3.2.2 || ^4.0.0", "vue": "^3.0.0" }, "optionalPeers": ["@nuxt/kit"] }, "sha512-9EbV5ark21A4BOBt6RJGJXCVD2I1eoxTZL1TAvNgYTokcrFIiuxpufb8owyWn7n+z2x8daz/ltZq6IRRKL3ydQ=="], + "unplugin-vue-components": ["unplugin-vue-components@32.0.0", "", { "dependencies": { "chokidar": "^5.0.0", "local-pkg": "^1.1.2", "magic-string": "^0.30.21", "mlly": "^1.8.2", "obug": "^2.1.1", "picomatch": "^4.0.3", "tinyglobby": "^0.2.15", "unplugin": "^3.0.0", "unplugin-utils": "^0.3.1" }, "peerDependencies": { "@nuxt/kit": "^3.2.2 || ^4.0.0", "vue": "^3.0.0" }, "optionalPeers": ["@nuxt/kit"] }, "sha512-uLdccgS7mf3pv1bCCP20y/hm+u1eOjAmygVkh+Oa70MPkzgl1eQv1L0CwdHNM3gscO8/GDMGIET98Ja47CBbZg=="], "update-browserslist-db": ["update-browserslist-db@1.2.3", "", { "dependencies": { "escalade": "^3.2.0", "picocolors": "^1.1.1" }, "peerDependencies": { "browserslist": ">= 4.21.0" }, "bin": { "update-browserslist-db": "cli.js" } }, "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w=="], "urlpattern-polyfill": ["urlpattern-polyfill@10.1.0", "", {}, "sha512-IGjKp/o0NL3Bso1PymYURCJxMPNAf/ILOpendP9f5B6e1rTJgdgiOvgfoT8VxCAdY+Wisb9uhGaJJf3yZ2V9nw=="], - "vite": ["vite@8.0.2", "", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.3", "postcss": "^8.5.8", "rolldown": "1.0.0-rc.11", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.1.0", "esbuild": "^0.27.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-1gFhNi+bHhRE/qKZOJXACm6tX4bA3Isy9KuKF15AgSRuRazNBOJfdDemPBU16/mpMxApDPrWvZ08DcLPEoRnuA=="], + "vite": ["vite@8.0.3", "", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.4", "postcss": "^8.5.8", "rolldown": "1.0.0-rc.12", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.1.0", "esbuild": "^0.27.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-B9ifbFudT1TFhfltfaIPgjo9Z3mDynBTJSUYxTjOQruf/zHH+ezCQKcoqO+h7a9Pw9Nm/OtlXAiGT1axBgwqrQ=="], "vite-ssr-components": ["vite-ssr-components@0.5.2", "", { "dependencies": { "@babel/parser": "^7.27.2", "@babel/traverse": "^7.27.1", "picomatch": "^4.0.2" } }, "sha512-1a8YThRwyyu1gGjc1Ral9Q4uS+n0D4GydhbkVd9c1SA1YNgXyrOizttped87C1ItEznQzhiCyQjaOcYnXa0zMA=="], - "vue": ["vue@3.5.30", "", { "dependencies": { "@vue/compiler-dom": "3.5.30", "@vue/compiler-sfc": "3.5.30", "@vue/runtime-dom": "3.5.30", "@vue/server-renderer": "3.5.30", "@vue/shared": "3.5.30" }, "peerDependencies": { "typescript": "*" }, "optionalPeers": ["typescript"] }, "sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg=="], + "vue": ["vue@3.5.31", "", { "dependencies": { "@vue/compiler-dom": "3.5.31", "@vue/compiler-sfc": "3.5.31", "@vue/runtime-dom": "3.5.31", "@vue/server-renderer": "3.5.31", "@vue/shared": "3.5.31" }, "peerDependencies": { "typescript": "*" }, "optionalPeers": ["typescript"] }, "sha512-iV/sU9SzOlmA/0tygSmjkEN6Jbs3nPoIPFhCMLD2STrjgOU8DX7ZtzMhg4ahVwf5Rp9KoFzcXeB1ZrVbLBp5/Q=="], "vue-router": ["vue-router@5.0.4", "", { "dependencies": { "@babel/generator": "^7.28.6", "@vue-macros/common": "^3.1.1", "@vue/devtools-api": "^8.0.6", "ast-walker-scope": "^0.8.3", "chokidar": "^5.0.0", "json5": "^2.2.3", "local-pkg": "^1.1.2", "magic-string": "^0.30.21", "mlly": "^1.8.0", "muggle-string": "^0.4.1", "pathe": "^2.0.3", "picomatch": "^4.0.3", "scule": "^1.3.0", "tinyglobby": "^0.2.15", "unplugin": "^3.0.0", "unplugin-utils": "^0.3.1", "yaml": "^2.8.2" }, "peerDependencies": { "@pinia/colada": ">=0.21.2", "@vue/compiler-sfc": "^3.5.17", "pinia": "^3.0.4", "vue": "^3.5.0" }, "optionalPeers": ["@pinia/colada", "@vue/compiler-sfc", "pinia"] }, "sha512-lCqDLCI2+fKVRl2OzXuzdSWmxXFLQRxQbmHugnRpTMyYiT+hNaycV0faqG5FBHDXoYrZ6MQcX87BvbY8mQ20Bg=="], @@ -666,17 +666,25 @@ "@vitejs/plugin-vue-jsx/@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.11", "", {}, "sha512-xQO9vbwBecJRv9EUcQ/y0dzSTJgA7Q6UVN7xp6B81+tBGSLVAK03yJ9NkJaUA7JFD91kbjxRSC/mDnmvXzbHoQ=="], + "@vue-macros/common/@vue/compiler-sfc": ["@vue/compiler-sfc@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/compiler-core": "3.5.30", "@vue/compiler-dom": "3.5.30", "@vue/compiler-ssr": "3.5.30", "@vue/shared": "3.5.30", "estree-walker": "^2.0.2", "magic-string": "^0.30.21", "postcss": "^8.5.8", "source-map-js": "^1.2.1" } }, "sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A=="], + + "@vue/babel-plugin-jsx/@vue/shared": ["@vue/shared@3.5.30", "", {}, "sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc": ["@vue/compiler-sfc@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/compiler-core": "3.5.30", "@vue/compiler-dom": "3.5.30", "@vue/compiler-ssr": "3.5.30", "@vue/shared": "3.5.30", "estree-walker": "^2.0.2", "magic-string": "^0.30.21", "postcss": "^8.5.8", "source-map-js": "^1.2.1" } }, "sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A=="], + + "@vue/compiler-core/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + + "@vue/compiler-sfc/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + "@vue/devtools-kit/hookable": ["hookable@5.5.3", "", {}, "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ=="], "@vue/devtools-kit/perfect-debounce": ["perfect-debounce@1.0.0", "", {}, "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA=="], - "magic-regexp/estree-walker": ["estree-walker@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g=="], - "mlly/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], "oxc-parser/@oxc-project/types": ["@oxc-project/types@0.115.0", "", {}, "sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw=="], - "rolldown/@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.11", "", {}, "sha512-xQO9vbwBecJRv9EUcQ/y0dzSTJgA7Q6UVN7xp6B81+tBGSLVAK03yJ9NkJaUA7JFD91kbjxRSC/mDnmvXzbHoQ=="], + "rolldown/@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.12", "", {}, "sha512-HHMwmarRKvoFsJorqYlFeFRzXZqCt2ETQlEDOb9aqssrnVBB1/+xgTGtuTrIk5vzLNX1MjMtTf7W9z3tsSbrxw=="], "strip-literal/js-tokens": ["js-tokens@9.0.1", "", {}, "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ=="], @@ -684,12 +692,32 @@ "unconfig-core/quansync": ["quansync@1.0.0", "", {}, "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA=="], - "unimport/estree-walker": ["estree-walker@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g=="], + "unplugin-vue-components/unplugin": ["unplugin@3.0.0", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" } }, "sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg=="], "vue-router/@vue/devtools-api": ["@vue/devtools-api@8.1.1", "", { "dependencies": { "@vue/devtools-kit": "^8.1.1" } }, "sha512-bsDMJ07b3GN1puVwJb/fyFnj/U2imyswK5UQVLZwVl7O05jDrt6BHxeG5XffmOOdasOj/bOmIjxJvGPxU7pcqw=="], "vue-router/unplugin": ["unplugin@3.0.0", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" } }, "sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg=="], + "@vue-macros/common/@vue/compiler-sfc/@vue/compiler-core": ["@vue/compiler-core@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/shared": "3.5.30", "entities": "^7.0.1", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw=="], + + "@vue-macros/common/@vue/compiler-sfc/@vue/compiler-dom": ["@vue/compiler-dom@3.5.30", "", { "dependencies": { "@vue/compiler-core": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g=="], + + "@vue-macros/common/@vue/compiler-sfc/@vue/compiler-ssr": ["@vue/compiler-ssr@3.5.30", "", { "dependencies": { "@vue/compiler-dom": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA=="], + + "@vue-macros/common/@vue/compiler-sfc/@vue/shared": ["@vue/shared@3.5.30", "", {}, "sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ=="], + + "@vue-macros/common/@vue/compiler-sfc/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc/@vue/compiler-core": ["@vue/compiler-core@3.5.30", "", { "dependencies": { "@babel/parser": "^7.29.0", "@vue/shared": "3.5.30", "entities": "^7.0.1", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc/@vue/compiler-dom": ["@vue/compiler-dom@3.5.30", "", { "dependencies": { "@vue/compiler-core": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc/@vue/compiler-ssr": ["@vue/compiler-ssr@3.5.30", "", { "dependencies": { "@vue/compiler-dom": "3.5.30", "@vue/shared": "3.5.30" } }, "sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc/@vue/shared": ["@vue/shared@3.5.30", "", {}, "sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ=="], + + "@vue/babel-plugin-resolve-type/@vue/compiler-sfc/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + "mlly/pkg-types/confbox": ["confbox@0.1.8", "", {}, "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="], "vue-router/@vue/devtools-api/@vue/devtools-kit": ["@vue/devtools-kit@8.1.1", "", { "dependencies": { "@vue/devtools-shared": "^8.1.1", "birpc": "^2.6.1", "hookable": "^5.5.3", "perfect-debounce": "^2.0.0" } }, "sha512-gVBaBv++i+adg4JpH71k9ppl4soyR7Y2McEqO5YNgv0BI1kMZ7BDX5gnwkZ5COYgiCyhejZG+yGNrBAjj6Coqg=="], diff --git a/package.json b/package.json index d4ab2dd..9406e59 100644 --- a/package.json +++ b/package.json @@ -2,9 +2,9 @@ "name": "holistream", "type": "module", "scripts": { - "dev": "bunx --bun vite", - "build": "bunx --bun vite build", - "preview": "bunx --bun vite preview" + "dev": "bun x --bun vite", + "build": "bun x --bun vite build", + "preview": "bun x --bun vite preview" }, "dependencies": { "@bufbuild/protobuf": "^2.11.0", @@ -12,37 +12,37 @@ "@hattip/adapter-node": "^0.0.49", "@hiogawa/tiny-rpc": "^0.2.3-pre.18", "@hiogawa/utils": "^1.7.0", - "@hono/node-server": "^1.19.11", + "@hono/node-server": "^1.19.12", "@hono/zod-validator": "^0.7.6", - "@pinia/colada": "^1.0.0", + "@pinia/colada": "^1.1.0", "@tanstack/vue-table": "^8.21.3", "@unhead/vue": "^2.1.12", "@vueuse/core": "^14.2.1", "aws4fetch": "^1.0.20", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "hono": "^4.12.7", - "i18next": "^25.8.18", - "i18next-http-backend": "^3.0.2", + "hono": "^4.12.9", + "i18next": "^26.0.3", + "i18next-http-backend": "^3.0.4", "i18next-vue": "^5.4.0", "is-mobile": "^5.0.0", "pinia": "^3.0.4", "superjson": "^2.2.6", "tailwind-merge": "^3.5.0", "tweetnacl": "^1.0.3", - "vue": "^3.5.30", - "vue-router": "^5.0.3", + "vue": "^3.5.31", + "vue-router": "^5.0.4", "zod": "^4.3.6" }, "devDependencies": { - "@types/bun": "^1.3.10", - "@vitejs/plugin-vue": "^6.0.4", - "@vitejs/plugin-vue-jsx": "^5.1.4", - "estree-walker": "2.0.2", - "unocss": "^66.6.6", + "@types/bun": "^1.3.11", + "@vitejs/plugin-vue": "^6.0.5", + "@vitejs/plugin-vue-jsx": "^5.1.5", + "estree-walker": "3.0.3", + "unocss": "^66.6.7", "unplugin-auto-import": "^21.0.0", - "unplugin-vue-components": "^31.0.0", - "vite": "^8.0.0-beta.16", + "unplugin-vue-components": "^32.0.0", + "vite": "^8.0.3", "vite-ssr-components": "^0.5.2" } } diff --git a/src/routes/analytics/Analytics.vue b/src/routes/analytics/Analytics.vue index 2af5b2d..c253667 100644 --- a/src/routes/analytics/Analytics.vue +++ b/src/routes/analytics/Analytics.vue @@ -1,10 +1,22 @@ \ No newline at end of file + + \ No newline at end of file diff --git a/src/server/api/proto/app/v1/admin.ts b/src/server/api/proto/app/v1/admin.ts index 9fd8e6c..2735cc1 100644 --- a/src/server/api/proto/app/v1/admin.ts +++ b/src/server/api/proto/app/v1/admin.ts @@ -22,6 +22,7 @@ import { AdminAdTemplate, AdminAgent, AdminDashboard, + AdminDlqEntry, AdminJob, AdminPayment, AdminPlan, @@ -526,6 +527,43 @@ export interface RetryAdminJobResponse { job?: AdminJob | undefined; } +export interface ListAdminDlqJobsRequest { + offset?: number | undefined; + limit?: number | undefined; +} + +export interface ListAdminDlqJobsResponse { + items?: AdminDlqEntry[] | undefined; + total?: number | undefined; + offset?: number | undefined; + limit?: number | undefined; +} + +export interface GetAdminDlqJobRequest { + id?: string | undefined; +} + +export interface GetAdminDlqJobResponse { + item?: AdminDlqEntry | undefined; +} + +export interface RetryAdminDlqJobRequest { + id?: string | undefined; +} + +export interface RetryAdminDlqJobResponse { + job?: AdminJob | undefined; +} + +export interface RemoveAdminDlqJobRequest { + id?: string | undefined; +} + +export interface RemoveAdminDlqJobResponse { + status?: string | undefined; + jobId?: string | undefined; +} + export interface ListAdminAgentsRequest { } @@ -8402,6 +8440,567 @@ export const RetryAdminJobResponse: MessageFns = { }, }; +function createBaseListAdminDlqJobsRequest(): ListAdminDlqJobsRequest { + return { offset: 0, limit: 0 }; +} + +export const ListAdminDlqJobsRequest: MessageFns = { + encode(message: ListAdminDlqJobsRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.offset !== undefined && message.offset !== 0) { + writer.uint32(8).int32(message.offset); + } + if (message.limit !== undefined && message.limit !== 0) { + writer.uint32(16).int32(message.limit); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): ListAdminDlqJobsRequest { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseListAdminDlqJobsRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; + } + + message.offset = reader.int32(); + continue; + } + case 2: { + if (tag !== 16) { + break; + } + + message.limit = reader.int32(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): ListAdminDlqJobsRequest { + return { + offset: isSet(object.offset) ? globalThis.Number(object.offset) : 0, + limit: isSet(object.limit) ? globalThis.Number(object.limit) : 0, + }; + }, + + toJSON(message: ListAdminDlqJobsRequest): unknown { + const obj: any = {}; + if (message.offset !== undefined && message.offset !== 0) { + obj.offset = Math.round(message.offset); + } + if (message.limit !== undefined && message.limit !== 0) { + obj.limit = Math.round(message.limit); + } + return obj; + }, + + create, I>>(base?: I): ListAdminDlqJobsRequest { + return ListAdminDlqJobsRequest.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): ListAdminDlqJobsRequest { + const message = createBaseListAdminDlqJobsRequest(); + message.offset = object.offset ?? 0; + message.limit = object.limit ?? 0; + return message; + }, +}; + +function createBaseListAdminDlqJobsResponse(): ListAdminDlqJobsResponse { + return { items: [], total: 0, offset: 0, limit: 0 }; +} + +export const ListAdminDlqJobsResponse: MessageFns = { + encode(message: ListAdminDlqJobsResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.items !== undefined && message.items.length !== 0) { + for (const v of message.items) { + AdminDlqEntry.encode(v!, writer.uint32(10).fork()).join(); + } + } + if (message.total !== undefined && message.total !== 0) { + writer.uint32(16).int64(message.total); + } + if (message.offset !== undefined && message.offset !== 0) { + writer.uint32(24).int32(message.offset); + } + if (message.limit !== undefined && message.limit !== 0) { + writer.uint32(32).int32(message.limit); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): ListAdminDlqJobsResponse { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseListAdminDlqJobsResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + const el = AdminDlqEntry.decode(reader, reader.uint32()); + if (el !== undefined) { + message.items!.push(el); + } + continue; + } + case 2: { + if (tag !== 16) { + break; + } + + message.total = longToNumber(reader.int64()); + continue; + } + case 3: { + if (tag !== 24) { + break; + } + + message.offset = reader.int32(); + continue; + } + case 4: { + if (tag !== 32) { + break; + } + + message.limit = reader.int32(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): ListAdminDlqJobsResponse { + return { + items: globalThis.Array.isArray(object?.items) ? object.items.map((e: any) => AdminDlqEntry.fromJSON(e)) : [], + total: isSet(object.total) ? globalThis.Number(object.total) : 0, + offset: isSet(object.offset) ? globalThis.Number(object.offset) : 0, + limit: isSet(object.limit) ? globalThis.Number(object.limit) : 0, + }; + }, + + toJSON(message: ListAdminDlqJobsResponse): unknown { + const obj: any = {}; + if (message.items?.length) { + obj.items = message.items.map((e) => AdminDlqEntry.toJSON(e)); + } + if (message.total !== undefined && message.total !== 0) { + obj.total = Math.round(message.total); + } + if (message.offset !== undefined && message.offset !== 0) { + obj.offset = Math.round(message.offset); + } + if (message.limit !== undefined && message.limit !== 0) { + obj.limit = Math.round(message.limit); + } + return obj; + }, + + create, I>>(base?: I): ListAdminDlqJobsResponse { + return ListAdminDlqJobsResponse.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): ListAdminDlqJobsResponse { + const message = createBaseListAdminDlqJobsResponse(); + message.items = object.items?.map((e) => AdminDlqEntry.fromPartial(e)) || []; + message.total = object.total ?? 0; + message.offset = object.offset ?? 0; + message.limit = object.limit ?? 0; + return message; + }, +}; + +function createBaseGetAdminDlqJobRequest(): GetAdminDlqJobRequest { + return { id: "" }; +} + +export const GetAdminDlqJobRequest: MessageFns = { + encode(message: GetAdminDlqJobRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.id !== undefined && message.id !== "") { + writer.uint32(10).string(message.id); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): GetAdminDlqJobRequest { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGetAdminDlqJobRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.id = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): GetAdminDlqJobRequest { + return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; + }, + + toJSON(message: GetAdminDlqJobRequest): unknown { + const obj: any = {}; + if (message.id !== undefined && message.id !== "") { + obj.id = message.id; + } + return obj; + }, + + create, I>>(base?: I): GetAdminDlqJobRequest { + return GetAdminDlqJobRequest.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): GetAdminDlqJobRequest { + const message = createBaseGetAdminDlqJobRequest(); + message.id = object.id ?? ""; + return message; + }, +}; + +function createBaseGetAdminDlqJobResponse(): GetAdminDlqJobResponse { + return { item: undefined }; +} + +export const GetAdminDlqJobResponse: MessageFns = { + encode(message: GetAdminDlqJobResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.item !== undefined) { + AdminDlqEntry.encode(message.item, writer.uint32(10).fork()).join(); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): GetAdminDlqJobResponse { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGetAdminDlqJobResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.item = AdminDlqEntry.decode(reader, reader.uint32()); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): GetAdminDlqJobResponse { + return { item: isSet(object.item) ? AdminDlqEntry.fromJSON(object.item) : undefined }; + }, + + toJSON(message: GetAdminDlqJobResponse): unknown { + const obj: any = {}; + if (message.item !== undefined) { + obj.item = AdminDlqEntry.toJSON(message.item); + } + return obj; + }, + + create, I>>(base?: I): GetAdminDlqJobResponse { + return GetAdminDlqJobResponse.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): GetAdminDlqJobResponse { + const message = createBaseGetAdminDlqJobResponse(); + message.item = (object.item !== undefined && object.item !== null) + ? AdminDlqEntry.fromPartial(object.item) + : undefined; + return message; + }, +}; + +function createBaseRetryAdminDlqJobRequest(): RetryAdminDlqJobRequest { + return { id: "" }; +} + +export const RetryAdminDlqJobRequest: MessageFns = { + encode(message: RetryAdminDlqJobRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.id !== undefined && message.id !== "") { + writer.uint32(10).string(message.id); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): RetryAdminDlqJobRequest { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRetryAdminDlqJobRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.id = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): RetryAdminDlqJobRequest { + return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; + }, + + toJSON(message: RetryAdminDlqJobRequest): unknown { + const obj: any = {}; + if (message.id !== undefined && message.id !== "") { + obj.id = message.id; + } + return obj; + }, + + create, I>>(base?: I): RetryAdminDlqJobRequest { + return RetryAdminDlqJobRequest.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): RetryAdminDlqJobRequest { + const message = createBaseRetryAdminDlqJobRequest(); + message.id = object.id ?? ""; + return message; + }, +}; + +function createBaseRetryAdminDlqJobResponse(): RetryAdminDlqJobResponse { + return { job: undefined }; +} + +export const RetryAdminDlqJobResponse: MessageFns = { + encode(message: RetryAdminDlqJobResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.job !== undefined) { + AdminJob.encode(message.job, writer.uint32(10).fork()).join(); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): RetryAdminDlqJobResponse { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRetryAdminDlqJobResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.job = AdminJob.decode(reader, reader.uint32()); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): RetryAdminDlqJobResponse { + return { job: isSet(object.job) ? AdminJob.fromJSON(object.job) : undefined }; + }, + + toJSON(message: RetryAdminDlqJobResponse): unknown { + const obj: any = {}; + if (message.job !== undefined) { + obj.job = AdminJob.toJSON(message.job); + } + return obj; + }, + + create, I>>(base?: I): RetryAdminDlqJobResponse { + return RetryAdminDlqJobResponse.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): RetryAdminDlqJobResponse { + const message = createBaseRetryAdminDlqJobResponse(); + message.job = (object.job !== undefined && object.job !== null) ? AdminJob.fromPartial(object.job) : undefined; + return message; + }, +}; + +function createBaseRemoveAdminDlqJobRequest(): RemoveAdminDlqJobRequest { + return { id: "" }; +} + +export const RemoveAdminDlqJobRequest: MessageFns = { + encode(message: RemoveAdminDlqJobRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.id !== undefined && message.id !== "") { + writer.uint32(10).string(message.id); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): RemoveAdminDlqJobRequest { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRemoveAdminDlqJobRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.id = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): RemoveAdminDlqJobRequest { + return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; + }, + + toJSON(message: RemoveAdminDlqJobRequest): unknown { + const obj: any = {}; + if (message.id !== undefined && message.id !== "") { + obj.id = message.id; + } + return obj; + }, + + create, I>>(base?: I): RemoveAdminDlqJobRequest { + return RemoveAdminDlqJobRequest.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): RemoveAdminDlqJobRequest { + const message = createBaseRemoveAdminDlqJobRequest(); + message.id = object.id ?? ""; + return message; + }, +}; + +function createBaseRemoveAdminDlqJobResponse(): RemoveAdminDlqJobResponse { + return { status: "", jobId: "" }; +} + +export const RemoveAdminDlqJobResponse: MessageFns = { + encode(message: RemoveAdminDlqJobResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.status !== undefined && message.status !== "") { + writer.uint32(10).string(message.status); + } + if (message.jobId !== undefined && message.jobId !== "") { + writer.uint32(18).string(message.jobId); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): RemoveAdminDlqJobResponse { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseRemoveAdminDlqJobResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.status = reader.string(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + + message.jobId = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): RemoveAdminDlqJobResponse { + return { + status: isSet(object.status) ? globalThis.String(object.status) : "", + jobId: isSet(object.jobId) + ? globalThis.String(object.jobId) + : isSet(object.job_id) + ? globalThis.String(object.job_id) + : "", + }; + }, + + toJSON(message: RemoveAdminDlqJobResponse): unknown { + const obj: any = {}; + if (message.status !== undefined && message.status !== "") { + obj.status = message.status; + } + if (message.jobId !== undefined && message.jobId !== "") { + obj.jobId = message.jobId; + } + return obj; + }, + + create, I>>(base?: I): RemoveAdminDlqJobResponse { + return RemoveAdminDlqJobResponse.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): RemoveAdminDlqJobResponse { + const message = createBaseRemoveAdminDlqJobResponse(); + message.status = object.status ?? ""; + message.jobId = object.jobId ?? ""; + return message; + }, +}; + function createBaseListAdminAgentsRequest(): ListAdminAgentsRequest { return {}; } @@ -9142,6 +9741,50 @@ export const AdminService = { Buffer.from(RetryAdminJobResponse.encode(value).finish()), responseDeserialize: (value: Buffer): RetryAdminJobResponse => RetryAdminJobResponse.decode(value), }, + listAdminDlqJobs: { + path: "/stream.app.v1.Admin/ListAdminDlqJobs", + requestStream: false, + responseStream: false, + requestSerialize: (value: ListAdminDlqJobsRequest): Buffer => + Buffer.from(ListAdminDlqJobsRequest.encode(value).finish()), + requestDeserialize: (value: Buffer): ListAdminDlqJobsRequest => ListAdminDlqJobsRequest.decode(value), + responseSerialize: (value: ListAdminDlqJobsResponse): Buffer => + Buffer.from(ListAdminDlqJobsResponse.encode(value).finish()), + responseDeserialize: (value: Buffer): ListAdminDlqJobsResponse => ListAdminDlqJobsResponse.decode(value), + }, + getAdminDlqJob: { + path: "/stream.app.v1.Admin/GetAdminDlqJob", + requestStream: false, + responseStream: false, + requestSerialize: (value: GetAdminDlqJobRequest): Buffer => + Buffer.from(GetAdminDlqJobRequest.encode(value).finish()), + requestDeserialize: (value: Buffer): GetAdminDlqJobRequest => GetAdminDlqJobRequest.decode(value), + responseSerialize: (value: GetAdminDlqJobResponse): Buffer => + Buffer.from(GetAdminDlqJobResponse.encode(value).finish()), + responseDeserialize: (value: Buffer): GetAdminDlqJobResponse => GetAdminDlqJobResponse.decode(value), + }, + retryAdminDlqJob: { + path: "/stream.app.v1.Admin/RetryAdminDlqJob", + requestStream: false, + responseStream: false, + requestSerialize: (value: RetryAdminDlqJobRequest): Buffer => + Buffer.from(RetryAdminDlqJobRequest.encode(value).finish()), + requestDeserialize: (value: Buffer): RetryAdminDlqJobRequest => RetryAdminDlqJobRequest.decode(value), + responseSerialize: (value: RetryAdminDlqJobResponse): Buffer => + Buffer.from(RetryAdminDlqJobResponse.encode(value).finish()), + responseDeserialize: (value: Buffer): RetryAdminDlqJobResponse => RetryAdminDlqJobResponse.decode(value), + }, + removeAdminDlqJob: { + path: "/stream.app.v1.Admin/RemoveAdminDlqJob", + requestStream: false, + responseStream: false, + requestSerialize: (value: RemoveAdminDlqJobRequest): Buffer => + Buffer.from(RemoveAdminDlqJobRequest.encode(value).finish()), + requestDeserialize: (value: Buffer): RemoveAdminDlqJobRequest => RemoveAdminDlqJobRequest.decode(value), + responseSerialize: (value: RemoveAdminDlqJobResponse): Buffer => + Buffer.from(RemoveAdminDlqJobResponse.encode(value).finish()), + responseDeserialize: (value: Buffer): RemoveAdminDlqJobResponse => RemoveAdminDlqJobResponse.decode(value), + }, listAdminAgents: { path: "/stream.app.v1.Admin/ListAdminAgents", requestStream: false, @@ -9223,6 +9866,10 @@ export interface AdminServer extends UntypedServiceImplementation { createAdminJob: handleUnaryCall; cancelAdminJob: handleUnaryCall; retryAdminJob: handleUnaryCall; + listAdminDlqJobs: handleUnaryCall; + getAdminDlqJob: handleUnaryCall; + retryAdminDlqJob: handleUnaryCall; + removeAdminDlqJob: handleUnaryCall; listAdminAgents: handleUnaryCall; restartAdminAgent: handleUnaryCall; updateAdminAgent: handleUnaryCall; @@ -9859,6 +10506,66 @@ export interface AdminClient extends Client { options: Partial, callback: (error: ServiceError | null, response: RetryAdminJobResponse) => void, ): ClientUnaryCall; + listAdminDlqJobs( + request: ListAdminDlqJobsRequest, + callback: (error: ServiceError | null, response: ListAdminDlqJobsResponse) => void, + ): ClientUnaryCall; + listAdminDlqJobs( + request: ListAdminDlqJobsRequest, + metadata: Metadata, + callback: (error: ServiceError | null, response: ListAdminDlqJobsResponse) => void, + ): ClientUnaryCall; + listAdminDlqJobs( + request: ListAdminDlqJobsRequest, + metadata: Metadata, + options: Partial, + callback: (error: ServiceError | null, response: ListAdminDlqJobsResponse) => void, + ): ClientUnaryCall; + getAdminDlqJob( + request: GetAdminDlqJobRequest, + callback: (error: ServiceError | null, response: GetAdminDlqJobResponse) => void, + ): ClientUnaryCall; + getAdminDlqJob( + request: GetAdminDlqJobRequest, + metadata: Metadata, + callback: (error: ServiceError | null, response: GetAdminDlqJobResponse) => void, + ): ClientUnaryCall; + getAdminDlqJob( + request: GetAdminDlqJobRequest, + metadata: Metadata, + options: Partial, + callback: (error: ServiceError | null, response: GetAdminDlqJobResponse) => void, + ): ClientUnaryCall; + retryAdminDlqJob( + request: RetryAdminDlqJobRequest, + callback: (error: ServiceError | null, response: RetryAdminDlqJobResponse) => void, + ): ClientUnaryCall; + retryAdminDlqJob( + request: RetryAdminDlqJobRequest, + metadata: Metadata, + callback: (error: ServiceError | null, response: RetryAdminDlqJobResponse) => void, + ): ClientUnaryCall; + retryAdminDlqJob( + request: RetryAdminDlqJobRequest, + metadata: Metadata, + options: Partial, + callback: (error: ServiceError | null, response: RetryAdminDlqJobResponse) => void, + ): ClientUnaryCall; + removeAdminDlqJob( + request: RemoveAdminDlqJobRequest, + callback: (error: ServiceError | null, response: RemoveAdminDlqJobResponse) => void, + ): ClientUnaryCall; + removeAdminDlqJob( + request: RemoveAdminDlqJobRequest, + metadata: Metadata, + callback: (error: ServiceError | null, response: RemoveAdminDlqJobResponse) => void, + ): ClientUnaryCall; + removeAdminDlqJob( + request: RemoveAdminDlqJobRequest, + metadata: Metadata, + options: Partial, + callback: (error: ServiceError | null, response: RemoveAdminDlqJobResponse) => void, + ): ClientUnaryCall; listAdminAgents( request: ListAdminAgentsRequest, callback: (error: ServiceError | null, response: ListAdminAgentsResponse) => void, diff --git a/src/server/api/proto/app/v1/common.ts b/src/server/api/proto/app/v1/common.ts index 884125c..3ba3343 100644 --- a/src/server/api/proto/app/v1/common.ts +++ b/src/server/api/proto/app/v1/common.ts @@ -397,6 +397,13 @@ export interface AdminAgent { updatedAt?: string | undefined; } +export interface AdminDlqEntry { + job?: AdminJob | undefined; + failureTime?: string | undefined; + reason?: string | undefined; + retryCount?: number | undefined; +} + function createBaseMessageResponse(): MessageResponse { return { message: "" }; } @@ -7495,6 +7502,122 @@ export const AdminAgent: MessageFns = { }, }; +function createBaseAdminDlqEntry(): AdminDlqEntry { + return { job: undefined, failureTime: undefined, reason: "", retryCount: 0 }; +} + +export const AdminDlqEntry: MessageFns = { + encode(message: AdminDlqEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.job !== undefined) { + AdminJob.encode(message.job, writer.uint32(10).fork()).join(); + } + if (message.failureTime !== undefined) { + Timestamp.encode(toTimestamp(message.failureTime), writer.uint32(18).fork()).join(); + } + if (message.reason !== undefined && message.reason !== "") { + writer.uint32(26).string(message.reason); + } + if (message.retryCount !== undefined && message.retryCount !== 0) { + writer.uint32(32).int32(message.retryCount); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): AdminDlqEntry { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseAdminDlqEntry(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.job = AdminJob.decode(reader, reader.uint32()); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + + message.failureTime = fromTimestamp(Timestamp.decode(reader, reader.uint32())); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + + message.reason = reader.string(); + continue; + } + case 4: { + if (tag !== 32) { + break; + } + + message.retryCount = reader.int32(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): AdminDlqEntry { + return { + job: isSet(object.job) ? AdminJob.fromJSON(object.job) : undefined, + failureTime: isSet(object.failureTime) + ? globalThis.String(object.failureTime) + : isSet(object.failure_time) + ? globalThis.String(object.failure_time) + : undefined, + reason: isSet(object.reason) ? globalThis.String(object.reason) : "", + retryCount: isSet(object.retryCount) + ? globalThis.Number(object.retryCount) + : isSet(object.retry_count) + ? globalThis.Number(object.retry_count) + : 0, + }; + }, + + toJSON(message: AdminDlqEntry): unknown { + const obj: any = {}; + if (message.job !== undefined) { + obj.job = AdminJob.toJSON(message.job); + } + if (message.failureTime !== undefined) { + obj.failureTime = message.failureTime; + } + if (message.reason !== undefined && message.reason !== "") { + obj.reason = message.reason; + } + if (message.retryCount !== undefined && message.retryCount !== 0) { + obj.retryCount = Math.round(message.retryCount); + } + return obj; + }, + + create, I>>(base?: I): AdminDlqEntry { + return AdminDlqEntry.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): AdminDlqEntry { + const message = createBaseAdminDlqEntry(); + message.job = (object.job !== undefined && object.job !== null) ? AdminJob.fromPartial(object.job) : undefined; + message.failureTime = object.failureTime ?? undefined; + message.reason = object.reason ?? ""; + message.retryCount = object.retryCount ?? 0; + return message; + }, +}; + type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T diff --git a/src/server/api/proto/app/v1/video_metadata.ts b/src/server/api/proto/app/v1/video_metadata.ts new file mode 100644 index 0000000..269de4b --- /dev/null +++ b/src/server/api/proto/app/v1/video_metadata.ts @@ -0,0 +1,323 @@ +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.11.4 +// protoc unknown +// source: app/v1/video_metadata.proto + +/* eslint-disable */ +import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; +import { + type CallOptions, + type ChannelCredentials, + Client, + type ClientOptions, + type ClientUnaryCall, + type handleUnaryCall, + makeGenericClientConstructor, + type Metadata, + type ServiceError, + type UntypedServiceImplementation, +} from "@grpc/grpc-js"; +import { AdTemplate, Domain, PlayerConfig, PopupAd, Video } from "./common"; + +export const protobufPackage = "stream.app.v1"; + +export interface GetVideoMetadataRequest { + videoId?: string | undefined; +} + +export interface GetVideoMetadataResponse { + video?: Video | undefined; + defaultPlayerConfig?: PlayerConfig | undefined; + adTemplate?: AdTemplate | undefined; + activePopupAd?: PopupAd | undefined; + domains?: Domain[] | undefined; +} + +function createBaseGetVideoMetadataRequest(): GetVideoMetadataRequest { + return { videoId: "" }; +} + +export const GetVideoMetadataRequest: MessageFns = { + encode(message: GetVideoMetadataRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.videoId !== undefined && message.videoId !== "") { + writer.uint32(10).string(message.videoId); + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): GetVideoMetadataRequest { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGetVideoMetadataRequest(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.videoId = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): GetVideoMetadataRequest { + return { + videoId: isSet(object.videoId) + ? globalThis.String(object.videoId) + : isSet(object.video_id) + ? globalThis.String(object.video_id) + : "", + }; + }, + + toJSON(message: GetVideoMetadataRequest): unknown { + const obj: any = {}; + if (message.videoId !== undefined && message.videoId !== "") { + obj.videoId = message.videoId; + } + return obj; + }, + + create, I>>(base?: I): GetVideoMetadataRequest { + return GetVideoMetadataRequest.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): GetVideoMetadataRequest { + const message = createBaseGetVideoMetadataRequest(); + message.videoId = object.videoId ?? ""; + return message; + }, +}; + +function createBaseGetVideoMetadataResponse(): GetVideoMetadataResponse { + return { + video: undefined, + defaultPlayerConfig: undefined, + adTemplate: undefined, + activePopupAd: undefined, + domains: [], + }; +} + +export const GetVideoMetadataResponse: MessageFns = { + encode(message: GetVideoMetadataResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.video !== undefined) { + Video.encode(message.video, writer.uint32(10).fork()).join(); + } + if (message.defaultPlayerConfig !== undefined) { + PlayerConfig.encode(message.defaultPlayerConfig, writer.uint32(18).fork()).join(); + } + if (message.adTemplate !== undefined) { + AdTemplate.encode(message.adTemplate, writer.uint32(26).fork()).join(); + } + if (message.activePopupAd !== undefined) { + PopupAd.encode(message.activePopupAd, writer.uint32(34).fork()).join(); + } + if (message.domains !== undefined && message.domains.length !== 0) { + for (const v of message.domains) { + Domain.encode(v!, writer.uint32(42).fork()).join(); + } + } + return writer; + }, + + decode(input: BinaryReader | Uint8Array, length?: number): GetVideoMetadataResponse { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + const end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseGetVideoMetadataResponse(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + + message.video = Video.decode(reader, reader.uint32()); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + + message.defaultPlayerConfig = PlayerConfig.decode(reader, reader.uint32()); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + + message.adTemplate = AdTemplate.decode(reader, reader.uint32()); + continue; + } + case 4: { + if (tag !== 34) { + break; + } + + message.activePopupAd = PopupAd.decode(reader, reader.uint32()); + continue; + } + case 5: { + if (tag !== 42) { + break; + } + + const el = Domain.decode(reader, reader.uint32()); + if (el !== undefined) { + message.domains!.push(el); + } + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + + fromJSON(object: any): GetVideoMetadataResponse { + return { + video: isSet(object.video) ? Video.fromJSON(object.video) : undefined, + defaultPlayerConfig: isSet(object.defaultPlayerConfig) + ? PlayerConfig.fromJSON(object.defaultPlayerConfig) + : isSet(object.default_player_config) + ? PlayerConfig.fromJSON(object.default_player_config) + : undefined, + adTemplate: isSet(object.adTemplate) + ? AdTemplate.fromJSON(object.adTemplate) + : isSet(object.ad_template) + ? AdTemplate.fromJSON(object.ad_template) + : undefined, + activePopupAd: isSet(object.activePopupAd) + ? PopupAd.fromJSON(object.activePopupAd) + : isSet(object.active_popup_ad) + ? PopupAd.fromJSON(object.active_popup_ad) + : undefined, + domains: globalThis.Array.isArray(object?.domains) ? object.domains.map((e: any) => Domain.fromJSON(e)) : [], + }; + }, + + toJSON(message: GetVideoMetadataResponse): unknown { + const obj: any = {}; + if (message.video !== undefined) { + obj.video = Video.toJSON(message.video); + } + if (message.defaultPlayerConfig !== undefined) { + obj.defaultPlayerConfig = PlayerConfig.toJSON(message.defaultPlayerConfig); + } + if (message.adTemplate !== undefined) { + obj.adTemplate = AdTemplate.toJSON(message.adTemplate); + } + if (message.activePopupAd !== undefined) { + obj.activePopupAd = PopupAd.toJSON(message.activePopupAd); + } + if (message.domains?.length) { + obj.domains = message.domains.map((e) => Domain.toJSON(e)); + } + return obj; + }, + + create, I>>(base?: I): GetVideoMetadataResponse { + return GetVideoMetadataResponse.fromPartial(base ?? ({} as any)); + }, + fromPartial, I>>(object: I): GetVideoMetadataResponse { + const message = createBaseGetVideoMetadataResponse(); + message.video = (object.video !== undefined && object.video !== null) ? Video.fromPartial(object.video) : undefined; + message.defaultPlayerConfig = (object.defaultPlayerConfig !== undefined && object.defaultPlayerConfig !== null) + ? PlayerConfig.fromPartial(object.defaultPlayerConfig) + : undefined; + message.adTemplate = (object.adTemplate !== undefined && object.adTemplate !== null) + ? AdTemplate.fromPartial(object.adTemplate) + : undefined; + message.activePopupAd = (object.activePopupAd !== undefined && object.activePopupAd !== null) + ? PopupAd.fromPartial(object.activePopupAd) + : undefined; + message.domains = object.domains?.map((e) => Domain.fromPartial(e)) || []; + return message; + }, +}; + +export type VideoMetadataService = typeof VideoMetadataService; +export const VideoMetadataService = { + getVideoMetadata: { + path: "/stream.app.v1.VideoMetadata/GetVideoMetadata", + requestStream: false, + responseStream: false, + requestSerialize: (value: GetVideoMetadataRequest): Buffer => + Buffer.from(GetVideoMetadataRequest.encode(value).finish()), + requestDeserialize: (value: Buffer): GetVideoMetadataRequest => GetVideoMetadataRequest.decode(value), + responseSerialize: (value: GetVideoMetadataResponse): Buffer => + Buffer.from(GetVideoMetadataResponse.encode(value).finish()), + responseDeserialize: (value: Buffer): GetVideoMetadataResponse => GetVideoMetadataResponse.decode(value), + }, +} as const; + +export interface VideoMetadataServer extends UntypedServiceImplementation { + getVideoMetadata: handleUnaryCall; +} + +export interface VideoMetadataClient extends Client { + getVideoMetadata( + request: GetVideoMetadataRequest, + callback: (error: ServiceError | null, response: GetVideoMetadataResponse) => void, + ): ClientUnaryCall; + getVideoMetadata( + request: GetVideoMetadataRequest, + metadata: Metadata, + callback: (error: ServiceError | null, response: GetVideoMetadataResponse) => void, + ): ClientUnaryCall; + getVideoMetadata( + request: GetVideoMetadataRequest, + metadata: Metadata, + options: Partial, + callback: (error: ServiceError | null, response: GetVideoMetadataResponse) => void, + ): ClientUnaryCall; +} + +export const VideoMetadataClient = makeGenericClientConstructor( + VideoMetadataService, + "stream.app.v1.VideoMetadata", +) as unknown as { + new (address: string, credentials: ChannelCredentials, options?: Partial): VideoMetadataClient; + service: typeof VideoMetadataService; + serviceName: string; +}; + +type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; + +export type DeepPartial = T extends Builtin ? T + : T extends globalThis.Array ? globalThis.Array> + : T extends ReadonlyArray ? ReadonlyArray> + : T extends {} ? { [K in keyof T]?: DeepPartial } + : Partial; + +type KeysOfUnion = T extends T ? keyof T : never; +export type Exact = P extends Builtin ? P + : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; + +function isSet(value: any): boolean { + return value !== null && value !== undefined; +} + +export interface MessageFns { + encode(message: T, writer?: BinaryWriter): BinaryWriter; + decode(input: BinaryReader | Uint8Array, length?: number): T; + fromJSON(object: any): T; + toJSON(message: T): unknown; + create, I>>(base?: I): T; + fromPartial, I>>(object: I): T; +} diff --git a/src/server/utils/proto/google/protobuf/empty.ts b/src/server/utils/proto/google/protobuf/empty.ts deleted file mode 100644 index 9b9971a..0000000 --- a/src/server/utils/proto/google/protobuf/empty.ts +++ /dev/null @@ -1,86 +0,0 @@ -// Code generated by protoc-gen-ts_proto. DO NOT EDIT. -// versions: -// protoc-gen-ts_proto v2.11.4 -// protoc unknown -// source: google/protobuf/empty.proto - -/* eslint-disable */ -import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; - -export const protobufPackage = "google.protobuf"; - -/** - * A generic empty message that you can re-use to avoid defining duplicated - * empty messages in your APIs. A typical example is to use it as the request - * or the response type of an API method. For instance: - * - * service Foo { - * rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); - * } - */ -export interface Empty { -} - -function createBaseEmpty(): Empty { - return {}; -} - -export const Empty: MessageFns = { - encode(_: Empty, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): Empty { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseEmpty(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(_: any): Empty { - return {}; - }, - - toJSON(_: Empty): unknown { - const obj: any = {}; - return obj; - }, - - create, I>>(base?: I): Empty { - return Empty.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(_: I): Empty { - const message = createBaseEmpty(); - return message; - }, -}; - -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; - -export type DeepPartial = T extends Builtin ? T - : T extends globalThis.Array ? globalThis.Array> - : T extends ReadonlyArray ? ReadonlyArray> - : T extends {} ? { [K in keyof T]?: DeepPartial } - : Partial; - -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P - : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; - -export interface MessageFns { - encode(message: T, writer?: BinaryWriter): BinaryWriter; - decode(input: BinaryReader | Uint8Array, length?: number): T; - fromJSON(object: any): T; - toJSON(message: T): unknown; - create, I>>(base?: I): T; - fromPartial, I>>(object: I): T; -} diff --git a/src/server/utils/proto/google/protobuf/timestamp.ts b/src/server/utils/proto/google/protobuf/timestamp.ts deleted file mode 100644 index 00808e3..0000000 --- a/src/server/utils/proto/google/protobuf/timestamp.ts +++ /dev/null @@ -1,231 +0,0 @@ -// Code generated by protoc-gen-ts_proto. DO NOT EDIT. -// versions: -// protoc-gen-ts_proto v2.11.4 -// protoc unknown -// source: google/protobuf/timestamp.proto - -/* eslint-disable */ -import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; - -export const protobufPackage = "google.protobuf"; - -/** - * A Timestamp represents a point in time independent of any time zone or local - * calendar, encoded as a count of seconds and fractions of seconds at - * nanosecond resolution. The count is relative to an epoch at UTC midnight on - * January 1, 1970, in the proleptic Gregorian calendar which extends the - * Gregorian calendar backwards to year one. - * - * All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap - * second table is needed for interpretation, using a [24-hour linear - * smear](https://developers.google.com/time/smear). - * - * The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By - * restricting to that range, we ensure that we can convert to and from [RFC - * 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. - * - * # Examples - * - * Example 1: Compute Timestamp from POSIX `time()`. - * - * Timestamp timestamp; - * timestamp.set_seconds(time(NULL)); - * timestamp.set_nanos(0); - * - * Example 2: Compute Timestamp from POSIX `gettimeofday()`. - * - * struct timeval tv; - * gettimeofday(&tv, NULL); - * - * Timestamp timestamp; - * timestamp.set_seconds(tv.tv_sec); - * timestamp.set_nanos(tv.tv_usec * 1000); - * - * Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. - * - * FILETIME ft; - * GetSystemTimeAsFileTime(&ft); - * UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime; - * - * // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z - * // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. - * Timestamp timestamp; - * timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); - * timestamp.set_nanos((INT32) ((ticks % 10000000) * 100)); - * - * Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. - * - * long millis = System.currentTimeMillis(); - * - * Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) - * .setNanos((int) ((millis % 1000) * 1000000)).build(); - * - * Example 5: Compute Timestamp from Java `Instant.now()`. - * - * Instant now = Instant.now(); - * - * Timestamp timestamp = - * Timestamp.newBuilder().setSeconds(now.getEpochSecond()) - * .setNanos(now.getNano()).build(); - * - * Example 6: Compute Timestamp from current time in Python. - * - * timestamp = Timestamp() - * timestamp.GetCurrentTime() - * - * # JSON Mapping - * - * In JSON format, the Timestamp type is encoded as a string in the - * [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the - * format is "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" - * where {year} is always expressed using four digits while {month}, {day}, - * {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional - * seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), - * are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone - * is required. A proto3 JSON serializer should always use UTC (as indicated by - * "Z") when printing the Timestamp type and a proto3 JSON parser should be - * able to accept both UTC and other timezones (as indicated by an offset). - * - * For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past - * 01:30 UTC on January 15, 2017. - * - * In JavaScript, one can convert a Date object to this format using the - * standard - * [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString) - * method. In Python, a standard `datetime.datetime` object can be converted - * to this format using - * [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with - * the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use - * the Joda Time's [`ISODateTimeFormat.dateTime()`]( - * http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime() - * ) to obtain a formatter capable of generating timestamps in this format. - */ -export interface Timestamp { - /** - * Represents seconds of UTC time since Unix epoch - * 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to - * 9999-12-31T23:59:59Z inclusive. - */ - seconds?: - | number - | undefined; - /** - * Non-negative fractions of a second at nanosecond resolution. Negative - * second values with fractions must still have non-negative nanos values - * that count forward in time. Must be from 0 to 999,999,999 - * inclusive. - */ - nanos?: number | undefined; -} - -function createBaseTimestamp(): Timestamp { - return { seconds: 0, nanos: 0 }; -} - -export const Timestamp: MessageFns = { - encode(message: Timestamp, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.seconds !== undefined && message.seconds !== 0) { - writer.uint32(8).int64(message.seconds); - } - if (message.nanos !== undefined && message.nanos !== 0) { - writer.uint32(16).int32(message.nanos); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): Timestamp { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseTimestamp(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.seconds = longToNumber(reader.int64()); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - - message.nanos = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): Timestamp { - return { - seconds: isSet(object.seconds) ? globalThis.Number(object.seconds) : 0, - nanos: isSet(object.nanos) ? globalThis.Number(object.nanos) : 0, - }; - }, - - toJSON(message: Timestamp): unknown { - const obj: any = {}; - if (message.seconds !== undefined && message.seconds !== 0) { - obj.seconds = Math.round(message.seconds); - } - if (message.nanos !== undefined && message.nanos !== 0) { - obj.nanos = Math.round(message.nanos); - } - return obj; - }, - - create, I>>(base?: I): Timestamp { - return Timestamp.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): Timestamp { - const message = createBaseTimestamp(); - message.seconds = object.seconds ?? 0; - message.nanos = object.nanos ?? 0; - return message; - }, -}; - -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; - -export type DeepPartial = T extends Builtin ? T - : T extends globalThis.Array ? globalThis.Array> - : T extends ReadonlyArray ? ReadonlyArray> - : T extends {} ? { [K in keyof T]?: DeepPartial } - : Partial; - -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P - : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; - -function longToNumber(int64: { toString(): string }): number { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -function isSet(value: any): boolean { - return value !== null && value !== undefined; -} - -export interface MessageFns { - encode(message: T, writer?: BinaryWriter): BinaryWriter; - decode(input: BinaryReader | Uint8Array, length?: number): T; - fromJSON(object: any): T; - toJSON(message: T): unknown; - create, I>>(base?: I): T; - fromPartial, I>>(object: I): T; -} diff --git a/src/server/utils/proto/v1/common.ts b/src/server/utils/proto/v1/common.ts deleted file mode 100644 index 8c4b3a6..0000000 --- a/src/server/utils/proto/v1/common.ts +++ /dev/null @@ -1,719 +0,0 @@ -// Code generated by protoc-gen-ts_proto. DO NOT EDIT. -// versions: -// protoc-gen-ts_proto v2.11.4 -// protoc unknown -// source: v1/common.proto - -/* eslint-disable */ -import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { Timestamp } from "../google/protobuf/timestamp"; - -export const protobufPackage = "stream.common.v1"; - -export interface RequestContext { - userId?: string | undefined; - email?: string | undefined; - role?: string | undefined; - requestId?: string | undefined; - source?: string | undefined; -} - -export interface PaginationRequest { - page?: number | undefined; - pageSize?: number | undefined; -} - -export interface PaginationResponse { - page?: number | undefined; - pageSize?: number | undefined; - total?: number | undefined; -} - -export interface Money { - amount?: number | undefined; - currency?: string | undefined; -} - -export interface Empty { -} - -export interface IdRequest { - id?: string | undefined; -} - -export interface DeleteResponse { - message?: string | undefined; -} - -export interface TimestampRange { - from?: string | undefined; - to?: string | undefined; -} - -function createBaseRequestContext(): RequestContext { - return { userId: "", email: "", role: "", requestId: "", source: "" }; -} - -export const RequestContext: MessageFns = { - encode(message: RequestContext, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.userId !== undefined && message.userId !== "") { - writer.uint32(10).string(message.userId); - } - if (message.email !== undefined && message.email !== "") { - writer.uint32(18).string(message.email); - } - if (message.role !== undefined && message.role !== "") { - writer.uint32(26).string(message.role); - } - if (message.requestId !== undefined && message.requestId !== "") { - writer.uint32(34).string(message.requestId); - } - if (message.source !== undefined && message.source !== "") { - writer.uint32(42).string(message.source); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): RequestContext { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseRequestContext(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.userId = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.email = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.role = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - - message.requestId = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - - message.source = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): RequestContext { - return { - userId: isSet(object.userId) - ? globalThis.String(object.userId) - : isSet(object.user_id) - ? globalThis.String(object.user_id) - : "", - email: isSet(object.email) ? globalThis.String(object.email) : "", - role: isSet(object.role) ? globalThis.String(object.role) : "", - requestId: isSet(object.requestId) - ? globalThis.String(object.requestId) - : isSet(object.request_id) - ? globalThis.String(object.request_id) - : "", - source: isSet(object.source) ? globalThis.String(object.source) : "", - }; - }, - - toJSON(message: RequestContext): unknown { - const obj: any = {}; - if (message.userId !== undefined && message.userId !== "") { - obj.userId = message.userId; - } - if (message.email !== undefined && message.email !== "") { - obj.email = message.email; - } - if (message.role !== undefined && message.role !== "") { - obj.role = message.role; - } - if (message.requestId !== undefined && message.requestId !== "") { - obj.requestId = message.requestId; - } - if (message.source !== undefined && message.source !== "") { - obj.source = message.source; - } - return obj; - }, - - create, I>>(base?: I): RequestContext { - return RequestContext.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): RequestContext { - const message = createBaseRequestContext(); - message.userId = object.userId ?? ""; - message.email = object.email ?? ""; - message.role = object.role ?? ""; - message.requestId = object.requestId ?? ""; - message.source = object.source ?? ""; - return message; - }, -}; - -function createBasePaginationRequest(): PaginationRequest { - return { page: 0, pageSize: 0 }; -} - -export const PaginationRequest: MessageFns = { - encode(message: PaginationRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.page !== undefined && message.page !== 0) { - writer.uint32(8).int32(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - writer.uint32(16).int32(message.pageSize); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): PaginationRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBasePaginationRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.page = reader.int32(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - - message.pageSize = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): PaginationRequest { - return { - page: isSet(object.page) ? globalThis.Number(object.page) : 0, - pageSize: isSet(object.pageSize) - ? globalThis.Number(object.pageSize) - : isSet(object.page_size) - ? globalThis.Number(object.page_size) - : 0, - }; - }, - - toJSON(message: PaginationRequest): unknown { - const obj: any = {}; - if (message.page !== undefined && message.page !== 0) { - obj.page = Math.round(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - obj.pageSize = Math.round(message.pageSize); - } - return obj; - }, - - create, I>>(base?: I): PaginationRequest { - return PaginationRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): PaginationRequest { - const message = createBasePaginationRequest(); - message.page = object.page ?? 0; - message.pageSize = object.pageSize ?? 0; - return message; - }, -}; - -function createBasePaginationResponse(): PaginationResponse { - return { page: 0, pageSize: 0, total: 0 }; -} - -export const PaginationResponse: MessageFns = { - encode(message: PaginationResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.page !== undefined && message.page !== 0) { - writer.uint32(8).int32(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - writer.uint32(16).int32(message.pageSize); - } - if (message.total !== undefined && message.total !== 0) { - writer.uint32(24).int64(message.total); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): PaginationResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBasePaginationResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.page = reader.int32(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - - message.pageSize = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - - message.total = longToNumber(reader.int64()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): PaginationResponse { - return { - page: isSet(object.page) ? globalThis.Number(object.page) : 0, - pageSize: isSet(object.pageSize) - ? globalThis.Number(object.pageSize) - : isSet(object.page_size) - ? globalThis.Number(object.page_size) - : 0, - total: isSet(object.total) ? globalThis.Number(object.total) : 0, - }; - }, - - toJSON(message: PaginationResponse): unknown { - const obj: any = {}; - if (message.page !== undefined && message.page !== 0) { - obj.page = Math.round(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - obj.pageSize = Math.round(message.pageSize); - } - if (message.total !== undefined && message.total !== 0) { - obj.total = Math.round(message.total); - } - return obj; - }, - - create, I>>(base?: I): PaginationResponse { - return PaginationResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): PaginationResponse { - const message = createBasePaginationResponse(); - message.page = object.page ?? 0; - message.pageSize = object.pageSize ?? 0; - message.total = object.total ?? 0; - return message; - }, -}; - -function createBaseMoney(): Money { - return { amount: 0, currency: "" }; -} - -export const Money: MessageFns = { - encode(message: Money, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.amount !== undefined && message.amount !== 0) { - writer.uint32(9).double(message.amount); - } - if (message.currency !== undefined && message.currency !== "") { - writer.uint32(18).string(message.currency); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): Money { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseMoney(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 9) { - break; - } - - message.amount = reader.double(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.currency = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): Money { - return { - amount: isSet(object.amount) ? globalThis.Number(object.amount) : 0, - currency: isSet(object.currency) ? globalThis.String(object.currency) : "", - }; - }, - - toJSON(message: Money): unknown { - const obj: any = {}; - if (message.amount !== undefined && message.amount !== 0) { - obj.amount = message.amount; - } - if (message.currency !== undefined && message.currency !== "") { - obj.currency = message.currency; - } - return obj; - }, - - create, I>>(base?: I): Money { - return Money.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): Money { - const message = createBaseMoney(); - message.amount = object.amount ?? 0; - message.currency = object.currency ?? ""; - return message; - }, -}; - -function createBaseEmpty(): Empty { - return {}; -} - -export const Empty: MessageFns = { - encode(_: Empty, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): Empty { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseEmpty(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(_: any): Empty { - return {}; - }, - - toJSON(_: Empty): unknown { - const obj: any = {}; - return obj; - }, - - create, I>>(base?: I): Empty { - return Empty.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(_: I): Empty { - const message = createBaseEmpty(); - return message; - }, -}; - -function createBaseIdRequest(): IdRequest { - return { id: "" }; -} - -export const IdRequest: MessageFns = { - encode(message: IdRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): IdRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseIdRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): IdRequest { - return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; - }, - - toJSON(message: IdRequest): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - return obj; - }, - - create, I>>(base?: I): IdRequest { - return IdRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): IdRequest { - const message = createBaseIdRequest(); - message.id = object.id ?? ""; - return message; - }, -}; - -function createBaseDeleteResponse(): DeleteResponse { - return { message: "" }; -} - -export const DeleteResponse: MessageFns = { - encode(message: DeleteResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.message !== undefined && message.message !== "") { - writer.uint32(10).string(message.message); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): DeleteResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseDeleteResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.message = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): DeleteResponse { - return { message: isSet(object.message) ? globalThis.String(object.message) : "" }; - }, - - toJSON(message: DeleteResponse): unknown { - const obj: any = {}; - if (message.message !== undefined && message.message !== "") { - obj.message = message.message; - } - return obj; - }, - - create, I>>(base?: I): DeleteResponse { - return DeleteResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): DeleteResponse { - const message = createBaseDeleteResponse(); - message.message = object.message ?? ""; - return message; - }, -}; - -function createBaseTimestampRange(): TimestampRange { - return { from: undefined, to: undefined }; -} - -export const TimestampRange: MessageFns = { - encode(message: TimestampRange, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.from !== undefined) { - Timestamp.encode(toTimestamp(message.from), writer.uint32(10).fork()).join(); - } - if (message.to !== undefined) { - Timestamp.encode(toTimestamp(message.to), writer.uint32(18).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): TimestampRange { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseTimestampRange(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.from = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.to = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): TimestampRange { - return { - from: isSet(object.from) ? globalThis.String(object.from) : undefined, - to: isSet(object.to) ? globalThis.String(object.to) : undefined, - }; - }, - - toJSON(message: TimestampRange): unknown { - const obj: any = {}; - if (message.from !== undefined) { - obj.from = message.from; - } - if (message.to !== undefined) { - obj.to = message.to; - } - return obj; - }, - - create, I>>(base?: I): TimestampRange { - return TimestampRange.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): TimestampRange { - const message = createBaseTimestampRange(); - message.from = object.from ?? undefined; - message.to = object.to ?? undefined; - return message; - }, -}; - -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; - -export type DeepPartial = T extends Builtin ? T - : T extends globalThis.Array ? globalThis.Array> - : T extends ReadonlyArray ? ReadonlyArray> - : T extends {} ? { [K in keyof T]?: DeepPartial } - : Partial; - -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P - : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; - -function toTimestamp(dateStr: string): Timestamp { - const date = new globalThis.Date(dateStr); - const seconds = Math.trunc(date.getTime() / 1_000); - const nanos = (date.getTime() % 1_000) * 1_000_000; - return { seconds, nanos }; -} - -function fromTimestamp(t: Timestamp): string { - let millis = (t.seconds || 0) * 1_000; - millis += (t.nanos || 0) / 1_000_000; - return new globalThis.Date(millis).toISOString(); -} - -function longToNumber(int64: { toString(): string }): number { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -function isSet(value: any): boolean { - return value !== null && value !== undefined; -} - -export interface MessageFns { - encode(message: T, writer?: BinaryWriter): BinaryWriter; - decode(input: BinaryReader | Uint8Array, length?: number): T; - fromJSON(object: any): T; - toJSON(message: T): unknown; - create, I>>(base?: I): T; - fromPartial, I>>(object: I): T; -} diff --git a/src/server/utils/proto/v1/user.ts b/src/server/utils/proto/v1/user.ts deleted file mode 100644 index 566478c..0000000 --- a/src/server/utils/proto/v1/user.ts +++ /dev/null @@ -1,2184 +0,0 @@ -// Code generated by protoc-gen-ts_proto. DO NOT EDIT. -// versions: -// protoc-gen-ts_proto v2.11.4 -// protoc unknown -// source: v1/user.proto - -/* eslint-disable */ -import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; -import { - type CallOptions, - type ChannelCredentials, - Client, - type ClientOptions, - type ClientUnaryCall, - type handleUnaryCall, - makeGenericClientConstructor, - type Metadata, - type ServiceError, - type UntypedServiceImplementation, -} from "@grpc/grpc-js"; -import { Empty } from "../google/protobuf/empty"; -import { Timestamp } from "../google/protobuf/timestamp"; - -export const protobufPackage = "stream.User.v1"; - -/** ─── User Messages ─────────────────────────────────────────────────────────── */ -export interface UpdateUserPasswordRequest { - id?: string | undefined; - newPassword?: string | undefined; -} - -export interface GetUserRequest { - id?: string | undefined; -} - -export interface GetUserByEmailRequest { - email?: string | undefined; -} - -export interface GetUserResponse { - user?: User | undefined; -} - -export interface ListUsersRequest { - page?: number | undefined; - pageSize?: - | number - | undefined; - /** optional filter */ - role?: string | undefined; -} - -export interface ListUsersResponse { - users?: User[] | undefined; - total?: number | undefined; - page?: number | undefined; - pageSize?: number | undefined; -} - -export interface CreateUserRequest { - email?: string | undefined; - username?: string | undefined; - password?: string | undefined; -} - -export interface CreateUserResponse { - user?: User | undefined; -} - -export interface UpdateUserRequest { - id?: string | undefined; - username?: string | undefined; - avatar?: string | undefined; - role?: string | undefined; - planId?: string | undefined; -} - -export interface UpdateUserResponse { - user?: User | undefined; -} - -export interface DeleteUserRequest { - id?: string | undefined; -} - -export interface DeleteUserResponse { - success?: boolean | undefined; -} - -export interface GetPreferencesRequest { - userId?: string | undefined; -} - -export interface GetPreferencesResponse { - preferences?: Preferences | undefined; -} - -export interface UpsertPreferencesRequest { - preferences?: Preferences | undefined; -} - -export interface UpsertPreferencesResponse { - preferences?: Preferences | undefined; -} - -export interface User { - id?: string | undefined; - email?: string | undefined; - password?: string | undefined; - username?: string | undefined; - avatar?: string | undefined; - role?: string | undefined; - googleId?: string | undefined; - storageUsed?: number | undefined; - planId?: string | undefined; - createdAt?: string | undefined; - updatedAt?: string | undefined; -} - -export interface Preferences { - userId?: string | undefined; - language?: string | undefined; - locale?: string | undefined; - emailNotifications?: boolean | undefined; - pushNotifications?: boolean | undefined; - marketingNotifications?: boolean | undefined; - telegramNotifications?: boolean | undefined; - autoplay?: boolean | undefined; - loop?: boolean | undefined; - muted?: boolean | undefined; - showControls?: boolean | undefined; - pip?: boolean | undefined; - airplay?: boolean | undefined; - chromecast?: boolean | undefined; - encrytionM3u8?: boolean | undefined; -} - -function createBaseUpdateUserPasswordRequest(): UpdateUserPasswordRequest { - return { id: "", newPassword: "" }; -} - -export const UpdateUserPasswordRequest: MessageFns = { - encode(message: UpdateUserPasswordRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - if (message.newPassword !== undefined && message.newPassword !== "") { - writer.uint32(18).string(message.newPassword); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): UpdateUserPasswordRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUpdateUserPasswordRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.newPassword = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): UpdateUserPasswordRequest { - return { - id: isSet(object.id) ? globalThis.String(object.id) : "", - newPassword: isSet(object.newPassword) - ? globalThis.String(object.newPassword) - : isSet(object.new_password) - ? globalThis.String(object.new_password) - : "", - }; - }, - - toJSON(message: UpdateUserPasswordRequest): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - if (message.newPassword !== undefined && message.newPassword !== "") { - obj.newPassword = message.newPassword; - } - return obj; - }, - - create, I>>(base?: I): UpdateUserPasswordRequest { - return UpdateUserPasswordRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): UpdateUserPasswordRequest { - const message = createBaseUpdateUserPasswordRequest(); - message.id = object.id ?? ""; - message.newPassword = object.newPassword ?? ""; - return message; - }, -}; - -function createBaseGetUserRequest(): GetUserRequest { - return { id: "" }; -} - -export const GetUserRequest: MessageFns = { - encode(message: GetUserRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): GetUserRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseGetUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): GetUserRequest { - return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; - }, - - toJSON(message: GetUserRequest): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - return obj; - }, - - create, I>>(base?: I): GetUserRequest { - return GetUserRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): GetUserRequest { - const message = createBaseGetUserRequest(); - message.id = object.id ?? ""; - return message; - }, -}; - -function createBaseGetUserByEmailRequest(): GetUserByEmailRequest { - return { email: "" }; -} - -export const GetUserByEmailRequest: MessageFns = { - encode(message: GetUserByEmailRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.email !== undefined && message.email !== "") { - writer.uint32(10).string(message.email); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): GetUserByEmailRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseGetUserByEmailRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.email = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): GetUserByEmailRequest { - return { email: isSet(object.email) ? globalThis.String(object.email) : "" }; - }, - - toJSON(message: GetUserByEmailRequest): unknown { - const obj: any = {}; - if (message.email !== undefined && message.email !== "") { - obj.email = message.email; - } - return obj; - }, - - create, I>>(base?: I): GetUserByEmailRequest { - return GetUserByEmailRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): GetUserByEmailRequest { - const message = createBaseGetUserByEmailRequest(); - message.email = object.email ?? ""; - return message; - }, -}; - -function createBaseGetUserResponse(): GetUserResponse { - return { user: undefined }; -} - -export const GetUserResponse: MessageFns = { - encode(message: GetUserResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.user !== undefined) { - User.encode(message.user, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): GetUserResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseGetUserResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.user = User.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): GetUserResponse { - return { user: isSet(object.user) ? User.fromJSON(object.user) : undefined }; - }, - - toJSON(message: GetUserResponse): unknown { - const obj: any = {}; - if (message.user !== undefined) { - obj.user = User.toJSON(message.user); - } - return obj; - }, - - create, I>>(base?: I): GetUserResponse { - return GetUserResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): GetUserResponse { - const message = createBaseGetUserResponse(); - message.user = (object.user !== undefined && object.user !== null) ? User.fromPartial(object.user) : undefined; - return message; - }, -}; - -function createBaseListUsersRequest(): ListUsersRequest { - return { page: 0, pageSize: 0, role: "" }; -} - -export const ListUsersRequest: MessageFns = { - encode(message: ListUsersRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.page !== undefined && message.page !== 0) { - writer.uint32(8).int32(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - writer.uint32(16).int32(message.pageSize); - } - if (message.role !== undefined && message.role !== "") { - writer.uint32(26).string(message.role); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): ListUsersRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseListUsersRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.page = reader.int32(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - - message.pageSize = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.role = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): ListUsersRequest { - return { - page: isSet(object.page) ? globalThis.Number(object.page) : 0, - pageSize: isSet(object.pageSize) - ? globalThis.Number(object.pageSize) - : isSet(object.page_size) - ? globalThis.Number(object.page_size) - : 0, - role: isSet(object.role) ? globalThis.String(object.role) : "", - }; - }, - - toJSON(message: ListUsersRequest): unknown { - const obj: any = {}; - if (message.page !== undefined && message.page !== 0) { - obj.page = Math.round(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - obj.pageSize = Math.round(message.pageSize); - } - if (message.role !== undefined && message.role !== "") { - obj.role = message.role; - } - return obj; - }, - - create, I>>(base?: I): ListUsersRequest { - return ListUsersRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): ListUsersRequest { - const message = createBaseListUsersRequest(); - message.page = object.page ?? 0; - message.pageSize = object.pageSize ?? 0; - message.role = object.role ?? ""; - return message; - }, -}; - -function createBaseListUsersResponse(): ListUsersResponse { - return { users: [], total: 0, page: 0, pageSize: 0 }; -} - -export const ListUsersResponse: MessageFns = { - encode(message: ListUsersResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.users !== undefined && message.users.length !== 0) { - for (const v of message.users) { - User.encode(v!, writer.uint32(10).fork()).join(); - } - } - if (message.total !== undefined && message.total !== 0) { - writer.uint32(16).int32(message.total); - } - if (message.page !== undefined && message.page !== 0) { - writer.uint32(24).int32(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - writer.uint32(32).int32(message.pageSize); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): ListUsersResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseListUsersResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - const el = User.decode(reader, reader.uint32()); - if (el !== undefined) { - message.users!.push(el); - } - continue; - } - case 2: { - if (tag !== 16) { - break; - } - - message.total = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - - message.page = reader.int32(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - - message.pageSize = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): ListUsersResponse { - return { - users: globalThis.Array.isArray(object?.users) ? object.users.map((e: any) => User.fromJSON(e)) : [], - total: isSet(object.total) ? globalThis.Number(object.total) : 0, - page: isSet(object.page) ? globalThis.Number(object.page) : 0, - pageSize: isSet(object.pageSize) - ? globalThis.Number(object.pageSize) - : isSet(object.page_size) - ? globalThis.Number(object.page_size) - : 0, - }; - }, - - toJSON(message: ListUsersResponse): unknown { - const obj: any = {}; - if (message.users?.length) { - obj.users = message.users.map((e) => User.toJSON(e)); - } - if (message.total !== undefined && message.total !== 0) { - obj.total = Math.round(message.total); - } - if (message.page !== undefined && message.page !== 0) { - obj.page = Math.round(message.page); - } - if (message.pageSize !== undefined && message.pageSize !== 0) { - obj.pageSize = Math.round(message.pageSize); - } - return obj; - }, - - create, I>>(base?: I): ListUsersResponse { - return ListUsersResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): ListUsersResponse { - const message = createBaseListUsersResponse(); - message.users = object.users?.map((e) => User.fromPartial(e)) || []; - message.total = object.total ?? 0; - message.page = object.page ?? 0; - message.pageSize = object.pageSize ?? 0; - return message; - }, -}; - -function createBaseCreateUserRequest(): CreateUserRequest { - return { email: "", username: undefined, password: undefined }; -} - -export const CreateUserRequest: MessageFns = { - encode(message: CreateUserRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.email !== undefined && message.email !== "") { - writer.uint32(10).string(message.email); - } - if (message.username !== undefined) { - writer.uint32(18).string(message.username); - } - if (message.password !== undefined) { - writer.uint32(26).string(message.password); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): CreateUserRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseCreateUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.email = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.username = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.password = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): CreateUserRequest { - return { - email: isSet(object.email) ? globalThis.String(object.email) : "", - username: isSet(object.username) ? globalThis.String(object.username) : undefined, - password: isSet(object.password) ? globalThis.String(object.password) : undefined, - }; - }, - - toJSON(message: CreateUserRequest): unknown { - const obj: any = {}; - if (message.email !== undefined && message.email !== "") { - obj.email = message.email; - } - if (message.username !== undefined) { - obj.username = message.username; - } - if (message.password !== undefined) { - obj.password = message.password; - } - return obj; - }, - - create, I>>(base?: I): CreateUserRequest { - return CreateUserRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): CreateUserRequest { - const message = createBaseCreateUserRequest(); - message.email = object.email ?? ""; - message.username = object.username ?? undefined; - message.password = object.password ?? undefined; - return message; - }, -}; - -function createBaseCreateUserResponse(): CreateUserResponse { - return { user: undefined }; -} - -export const CreateUserResponse: MessageFns = { - encode(message: CreateUserResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.user !== undefined) { - User.encode(message.user, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): CreateUserResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseCreateUserResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.user = User.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): CreateUserResponse { - return { user: isSet(object.user) ? User.fromJSON(object.user) : undefined }; - }, - - toJSON(message: CreateUserResponse): unknown { - const obj: any = {}; - if (message.user !== undefined) { - obj.user = User.toJSON(message.user); - } - return obj; - }, - - create, I>>(base?: I): CreateUserResponse { - return CreateUserResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): CreateUserResponse { - const message = createBaseCreateUserResponse(); - message.user = (object.user !== undefined && object.user !== null) ? User.fromPartial(object.user) : undefined; - return message; - }, -}; - -function createBaseUpdateUserRequest(): UpdateUserRequest { - return { id: "", username: undefined, avatar: undefined, role: undefined, planId: undefined }; -} - -export const UpdateUserRequest: MessageFns = { - encode(message: UpdateUserRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - if (message.username !== undefined) { - writer.uint32(18).string(message.username); - } - if (message.avatar !== undefined) { - writer.uint32(26).string(message.avatar); - } - if (message.role !== undefined) { - writer.uint32(34).string(message.role); - } - if (message.planId !== undefined) { - writer.uint32(42).string(message.planId); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): UpdateUserRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUpdateUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.username = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.avatar = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - - message.role = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - - message.planId = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): UpdateUserRequest { - return { - id: isSet(object.id) ? globalThis.String(object.id) : "", - username: isSet(object.username) ? globalThis.String(object.username) : undefined, - avatar: isSet(object.avatar) ? globalThis.String(object.avatar) : undefined, - role: isSet(object.role) ? globalThis.String(object.role) : undefined, - planId: isSet(object.planId) - ? globalThis.String(object.planId) - : isSet(object.plan_id) - ? globalThis.String(object.plan_id) - : undefined, - }; - }, - - toJSON(message: UpdateUserRequest): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - if (message.username !== undefined) { - obj.username = message.username; - } - if (message.avatar !== undefined) { - obj.avatar = message.avatar; - } - if (message.role !== undefined) { - obj.role = message.role; - } - if (message.planId !== undefined) { - obj.planId = message.planId; - } - return obj; - }, - - create, I>>(base?: I): UpdateUserRequest { - return UpdateUserRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): UpdateUserRequest { - const message = createBaseUpdateUserRequest(); - message.id = object.id ?? ""; - message.username = object.username ?? undefined; - message.avatar = object.avatar ?? undefined; - message.role = object.role ?? undefined; - message.planId = object.planId ?? undefined; - return message; - }, -}; - -function createBaseUpdateUserResponse(): UpdateUserResponse { - return { user: undefined }; -} - -export const UpdateUserResponse: MessageFns = { - encode(message: UpdateUserResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.user !== undefined) { - User.encode(message.user, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): UpdateUserResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUpdateUserResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.user = User.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): UpdateUserResponse { - return { user: isSet(object.user) ? User.fromJSON(object.user) : undefined }; - }, - - toJSON(message: UpdateUserResponse): unknown { - const obj: any = {}; - if (message.user !== undefined) { - obj.user = User.toJSON(message.user); - } - return obj; - }, - - create, I>>(base?: I): UpdateUserResponse { - return UpdateUserResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): UpdateUserResponse { - const message = createBaseUpdateUserResponse(); - message.user = (object.user !== undefined && object.user !== null) ? User.fromPartial(object.user) : undefined; - return message; - }, -}; - -function createBaseDeleteUserRequest(): DeleteUserRequest { - return { id: "" }; -} - -export const DeleteUserRequest: MessageFns = { - encode(message: DeleteUserRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): DeleteUserRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseDeleteUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): DeleteUserRequest { - return { id: isSet(object.id) ? globalThis.String(object.id) : "" }; - }, - - toJSON(message: DeleteUserRequest): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - return obj; - }, - - create, I>>(base?: I): DeleteUserRequest { - return DeleteUserRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): DeleteUserRequest { - const message = createBaseDeleteUserRequest(); - message.id = object.id ?? ""; - return message; - }, -}; - -function createBaseDeleteUserResponse(): DeleteUserResponse { - return { success: false }; -} - -export const DeleteUserResponse: MessageFns = { - encode(message: DeleteUserResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.success !== undefined && message.success !== false) { - writer.uint32(8).bool(message.success); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): DeleteUserResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseDeleteUserResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - - message.success = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): DeleteUserResponse { - return { success: isSet(object.success) ? globalThis.Boolean(object.success) : false }; - }, - - toJSON(message: DeleteUserResponse): unknown { - const obj: any = {}; - if (message.success !== undefined && message.success !== false) { - obj.success = message.success; - } - return obj; - }, - - create, I>>(base?: I): DeleteUserResponse { - return DeleteUserResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): DeleteUserResponse { - const message = createBaseDeleteUserResponse(); - message.success = object.success ?? false; - return message; - }, -}; - -function createBaseGetPreferencesRequest(): GetPreferencesRequest { - return { userId: "" }; -} - -export const GetPreferencesRequest: MessageFns = { - encode(message: GetPreferencesRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.userId !== undefined && message.userId !== "") { - writer.uint32(10).string(message.userId); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): GetPreferencesRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseGetPreferencesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.userId = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): GetPreferencesRequest { - return { - userId: isSet(object.userId) - ? globalThis.String(object.userId) - : isSet(object.user_id) - ? globalThis.String(object.user_id) - : "", - }; - }, - - toJSON(message: GetPreferencesRequest): unknown { - const obj: any = {}; - if (message.userId !== undefined && message.userId !== "") { - obj.userId = message.userId; - } - return obj; - }, - - create, I>>(base?: I): GetPreferencesRequest { - return GetPreferencesRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): GetPreferencesRequest { - const message = createBaseGetPreferencesRequest(); - message.userId = object.userId ?? ""; - return message; - }, -}; - -function createBaseGetPreferencesResponse(): GetPreferencesResponse { - return { preferences: undefined }; -} - -export const GetPreferencesResponse: MessageFns = { - encode(message: GetPreferencesResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.preferences !== undefined) { - Preferences.encode(message.preferences, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): GetPreferencesResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseGetPreferencesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.preferences = Preferences.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): GetPreferencesResponse { - return { preferences: isSet(object.preferences) ? Preferences.fromJSON(object.preferences) : undefined }; - }, - - toJSON(message: GetPreferencesResponse): unknown { - const obj: any = {}; - if (message.preferences !== undefined) { - obj.preferences = Preferences.toJSON(message.preferences); - } - return obj; - }, - - create, I>>(base?: I): GetPreferencesResponse { - return GetPreferencesResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): GetPreferencesResponse { - const message = createBaseGetPreferencesResponse(); - message.preferences = (object.preferences !== undefined && object.preferences !== null) - ? Preferences.fromPartial(object.preferences) - : undefined; - return message; - }, -}; - -function createBaseUpsertPreferencesRequest(): UpsertPreferencesRequest { - return { preferences: undefined }; -} - -export const UpsertPreferencesRequest: MessageFns = { - encode(message: UpsertPreferencesRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.preferences !== undefined) { - Preferences.encode(message.preferences, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): UpsertPreferencesRequest { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUpsertPreferencesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.preferences = Preferences.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): UpsertPreferencesRequest { - return { preferences: isSet(object.preferences) ? Preferences.fromJSON(object.preferences) : undefined }; - }, - - toJSON(message: UpsertPreferencesRequest): unknown { - const obj: any = {}; - if (message.preferences !== undefined) { - obj.preferences = Preferences.toJSON(message.preferences); - } - return obj; - }, - - create, I>>(base?: I): UpsertPreferencesRequest { - return UpsertPreferencesRequest.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): UpsertPreferencesRequest { - const message = createBaseUpsertPreferencesRequest(); - message.preferences = (object.preferences !== undefined && object.preferences !== null) - ? Preferences.fromPartial(object.preferences) - : undefined; - return message; - }, -}; - -function createBaseUpsertPreferencesResponse(): UpsertPreferencesResponse { - return { preferences: undefined }; -} - -export const UpsertPreferencesResponse: MessageFns = { - encode(message: UpsertPreferencesResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.preferences !== undefined) { - Preferences.encode(message.preferences, writer.uint32(10).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): UpsertPreferencesResponse { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUpsertPreferencesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.preferences = Preferences.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): UpsertPreferencesResponse { - return { preferences: isSet(object.preferences) ? Preferences.fromJSON(object.preferences) : undefined }; - }, - - toJSON(message: UpsertPreferencesResponse): unknown { - const obj: any = {}; - if (message.preferences !== undefined) { - obj.preferences = Preferences.toJSON(message.preferences); - } - return obj; - }, - - create, I>>(base?: I): UpsertPreferencesResponse { - return UpsertPreferencesResponse.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): UpsertPreferencesResponse { - const message = createBaseUpsertPreferencesResponse(); - message.preferences = (object.preferences !== undefined && object.preferences !== null) - ? Preferences.fromPartial(object.preferences) - : undefined; - return message; - }, -}; - -function createBaseUser(): User { - return { - id: "", - email: "", - password: "", - username: undefined, - avatar: undefined, - role: undefined, - googleId: undefined, - storageUsed: 0, - planId: undefined, - createdAt: undefined, - updatedAt: undefined, - }; -} - -export const User: MessageFns = { - encode(message: User, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.id !== undefined && message.id !== "") { - writer.uint32(10).string(message.id); - } - if (message.email !== undefined && message.email !== "") { - writer.uint32(18).string(message.email); - } - if (message.password !== undefined && message.password !== "") { - writer.uint32(26).string(message.password); - } - if (message.username !== undefined) { - writer.uint32(34).string(message.username); - } - if (message.avatar !== undefined) { - writer.uint32(42).string(message.avatar); - } - if (message.role !== undefined) { - writer.uint32(50).string(message.role); - } - if (message.googleId !== undefined) { - writer.uint32(58).string(message.googleId); - } - if (message.storageUsed !== undefined && message.storageUsed !== 0) { - writer.uint32(64).int64(message.storageUsed); - } - if (message.planId !== undefined) { - writer.uint32(74).string(message.planId); - } - if (message.createdAt !== undefined) { - Timestamp.encode(toTimestamp(message.createdAt), writer.uint32(82).fork()).join(); - } - if (message.updatedAt !== undefined) { - Timestamp.encode(toTimestamp(message.updatedAt), writer.uint32(90).fork()).join(); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): User { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseUser(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.id = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.email = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.password = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - - message.username = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - - message.avatar = reader.string(); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - - message.role = reader.string(); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - - message.googleId = reader.string(); - continue; - } - case 8: { - if (tag !== 64) { - break; - } - - message.storageUsed = longToNumber(reader.int64()); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - - message.planId = reader.string(); - continue; - } - case 10: { - if (tag !== 82) { - break; - } - - message.createdAt = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - - message.updatedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): User { - return { - id: isSet(object.id) ? globalThis.String(object.id) : "", - email: isSet(object.email) ? globalThis.String(object.email) : "", - password: isSet(object.password) ? globalThis.String(object.password) : "", - username: isSet(object.username) ? globalThis.String(object.username) : undefined, - avatar: isSet(object.avatar) ? globalThis.String(object.avatar) : undefined, - role: isSet(object.role) ? globalThis.String(object.role) : undefined, - googleId: isSet(object.googleId) - ? globalThis.String(object.googleId) - : isSet(object.google_id) - ? globalThis.String(object.google_id) - : undefined, - storageUsed: isSet(object.storageUsed) - ? globalThis.Number(object.storageUsed) - : isSet(object.storage_used) - ? globalThis.Number(object.storage_used) - : 0, - planId: isSet(object.planId) - ? globalThis.String(object.planId) - : isSet(object.plan_id) - ? globalThis.String(object.plan_id) - : undefined, - createdAt: isSet(object.createdAt) - ? globalThis.String(object.createdAt) - : isSet(object.created_at) - ? globalThis.String(object.created_at) - : undefined, - updatedAt: isSet(object.updatedAt) - ? globalThis.String(object.updatedAt) - : isSet(object.updated_at) - ? globalThis.String(object.updated_at) - : undefined, - }; - }, - - toJSON(message: User): unknown { - const obj: any = {}; - if (message.id !== undefined && message.id !== "") { - obj.id = message.id; - } - if (message.email !== undefined && message.email !== "") { - obj.email = message.email; - } - if (message.password !== undefined && message.password !== "") { - obj.password = message.password; - } - if (message.username !== undefined) { - obj.username = message.username; - } - if (message.avatar !== undefined) { - obj.avatar = message.avatar; - } - if (message.role !== undefined) { - obj.role = message.role; - } - if (message.googleId !== undefined) { - obj.googleId = message.googleId; - } - if (message.storageUsed !== undefined && message.storageUsed !== 0) { - obj.storageUsed = Math.round(message.storageUsed); - } - if (message.planId !== undefined) { - obj.planId = message.planId; - } - if (message.createdAt !== undefined) { - obj.createdAt = message.createdAt; - } - if (message.updatedAt !== undefined) { - obj.updatedAt = message.updatedAt; - } - return obj; - }, - - create, I>>(base?: I): User { - return User.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): User { - const message = createBaseUser(); - message.id = object.id ?? ""; - message.email = object.email ?? ""; - message.password = object.password ?? ""; - message.username = object.username ?? undefined; - message.avatar = object.avatar ?? undefined; - message.role = object.role ?? undefined; - message.googleId = object.googleId ?? undefined; - message.storageUsed = object.storageUsed ?? 0; - message.planId = object.planId ?? undefined; - message.createdAt = object.createdAt ?? undefined; - message.updatedAt = object.updatedAt ?? undefined; - return message; - }, -}; - -function createBasePreferences(): Preferences { - return { - userId: "", - language: undefined, - locale: undefined, - emailNotifications: undefined, - pushNotifications: undefined, - marketingNotifications: undefined, - telegramNotifications: undefined, - autoplay: undefined, - loop: undefined, - muted: undefined, - showControls: undefined, - pip: undefined, - airplay: undefined, - chromecast: undefined, - encrytionM3u8: undefined, - }; -} - -export const Preferences: MessageFns = { - encode(message: Preferences, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { - if (message.userId !== undefined && message.userId !== "") { - writer.uint32(10).string(message.userId); - } - if (message.language !== undefined) { - writer.uint32(18).string(message.language); - } - if (message.locale !== undefined) { - writer.uint32(26).string(message.locale); - } - if (message.emailNotifications !== undefined) { - writer.uint32(32).bool(message.emailNotifications); - } - if (message.pushNotifications !== undefined) { - writer.uint32(40).bool(message.pushNotifications); - } - if (message.marketingNotifications !== undefined) { - writer.uint32(48).bool(message.marketingNotifications); - } - if (message.telegramNotifications !== undefined) { - writer.uint32(56).bool(message.telegramNotifications); - } - if (message.autoplay !== undefined) { - writer.uint32(64).bool(message.autoplay); - } - if (message.loop !== undefined) { - writer.uint32(72).bool(message.loop); - } - if (message.muted !== undefined) { - writer.uint32(80).bool(message.muted); - } - if (message.showControls !== undefined) { - writer.uint32(88).bool(message.showControls); - } - if (message.pip !== undefined) { - writer.uint32(96).bool(message.pip); - } - if (message.airplay !== undefined) { - writer.uint32(104).bool(message.airplay); - } - if (message.chromecast !== undefined) { - writer.uint32(112).bool(message.chromecast); - } - if (message.encrytionM3u8 !== undefined) { - writer.uint32(120).bool(message.encrytionM3u8); - } - return writer; - }, - - decode(input: BinaryReader | Uint8Array, length?: number): Preferences { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - const end = length === undefined ? reader.len : reader.pos + length; - const message = createBasePreferences(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - - message.userId = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - - message.language = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - - message.locale = reader.string(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - - message.emailNotifications = reader.bool(); - continue; - } - case 5: { - if (tag !== 40) { - break; - } - - message.pushNotifications = reader.bool(); - continue; - } - case 6: { - if (tag !== 48) { - break; - } - - message.marketingNotifications = reader.bool(); - continue; - } - case 7: { - if (tag !== 56) { - break; - } - - message.telegramNotifications = reader.bool(); - continue; - } - case 8: { - if (tag !== 64) { - break; - } - - message.autoplay = reader.bool(); - continue; - } - case 9: { - if (tag !== 72) { - break; - } - - message.loop = reader.bool(); - continue; - } - case 10: { - if (tag !== 80) { - break; - } - - message.muted = reader.bool(); - continue; - } - case 11: { - if (tag !== 88) { - break; - } - - message.showControls = reader.bool(); - continue; - } - case 12: { - if (tag !== 96) { - break; - } - - message.pip = reader.bool(); - continue; - } - case 13: { - if (tag !== 104) { - break; - } - - message.airplay = reader.bool(); - continue; - } - case 14: { - if (tag !== 112) { - break; - } - - message.chromecast = reader.bool(); - continue; - } - case 15: { - if (tag !== 120) { - break; - } - - message.encrytionM3u8 = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - - fromJSON(object: any): Preferences { - return { - userId: isSet(object.userId) - ? globalThis.String(object.userId) - : isSet(object.user_id) - ? globalThis.String(object.user_id) - : "", - language: isSet(object.language) ? globalThis.String(object.language) : undefined, - locale: isSet(object.locale) ? globalThis.String(object.locale) : undefined, - emailNotifications: isSet(object.emailNotifications) - ? globalThis.Boolean(object.emailNotifications) - : isSet(object.email_notifications) - ? globalThis.Boolean(object.email_notifications) - : undefined, - pushNotifications: isSet(object.pushNotifications) - ? globalThis.Boolean(object.pushNotifications) - : isSet(object.push_notifications) - ? globalThis.Boolean(object.push_notifications) - : undefined, - marketingNotifications: isSet(object.marketingNotifications) - ? globalThis.Boolean(object.marketingNotifications) - : isSet(object.marketing_notifications) - ? globalThis.Boolean(object.marketing_notifications) - : undefined, - telegramNotifications: isSet(object.telegramNotifications) - ? globalThis.Boolean(object.telegramNotifications) - : isSet(object.telegram_notifications) - ? globalThis.Boolean(object.telegram_notifications) - : undefined, - autoplay: isSet(object.autoplay) ? globalThis.Boolean(object.autoplay) : undefined, - loop: isSet(object.loop) ? globalThis.Boolean(object.loop) : undefined, - muted: isSet(object.muted) ? globalThis.Boolean(object.muted) : undefined, - showControls: isSet(object.showControls) - ? globalThis.Boolean(object.showControls) - : isSet(object.show_controls) - ? globalThis.Boolean(object.show_controls) - : undefined, - pip: isSet(object.pip) ? globalThis.Boolean(object.pip) : undefined, - airplay: isSet(object.airplay) ? globalThis.Boolean(object.airplay) : undefined, - chromecast: isSet(object.chromecast) ? globalThis.Boolean(object.chromecast) : undefined, - encrytionM3u8: isSet(object.encrytionM3u8) - ? globalThis.Boolean(object.encrytionM3u8) - : isSet(object.encrytion_m3u8) - ? globalThis.Boolean(object.encrytion_m3u8) - : undefined, - }; - }, - - toJSON(message: Preferences): unknown { - const obj: any = {}; - if (message.userId !== undefined && message.userId !== "") { - obj.userId = message.userId; - } - if (message.language !== undefined) { - obj.language = message.language; - } - if (message.locale !== undefined) { - obj.locale = message.locale; - } - if (message.emailNotifications !== undefined) { - obj.emailNotifications = message.emailNotifications; - } - if (message.pushNotifications !== undefined) { - obj.pushNotifications = message.pushNotifications; - } - if (message.marketingNotifications !== undefined) { - obj.marketingNotifications = message.marketingNotifications; - } - if (message.telegramNotifications !== undefined) { - obj.telegramNotifications = message.telegramNotifications; - } - if (message.autoplay !== undefined) { - obj.autoplay = message.autoplay; - } - if (message.loop !== undefined) { - obj.loop = message.loop; - } - if (message.muted !== undefined) { - obj.muted = message.muted; - } - if (message.showControls !== undefined) { - obj.showControls = message.showControls; - } - if (message.pip !== undefined) { - obj.pip = message.pip; - } - if (message.airplay !== undefined) { - obj.airplay = message.airplay; - } - if (message.chromecast !== undefined) { - obj.chromecast = message.chromecast; - } - if (message.encrytionM3u8 !== undefined) { - obj.encrytionM3u8 = message.encrytionM3u8; - } - return obj; - }, - - create, I>>(base?: I): Preferences { - return Preferences.fromPartial(base ?? ({} as any)); - }, - fromPartial, I>>(object: I): Preferences { - const message = createBasePreferences(); - message.userId = object.userId ?? ""; - message.language = object.language ?? undefined; - message.locale = object.locale ?? undefined; - message.emailNotifications = object.emailNotifications ?? undefined; - message.pushNotifications = object.pushNotifications ?? undefined; - message.marketingNotifications = object.marketingNotifications ?? undefined; - message.telegramNotifications = object.telegramNotifications ?? undefined; - message.autoplay = object.autoplay ?? undefined; - message.loop = object.loop ?? undefined; - message.muted = object.muted ?? undefined; - message.showControls = object.showControls ?? undefined; - message.pip = object.pip ?? undefined; - message.airplay = object.airplay ?? undefined; - message.chromecast = object.chromecast ?? undefined; - message.encrytionM3u8 = object.encrytionM3u8 ?? undefined; - return message; - }, -}; - -export type UserServiceService = typeof UserServiceService; -export const UserServiceService = { - /** User CRUD */ - getUser: { - path: "/stream.User.v1.UserService/GetUser", - requestStream: false, - responseStream: false, - requestSerialize: (value: GetUserRequest): Buffer => Buffer.from(GetUserRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): GetUserRequest => GetUserRequest.decode(value), - responseSerialize: (value: GetUserResponse): Buffer => Buffer.from(GetUserResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): GetUserResponse => GetUserResponse.decode(value), - }, - getUserByEmail: { - path: "/stream.User.v1.UserService/GetUserByEmail", - requestStream: false, - responseStream: false, - requestSerialize: (value: GetUserByEmailRequest): Buffer => - Buffer.from(GetUserByEmailRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): GetUserByEmailRequest => GetUserByEmailRequest.decode(value), - responseSerialize: (value: GetUserResponse): Buffer => Buffer.from(GetUserResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): GetUserResponse => GetUserResponse.decode(value), - }, - listUsers: { - path: "/stream.User.v1.UserService/ListUsers", - requestStream: false, - responseStream: false, - requestSerialize: (value: ListUsersRequest): Buffer => Buffer.from(ListUsersRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): ListUsersRequest => ListUsersRequest.decode(value), - responseSerialize: (value: ListUsersResponse): Buffer => Buffer.from(ListUsersResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): ListUsersResponse => ListUsersResponse.decode(value), - }, - createUser: { - path: "/stream.User.v1.UserService/CreateUser", - requestStream: false, - responseStream: false, - requestSerialize: (value: CreateUserRequest): Buffer => Buffer.from(CreateUserRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): CreateUserRequest => CreateUserRequest.decode(value), - responseSerialize: (value: CreateUserResponse): Buffer => Buffer.from(CreateUserResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): CreateUserResponse => CreateUserResponse.decode(value), - }, - updateUser: { - path: "/stream.User.v1.UserService/UpdateUser", - requestStream: false, - responseStream: false, - requestSerialize: (value: UpdateUserRequest): Buffer => Buffer.from(UpdateUserRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): UpdateUserRequest => UpdateUserRequest.decode(value), - responseSerialize: (value: UpdateUserResponse): Buffer => Buffer.from(UpdateUserResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): UpdateUserResponse => UpdateUserResponse.decode(value), - }, - deleteUser: { - path: "/stream.User.v1.UserService/DeleteUser", - requestStream: false, - responseStream: false, - requestSerialize: (value: DeleteUserRequest): Buffer => Buffer.from(DeleteUserRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): DeleteUserRequest => DeleteUserRequest.decode(value), - responseSerialize: (value: DeleteUserResponse): Buffer => Buffer.from(DeleteUserResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): DeleteUserResponse => DeleteUserResponse.decode(value), - }, - updateUserPassword: { - path: "/stream.User.v1.UserService/UpdateUserPassword", - requestStream: false, - responseStream: false, - requestSerialize: (value: UpdateUserPasswordRequest): Buffer => - Buffer.from(UpdateUserPasswordRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): UpdateUserPasswordRequest => UpdateUserPasswordRequest.decode(value), - responseSerialize: (value: Empty): Buffer => Buffer.from(Empty.encode(value).finish()), - responseDeserialize: (value: Buffer): Empty => Empty.decode(value), - }, - /** Preferences */ - getPreferences: { - path: "/stream.User.v1.UserService/GetPreferences", - requestStream: false, - responseStream: false, - requestSerialize: (value: GetPreferencesRequest): Buffer => - Buffer.from(GetPreferencesRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): GetPreferencesRequest => GetPreferencesRequest.decode(value), - responseSerialize: (value: GetPreferencesResponse): Buffer => - Buffer.from(GetPreferencesResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): GetPreferencesResponse => GetPreferencesResponse.decode(value), - }, - upsertPreferences: { - path: "/stream.User.v1.UserService/UpsertPreferences", - requestStream: false, - responseStream: false, - requestSerialize: (value: UpsertPreferencesRequest): Buffer => - Buffer.from(UpsertPreferencesRequest.encode(value).finish()), - requestDeserialize: (value: Buffer): UpsertPreferencesRequest => UpsertPreferencesRequest.decode(value), - responseSerialize: (value: UpsertPreferencesResponse): Buffer => - Buffer.from(UpsertPreferencesResponse.encode(value).finish()), - responseDeserialize: (value: Buffer): UpsertPreferencesResponse => UpsertPreferencesResponse.decode(value), - }, -} as const; - -export interface UserServiceServer extends UntypedServiceImplementation { - /** User CRUD */ - getUser: handleUnaryCall; - getUserByEmail: handleUnaryCall; - listUsers: handleUnaryCall; - createUser: handleUnaryCall; - updateUser: handleUnaryCall; - deleteUser: handleUnaryCall; - updateUserPassword: handleUnaryCall; - /** Preferences */ - getPreferences: handleUnaryCall; - upsertPreferences: handleUnaryCall; -} - -export interface UserClient extends Client { - /** User CRUD */ - getUser( - request: GetUserRequest, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - getUser( - request: GetUserRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - getUser( - request: GetUserRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - getUserByEmail( - request: GetUserByEmailRequest, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - getUserByEmail( - request: GetUserByEmailRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - getUserByEmail( - request: GetUserByEmailRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: GetUserResponse) => void, - ): ClientUnaryCall; - listUsers( - request: ListUsersRequest, - callback: (error: ServiceError | null, response: ListUsersResponse) => void, - ): ClientUnaryCall; - listUsers( - request: ListUsersRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: ListUsersResponse) => void, - ): ClientUnaryCall; - listUsers( - request: ListUsersRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: ListUsersResponse) => void, - ): ClientUnaryCall; - createUser( - request: CreateUserRequest, - callback: (error: ServiceError | null, response: CreateUserResponse) => void, - ): ClientUnaryCall; - createUser( - request: CreateUserRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: CreateUserResponse) => void, - ): ClientUnaryCall; - createUser( - request: CreateUserRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: CreateUserResponse) => void, - ): ClientUnaryCall; - updateUser( - request: UpdateUserRequest, - callback: (error: ServiceError | null, response: UpdateUserResponse) => void, - ): ClientUnaryCall; - updateUser( - request: UpdateUserRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: UpdateUserResponse) => void, - ): ClientUnaryCall; - updateUser( - request: UpdateUserRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: UpdateUserResponse) => void, - ): ClientUnaryCall; - deleteUser( - request: DeleteUserRequest, - callback: (error: ServiceError | null, response: DeleteUserResponse) => void, - ): ClientUnaryCall; - deleteUser( - request: DeleteUserRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: DeleteUserResponse) => void, - ): ClientUnaryCall; - deleteUser( - request: DeleteUserRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: DeleteUserResponse) => void, - ): ClientUnaryCall; - updateUserPassword( - request: UpdateUserPasswordRequest, - callback: (error: ServiceError | null, response: Empty) => void, - ): ClientUnaryCall; - updateUserPassword( - request: UpdateUserPasswordRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: Empty) => void, - ): ClientUnaryCall; - updateUserPassword( - request: UpdateUserPasswordRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: Empty) => void, - ): ClientUnaryCall; - /** Preferences */ - getPreferences( - request: GetPreferencesRequest, - callback: (error: ServiceError | null, response: GetPreferencesResponse) => void, - ): ClientUnaryCall; - getPreferences( - request: GetPreferencesRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: GetPreferencesResponse) => void, - ): ClientUnaryCall; - getPreferences( - request: GetPreferencesRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: GetPreferencesResponse) => void, - ): ClientUnaryCall; - upsertPreferences( - request: UpsertPreferencesRequest, - callback: (error: ServiceError | null, response: UpsertPreferencesResponse) => void, - ): ClientUnaryCall; - upsertPreferences( - request: UpsertPreferencesRequest, - metadata: Metadata, - callback: (error: ServiceError | null, response: UpsertPreferencesResponse) => void, - ): ClientUnaryCall; - upsertPreferences( - request: UpsertPreferencesRequest, - metadata: Metadata, - options: Partial, - callback: (error: ServiceError | null, response: UpsertPreferencesResponse) => void, - ): ClientUnaryCall; -} - -export const UserClient = makeGenericClientConstructor( - UserServiceService, - "stream.User.v1.UserService", -) as unknown as { - new (address: string, credentials: ChannelCredentials, options?: Partial): UserClient; - service: typeof UserServiceService; - serviceName: string; -}; - -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; - -export type DeepPartial = T extends Builtin ? T - : T extends globalThis.Array ? globalThis.Array> - : T extends ReadonlyArray ? ReadonlyArray> - : T extends {} ? { [K in keyof T]?: DeepPartial } - : Partial; - -type KeysOfUnion = T extends T ? keyof T : never; -export type Exact = P extends Builtin ? P - : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; - -function toTimestamp(dateStr: string): Timestamp { - const date = new globalThis.Date(dateStr); - const seconds = Math.trunc(date.getTime() / 1_000); - const nanos = (date.getTime() % 1_000) * 1_000_000; - return { seconds, nanos }; -} - -function fromTimestamp(t: Timestamp): string { - let millis = (t.seconds || 0) * 1_000; - millis += (t.nanos || 0) / 1_000_000; - return new globalThis.Date(millis).toISOString(); -} - -function longToNumber(int64: { toString(): string }): number { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -function isSet(value: any): boolean { - return value !== null && value !== undefined; -} - -export interface MessageFns { - encode(message: T, writer?: BinaryWriter): BinaryWriter; - decode(input: BinaryReader | Uint8Array, length?: number): T; - fromJSON(object: any): T; - toJSON(message: T): unknown; - create, I>>(base?: I): T; - fromPartial, I>>(object: I): T; -}