diff --git a/.cursorrules b/.cursorrules new file mode 100644 index 0000000..11a5110 --- /dev/null +++ b/.cursorrules @@ -0,0 +1,2 @@ +Never suggest `next/link`, instead use `Link` from `@/routing`. + diff --git a/package.json b/package.json index ae88983..a78ec61 100644 --- a/package.json +++ b/package.json @@ -14,9 +14,8 @@ "generate:featured-apps": "node scripts/featured-apps.js" }, "dependencies": { - "@headlessui/react": "2.1.6", "@hookform/resolvers": "3.9.1", - "@inkonchain/ink-kit": "0.9.1-beta.5", + "@inkonchain/ink-kit": "0.9.1-beta.9", "@next/third-parties": "15.1.6", "@octokit/auth-app": "7.1.3", "@octokit/rest": "21.0.2", @@ -64,10 +63,10 @@ }, "devDependencies": { "@playwright/test": "1.45.0", + "@tailwindcss/postcss": "4.0.8", "@types/node": "22", "@typescript-eslint/eslint-plugin": "8.23.0", "@typescript-eslint/parser": "8.23.0", - "autoprefixer": "10.4.20", "clsx": "2.1.1", "dotenv": "16.4.5", "eslint": "9.14.0", @@ -81,8 +80,8 @@ "postcss": "8", "prettier": "3.3.3", "schema-dts": "1.1.2", - "tailwind-merge": "2.3.0", - "tailwindcss": "3.4.4", + "tailwind-merge": "3.0.2", + "tailwindcss": "4.0.8", "typescript": "5.7.3" }, "packageManager": "pnpm@9.12.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3b2b381..fa0e3b5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,15 +14,12 @@ importers: .: dependencies: - '@headlessui/react': - specifier: 2.1.6 - version: 2.1.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@hookform/resolvers': specifier: 3.9.1 version: 3.9.1(react-hook-form@7.54.1(react@19.0.0)) '@inkonchain/ink-kit': - specifier: 0.9.1-beta.5 - version: 0.9.1-beta.5(@tanstack/react-query@5.60.6(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(tailwindcss@3.4.4)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(wagmi@2.14.9(@tanstack/query-core@5.60.6)(@tanstack/react-query@5.60.6(react@19.0.0))(@types/react@19.0.7)(bufferutil@4.0.9)(react@19.0.0)(typescript@5.7.3)(utf-8-validate@5.0.10)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(zod@3.24.1)) + specifier: 0.9.1-beta.9 + version: 0.9.1-beta.9(@tanstack/react-query@5.60.6(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(tailwindcss@4.0.8)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(wagmi@2.14.9(@tanstack/query-core@5.60.6)(@tanstack/react-query@5.60.6(react@19.0.0))(@types/react@19.0.7)(bufferutil@4.0.9)(react@19.0.0)(typescript@5.7.3)(utf-8-validate@5.0.10)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(zod@3.24.1)) '@next/third-parties': specifier: 15.1.6 version: 15.1.6(next@15.1.6(@babel/core@7.26.7)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.77.6))(react@19.0.0) @@ -159,6 +156,9 @@ importers: '@playwright/test': specifier: 1.45.0 version: 1.45.0 + '@tailwindcss/postcss': + specifier: 4.0.8 + version: 4.0.8 '@types/node': specifier: '22' version: 22.12.0 @@ -168,9 +168,6 @@ importers: '@typescript-eslint/parser': specifier: 8.23.0 version: 8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3) - autoprefixer: - specifier: 10.4.20 - version: 10.4.20(postcss@8.5.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -188,7 +185,7 @@ importers: version: 9.1.0(eslint@9.14.0(jiti@2.4.2)) eslint-plugin-import: specifier: 2.31.0 - version: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) + version: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)) eslint-plugin-simple-import-sort: specifier: 12.1.0 version: 12.1.0(eslint@9.14.0(jiti@2.4.2)) @@ -211,11 +208,11 @@ importers: specifier: 1.1.2 version: 1.1.2(typescript@5.7.3) tailwind-merge: - specifier: 2.3.0 - version: 2.3.0 + specifier: 3.0.2 + version: 3.0.2 tailwindcss: - specifier: 3.4.4 - version: 3.4.4 + specifier: 4.0.8 + version: 4.0.8 typescript: specifier: 5.7.3 version: 5.7.3 @@ -618,13 +615,6 @@ packages: '@fortawesome/fontawesome-svg-core': ~1 || ~6 react: 19.0.0 - '@headlessui/react@2.1.6': - resolution: {integrity: sha512-IkaSHxsMdrSdVZn5n3ClfvqQo5umHeqwjeZfbFUTczykeHoMH+3VOP0nn7zVsbebazjPmOsXh3x9gCy6e2PG5Q==} - engines: {node: '>=10'} - peerDependencies: - react: 19.0.0 - react-dom: 19.0.0 - '@headlessui/react@2.2.0': resolution: {integrity: sha512-RzCEg+LXsuI7mHiSomsu/gBJSjpupm6A1qIZ5sWjd7JhARNlMiSA4kKfJpCKwU9tE+zMRterhhrP74PvfJrpXQ==} engines: {node: '>=10'} @@ -875,8 +865,8 @@ packages: cpu: [x64] os: [win32] - '@inkonchain/ink-kit@0.9.1-beta.5': - resolution: {integrity: sha512-bOwnk9uhoh2G2HT85YNfV7mt2uIIR2yGv84b6T8j6m3PVJSmVJtOOkLQ7b4xg2Q8QqktI3ri7ulRkve8rakdfw==} + '@inkonchain/ink-kit@0.9.1-beta.9': + resolution: {integrity: sha512-Ni7NLiT1/Z4o0MKJgu4XtAo6L6kx60gur3phWJYuLOE9svrCGtiHnHBr54tIWwhBAXKgJSN9oROEKjMUXpnXaw==} peerDependencies: '@tanstack/react-query': ^5 react: 19.0.0 @@ -885,10 +875,6 @@ packages: viem: ^2 wagmi: ^2 - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - '@jridgewell/gen-mapping@0.3.8': resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} @@ -1478,10 +1464,6 @@ packages: '@paulmillr/qr@0.2.1': resolution: {integrity: sha512-IHnV6A+zxU7XwmKFinmYjUcwlyK9+xkG3/s9KcQhI9BjQKycrJ1JRO+FbNYPwZiPKW3je/DR0k7w8/gLa5eaxQ==} - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - '@playwright/test@1.45.0': resolution: {integrity: sha512-TVYsfMlGAaxeUllNkywbwek67Ncf8FRGn8ZlRdO291OL3NjG9oMbfVhyP82HQF0CZLMrYsvesqoUekxdWuF9Qw==} engines: {node: '>=18'} @@ -2818,6 +2800,82 @@ packages: zod: optional: true + '@tailwindcss/node@4.0.8': + resolution: {integrity: sha512-FKArQpbrbwv08TNT0k7ejYXpF+R8knZFAatNc0acOxbgeqLzwb86r+P3LGOjIeI3Idqe9CVkZrh4GlsJLJKkkw==} + + '@tailwindcss/oxide-android-arm64@4.0.8': + resolution: {integrity: sha512-We7K79+Sm4mwJHk26Yzu/GAj7C7myemm7PeXvpgMxyxO70SSFSL3uCcqFbz9JA5M5UPkrl7N9fkBe/Y0iazqpA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@tailwindcss/oxide-darwin-arm64@4.0.8': + resolution: {integrity: sha512-Lv9Isi2EwkCTG1sRHNDi0uRNN1UGFdEThUAGFrydRmQZnraGLMjN8gahzg2FFnOizDl7LB2TykLUuiw833DSNg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@tailwindcss/oxide-darwin-x64@4.0.8': + resolution: {integrity: sha512-fWfywfYIlSWtKoqWTjukTHLWV3ARaBRjXCC2Eo0l6KVpaqGY4c2y8snUjp1xpxUtpqwMvCvFWFaleMoz1Vhzlw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@tailwindcss/oxide-freebsd-x64@4.0.8': + resolution: {integrity: sha512-SO+dyvjJV9G94bnmq2288Ke0BIdvrbSbvtPLaQdqjqHR83v5L2fWADyFO+1oecHo9Owsk8MxcXh1agGVPIKIqw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.8': + resolution: {integrity: sha512-ZSHggWiEblQNV69V0qUK5vuAtHP+I+S2eGrKGJ5lPgwgJeAd6GjLsVBN+Mqn2SPVfYM3BOpS9jX/zVg9RWQVDQ==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-gnu@4.0.8': + resolution: {integrity: sha512-xWpr6M0OZLDNsr7+bQz+3X7zcnDJZJ1N9gtBWCtfhkEtDjjxYEp+Lr5L5nc/yXlL4MyCHnn0uonGVXy3fhxaVA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-musl@4.0.8': + resolution: {integrity: sha512-5tz2IL7LN58ssGEq7h/staD7pu/izF/KeMWdlJ86WDe2Ah46LF3ET6ZGKTr5eZMrnEA0M9cVFuSPprKRHNgjeg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-gnu@4.0.8': + resolution: {integrity: sha512-KSzMkhyrxAQyY2o194NKVKU9j/c+NFSoMvnHWFaNHKi3P1lb+Vq1UC19tLHrmxSkKapcMMu69D7+G1+FVGNDXQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-musl@4.0.8': + resolution: {integrity: sha512-yFYKG5UtHTRimjtqxUWXBgI4Tc6NJe3USjRIVdlTczpLRxq/SFwgzGl5JbatCxgSRDPBFwRrNPxq+ukfQFGdrw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-win32-arm64-msvc@4.0.8': + resolution: {integrity: sha512-tndGujmCSba85cRCnQzXgpA2jx5gXimyspsUYae5jlPyLRG0RjXbDshFKOheVXU4TLflo7FSG8EHCBJ0EHTKdQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@tailwindcss/oxide-win32-x64-msvc@4.0.8': + resolution: {integrity: sha512-T77jroAc0p4EHVVgTUiNeFn6Nj3jtD3IeNId2X+0k+N1XxfNipy81BEkYErpKLiOkNhpNFjPee8/ZVas29b2OQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@tailwindcss/oxide@4.0.8': + resolution: {integrity: sha512-KfMcuAu/Iw+DcV1e8twrFyr2yN8/ZDC/odIGta4wuuJOGkrkHZbvJvRNIbQNhGh7erZTYV6Ie0IeD6WC9Y8Hcw==} + engines: {node: '>= 10'} + + '@tailwindcss/postcss@4.0.8': + resolution: {integrity: sha512-SUwlrXjn1ycmUbA0o0n3Y0LqlXqxN5R8HR+ti+OBbRS79wl2seDmiypEs3xJCuQXe07ol81s1AmRMitBmPveJA==} + '@tanstack/query-core@5.60.6': resolution: {integrity: sha512-tI+k0KyCo1EBJ54vxK1kY24LWj673ujTydCZmzEZKAew4NqZzTaVQJEuaG1qKj2M03kUHN46rchLRd+TxVq/zQ==} @@ -3273,28 +3331,14 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.1.0: - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} - engines: {node: '>=12'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} - arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -3367,13 +3411,6 @@ packages: resolution: {integrity: sha512-0bDNnY/u6pPwHDMoF0FieU354oBi0a8rD9FcsLwzcGWbc8KS8KPIi7y+s13OlVY+gMWc/9xEMUgNE6Qm8ZllYQ==} engines: {node: '>=4'} - autoprefixer@10.4.20: - resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} @@ -3474,10 +3511,6 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - camelcase@5.3.1: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} @@ -3559,10 +3592,6 @@ packages: commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} @@ -3776,9 +3805,6 @@ packages: detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - dijkstrajs@1.0.3: resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==} @@ -3810,9 +3836,6 @@ packages: duplexify@4.1.3: resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==} - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - eciesjs@0.4.13: resolution: {integrity: sha512-zBdtR4K+wbj10bWPpIOF9DW+eFYQu8miU5ypunh0t4Bvt83ZPlEWgT5Dq/0G6uwEXumZKjfb5BZxYUZQ2Hzn/Q==} engines: {bun: '>=1', deno: '>=2', node: '>=16'} @@ -3846,6 +3869,10 @@ packages: resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==} engines: {node: '>=10.13.0'} + enhanced-resolve@5.18.1: + resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} + engines: {node: '>=10.13.0'} + entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} @@ -4208,10 +4235,6 @@ packages: resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} engines: {node: '>=0.10.0'} - foreground-child@3.3.0: - resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} - engines: {node: '>=14'} - form-data@4.0.1: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} @@ -4219,9 +4242,6 @@ packages: forwarded-parse@2.1.2: resolution: {integrity: sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw==} - fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - framer-motion@11.18.2: resolution: {integrity: sha512-5F5Och7wrvtLVElIpclDT0CBzMVg3dL22B64aZwHtsIY8RB4mXICLrkajK4G9R+ieSAGcgrLeae2SeUTg2pr6w==} peerDependencies: @@ -4323,10 +4343,6 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - glob@9.3.5: resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} engines: {node: '>=16 || 14 >=14.17'} @@ -4647,9 +4663,6 @@ packages: peerDependencies: react: 19.0.0 - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - javascript-stringify@2.1.0: resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} @@ -4657,10 +4670,6 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} - jiti@1.21.7: - resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} - hasBin: true - jiti@2.4.2: resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true @@ -4778,68 +4787,121 @@ packages: cpu: [arm64] os: [darwin] + lightningcss-darwin-arm64@1.29.1: + resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + lightningcss-darwin-x64@1.25.1: resolution: {integrity: sha512-dYWuCzzfqRueDSmto6YU5SoGHvZTMU1Em9xvhcdROpmtOQLorurUZz8+xFxZ51lCO2LnYbfdjZ/gCqWEkwixNg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [darwin] + lightningcss-darwin-x64@1.29.1: + resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + lightningcss-freebsd-x64@1.25.1: resolution: {integrity: sha512-hXoy2s9A3KVNAIoKz+Fp6bNeY+h9c3tkcx1J3+pS48CqAt+5bI/R/YY4hxGL57fWAIquRjGKW50arltD6iRt/w==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [freebsd] + lightningcss-freebsd-x64@1.29.1: + resolution: {integrity: sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + lightningcss-linux-arm-gnueabihf@1.25.1: resolution: {integrity: sha512-tWyMgHFlHlp1e5iW3EpqvH5MvsgoN7ZkylBbG2R2LWxnvH3FuWCJOhtGcYx9Ks0Kv0eZOBud789odkYLhyf1ng==} engines: {node: '>= 12.0.0'} cpu: [arm] os: [linux] + lightningcss-linux-arm-gnueabihf@1.29.1: + resolution: {integrity: sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + lightningcss-linux-arm64-gnu@1.25.1: resolution: {integrity: sha512-Xjxsx286OT9/XSnVLIsFEDyDipqe4BcLeB4pXQ/FEA5+2uWCCuAEarUNQumRucnj7k6ftkAHUEph5r821KBccQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] + lightningcss-linux-arm64-gnu@1.29.1: + resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + lightningcss-linux-arm64-musl@1.25.1: resolution: {integrity: sha512-IhxVFJoTW8wq6yLvxdPvyHv4NjzcpN1B7gjxrY3uaykQNXPHNIpChLB52+wfH+yS58zm1PL4LemUp8u9Cfp6Bw==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] + lightningcss-linux-arm64-musl@1.29.1: + resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + lightningcss-linux-x64-gnu@1.25.1: resolution: {integrity: sha512-RXIaru79KrREPEd6WLXfKfIp4QzoppZvD3x7vuTKkDA64PwTzKJ2jaC43RZHRt8BmyIkRRlmywNhTRMbmkPYpA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] + lightningcss-linux-x64-gnu@1.29.1: + resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + lightningcss-linux-x64-musl@1.25.1: resolution: {integrity: sha512-TdcNqFsAENEEFr8fJWg0Y4fZ/nwuqTRsIr7W7t2wmDUlA8eSXVepeeONYcb+gtTj1RaXn/WgNLB45SFkz+XBZA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] + lightningcss-linux-x64-musl@1.29.1: + resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-win32-arm64-msvc@1.29.1: + resolution: {integrity: sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + lightningcss-win32-x64-msvc@1.25.1: resolution: {integrity: sha512-9KZZkmmy9oGDSrnyHuxP6iMhbsgChUiu/NSgOx+U1I/wTngBStDf2i2aGRCHvFqj19HqqBEI4WuGVQBa2V6e0A==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [win32] + lightningcss-win32-x64-msvc@1.29.1: + resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + lightningcss@1.25.1: resolution: {integrity: sha512-V0RMVZzK1+rCHpymRv4URK2lNhIRyO8g7U7zOFwVAhJuat74HtkjIQpQRKNCwFEYkRGpafOpmXXLoaoBcyVtBg==} engines: {node: '>= 12.0.0'} - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lilconfig@3.1.3: - resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} - engines: {node: '>=14'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + lightningcss@1.29.1: + resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==} + engines: {node: '>= 12.0.0'} lit-element@3.3.3: resolution: {integrity: sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==} @@ -5041,9 +5103,6 @@ packages: multiformats@9.9.0: resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==} - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - n8ao@1.9.4: resolution: {integrity: sha512-gbpAorQecZn2oGK/rheHxPTNwOxVsEC6216+Jr9tXHUk9L5VCE2q/uxsSrQpfNkZDoCmQHf7oSg3SYFWCAt0wg==} peerDependencies: @@ -5131,10 +5190,6 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - nwsapi@2.2.16: resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} @@ -5148,10 +5203,6 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - object-inspect@1.13.3: resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==} engines: {node: '>= 0.4'} @@ -5255,9 +5306,6 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-manager-detector@0.1.0: resolution: {integrity: sha512-qRwvZgEE7geMY6xPChI3T0qrM0PL4s/AKiLnNVjhg3GdN2/fUUSrpGA5Z8mejMXauT1BS6RJIgWvSGAdqg8NnQ==} @@ -5327,10 +5375,6 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} - pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - pify@3.0.0: resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} engines: {node: '>=4'} @@ -5356,10 +5400,6 @@ packages: resolution: {integrity: sha512-dMACeu63HtRLmCG8VKdy4cShCPKaYDR4youZqoSWLxl5Gu99HUw8bw75thbPv9Nip+H+QYX8o3ZJbTdVZZ2TVg==} hasBin: true - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - pkg-types@1.0.3: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} @@ -5404,30 +5444,6 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-import@15.1.0: - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - - postcss-load-config@4.0.2: - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - postcss-merge-rules@7.0.4: resolution: {integrity: sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} @@ -5446,12 +5462,6 @@ packages: peerDependencies: postcss: ^8.2.14 - postcss-nested@6.2.0: - resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - postcss-normalize-whitespace@7.0.0: resolution: {integrity: sha512-37/toN4wwZErqohedXYqWgvcHUGlT8O/m2jVkAfAe9Bd4MzRqlBmXrJRePH0e9Wgnz2X7KymTgTOaaFizQe3AQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} @@ -5690,9 +5700,6 @@ packages: resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} engines: {node: '>=0.10.0'} - read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} @@ -5903,10 +5910,6 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -5985,10 +5988,6 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - string.prototype.includes@2.0.1: resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} engines: {node: '>= 0.4'} @@ -6022,10 +6021,6 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -6047,11 +6042,6 @@ packages: babel-plugin-macros: optional: true - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - superstruct@1.0.4: resolution: {integrity: sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==} engines: {node: '>=14.0.0'} @@ -6083,16 +6073,14 @@ packages: resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} engines: {node: '>=10.0.0'} - tailwind-merge@2.3.0: - resolution: {integrity: sha512-vkYrLpIP+lgR0tQCG6AP7zZXCTLc1Lnv/CCRT3BqJ9CZ3ui2++GPaGb1x/ILsINIMSYqqvrpqjUFsMNLlW99EA==} - tailwind-merge@2.6.0: resolution: {integrity: sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA==} - tailwindcss@3.4.4: - resolution: {integrity: sha512-ZoyXOdJjISB7/BcLTR6SEsLgKtDStYyYZVLsUtWChO4Ps20CBad7lfJKVDiejocV4ME1hLmyY0WJE3hSDcmQ2A==} - engines: {node: '>=14.0.0'} - hasBin: true + tailwind-merge@3.0.2: + resolution: {integrity: sha512-l7z+OYZ7mu3DTqrL88RiKrKIqO3NcpEO8V/Od04bNpvk0kiIFndGEoqfuzvj4yuhRkHKjRkII2z+KS2HfPcSxw==} + + tailwindcss@4.0.8: + resolution: {integrity: sha512-Me7N5CKR+D2A1xdWA5t5+kjjT7bwnxZOE6/yDI/ixJdJokszsn2n++mdU5yJwrsTpqFX2B9ZNMBJDwcqk9C9lw==} tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} @@ -6122,13 +6110,6 @@ packages: text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - third-party-capital@1.0.20: resolution: {integrity: sha512-oB7yIimd8SuGptespDAZnNkzIz+NWaJCu2RMsbs4Wmp9zSDUM8Nhi3s2OOcqYuv3mN4hitXc8DVx+LyUmbUDiA==} @@ -6210,9 +6191,6 @@ packages: jsdom: optional: true - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - ts-morph@24.0.0: resolution: {integrity: sha512-2OAOg/Ob5yx9Et7ZX4CvTCc0UFoZHwLEJ+dpDPSUi5TgwwlTlX47w+iFRrEwzUZwYACjq83cgjS/Da50Ga37uw==} @@ -6580,14 +6558,6 @@ packages: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} engines: {node: '>=8'} - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -6648,11 +6618,6 @@ packages: yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - yaml@2.7.0: - resolution: {integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==} - engines: {node: '>= 14'} - hasBin: true - yargs-parser@18.1.3: resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} engines: {node: '>=6'} @@ -7106,15 +7071,6 @@ snapshots: prop-types: 15.8.1 react: 19.0.0 - '@headlessui/react@2.1.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': - dependencies: - '@floating-ui/react': 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@react-aria/focus': 3.19.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@react-aria/interactions': 3.23.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@tanstack/react-virtual': 3.11.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) - '@headlessui/react@2.2.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@floating-ui/react': 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -7291,7 +7247,7 @@ snapshots: '@img/sharp-win32-x64@0.33.5': optional: true - '@inkonchain/ink-kit@0.9.1-beta.5(@tanstack/react-query@5.60.6(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(tailwindcss@3.4.4)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(wagmi@2.14.9(@tanstack/query-core@5.60.6)(@tanstack/react-query@5.60.6(react@19.0.0))(@types/react@19.0.7)(bufferutil@4.0.9)(react@19.0.0)(typescript@5.7.3)(utf-8-validate@5.0.10)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(zod@3.24.1))': + '@inkonchain/ink-kit@0.9.1-beta.9(@tanstack/react-query@5.60.6(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(tailwindcss@4.0.8)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(wagmi@2.14.9(@tanstack/query-core@5.60.6)(@tanstack/react-query@5.60.6(react@19.0.0))(@types/react@19.0.7)(bufferutil@4.0.9)(react@19.0.0)(typescript@5.7.3)(utf-8-validate@5.0.10)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(zod@3.24.1))': dependencies: '@headlessui/react': 2.2.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@tanstack/react-query': 5.60.6(react@19.0.0) @@ -7300,19 +7256,10 @@ snapshots: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) tailwind-merge: 2.6.0 - tailwindcss: 3.4.4 + tailwindcss: 4.0.8 viem: 2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1) wagmi: 2.14.9(@tanstack/query-core@5.60.6)(@tanstack/react-query@5.60.6(react@19.0.0))(@types/react@19.0.7)(bufferutil@4.0.9)(react@19.0.0)(typescript@5.7.3)(utf-8-validate@5.0.10)(viem@2.22.11(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.24.1))(zod@3.24.1) - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 @@ -8183,9 +8130,6 @@ snapshots: '@paulmillr/qr@0.2.1': {} - '@pkgjs/parseargs@0.11.0': - optional: true - '@playwright/test@1.45.0': dependencies: playwright: 1.45.0 @@ -9860,6 +9804,68 @@ snapshots: typescript: 5.7.3 zod: 3.24.1 + '@tailwindcss/node@4.0.8': + dependencies: + enhanced-resolve: 5.18.1 + jiti: 2.4.2 + tailwindcss: 4.0.8 + + '@tailwindcss/oxide-android-arm64@4.0.8': + optional: true + + '@tailwindcss/oxide-darwin-arm64@4.0.8': + optional: true + + '@tailwindcss/oxide-darwin-x64@4.0.8': + optional: true + + '@tailwindcss/oxide-freebsd-x64@4.0.8': + optional: true + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.8': + optional: true + + '@tailwindcss/oxide-linux-arm64-gnu@4.0.8': + optional: true + + '@tailwindcss/oxide-linux-arm64-musl@4.0.8': + optional: true + + '@tailwindcss/oxide-linux-x64-gnu@4.0.8': + optional: true + + '@tailwindcss/oxide-linux-x64-musl@4.0.8': + optional: true + + '@tailwindcss/oxide-win32-arm64-msvc@4.0.8': + optional: true + + '@tailwindcss/oxide-win32-x64-msvc@4.0.8': + optional: true + + '@tailwindcss/oxide@4.0.8': + optionalDependencies: + '@tailwindcss/oxide-android-arm64': 4.0.8 + '@tailwindcss/oxide-darwin-arm64': 4.0.8 + '@tailwindcss/oxide-darwin-x64': 4.0.8 + '@tailwindcss/oxide-freebsd-x64': 4.0.8 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.8 + '@tailwindcss/oxide-linux-arm64-gnu': 4.0.8 + '@tailwindcss/oxide-linux-arm64-musl': 4.0.8 + '@tailwindcss/oxide-linux-x64-gnu': 4.0.8 + '@tailwindcss/oxide-linux-x64-musl': 4.0.8 + '@tailwindcss/oxide-win32-arm64-msvc': 4.0.8 + '@tailwindcss/oxide-win32-x64-msvc': 4.0.8 + + '@tailwindcss/postcss@4.0.8': + dependencies: + '@alloc/quick-lru': 5.2.0 + '@tailwindcss/node': 4.0.8 + '@tailwindcss/oxide': 4.0.8 + lightningcss: 1.29.1 + postcss: 8.5.1 + tailwindcss: 4.0.8 + '@tanstack/query-core@5.60.6': {} '@tanstack/react-query@5.60.6(react@19.0.0)': @@ -10898,23 +10904,15 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.1.0: {} - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - ansi-styles@6.2.1: {} - - any-promise@1.3.0: {} - anymatch@3.1.3: dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 - arg@5.0.2: {} - argparse@2.0.1: {} aria-hidden@1.2.4: @@ -11005,16 +11003,6 @@ snapshots: attr-accept@2.2.5: {} - autoprefixer@10.4.20(postcss@8.5.1): - dependencies: - browserslist: 4.24.4 - caniuse-lite: 1.0.30001696 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.1.1 - postcss: 8.5.1 - postcss-value-parser: 4.2.0 - available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 @@ -11119,8 +11107,6 @@ snapshots: callsites@3.1.0: {} - camelcase-css@2.0.1: {} - camelcase@5.3.1: {} camera-controls@2.9.0(three@0.165.0): @@ -11206,8 +11192,6 @@ snapshots: commander@2.20.3: {} - commander@4.1.1: {} - commondir@1.0.1: {} concat-map@0.0.1: {} @@ -11373,8 +11357,6 @@ snapshots: detect-node-es@1.1.0: {} - didyoumean@1.2.2: {} - dijkstrajs@1.0.3: {} dlv@1.1.3: {} @@ -11406,8 +11388,6 @@ snapshots: readable-stream: 3.6.2 stream-shift: 1.0.3 - eastasianwidth@0.2.0: {} - eciesjs@0.4.13: dependencies: '@ecies/ciphers': 0.2.2(@noble/ciphers@1.2.1) @@ -11456,6 +11436,11 @@ snapshots: graceful-fs: 4.2.11 tapable: 2.2.1 + enhanced-resolve@5.18.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + entities@4.5.0: {} es-abstract@1.23.9: @@ -11598,8 +11583,8 @@ snapshots: '@typescript-eslint/parser': 8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3) eslint: 9.14.0(jiti@2.4.2) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.14.0(jiti@2.4.2)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.14.0(jiti@2.4.2)) eslint-plugin-react: 7.37.4(eslint@9.14.0(jiti@2.4.2)) eslint-plugin-react-hooks: 5.1.0(eslint@9.14.0(jiti@2.4.2)) @@ -11622,7 +11607,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)): + eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.14.0(jiti@2.4.2)): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0 @@ -11634,22 +11619,22 @@ snapshots: is-glob: 4.0.3 stable-hash: 0.0.4 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3) eslint: 9.14.0(jiti@2.4.2) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.14.0(jiti@2.4.2)) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -11660,7 +11645,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.14.0(jiti@2.4.2) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)))(eslint@9.14.0(jiti@2.4.2)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.14.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@9.14.0(jiti@2.4.2)) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -11979,11 +11964,6 @@ snapshots: for-in@1.0.2: {} - foreground-child@3.3.0: - dependencies: - cross-spawn: 7.0.6 - signal-exit: 4.1.0 - form-data@4.0.1: dependencies: asynckit: 0.4.0 @@ -11992,8 +11972,6 @@ snapshots: forwarded-parse@2.1.2: {} - fraction.js@4.3.7: {} - framer-motion@11.18.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: motion-dom: 11.18.1 @@ -12085,15 +12063,6 @@ snapshots: glob-to-regexp@0.4.1: {} - glob@10.4.5: - dependencies: - foreground-child: 3.3.0 - jackspeak: 3.4.3 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 - glob@9.3.5: dependencies: fs.realpath: 1.0.0 @@ -12437,12 +12406,6 @@ snapshots: transitivePeerDependencies: - '@types/react' - jackspeak@3.4.3: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - javascript-stringify@2.1.0: {} jest-worker@27.5.1: @@ -12451,10 +12414,7 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jiti@1.21.7: {} - - jiti@2.4.2: - optional: true + jiti@2.4.2: {} jose@5.9.6: {} @@ -12587,30 +12547,60 @@ snapshots: lightningcss-darwin-arm64@1.25.1: optional: true + lightningcss-darwin-arm64@1.29.1: + optional: true + lightningcss-darwin-x64@1.25.1: optional: true + lightningcss-darwin-x64@1.29.1: + optional: true + lightningcss-freebsd-x64@1.25.1: optional: true + lightningcss-freebsd-x64@1.29.1: + optional: true + lightningcss-linux-arm-gnueabihf@1.25.1: optional: true + lightningcss-linux-arm-gnueabihf@1.29.1: + optional: true + lightningcss-linux-arm64-gnu@1.25.1: optional: true + lightningcss-linux-arm64-gnu@1.29.1: + optional: true + lightningcss-linux-arm64-musl@1.25.1: optional: true + lightningcss-linux-arm64-musl@1.29.1: + optional: true + lightningcss-linux-x64-gnu@1.25.1: optional: true + lightningcss-linux-x64-gnu@1.29.1: + optional: true + lightningcss-linux-x64-musl@1.25.1: optional: true + lightningcss-linux-x64-musl@1.29.1: + optional: true + + lightningcss-win32-arm64-msvc@1.29.1: + optional: true + lightningcss-win32-x64-msvc@1.25.1: optional: true + lightningcss-win32-x64-msvc@1.29.1: + optional: true + lightningcss@1.25.1: dependencies: detect-libc: 1.0.3 @@ -12625,11 +12615,20 @@ snapshots: lightningcss-linux-x64-musl: 1.25.1 lightningcss-win32-x64-msvc: 1.25.1 - lilconfig@2.1.0: {} - - lilconfig@3.1.3: {} - - lines-and-columns@1.2.4: {} + lightningcss@1.29.1: + dependencies: + detect-libc: 1.0.3 + optionalDependencies: + lightningcss-darwin-arm64: 1.29.1 + lightningcss-darwin-x64: 1.29.1 + lightningcss-freebsd-x64: 1.29.1 + lightningcss-linux-arm-gnueabihf: 1.29.1 + lightningcss-linux-arm64-gnu: 1.29.1 + lightningcss-linux-arm64-musl: 1.29.1 + lightningcss-linux-x64-gnu: 1.29.1 + lightningcss-linux-x64-musl: 1.29.1 + lightningcss-win32-arm64-msvc: 1.29.1 + lightningcss-win32-x64-msvc: 1.29.1 lit-element@3.3.3: dependencies: @@ -12814,12 +12813,6 @@ snapshots: multiformats@9.9.0: {} - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - n8ao@1.9.4(postprocessing@6.35.5(three@0.165.0))(three@0.165.0): dependencies: postprocessing: 6.35.5(three@0.165.0) @@ -12896,8 +12889,6 @@ snapshots: normalize-path@3.0.0: {} - normalize-range@0.1.2: {} - nwsapi@2.2.16: {} obj-case@0.2.1: {} @@ -12910,8 +12901,6 @@ snapshots: object-assign@4.1.1: {} - object-hash@3.0.0: {} - object-inspect@1.13.3: {} object-keys@1.1.1: {} @@ -13034,8 +13023,6 @@ snapshots: p-try@2.2.0: {} - package-json-from-dist@1.0.1: {} - package-manager-detector@0.1.0: {} pandacss-preset-radix-colors@0.2.0(@pandacss/dev@0.51.1(jsdom@26.0.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(typescript@5.7.3))(@radix-ui/colors@3.0.0): @@ -13090,8 +13077,6 @@ snapshots: picomatch@4.0.2: {} - pify@2.3.0: {} - pify@3.0.0: {} pify@5.0.0: {} @@ -13139,8 +13124,6 @@ snapshots: sonic-boom: 2.8.0 thread-stream: 0.15.2 - pirates@4.0.6: {} - pkg-types@1.0.3: dependencies: jsonc-parser: 3.3.1 @@ -13177,25 +13160,6 @@ snapshots: dependencies: postcss: 8.4.49 - postcss-import@15.1.0(postcss@8.5.1): - dependencies: - postcss: 8.5.1 - postcss-value-parser: 4.2.0 - read-cache: 1.0.0 - resolve: 1.22.10 - - postcss-js@4.0.1(postcss@8.5.1): - dependencies: - camelcase-css: 2.0.1 - postcss: 8.5.1 - - postcss-load-config@4.0.2(postcss@8.5.1): - dependencies: - lilconfig: 3.1.3 - yaml: 2.7.0 - optionalDependencies: - postcss: 8.5.1 - postcss-merge-rules@7.0.4(postcss@8.4.49): dependencies: browserslist: 4.24.4 @@ -13215,11 +13179,6 @@ snapshots: postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-nested@6.2.0(postcss@8.5.1): - dependencies: - postcss: 8.5.1 - postcss-selector-parser: 6.1.2 - postcss-normalize-whitespace@7.0.0(postcss@8.4.49): dependencies: postcss: 8.4.49 @@ -13439,10 +13398,6 @@ snapshots: react@19.0.0: {} - read-cache@1.0.0: - dependencies: - pify: 2.3.0 - readable-stream@2.3.8: dependencies: core-util-is: 1.0.3 @@ -13738,8 +13693,6 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 - signal-exit@4.1.0: {} - simple-swizzle@0.2.2: dependencies: is-arrayish: 0.3.2 @@ -13820,12 +13773,6 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - string.prototype.includes@2.0.1: dependencies: call-bind: 1.0.8 @@ -13888,10 +13835,6 @@ snapshots: dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: - dependencies: - ansi-regex: 6.1.0 - strip-bom@3.0.0: {} strip-json-comments@3.1.1: {} @@ -13903,16 +13846,6 @@ snapshots: optionalDependencies: '@babel/core': 7.26.7 - sucrase@3.35.0: - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - commander: 4.1.1 - glob: 10.4.5 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.6 - ts-interface-checker: 0.1.13 - superstruct@1.0.4: {} supports-color@7.2.0: @@ -13941,38 +13874,11 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 - tailwind-merge@2.3.0: - dependencies: - '@babel/runtime': 7.26.7 - tailwind-merge@2.6.0: {} - tailwindcss@3.4.4: - dependencies: - '@alloc/quick-lru': 5.2.0 - arg: 5.0.2 - chokidar: 3.6.0 - didyoumean: 1.2.2 - dlv: 1.1.3 - fast-glob: 3.3.3 - glob-parent: 6.0.2 - is-glob: 4.0.3 - jiti: 1.21.7 - lilconfig: 2.1.0 - micromatch: 4.0.8 - normalize-path: 3.0.0 - object-hash: 3.0.0 - picocolors: 1.1.1 - postcss: 8.5.1 - postcss-import: 15.1.0(postcss@8.5.1) - postcss-js: 4.0.1(postcss@8.5.1) - postcss-load-config: 4.0.2(postcss@8.5.1) - postcss-nested: 6.2.0(postcss@8.5.1) - postcss-selector-parser: 6.1.2 - resolve: 1.22.10 - sucrase: 3.35.0 - transitivePeerDependencies: - - ts-node + tailwind-merge@3.0.2: {} + + tailwindcss@4.0.8: {} tapable@2.2.1: {} @@ -13994,14 +13900,6 @@ snapshots: text-table@0.2.0: {} - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - third-party-capital@1.0.20: {} thread-stream@0.15.2: @@ -14080,8 +13978,6 @@ snapshots: optionalDependencies: jsdom: 26.0.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) - ts-interface-checker@0.1.13: {} - ts-morph@24.0.0: dependencies: '@ts-morph/common': 0.25.0 @@ -14384,7 +14280,7 @@ snapshots: acorn: 8.14.0 browserslist: 4.24.4 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.18.0 + enhanced-resolve: 5.18.1 es-module-lexer: 1.6.0 eslint-scope: 5.1.1 events: 3.3.0 @@ -14476,18 +14372,6 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - wrappy@1.0.2: {} ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10): @@ -14517,8 +14401,6 @@ snapshots: yallist@3.1.1: {} - yaml@2.7.0: {} - yargs-parser@18.1.3: dependencies: camelcase: 5.3.1 diff --git a/postcss.config.mjs b/postcss.config.mjs index 2ef30fc..5d6d845 100644 --- a/postcss.config.mjs +++ b/postcss.config.mjs @@ -1,8 +1,7 @@ /** @type {import('postcss-load-config').Config} */ const config = { plugins: { - tailwindcss: {}, - autoprefixer: {}, + '@tailwindcss/postcss': {}, }, }; diff --git a/src/app/[locale]/(info)/devjam-terms/page.tsx b/src/app/[locale]/(info)/devjam-terms/page.tsx index 354285d..7ae6669 100644 --- a/src/app/[locale]/(info)/devjam-terms/page.tsx +++ b/src/app/[locale]/(info)/devjam-terms/page.tsx @@ -1,7 +1,6 @@ import { Metadata } from "next"; import { ColoredText } from "@/components/ColoredText"; -import { containerClasses } from "@/components/styles/container"; export const metadata: Metadata = { title: "DevJam Terms of Attendance - Ink", @@ -12,238 +11,223 @@ export const metadata: Metadata = { export default function DevJamTerms() { return ( <> -
-
- - TERMS OF ATTENDANCE - + + TERMS OF ATTENDANCE + -
- These are the terms of attendance (the “Terms of - Attendance”) governing your application, attendance at and - participation in Ink DevJam: Building the Future of Defi – Bangkok - 2024 (the “Event”).{" "} - - By applying for, attending, or speaking at the Event you agree to - these terms - - , which form a legally binding contract between Ink Limited - (“us” or “Organizer”) and you as the - applicant, attendee, or speaker (“you” or - “Attendee”). -
+
+ These are the terms of attendance (the “Terms of + Attendance”) governing your application, attendance at and + participation in Ink DevJam: Building the Future of Defi – Bangkok 2024 + (the “Event”).{" "} + + By applying for, attending, or speaking at the Event you agree to + these terms + + , which form a legally binding contract between Ink Limited + (“us” or “Organizer”) and you as the applicant, + attendee, or speaker (“you” or “Attendee”). +
- - 1. Attendee Requirements & Conditions - -
- 1.1. Application. Your application does not entitle you to - the admittance to the Event for which you have applied. Your - application will be reviewed by the Organizer. Only once you have - received the official acceptance email by the Organizer, are you - eligible to be admitted to the Event. The number of Attendees is - limited. -
-
- 1.2. Event Content. You acknowledge and agree that the - Organizer, in its sole discretion, reserves the right to change any - and all aspects of the Event, including but not limited to, the - Event name, themes, content, program, speakers, performers, hosts, - moderators, venue, and time. -
-
- 1.3. Identification. All Attendees must provide an acceptable - form of identification upon request: government-issued photo ID, - passport, or other photo ID. -
-
- 1.4. Denial of Admission. The Organizer reserves the right to - deny the admission to the Event or to exclude the Attendee from the - Event at its sole discretion. -
+ + 1. Attendee Requirements & Conditions + +
+ 1.1. Application. Your application does not entitle you to the + admittance to the Event for which you have applied. Your application + will be reviewed by the Organizer. Only once you have received the + official acceptance email by the Organizer, are you eligible to be + admitted to the Event. The number of Attendees is limited. +
+
+ 1.2. Event Content. You acknowledge and agree that the Organizer, + in its sole discretion, reserves the right to change any and all aspects + of the Event, including but not limited to, the Event name, themes, + content, program, speakers, performers, hosts, moderators, venue, and + time. +
+
+ 1.3. Identification. All Attendees must provide an acceptable + form of identification upon request: government-issued photo ID, + passport, or other photo ID. +
+
+ 1.4. Denial of Admission. The Organizer reserves the right to + deny the admission to the Event or to exclude the Attendee from the + Event at its sole discretion. +
- - 2. Costs - -
- Any and all costs associated with your application and attendance - (including, but without limitation to, travel and accommodation - expenses, equipment rental costs) shall be borne solely by the - Attendee, and Organizer shall have no liability for such costs, even - if the Event is canceled or your admission to the Event is denied - for any valid reason. -
+ + 2. Costs + +
+ Any and all costs associated with your application and attendance + (including, but without limitation to, travel and accommodation + expenses, equipment rental costs) shall be borne solely by the Attendee, + and Organizer shall have no liability for such costs, even if the Event + is canceled or your admission to the Event is denied for any valid + reason. +
- - 3. Image Rights / Right to Event Content / Collection and Use of - Data - -
- 3.1. Use of Likeness. By attending the Event you acknowledge - and agree to grant and hereby grant Organizer the right at the Event - to record, film, photograph, or capture your likeness in any media - now available or hereafter developed and to distribute, broadcast, - use, or otherwise globally to disseminate, in perpetuity, such media - without any further approval from you or any payment to you. This - grant to Organizer includes, but is not limited to, the right to - edit such media, the right to use the media alone or together with - other information, the right to offer the media for sale to other - attendees and the general public, and the right to allow others to - use or disseminate the media. -
-
- 3.2. No Right to Event Content. With the exception of any - rights existing before the Event, you shall not have or acquire any - right to any presentations, discussions, inventions, designs, plans, - names, technologies or ideas expressed, discussed or conveyed during - the Event. Any use of copyrighted material by the Attendee shall be - limited to those specifically authorized in writing in such - material. In absence of such specific authorization, the Attendee - may not use any copyrighted material for any purpose without the - copyright owners explicit written consent. -
-
- 3.3. Collection and Use of Data. By applying for the Event - you acknowledge that the Organizer is required and allowed to - collect and process personal data (if necessary for contact tracing) - of you and you confirm that you have read Ink's Privacy Policy. -
+ + 3. Image Rights / Right to Event Content / Collection and Use of Data + +
+ 3.1. Use of Likeness. By attending the Event you acknowledge and + agree to grant and hereby grant Organizer the right at the Event to + record, film, photograph, or capture your likeness in any media now + available or hereafter developed and to distribute, broadcast, use, or + otherwise globally to disseminate, in perpetuity, such media without any + further approval from you or any payment to you. This grant to Organizer + includes, but is not limited to, the right to edit such media, the right + to use the media alone or together with other information, the right to + offer the media for sale to other attendees and the general public, and + the right to allow others to use or disseminate the media. +
+
+ 3.2. No Right to Event Content. With the exception of any rights + existing before the Event, you shall not have or acquire any right to + any presentations, discussions, inventions, designs, plans, names, + technologies or ideas expressed, discussed or conveyed during the Event. + Any use of copyrighted material by the Attendee shall be limited to + those specifically authorized in writing in such material. In absence of + such specific authorization, the Attendee may not use any copyrighted + material for any purpose without the copyright owners explicit written + consent. +
+
+ 3.3. Collection and Use of Data. By applying for the Event you + acknowledge that the Organizer is required and allowed to collect and + process personal data (if necessary for contact tracing) of you and you + confirm that you have read Ink's Privacy Policy. +
- - 4. Event Rules - -
- 4.1. General Rules. You must comply with all applicable laws, - rules, regulations and orders of governmental authorities and the - rules established by the Organizer and the owner or operator of the - facility where the Event takes place. You must follow all - instructions given by the Event staff, staff and agents of the - facility owner or operator, and any security service. -
-
- 4.2. Commercial Actions by Attendees. Any and all commercial - activities by the Attendee, including but without limitation to - sales, advertisement or solicitation of business from other - Attendees or exhibitors or pitching other Attendees or exhibitors, - are prohibited, except with the prior written consent of the - Organizer. -
-
- 4.3. Disruptive Conduct. You acknowledge and agree that - Organizer reserves the right to remove you from the Event if - Organizer, in its sole discretion, determines that your presence is - illegal or your presence or behavior create a disruption or safety - issue for yourself or others, or hinder the Event or the enjoyment - of the Event by other attendees, Event staff, speakers, sponsors, or - exhibitors. -
-
- 4.4. Photography, Recording, Live Streaming, and Videotaping.{" "} - Attendees may not record, broadcast, live stream or videotape any - sessions at Organizer Events. Attendees may take pictures within the - show for personal use. Any use of such pictures for any other - purposes, including without limitation commercial purposes, is - strictly prohibited. -
-
- 4.5. No Disparagement. Attendee agrees not to disparage or - defame, or slander directly or indirectly in any media, Organizer or - any associates, employees, agents, shareholders, assigns or - contractors of Organizer, or any attendees, speakers, sponsors, or - any other parties associated with the Event. -
+ + 4. Event Rules + +
+ 4.1. General Rules. You must comply with all applicable laws, + rules, regulations and orders of governmental authorities and the rules + established by the Organizer and the owner or operator of the facility + where the Event takes place. You must follow all instructions given by + the Event staff, staff and agents of the facility owner or operator, and + any security service. +
+
+ 4.2. Commercial Actions by Attendees. Any and all commercial + activities by the Attendee, including but without limitation to sales, + advertisement or solicitation of business from other Attendees or + exhibitors or pitching other Attendees or exhibitors, are prohibited, + except with the prior written consent of the Organizer. +
+
+ 4.3. Disruptive Conduct. You acknowledge and agree that Organizer + reserves the right to remove you from the Event if Organizer, in its + sole discretion, determines that your presence is illegal or your + presence or behavior create a disruption or safety issue for yourself or + others, or hinder the Event or the enjoyment of the Event by other + attendees, Event staff, speakers, sponsors, or exhibitors. +
+
+ 4.4. Photography, Recording, Live Streaming, and Videotaping.{" "} + Attendees may not record, broadcast, live stream or videotape any + sessions at Organizer Events. Attendees may take pictures within the + show for personal use. Any use of such pictures for any other purposes, + including without limitation commercial purposes, is strictly + prohibited. +
+
+ 4.5. No Disparagement. Attendee agrees not to disparage or + defame, or slander directly or indirectly in any media, Organizer or any + associates, employees, agents, shareholders, assigns or contractors of + Organizer, or any attendees, speakers, sponsors, or any other parties + associated with the Event. +
- - 5. Limitation of Liability & Indemnification - -
- 5.1. Limitation of Liability. Organizer is responsible for - the administrative organization of the Event solely. You acknowledge - and understand that our Events are for informational and educational - purposes only. Content will be disclaimed so as not to be construed - as legal, tax, investment, financial, or other advice. Organizer - assumes no responsibility for, makes no statement (whether implied - or express) on the content or information presented or opinions - expressed or products, services or investments offered at or during - the Event. In particular, by the invitation or admittance of any - Attendee, speaker or other partner, Organizer makes no statement - (whether implied or express) or recommendation with regard to such - Attendee, speaker or other partner, his statements and opinions or - the services or investments offered or the business conducted by - him. If and to the extent you consider to make an investment - decision at or during the Event, you do this on your own risk and - based on consultation with your own investment advisors. Neither - Organizer nor its shareholders, officers, directors, employees, - agents, independent contractors or representatives shall be - responsible for any injury, loss, or damage, including any - circumstances for special, incidental, indirect, consequential - (including but not limited to lost opportunities or profits), or - punitive damages, that may occur to Attendee or to Attendee's - agents, employees, affiliated personnel, officers, directors, - shareholders, contractors or representatives or any of their - property, businesses, or other activities from any cause whatsoever, - prior to, during, or after or otherwise in connection with the - Event, and any such liability shall be waived to the fullest extent. - To the extent such waiver is not fully enforceable under applicable - law, such liability shall not exceed the lesser of the fees paid by - the respective Attendee or $25 USD. -
-
- 5.2. Indemnification. By registering for the Event, Attendee - assumes all such risk and expressly releases, and agrees to - indemnify, defend and hold harmless, Organizer and its shareholders, - officers, directors, employees, agents, independent contractors and - representatives from all claims for such loss, injury, or damages. - Furthermore, Attendee releases and discharges Organizer and its - shareholders, officers, directors, employees, agents, independent - contractors and representatives from all liabilities arising out of, - or in any way related to, the selection, rejection, or removal of - Attendee to or from the Event and enforcement of the Terms of - Attendance. Attendee also hereby agrees to indemnify, defend and - hold harmless Organizer and its shareholders, officers, directors, - employees, agents, independent contractors and representatives, from - and against any and all losses, damages, suits, claims, causes of - action, liabilities, expenses, costs and attorneys' fees - incurred, arising out of, resulting from Attendee's - infringement of the intellectual property rights or other rights of - any third party, or any of its agents, employees, affiliated - personnel, officers, directors, shareholders, contractors or - representatives. -
+ + 5. Limitation of Liability & Indemnification + +
+ 5.1. Limitation of Liability. Organizer is responsible for the + administrative organization of the Event solely. You acknowledge and + understand that our Events are for informational and educational + purposes only. Content will be disclaimed so as not to be construed as + legal, tax, investment, financial, or other advice. Organizer assumes no + responsibility for, makes no statement (whether implied or express) on + the content or information presented or opinions expressed or products, + services or investments offered at or during the Event. In particular, + by the invitation or admittance of any Attendee, speaker or other + partner, Organizer makes no statement (whether implied or express) or + recommendation with regard to such Attendee, speaker or other partner, + his statements and opinions or the services or investments offered or + the business conducted by him. If and to the extent you consider to make + an investment decision at or during the Event, you do this on your own + risk and based on consultation with your own investment advisors. + Neither Organizer nor its shareholders, officers, directors, employees, + agents, independent contractors or representatives shall be responsible + for any injury, loss, or damage, including any circumstances for + special, incidental, indirect, consequential (including but not limited + to lost opportunities or profits), or punitive damages, that may occur + to Attendee or to Attendee's agents, employees, affiliated + personnel, officers, directors, shareholders, contractors or + representatives or any of their property, businesses, or other + activities from any cause whatsoever, prior to, during, or after or + otherwise in connection with the Event, and any such liability shall be + waived to the fullest extent. To the extent such waiver is not fully + enforceable under applicable law, such liability shall not exceed the + lesser of the fees paid by the respective Attendee or $25 USD. +
+
+ 5.2. Indemnification. By registering for the Event, Attendee + assumes all such risk and expressly releases, and agrees to indemnify, + defend and hold harmless, Organizer and its shareholders, officers, + directors, employees, agents, independent contractors and + representatives from all claims for such loss, injury, or damages. + Furthermore, Attendee releases and discharges Organizer and its + shareholders, officers, directors, employees, agents, independent + contractors and representatives from all liabilities arising out of, or + in any way related to, the selection, rejection, or removal of Attendee + to or from the Event and enforcement of the Terms of Attendance. + Attendee also hereby agrees to indemnify, defend and hold harmless + Organizer and its shareholders, officers, directors, employees, agents, + independent contractors and representatives, from and against any and + all losses, damages, suits, claims, causes of action, liabilities, + expenses, costs and attorneys' fees incurred, arising out of, + resulting from Attendee's infringement of the intellectual property + rights or other rights of any third party, or any of its agents, + employees, affiliated personnel, officers, directors, shareholders, + contractors or representatives. +
- - 6. Agreement, Governing Law & Jurisdiction - -
- 6.1. Agreement | Changes to the Terms of Attendance. The - Attendee agrees to observe and abide by the foregoing terms, - conditions, and rules, and by such additional terms, conditions, and - rules established by Organizer from time to time for the efficient, - enjoyable and safe operation of the Event, including, but without - limitation to, those contained in these Terms of Attendance. The - Organizer reserves the right to modify the Terms of Attendance at - any time. There is no other agreement or warranty between the - Attendee and Organizer. The headings used in these Terms of - Attendance are for organizational purposes only and are not to be - used in the interpretation of the substance of these Terms of - Attendance. The rights of Organizer under these Terms of Attendance - shall not be deemed waived except as specifically stated in writing - and signed by an authorized representative of Organizer. -
-
- 6.2. Governing Law & Jurisdiction. These Terms of Attendance - and any claim, controversy or dispute arising out of or related to - these Terms of Attendance, shall be governed by and construed in - accordance with the substantive Laws of England and Wales. The - exclusive place of jurisdiction for any dispute, claim or - controversy arising under, out of or in connection with or related - to these Terms of Attendance (or subsequent version thereof), - including, but without limitation to, disputes, claims or - controversies regarding its existence, validity, interpretation, - performance, breach or termination, shall be the city of London, - England. -
-
+ + 6. Agreement, Governing Law & Jurisdiction + +
+ 6.1. Agreement | Changes to the Terms of Attendance. The Attendee + agrees to observe and abide by the foregoing terms, conditions, and + rules, and by such additional terms, conditions, and rules established + by Organizer from time to time for the efficient, enjoyable and safe + operation of the Event, including, but without limitation to, those + contained in these Terms of Attendance. The Organizer reserves the right + to modify the Terms of Attendance at any time. There is no other + agreement or warranty between the Attendee and Organizer. The headings + used in these Terms of Attendance are for organizational purposes only + and are not to be used in the interpretation of the substance of these + Terms of Attendance. The rights of Organizer under these Terms of + Attendance shall not be deemed waived except as specifically stated in + writing and signed by an authorized representative of Organizer. +
+
+ 6.2. Governing Law & Jurisdiction. These Terms of Attendance and + any claim, controversy or dispute arising out of or related to these + Terms of Attendance, shall be governed by and construed in accordance + with the substantive Laws of England and Wales. The exclusive place of + jurisdiction for any dispute, claim or controversy arising under, out of + or in connection with or related to these Terms of Attendance (or + subsequent version thereof), including, but without limitation to, + disputes, claims or controversies regarding its existence, validity, + interpretation, performance, breach or termination, shall be the city of + London, England.
); diff --git a/src/app/[locale]/(info)/layout.tsx b/src/app/[locale]/(info)/layout.tsx index 1ff9ab5..be56638 100644 --- a/src/app/[locale]/(info)/layout.tsx +++ b/src/app/[locale]/(info)/layout.tsx @@ -11,7 +11,7 @@ export default async function InfoLayout({ }) { return (
-
{children}
+
{children}
); } diff --git a/src/app/[locale]/(info)/privacy/privacy-after-mainnet.tsx b/src/app/[locale]/(info)/privacy/privacy-after-mainnet.tsx index b9d575d..f776c39 100644 --- a/src/app/[locale]/(info)/privacy/privacy-after-mainnet.tsx +++ b/src/app/[locale]/(info)/privacy/privacy-after-mainnet.tsx @@ -1,670 +1,655 @@ import { ColoredText } from "@/components/ColoredText"; import { ContactUsPrivacyButton } from "@/components/ContactUsPrivacyButton"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; export default function PrivacyAfterMainnet() { return ( <> -
-
- - Ink Privacy Notice - -
Last Updated: Oct 24, 2024
-
- Welcome to the Ink privacy notice. We appreciate your trust and take - your privacy seriously. Please read on to understand how we may - collect, use, disclose and safeguard your personal data. -
- - - 1. Definitions and scope - -
- 1.1 “Application and device information” includes information about - your operating system, the browser type, version and plugins - you're using, the network you connect to, your IP address, - derived location information, and marketing identifiers. -
- -
- 1.2 “Blockchain data” means publicly available blockchain data, - including transaction amounts, wallet addresses, timestamps of - transactions or events, transaction IDs and digital signatures. -
- -
- 1.3 “Child” means a person under the age of 18, collectively - “Children”. -
- -
- 1.4 “Ink” is a layer 2 optimistic rollup protocol for the Ethereum - blockchain (“Ink”) built on open source software that we do not - control. -
- -
- 1.5 “Services” means this Ink website, Ink and any other - applications, tools and features we operate. -
- -
- 1.6 Wallet address means a public blockchain wallet address. -
- -
1.7 “We”, “us” and “our” means Ink Ltd.
- -
- 1.8 “You” and “your” means the users and developers of our services, - and also, as applicable, “users” and “developers”. -
- -
- Please note that this privacy notice describes how we process and - protect your personal data when you use our services, it does not - apply to any processing which we carry out as a processor on behalf - of users and developers who explore and use Ink. As we are not - responsible for and do not control websites, applications, or - services operated by third parties, including those that allow you - to interact with our services, we encourage you to review their - privacy notices separately. -
- - - 2. Information we collect - - -
- We collect the following personal data when providing the services: -
- -
- Information you provide -
    -
  • Your wallet address
  • -
  • Blockchain data
  • -
  • - Basic user / developer information shared when signing up to - receive marketing communications including name and contact - information -
  • -
  • - Any user / developer submitted information provided through a - form, for example a feedback, survey, or bug report form -
  • -
  • - Any information exchanged for user / developer support purposes -
  • -
-
- -
- Information collected automatically -
    -
  • Application and device information
  • -
-
- -
- Information obtained from third parties and public sources -
    -
  • - Blockchain data: We may collect blockchain data from public - sources, for example by using blockchain explorers. -
  • -
  • - Analytics information: We may collect information about your - website usage and interactions from third party analytics - providers and advertising providers. This includes device - information, marketing identifiers, browser fingerprint, device - information, and IP address. -
  • -
  • - Error tracking information: We collect error tracking - information from third party service providers to provide - automated error monitoring and error management for the - services. This improves the services and allows users and - developers to more effectively and consistently interact with - the services. -
  • -
-
- -
- Information collected at events - -
    -
  • - If we host in person events, we may film, photograph or record - parts of the event for promotional purposes. For example, we may - film a presenter speaking to an audience that incidentally - captures some members of that audience. Please speak to staff at - the venue if you would like further information. -
  • -
-
- - - 3. How we use your personal data - -
- We may use your personal data for the following purposes or as - otherwise described at the point of collection. To the extent - legitimate interest or performance of a contract is not a recognized - legal justification in your jurisdiction, we rely on consent - (express or implied, as appropriate) where consent is required. -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Why we process your personal data - - Information used - - Legal justification -
- To provide our services to you in accordance with our  - - Terms of Service - - - Wallet address, blockchain data - - Contractual necessity -
- To promote the safety, security and integrity of our - services - - Name and contact information, information from analytics - providers - - Contractual necessity -
- To troubleshoot the services and manage any errors arising - in relation to the services - - Error tracking information - - Legitimate interests -
- To send you surveys - - Name and contact information - - Legitimate interests -
- To provide you with technical support - - Questions and responses submitted by users and developers - for support - - Legitimate interests -
- To promote and market our business and events - - Live event recordings and photos - - Legitimate interests -
- To send you marketing communications - - Name and contact information - - Consent -
-
-
+ + Ink Privacy Notice + +
Last Updated: Oct 24, 2024
+
+ Welcome to the Ink privacy notice. We appreciate your trust and take + your privacy seriously. Please read on to understand how we may collect, + use, disclose and safeguard your personal data. +
- - 4. Disclosure of your personal data - + + 1. Definitions and scope + +
+ 1.1 “Application and device information” includes information about your + operating system, the browser type, version and plugins you're + using, the network you connect to, your IP address, derived location + information, and marketing identifiers. +
-
- As part of processing your personal data for the purposes set out - above, we may disclose your personal data to Kraken group companies - and to third parties. For example, we may disclose your personal data - for business or other legitimate purposes to our service providers and - business partners, such as specialist advisors who have been - contracted to provide us with administrative, financial, legal, tax, - compliance, insurance, IT, debt-recovery, analytics, research or other - services. -
+
+ 1.2 “Blockchain data” means publicly available blockchain data, + including transaction amounts, wallet addresses, timestamps of + transactions or events, transaction IDs and digital signatures. +
-
- If we disclose your personal data to service providers and business - partners, in order to perform the services requested by clients or to - comply with our legal and regulatory obligations, such providers and - partners may store your personal data within their own systems. We - require them to protect the confidentiality of this personal data, and - comply with all relevant privacy and data protection laws. -
+
+ 1.3 “Child” means a person under the age of 18, collectively “Children”. +
-
- We may also disclose personal data when it is compelled by law, for - example to a government agency as a result of a valid court order. We - may also disclose your data in the event of a prospective merger, - acquisition, or sale of all or part of our business or assets. -
+
+ 1.4 “Ink” is a layer 2 optimistic rollup protocol for the Ethereum + blockchain (“Ink”) built on open source software that we do not control. +
- - 5. How long we retain your personal data - +
+ 1.5 “Services” means this Ink website, Ink and any other applications, + tools and features we operate. +
-
- When personal data is no longer necessary for the purposes for which - it may lawfully be processed, we will remove any details that will - identify you, or we will securely destroy the relevant records. -
+
1.6 Wallet address means a public blockchain wallet address.
-
- We may need to maintain records for a significant period of time after - you cease being our client for legal or regulatory reasons, for - example when we need to retain information to help manage a dispute or - legal claim. -
+
1.7 “We”, “us” and “our” means Ink Ltd.
+ +
+ 1.8 “You” and “your” means the users and developers of our services, and + also, as applicable, “users” and “developers”. +
- - 6. Children's personal data - +
+ Please note that this privacy notice describes how we process and + protect your personal data when you use our services, it does not apply + to any processing which we carry out as a processor on behalf of users + and developers who explore and use Ink. As we are not responsible for + and do not control websites, applications, or services operated by third + parties, including those that allow you to interact with our services, + we encourage you to review their privacy notices separately. +
-
- Our products and services are not directed to children and we do not - knowingly collect personal data from children. If we learn that we - have inadvertently processed personal data from a child, we will take - legally permissible measures to remove that data from our records. -
+ + 2. Information we collect + -
- We will require the child user to close his or her account and will - not allow the use of our products and services. -
+
+ We collect the following personal data when providing the services: +
- - 7. Where we store your personal data - +
+ Information you provide +
    +
  • Your wallet address
  • +
  • Blockchain data
  • +
  • + Basic user / developer information shared when signing up to receive + marketing communications including name and contact information +
  • +
  • + Any user / developer submitted information provided through a form, + for example a feedback, survey, or bug report form +
  • +
  • + Any information exchanged for user / developer support purposes +
  • +
+
-
- Our operations are supported by a network of computers, servers, other - infrastructure and information technology, and third-party service - providers. -
+
+ Information collected automatically +
    +
  • Application and device information
  • +
+
-
- We and our third-party service providers and business partners store - and process your personal data in the European Union, Japan, - Australia, the United Kingdom, the United States of America and - elsewhere in the world. Courts, law enforcement and security agencies - of these jurisdictions may be able to use legal processes to access - your personal data. -
+
+ Information obtained from third parties and public sources +
    +
  • + Blockchain data: We may collect blockchain data from public sources, + for example by using blockchain explorers. +
  • +
  • + Analytics information: We may collect information about your website + usage and interactions from third party analytics providers and + advertising providers. This includes device information, marketing + identifiers, browser fingerprint, device information, and IP + address. +
  • +
  • + Error tracking information: We collect error tracking information + from third party service providers to provide automated error + monitoring and error management for the services. This improves the + services and allows users and developers to more effectively and + consistently interact with the services. +
  • +
+
- - 8. For UK & EEA clients: Transfers of personal data outside of the - European Economic Area (EEA) and the United Kingdom (UK) - +
+ Information collected at events + +
    +
  • + If we host in person events, we may film, photograph or record parts + of the event for promotional purposes. For example, we may film a + presenter speaking to an audience that incidentally captures some + members of that audience. Please speak to staff at the venue if you + would like further information. +
  • +
+
-
- We may transfer your personal data outside the EEA and UK to other - Kraken group companies, service providers and business partners. - Transfers outside of the EEA or the UK (as appropriate) are done in - accordance with lawful transfer mechanisms. -
+ + 3. How we use your personal data + +
+ We may use your personal data for the following purposes or as otherwise + described at the point of collection. To the extent legitimate interest + or performance of a contract is not a recognized legal justification in + your jurisdiction, we rely on consent (express or implied, as + appropriate) where consent is required. +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Why we process your personal data + + Information used + + Legal justification +
+ To provide our services to you in accordance with our  + + Terms of Service + + + Wallet address, blockchain data + + Contractual necessity +
+ To promote the safety, security and integrity of our services + + Name and contact information, information from analytics + providers + + Contractual necessity +
+ To troubleshoot the services and manage any errors arising in + relation to the services + + Error tracking information + + Legitimate interests +
+ To send you surveys + + Name and contact information + + Legitimate interests +
+ To provide you with technical support + + Questions and responses submitted by users and developers for + support + + Legitimate interests +
+ To promote and market our business and events + + Live event recordings and photos + + Legitimate interests +
+ To send you marketing communications + + Name and contact information + + Consent +
+
-
- If personal data is transferred to a country which has been found by - the European Commission to have an essentially equivalent standard of - data protection to the EEA, then we may rely on an 'adequacy - decision' to transfer that personal data. See  - - here - -  for a list of countries with adequacy decisions. If personal - data is transferred from the EEA or UK to the US, we may rely on - - Standard Contractual Clauses - - . -
+ + 4. Disclosure of your personal data + + +
+ As part of processing your personal data for the purposes set out above, + we may disclose your personal data to Kraken group companies and to + third parties. For example, we may disclose your personal data for + business or other legitimate purposes to our service providers and + business partners, such as specialist advisors who have been contracted + to provide us with administrative, financial, legal, tax, compliance, + insurance, IT, debt-recovery, analytics, research or other services. +
- - 9. Cookies - -
- When you use our products and services or visit our websites, we may - place tiny data files called cookies, flash cookies, pixel tags, or - other tracking tools (herein, “cookies”) on your computer or other - devices used when engaging with us. We use cookies to help us - recognize you as a user or developer, collect information about your - use of our products and services, to better customize our services and - content for you, and to collect information about your computer or - other access devices to ensure our compliance with our U.S. Bank - Secrecy Act, fraud, security, sanctions and AML obligations. -
+
+ If we disclose your personal data to service providers and business + partners, in order to perform the services requested by clients or to + comply with our legal and regulatory obligations, such providers and + partners may store your personal data within their own systems. We + require them to protect the confidentiality of this personal data, and + comply with all relevant privacy and data protection laws. +
+ +
+ We may also disclose personal data when it is compelled by law, for + example to a government agency as a result of a valid court order. We + may also disclose your data in the event of a prospective merger, + acquisition, or sale of all or part of our business or assets. +
+ + + 5. How long we retain your personal data + + +
+ When personal data is no longer necessary for the purposes for which it + may lawfully be processed, we will remove any details that will identify + you, or we will securely destroy the relevant records. +
- - 10. Your rights regarding your personal data - +
+ We may need to maintain records for a significant period of time after + you cease being our client for legal or regulatory reasons, for example + when we need to retain information to help manage a dispute or legal + claim. +
+ + + 6. Children's personal data + + +
+ Our products and services are not directed to children and we do not + knowingly collect personal data from children. If we learn that we have + inadvertently processed personal data from a child, we will take legally + permissible measures to remove that data from our records. +
+ +
+ We will require the child user to close his or her account and will not + allow the use of our products and services. +
+ + + 7. Where we store your personal data + + +
+ Our operations are supported by a network of computers, servers, other + infrastructure and information technology, and third-party service + providers. +
+ +
+ We and our third-party service providers and business partners store and + process your personal data in the European Union, Japan, Australia, the + United Kingdom, the United States of America and elsewhere in the world. + Courts, law enforcement and security agencies of these jurisdictions may + be able to use legal processes to access your personal data. +
+ + + 8. For UK & EEA clients: Transfers of personal data outside of the + European Economic Area (EEA) and the United Kingdom (UK) + + +
+ We may transfer your personal data outside the EEA and UK to other + Kraken group companies, service providers and business partners. + Transfers outside of the EEA or the UK (as appropriate) are done in + accordance with lawful transfer mechanisms. +
+ +
+ If personal data is transferred to a country which has been found by the + European Commission to have an essentially equivalent standard of data + protection to the EEA, then we may rely on an 'adequacy + decision' to transfer that personal data. See  + + here + +  for a list of countries with adequacy decisions. If personal data + is transferred from the EEA or UK to the US, we may rely on + + Standard Contractual Clauses + + . +
+ + + 9. Cookies + +
+ When you use our products and services or visit our websites, we may + place tiny data files called cookies, flash cookies, pixel tags, or + other tracking tools (herein, “cookies”) on your computer or other + devices used when engaging with us. We use cookies to help us recognize + you as a user or developer, collect information about your use of our + products and services, to better customize our services and content for + you, and to collect information about your computer or other access + devices to ensure our compliance with our U.S. Bank Secrecy Act, fraud, + security, sanctions and AML obligations. +
+ + + 10. Your rights regarding your personal data + +
+ The rights that are available to you in relation to the personal data we + process are outlined below. You may request to exercise these rights + subject to any limitations provided for under applicable data protection + laws. +
+
+ Access
- The rights that are available to you in relation to the personal data - we process are outlined below. You may request to exercise these - rights subject to any limitations provided for under applicable data - protection laws. + You can ask us to confirm whether we are processing your personal data + and, if so, what information we process. Should you wish to obtain a + copy of that information, please  + +  .
+
+
+ Rectification
- Access -
- You can ask us to confirm whether we are processing your personal - data and, if so, what information we process. Should you wish to - obtain a copy of that information, please  - -  . -
+ It is important to us that your personal data is up to date. We will + take all reasonable steps to make sure that your personal data remains + accurate, complete and up-to-date. Please inform us if your personal + data changes. If the personal data we hold about you is inaccurate or + incomplete, you are entitled to have it rectified. If we have + disclosed your personal data to others, we will let them know about + the rectification where possible. If you ask us, and if possible and + lawful to do so, we will also inform you with whom we have shared your + personal data.
- Rectification -
- It is important to us that your personal data is up to date. We will - take all reasonable steps to make sure that your personal data - remains accurate, complete and up-to-date. Please inform us if your - personal data changes. If the personal data we hold about you is - inaccurate or incomplete, you are entitled to have it rectified. If - we have disclosed your personal data to others, we will let them - know about the rectification where possible. If you ask us, and if - possible and lawful to do so, we will also inform you with whom we - have shared your personal data. -
-
- You may inform us at any time if your personal details have changed - by  - . Subject to - applicable law, we will update your personal data in accordance with - your instructions. To proceed with such requests, in some cases we - may need supporting documents from you as proof, i.e. personal data - that we are required to keep for regulatory or other legal purposes. -
+ You may inform us at any time if your personal details have changed + by  + . Subject to applicable + law, we will update your personal data in accordance with your + instructions. To proceed with such requests, in some cases we may need + supporting documents from you as proof, i.e. personal data that we are + required to keep for regulatory or other legal purposes.
+
+
+ Erasure
- Erasure -
- You can ask us to delete or remove your personal data in certain - circumstances. Such requests may be subject to any retention limits - we are required to comply with in accordance with applicable laws - and regulations. If we have disclosed your personal data to others, - we will let them know about the erasure request where possible. If - you ask us, and if possible and lawful to do so, we will also inform - you with whom we have shared your personal data. -
+ You can ask us to delete or remove your personal data in certain + circumstances. Such requests may be subject to any retention limits we + are required to comply with in accordance with applicable laws and + regulations. If we have disclosed your personal data to others, we + will let them know about the erasure request where possible. If you + ask us, and if possible and lawful to do so, we will also inform you + with whom we have shared your personal data.
+
+
+ Processing restrictions
- Processing restrictions -
- You can ask us to block or suppress the processing of your personal - data in certain circumstances such as if you contest the accuracy of - that personal data or object to us processing it. It will not stop - us from storing your personal data. If we have disclosed your - personal data to others, we will let them know about the restriction - of processing if possible. If you ask us, and if possible and lawful - to do so, we will also inform you with whom we have shared your - personal data. -
+ You can ask us to block or suppress the processing of your personal + data in certain circumstances such as if you contest the accuracy of + that personal data or object to us processing it. It will not stop us + from storing your personal data. If we have disclosed your personal + data to others, we will let them know about the restriction of + processing if possible. If you ask us, and if possible and lawful to + do so, we will also inform you with whom we have shared your personal + data.
+
+
+ Data portability
- Data portability -
- In certain circumstances you may have the right to obtain personal - data you have provided to us, in a structured, commonly used and - machine-readable format, and to re-use it elsewhere or ask us to - transfer this to a third party of your choice, where technically - feasible. -
+ In certain circumstances you may have the right to obtain personal + data you have provided to us, in a structured, commonly used and + machine-readable format, and to re-use it elsewhere or ask us to + transfer this to a third party of your choice, where technically + feasible.
+
+
+ Objection
- Objection -
- You can ask us to stop processing your personal data, and we will do - so, if we are: -
- -
    -
  • - Relying on our own or someone else's legitimate interests to - process your personal data except if we can demonstrate compelling - legal grounds for the processing or for the establishment, - exercise or defence of legal claims; -
  • -
  • Processing your personal data for direct marketing; or
  • -
  • - Processing your personal data for research unless we reasonably - believe such processing is necessary for the performance of a task - carried out for reasons of public interest (such as by a - regulatory or enforcement agency). -
  • -
+ You can ask us to stop processing your personal data, and we will do + so, if we are:
+ +
    +
  • + Relying on our own or someone else's legitimate interests to + process your personal data except if we can demonstrate compelling + legal grounds for the processing or for the establishment, exercise + or defence of legal claims; +
  • +
  • Processing your personal data for direct marketing; or
  • +
  • + Processing your personal data for research unless we reasonably + believe such processing is necessary for the performance of a task + carried out for reasons of public interest (such as by a regulatory + or enforcement agency). +
  • +
+
+
+ Automated decision-making and profiling
- Automated decision-making and profiling -
- If we have made a decision about you based solely on an automated - process (e.g. through automatic profiling) that affects your ability - to access our services or has another significant effect on you, you - can request not to be subject to such a decision unless we can - demonstrate to you that such decision is necessary for entering - into, or the performance of, a contract between you and us. Even if - a decision is necessary for entering into or performing a contract, - you may contest the decision and require human intervention. We may - not be able to offer our products or services to you, if we agree to - such a request (i.e. end our relationship with you). -
+ If we have made a decision about you based solely on an automated + process (e.g. through automatic profiling) that affects your ability + to access our services or has another significant effect on you, you + can request not to be subject to such a decision unless we can + demonstrate to you that such decision is necessary for entering into, + or the performance of, a contract between you and us. Even if a + decision is necessary for entering into or performing a contract, you + may contest the decision and require human intervention. We may not be + able to offer our products or services to you, if we agree to such a + request (i.e. end our relationship with you).
+
+
+ Complaints
- Complaints -
- You have the right to complain to a competent data protection - authority. Contact details are set out in Section 13 below. We ask - that you first contact us to give us an opportunity to address any - concerns. -
+ You have the right to complain to a competent data protection + authority. Contact details are set out in Section 13 below. We ask + that you first contact us to give us an opportunity to address any + concerns.
+
+
+ Withdraw consent
- Withdraw consent -
- You have the right to withdraw consent to processing based on - consent at any time. Note this will not affect the lawfulness of - processing based on consent prior to the withdrawal of consent or on - grounds where consent is not required. -
+ You have the right to withdraw consent to processing based on consent + at any time. Note this will not affect the lawfulness of processing + based on consent prior to the withdrawal of consent or on grounds + where consent is not required.
+
- - 11. Contact information - -
- Any questions, complaints, comments and requests regarding information - in this privacy notice are welcome and should be addressed to our - support team, who can triage questions to our Data Protection Officer - as appropriate. -
-
- The fastest and easiest way to connect with our support is through our - Ink Discord community  - - here - - . -
+ + 11. Contact information + +
+ Any questions, complaints, comments and requests regarding information + in this privacy notice are welcome and should be addressed to our + support team, who can triage questions to our Data Protection Officer as + appropriate. +
+
+ The fastest and easiest way to connect with our support is through our + Ink Discord community  + + here + + . +
+
+ If this is not a feasible path for you, please  + +  through our website. +
+ + + 12. Changes to this privacy notice + +
+ Our privacy notice is reviewed regularly in light of new regulations, + technologies, and any changes to our business operations. Any personal + data we process will be governed by our most recent privacy notice. We + will update the “Last updated” date accordingly at the beginning of this + privacy notice. Please review this privacy notice from time to time. We + will announce any material changes to this privacy notice on our + website. +
+ + + 13. Privacy when using digital assets and blockchains + +
+ Your use of digital assets may be recorded on a public blockchain. + Public blockchains are distributed ledgers, intended to immutably record + transactions across wide networks of computer systems. Many blockchains + are open to forensic analysis which can lead to re-identification of + transacting individuals and the revelation of personal data, especially + when blockchain data is combined with other data. As blockchains are + decentralized or third-party networks which are not controlled or + operated by Ink Ltd, we are not able to erase, modify, or alter personal + data on such networks. +
+ + + 14. Data Protection Authorities + +
+ If you are not satisfied with our response to your complaint, you have + the right to submit a complaint to a competent data protection + authority. Examples of relevant data protection authorities are listed + below: +
+
+ For residents of Australia:
- If this is not a feasible path for you, please  - -  through our website. + Office of the Australian Privacy Commissioner +
+ GPO Box 5218, +
+ Sydney, NSW 2001, Australia +
+
- - - 12. Changes to this privacy notice - + For residents of Bermuda:
- Our privacy notice is reviewed regularly in light of new regulations, - technologies, and any changes to our business operations. Any personal - data we process will be governed by our most recent privacy notice. We - will update the “Last updated” date accordingly at the beginning of - this privacy notice. Please review this privacy notice from time to - time. We will announce any material changes to this privacy notice on - our website. + The Office of the Privacy Commissioner +
+ 4th Floor Maxwell Roberts Building +
+ 1 Church Street +
+ Hamilton, HM11 +
+ Bermuda +
+ 1-441-543-7748 +
+
- - - 13. Privacy when using digital assets and blockchains - + For residents of Canada:
- Your use of digital assets may be recorded on a public blockchain. - Public blockchains are distributed ledgers, intended to immutably - record transactions across wide networks of computer systems. Many - blockchains are open to forensic analysis which can lead to - re-identification of transacting individuals and the revelation of - personal data, especially when blockchain data is combined with other - data. As blockchains are decentralized or third-party networks which - are not controlled or operated by Ink Ltd, we are not able to erase, - modify, or alter personal data on such networks. + Office of the Privacy Commissioner of Canada +
+ 30, Victoria Street +
+ Gatineau, QC K1A 1H3, Canada +
+
- - - 14. Data Protection Authorities - + For residents of the United Kingdom:
- If you are not satisfied with our response to your complaint, you have - the right to submit a complaint to a competent data protection - authority. Examples of relevant data protection authorities are listed - below: + The Information Commissioner's Office +
+ Wycliffe House, Water Ln +
+ Wilmslow SK9 5AF, UK +
+
+ For residents of the European Economic Area:
- For residents of Australia: -
- Office of the Australian Privacy Commissioner -
- GPO Box 5218, -
- Sydney, NSW 2001, Australia -
-
-
- For residents of Bermuda: -
- The Office of the Privacy Commissioner -
- 4th Floor Maxwell Roberts Building -
- 1 Church Street -
- Hamilton, HM11 -
- Bermuda -
- 1-441-543-7748 -
-
-
- For residents of Canada: -
- Office of the Privacy Commissioner of Canada -
- 30, Victoria Street -
- Gatineau, QC K1A 1H3, Canada -
-
-
- For residents of the United Kingdom: -
- The Information Commissioner's Office -
- Wycliffe House, Water Ln -
- Wilmslow SK9 5AF, UK -
-
-
- For residents of the European Economic Area: -
- You may complain to your local supervisory authority or to our lead - supervisory authority the Irish Data Protection Commission: -
-
- Data Protection Commission -
- 21 Fitzwilliam Square South -
- Dublin 2
- D02 RD28 -
- Ireland -
-
-
+ You may complain to your local supervisory authority or to our lead + supervisory authority the Irish Data Protection Commission: +
+
+ Data Protection Commission +
+ 21 Fitzwilliam Square South +
+ Dublin 2
+ D02 RD28 +
+ Ireland +
+
diff --git a/src/app/[locale]/(info)/privacy/privacy-before-mainnet.tsx b/src/app/[locale]/(info)/privacy/privacy-before-mainnet.tsx index 8ca4f9b..32663bc 100644 --- a/src/app/[locale]/(info)/privacy/privacy-before-mainnet.tsx +++ b/src/app/[locale]/(info)/privacy/privacy-before-mainnet.tsx @@ -1,681 +1,667 @@ import { ColoredText } from "@/components/ColoredText"; import { ContactUsPrivacyButton } from "@/components/ContactUsPrivacyButton"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; export default function PrivacyBeforeMainnet() { return ( <> -
-
- - Ink Privacy Notice - -
Last Updated: Oct 24, 2024
-
- Welcome to the Ink privacy notice. We appreciate your trust and take - your privacy seriously. Please read on to understand how we may - collect, use, disclose and safeguard your personal data. -
- - - 1. Definitions and scope - -
- 1.1 “Application and device information” includes information about - your operating system, the browser type, version and plugins - you're using, the network you connect to, your IP address, - derived location information, and marketing identifiers. -
- -
- 1.1 “Blockchain data” means publicly available blockchain data, - including transaction amounts, wallet addresses, timestamps of - transactions or events, transaction IDs and digital signatures. -
- -
- 1.1 “Child” means a person under the age of 18, collectively - “Children”. -
- -
- 1.1 “Kraken group companies” refers collectively to Payward, Inc. - and its subsidiaries, including the entities doing business as - Kraken and Kraken Wallet. -
- -
- 1.1 “Ink” means the Ethereum L2 Blockchain provided by Ink Ltd, and - includes the Ink Testnet. -
- -
- 1.1 “Services” means this Ink website, Ink and any other - applications, tools and features we operate. -
- -
- 1.1 Wallet address means a public blockchain wallet address. -
- -
1.1 “We”, “us” and “our” means Ink Ltd.
- -
- 1.1 “You” and “your” means the users and developers of our services, - and also, as applicable, “users” and “developers”. -
- -
- Please note that this privacy notice describes how we process and - protect your personal data when you use our services, it does not - apply to any processing which we carry out as a processor on behalf - of users and developers who explore and use Ink. As we are not - responsible for and do not control websites, applications, or - services operated by third parties, including those that allow you - to interact with our services, we encourage you to review their - privacy notices separately. -
- - - 2. Information we collect - - -
- We collect the following personal data when providing the services: -
- -
- Information you provide -
    -
  • Your wallet address
  • - -
  • Blockchain data
  • - -
  • - Basic user / developer information shared when signing up to - receive marketing communications including name and contact - information -
  • - -
  • - Any user / developer submitted information provided through a - form, for example a feedback, survey, or bug report form -
  • - -
  • - Any information exchanged for user / developer support purposes -
  • -
-
- -
- Information collected automatically -
    -
  • Application and device information
  • -
-
- -
- Information obtained from third parties and public sources -
    -
  • - Blockchain data: We may collect blockchain data from public - sources, for example by using blockchain explorers. -
  • - -
  • - Analytics information: We may collect information about your - website usage and interactions from third party analytics - providers and advertising providers. This includes device - information, marketing identifiers, browser fingerprint, device - information, and IP address. -
  • - -
  • - Error tracking information: We collect error tracking - information from third party service providers to provide - automated error monitoring and error management for the - services. This improves the services and allows users and - developers to more effectively and consistently interact with - the services. -
  • -
-
- -
- Information collected at events - -
    -
  • - If we host in person events, we may film, photograph or record - parts of the event for promotional purposes. For example, we may - film a presenter speaking to an audience that incidentally - captures some members of that audience. Please speak to staff at - the venue if you would like further information. -
  • -
-
- - - 3. How we use your personal data - -
- We may use your personal data for the following purposes or as - otherwise described at the point of collection. To the extent - legitimate interest or performance of a contract is not a recognized - legal justification in your jurisdiction, we rely on consent - (express or implied, as appropriate) where consent is required. -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Why we process your personal data - - Information used - - Legal justification -
- To provide our services to you in accordance with our  - - Terms of Service - - - Wallet address, blockchain data - - Contractual necessity -
- To promote the safety, security and integrity of our - services - - Name and contact information, information from analytics - providers - - Contractual necessity -
- To troubleshoot the services and manage any errors arising - in relation to the services - - Error tracking information - - Legitimate interests -
- To send you surveys - - Name and contact information - - Legitimate interests -
- To provide you with technical support - - Questions and responses submitted by users and developers - for support - - Legitimate interests -
- To promote and market our business and events - - Live event recordings and photos - - Legitimate interests -
- To send you marketing communications - - Name and contact information - - Consent -
-
-
+ + Ink Privacy Notice + +
Last Updated: Oct 24, 2024
+
+ Welcome to the Ink privacy notice. We appreciate your trust and take + your privacy seriously. Please read on to understand how we may collect, + use, disclose and safeguard your personal data. +
- - 4. Disclosure of your personal data - + + 1. Definitions and scope + +
+ 1.1 “Application and device information” includes information about your + operating system, the browser type, version and plugins you're + using, the network you connect to, your IP address, derived location + information, and marketing identifiers. +
-
- As part of processing your personal data for the purposes set out - above, we may disclose your personal data to Kraken group companies - and to third parties. For example, we may disclose your personal data - for business or other legitimate purposes to our service providers and - business partners, such as specialist advisors who have been - contracted to provide us with administrative, financial, legal, tax, - compliance, insurance, IT, debt-recovery, analytics, research or other - services. -
+
+ 1.1 “Blockchain data” means publicly available blockchain data, + including transaction amounts, wallet addresses, timestamps of + transactions or events, transaction IDs and digital signatures. +
-
- If we disclose your personal data to service providers and business - partners, in order to perform the services requested by clients or to - comply with our legal and regulatory obligations, such providers and - partners may store your personal data within their own systems. We - require them to protect the confidentiality of this personal data, and - comply with all relevant privacy and data protection laws. -
+
+ 1.1 “Child” means a person under the age of 18, collectively “Children”. +
-
- We may also disclose personal data when it is compelled by law, for - example to a government agency as a result of a valid court order. We - may also disclose your data in the event of a prospective merger, - acquisition, or sale of all or part of our business or assets. -
+
+ 1.1 “Kraken group companies” refers collectively to Payward, Inc. and + its subsidiaries, including the entities doing business as Kraken and + Kraken Wallet. +
- - 5. How long we retain your personal data - +
+ 1.1 “Ink” means the Ethereum L2 Blockchain provided by Ink Ltd, and + includes the Ink Testnet. +
-
- When personal data is no longer necessary for the purposes for which - it may lawfully be processed, we will remove any details that will - identify you, or we will securely destroy the relevant records. -
+
+ 1.1 “Services” means this Ink website, Ink and any other applications, + tools and features we operate. +
-
- We may need to maintain records for a significant period of time after - you cease being our client for legal or regulatory reasons, for - example when we need to retain information to help manage a dispute or - legal claim. -
+
1.1 Wallet address means a public blockchain wallet address.
- - 6. Children's personal data - +
1.1 “We”, “us” and “our” means Ink Ltd.
-
- Our products and services are not directed to children and we do not - knowingly collect personal data from children. If we learn that we - have inadvertently processed personal data from a child, we will take - legally permissible measures to remove that data from our records. -
+
+ 1.1 “You” and “your” means the users and developers of our services, and + also, as applicable, “users” and “developers”. +
-
- We will require the child user to close his or her account and will - not allow the use of our products and services. -
+
+ Please note that this privacy notice describes how we process and + protect your personal data when you use our services, it does not apply + to any processing which we carry out as a processor on behalf of users + and developers who explore and use Ink. As we are not responsible for + and do not control websites, applications, or services operated by third + parties, including those that allow you to interact with our services, + we encourage you to review their privacy notices separately. +
- - 7. Where we store your personal data - + + 2. Information we collect + -
- Our operations are supported by a network of computers, servers, other - infrastructure and information technology, and third-party service - providers. -
+
+ We collect the following personal data when providing the services: +
-
- We and our third-party service providers and business partners store - and process your personal data in the European Union, Japan, - Australia, the United Kingdom, the United States of America and - elsewhere in the world. Courts, law enforcement and security agencies - of these jurisdictions may be able to use legal processes to access - your personal data. -
+
+ Information you provide +
    +
  • Your wallet address
  • - - 8. For UK & EEA clients: Transfers of personal data outside of the - European Economic Area (EEA) and the United Kingdom (UK) - +
  • Blockchain data
  • -
    - We may transfer your personal data outside the EEA and UK to other - Kraken group companies, service providers and business partners. - Transfers outside of the EEA or the UK (as appropriate) are done in - accordance with lawful transfer mechanisms. -
    +
  • + Basic user / developer information shared when signing up to receive + marketing communications including name and contact information +
  • -
    - If personal data is transferred to a country which has been found by - the European Commission to have an essentially equivalent standard of - data protection to the EEA, then we may rely on an 'adequacy - decision' to transfer that personal data. See  - - here - -  for a list of countries with adequacy decisions. If personal - data is transferred from the EEA or UK to the US, we may rely on - - Standard Contractual Clauses - - . -
    +
  • + Any user / developer submitted information provided through a form, + for example a feedback, survey, or bug report form +
  • - - 9. Cookies - -
    - When you use our products and services or visit our websites, we may - place tiny data files called cookies, flash cookies, pixel tags, or - other tracking tools (herein, “cookies”) on your computer or other - devices used when engaging with us. We use cookies to help us - recognize you as a user or developer, collect information about your - use of our products and services, to better customize our services and - content for you, and to collect information about your computer or - other access devices to ensure our compliance with our U.S. Bank - Secrecy Act, fraud, security, sanctions and AML obligations. -
    +
  • + Any information exchanged for user / developer support purposes +
  • +
+
+ +
+ Information collected automatically +
    +
  • Application and device information
  • +
+
+ +
+ Information obtained from third parties and public sources +
    +
  • + Blockchain data: We may collect blockchain data from public sources, + for example by using blockchain explorers. +
  • + +
  • + Analytics information: We may collect information about your website + usage and interactions from third party analytics providers and + advertising providers. This includes device information, marketing + identifiers, browser fingerprint, device information, and IP + address. +
  • + +
  • + Error tracking information: We collect error tracking information + from third party service providers to provide automated error + monitoring and error management for the services. This improves the + services and allows users and developers to more effectively and + consistently interact with the services. +
  • +
+
+ +
+ Information collected at events + +
    +
  • + If we host in person events, we may film, photograph or record parts + of the event for promotional purposes. For example, we may film a + presenter speaking to an audience that incidentally captures some + members of that audience. Please speak to staff at the venue if you + would like further information. +
  • +
+
+ + + 3. How we use your personal data + +
+ We may use your personal data for the following purposes or as otherwise + described at the point of collection. To the extent legitimate interest + or performance of a contract is not a recognized legal justification in + your jurisdiction, we rely on consent (express or implied, as + appropriate) where consent is required. +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Why we process your personal data + + Information used + + Legal justification +
+ To provide our services to you in accordance with our  + + Terms of Service + + + Wallet address, blockchain data + + Contractual necessity +
+ To promote the safety, security and integrity of our services + + Name and contact information, information from analytics + providers + + Contractual necessity +
+ To troubleshoot the services and manage any errors arising in + relation to the services + + Error tracking information + + Legitimate interests +
+ To send you surveys + + Name and contact information + + Legitimate interests +
+ To provide you with technical support + + Questions and responses submitted by users and developers for + support + + Legitimate interests +
+ To promote and market our business and events + + Live event recordings and photos + + Legitimate interests +
+ To send you marketing communications + + Name and contact information + + Consent +
+
+ + + 4. Disclosure of your personal data + + +
+ As part of processing your personal data for the purposes set out above, + we may disclose your personal data to Kraken group companies and to + third parties. For example, we may disclose your personal data for + business or other legitimate purposes to our service providers and + business partners, such as specialist advisors who have been contracted + to provide us with administrative, financial, legal, tax, compliance, + insurance, IT, debt-recovery, analytics, research or other services. +
+ +
+ If we disclose your personal data to service providers and business + partners, in order to perform the services requested by clients or to + comply with our legal and regulatory obligations, such providers and + partners may store your personal data within their own systems. We + require them to protect the confidentiality of this personal data, and + comply with all relevant privacy and data protection laws. +
+ +
+ We may also disclose personal data when it is compelled by law, for + example to a government agency as a result of a valid court order. We + may also disclose your data in the event of a prospective merger, + acquisition, or sale of all or part of our business or assets. +
- - 10. Your rights regarding your personal data - + + 5. How long we retain your personal data + + +
+ When personal data is no longer necessary for the purposes for which it + may lawfully be processed, we will remove any details that will identify + you, or we will securely destroy the relevant records. +
+ +
+ We may need to maintain records for a significant period of time after + you cease being our client for legal or regulatory reasons, for example + when we need to retain information to help manage a dispute or legal + claim. +
+ + + 6. Children's personal data + + +
+ Our products and services are not directed to children and we do not + knowingly collect personal data from children. If we learn that we have + inadvertently processed personal data from a child, we will take legally + permissible measures to remove that data from our records. +
+ +
+ We will require the child user to close his or her account and will not + allow the use of our products and services. +
+ + + 7. Where we store your personal data + + +
+ Our operations are supported by a network of computers, servers, other + infrastructure and information technology, and third-party service + providers. +
+ +
+ We and our third-party service providers and business partners store and + process your personal data in the European Union, Japan, Australia, the + United Kingdom, the United States of America and elsewhere in the world. + Courts, law enforcement and security agencies of these jurisdictions may + be able to use legal processes to access your personal data. +
+ + + 8. For UK & EEA clients: Transfers of personal data outside of the + European Economic Area (EEA) and the United Kingdom (UK) + + +
+ We may transfer your personal data outside the EEA and UK to other + Kraken group companies, service providers and business partners. + Transfers outside of the EEA or the UK (as appropriate) are done in + accordance with lawful transfer mechanisms. +
+ +
+ If personal data is transferred to a country which has been found by the + European Commission to have an essentially equivalent standard of data + protection to the EEA, then we may rely on an 'adequacy + decision' to transfer that personal data. See  + + here + +  for a list of countries with adequacy decisions. If personal data + is transferred from the EEA or UK to the US, we may rely on + + Standard Contractual Clauses + + . +
+ + + 9. Cookies + +
+ When you use our products and services or visit our websites, we may + place tiny data files called cookies, flash cookies, pixel tags, or + other tracking tools (herein, “cookies”) on your computer or other + devices used when engaging with us. We use cookies to help us recognize + you as a user or developer, collect information about your use of our + products and services, to better customize our services and content for + you, and to collect information about your computer or other access + devices to ensure our compliance with our U.S. Bank Secrecy Act, fraud, + security, sanctions and AML obligations. +
+ + + 10. Your rights regarding your personal data + +
+ The rights that are available to you in relation to the personal data we + process are outlined below. You may request to exercise these rights + subject to any limitations provided for under applicable data protection + laws. +
+
+ Access
- The rights that are available to you in relation to the personal data - we process are outlined below. You may request to exercise these - rights subject to any limitations provided for under applicable data - protection laws. + You can ask us to confirm whether we are processing your personal data + and, if so, what information we process. Should you wish to obtain a + copy of that information, please  + +  .
+
+
+ Rectification
- Access -
- You can ask us to confirm whether we are processing your personal - data and, if so, what information we process. Should you wish to - obtain a copy of that information, please  - -  . -
+ It is important to us that your personal data is up to date. We will + take all reasonable steps to make sure that your personal data remains + accurate, complete and up-to-date. Please inform us if your personal + data changes. If the personal data we hold about you is inaccurate or + incomplete, you are entitled to have it rectified. If we have + disclosed your personal data to others, we will let them know about + the rectification where possible. If you ask us, and if possible and + lawful to do so, we will also inform you with whom we have shared your + personal data.
- Rectification -
- It is important to us that your personal data is up to date. We will - take all reasonable steps to make sure that your personal data - remains accurate, complete and up-to-date. Please inform us if your - personal data changes. If the personal data we hold about you is - inaccurate or incomplete, you are entitled to have it rectified. If - we have disclosed your personal data to others, we will let them - know about the rectification where possible. If you ask us, and if - possible and lawful to do so, we will also inform you with whom we - have shared your personal data. -
-
- You may inform us at any time if your personal details have changed - by  - . Subject to - applicable law, we will update your personal data in accordance with - your instructions. To proceed with such requests, in some cases we - may need supporting documents from you as proof, i.e. personal data - that we are required to keep for regulatory or other legal purposes. -
+ You may inform us at any time if your personal details have changed + by  + . Subject to applicable + law, we will update your personal data in accordance with your + instructions. To proceed with such requests, in some cases we may need + supporting documents from you as proof, i.e. personal data that we are + required to keep for regulatory or other legal purposes.
+
+
+ Erasure
- Erasure -
- You can ask us to delete or remove your personal data in certain - circumstances. Such requests may be subject to any retention limits - we are required to comply with in accordance with applicable laws - and regulations. If we have disclosed your personal data to others, - we will let them know about the erasure request where possible. If - you ask us, and if possible and lawful to do so, we will also inform - you with whom we have shared your personal data. -
+ You can ask us to delete or remove your personal data in certain + circumstances. Such requests may be subject to any retention limits we + are required to comply with in accordance with applicable laws and + regulations. If we have disclosed your personal data to others, we + will let them know about the erasure request where possible. If you + ask us, and if possible and lawful to do so, we will also inform you + with whom we have shared your personal data.
+
+
+ Processing restrictions
- Processing restrictions -
- You can ask us to block or suppress the processing of your personal - data in certain circumstances such as if you contest the accuracy of - that personal data or object to us processing it. It will not stop - us from storing your personal data. If we have disclosed your - personal data to others, we will let them know about the restriction - of processing if possible. If you ask us, and if possible and lawful - to do so, we will also inform you with whom we have shared your - personal data. -
+ You can ask us to block or suppress the processing of your personal + data in certain circumstances such as if you contest the accuracy of + that personal data or object to us processing it. It will not stop us + from storing your personal data. If we have disclosed your personal + data to others, we will let them know about the restriction of + processing if possible. If you ask us, and if possible and lawful to + do so, we will also inform you with whom we have shared your personal + data.
+
+
+ Data portability
- Data portability -
- In certain circumstances you may have the right to obtain personal - data you have provided to us, in a structured, commonly used and - machine-readable format, and to re-use it elsewhere or ask us to - transfer this to a third party of your choice, where technically - feasible. -
+ In certain circumstances you may have the right to obtain personal + data you have provided to us, in a structured, commonly used and + machine-readable format, and to re-use it elsewhere or ask us to + transfer this to a third party of your choice, where technically + feasible.
+
+
+ Objection
- Objection -
- You can ask us to stop processing your personal data, and we will do - so, if we are: -
- -
    -
  • - Relying on our own or someone else's legitimate interests to - process your personal data except if we can demonstrate compelling - legal grounds for the processing or for the establishment, - exercise or defence of legal claims; -
  • -
  • Processing your personal data for direct marketing; or
  • -
  • - Processing your personal data for research unless we reasonably - believe such processing is necessary for the performance of a task - carried out for reasons of public interest (such as by a - regulatory or enforcement agency). -
  • -
+ You can ask us to stop processing your personal data, and we will do + so, if we are:
+ +
    +
  • + Relying on our own or someone else's legitimate interests to + process your personal data except if we can demonstrate compelling + legal grounds for the processing or for the establishment, exercise + or defence of legal claims; +
  • +
  • Processing your personal data for direct marketing; or
  • +
  • + Processing your personal data for research unless we reasonably + believe such processing is necessary for the performance of a task + carried out for reasons of public interest (such as by a regulatory + or enforcement agency). +
  • +
+
+
+ Automated decision-making and profiling
- Automated decision-making and profiling -
- If we have made a decision about you based solely on an automated - process (e.g. through automatic profiling) that affects your ability - to access our services or has another significant effect on you, you - can request not to be subject to such a decision unless we can - demonstrate to you that such decision is necessary for entering - into, or the performance of, a contract between you and us. Even if - a decision is necessary for entering into or performing a contract, - you may contest the decision and require human intervention. We may - not be able to offer our products or services to you, if we agree to - such a request (i.e. end our relationship with you). -
+ If we have made a decision about you based solely on an automated + process (e.g. through automatic profiling) that affects your ability + to access our services or has another significant effect on you, you + can request not to be subject to such a decision unless we can + demonstrate to you that such decision is necessary for entering into, + or the performance of, a contract between you and us. Even if a + decision is necessary for entering into or performing a contract, you + may contest the decision and require human intervention. We may not be + able to offer our products or services to you, if we agree to such a + request (i.e. end our relationship with you).
+
+
+ Complaints
- Complaints -
- You have the right to complain to a competent data protection - authority. Contact details are set out in Section 13 below. We ask - that you first contact us to give us an opportunity to address any - concerns. -
+ You have the right to complain to a competent data protection + authority. Contact details are set out in Section 13 below. We ask + that you first contact us to give us an opportunity to address any + concerns.
+
+
+ Withdraw consent
- Withdraw consent -
- You have the right to withdraw consent to processing based on - consent at any time. Note this will not affect the lawfulness of - processing based on consent prior to the withdrawal of consent or on - grounds where consent is not required. -
+ You have the right to withdraw consent to processing based on consent + at any time. Note this will not affect the lawfulness of processing + based on consent prior to the withdrawal of consent or on grounds + where consent is not required.
+
- - 11. Contact information - -
- Any questions, complaints, comments and requests regarding information - in this privacy notice are welcome and should be addressed to our - support team, who can triage questions to our Data Protection Officer - as appropriate. -
-
- The fastest and easiest way to connect with our support is through our - Ink Discord community  - - here - - . -
+ + 11. Contact information + +
+ Any questions, complaints, comments and requests regarding information + in this privacy notice are welcome and should be addressed to our + support team, who can triage questions to our Data Protection Officer as + appropriate. +
+
+ The fastest and easiest way to connect with our support is through our + Ink Discord community  + + here + + . +
+
+ If this is not a feasible path for you, please  + +  through our website. +
+ + + 12. Changes to this privacy notice + +
+ Our privacy notice is reviewed regularly in light of new regulations, + technologies, and any changes to our business operations. Any personal + data we process will be governed by our most recent privacy notice. We + will update the “Last updated” date accordingly at the beginning of this + privacy notice. Please review this privacy notice from time to time. We + will announce any material changes to this privacy notice on our + website. +
+ + + 13. Privacy when using digital assets and blockchains + +
+ Your use of digital assets may be recorded on a public blockchain. + Public blockchains are distributed ledgers, intended to immutably record + transactions across wide networks of computer systems. Many blockchains + are open to forensic analysis which can lead to re-identification of + transacting individuals and the revelation of personal data, especially + when blockchain data is combined with other data. As blockchains are + decentralized or third-party networks which are not controlled or + operated by Ink Ltd, we are not able to erase, modify, or alter personal + data on such networks. +
+ + + 14. Data Protection Authorities + +
+ If you are not satisfied with our response to your complaint, you have + the right to submit a complaint to a competent data protection + authority. Examples of relevant data protection authorities are listed + below: +
+
+ For residents of Australia:
- If this is not a feasible path for you, please  - -  through our website. + Office of the Australian Privacy Commissioner +
+ GPO Box 5218, +
+ Sydney, NSW 2001, Australia +
+
- - - 12. Changes to this privacy notice - + For residents of Bermuda:
- Our privacy notice is reviewed regularly in light of new regulations, - technologies, and any changes to our business operations. Any personal - data we process will be governed by our most recent privacy notice. We - will update the “Last updated” date accordingly at the beginning of - this privacy notice. Please review this privacy notice from time to - time. We will announce any material changes to this privacy notice on - our website. + The Office of the Privacy Commissioner +
+ 4th Floor Maxwell Roberts Building +
+ 1 Church Street +
+ Hamilton, HM11 +
+ Bermuda +
+ 1-441-543-7748 +
+
- - - 13. Privacy when using digital assets and blockchains - + For residents of Canada:
- Your use of digital assets may be recorded on a public blockchain. - Public blockchains are distributed ledgers, intended to immutably - record transactions across wide networks of computer systems. Many - blockchains are open to forensic analysis which can lead to - re-identification of transacting individuals and the revelation of - personal data, especially when blockchain data is combined with other - data. As blockchains are decentralized or third-party networks which - are not controlled or operated by Ink Ltd, we are not able to erase, - modify, or alter personal data on such networks. + Office of the Privacy Commissioner of Canada +
+ 30, Victoria Street +
+ Gatineau, QC K1A 1H3, Canada +
+
- - - 14. Data Protection Authorities - + For residents of the United Kingdom:
- If you are not satisfied with our response to your complaint, you have - the right to submit a complaint to a competent data protection - authority. Examples of relevant data protection authorities are listed - below: + The Information Commissioner's Office +
+ Wycliffe House, Water Ln +
+ Wilmslow SK9 5AF, UK +
+
+ For residents of the European Economic Area:
- For residents of Australia: -
- Office of the Australian Privacy Commissioner -
- GPO Box 5218, -
- Sydney, NSW 2001, Australia -
-
-
- For residents of Bermuda: -
- The Office of the Privacy Commissioner -
- 4th Floor Maxwell Roberts Building -
- 1 Church Street -
- Hamilton, HM11 -
- Bermuda -
- 1-441-543-7748 -
-
-
- For residents of Canada: -
- Office of the Privacy Commissioner of Canada -
- 30, Victoria Street -
- Gatineau, QC K1A 1H3, Canada -
-
-
- For residents of the United Kingdom: -
- The Information Commissioner's Office -
- Wycliffe House, Water Ln -
- Wilmslow SK9 5AF, UK -
-
-
- For residents of the European Economic Area: -
- You may complain to your local supervisory authority or to our lead - supervisory authority the Irish Data Protection Commission: -
-
- Data Protection Commission -
- 21 Fitzwilliam Square South -
- Dublin 2
- D02 RD28 -
- Ireland -
-
-
+ You may complain to your local supervisory authority or to our lead + supervisory authority the Irish Data Protection Commission: +
+
+ Data Protection Commission +
+ 21 Fitzwilliam Square South +
+ Dublin 2
+ D02 RD28 +
+ Ireland +
+
diff --git a/src/app/[locale]/(info)/terms/terms-after-mainnet.tsx b/src/app/[locale]/(info)/terms/terms-after-mainnet.tsx index fd6d7c0..5618c4b 100644 --- a/src/app/[locale]/(info)/terms/terms-after-mainnet.tsx +++ b/src/app/[locale]/(info)/terms/terms-after-mainnet.tsx @@ -1,977 +1,937 @@ import { ColoredText } from "@/components/ColoredText"; import { ContactUsPrivacyButton } from "@/components/ContactUsPrivacyButton"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; export default function TermsAfterMainnet() { return ( <> -
-
- - Terms of Service - -
- - The following is a summary of the Terms of Service provided solely - for your convenience and informational purposes. You must read the - complete Terms of Service below for the legally binding terms. - -
-
- Summary of Terms of Service -
-
- This summary provides an overview of our Terms of Service that apply - to your use of our website and other services. This summary - isn't legally binding and is purely for informational purposes. - While we hope this summary section is helpful, please read the - complete Terms of Service below for the legally binding terms. -
-
    -
  • - Eligibility. The Terms of Service sets forth certain - criteria for your eligibility to use our services. -
  • -
  • - Ink, Our Services, and Third Party Services. Below, - you'll find more information about our services, Ink, and - Third Party Services. For clarity, Ink and Third Party Services - are not part of our services, and as such we have no obligations - or liability to you in connection with your use of Ink or Third - Party Services. In addition, we explain that there are a number of - ways in which you are prohibited from using our services, some of - which are covered below. -
  • -
  • - Availability of Services. Certain services may not be - available or may only be available in certain jurisdictions. We - also may stop providing certain services. -
  • -
  • - Content and Feedback. You give us the right to use any - content you provide, and we will own any feedback, suggestions, or - ideas you provide related to our website or services. -
  • -
  • - Restrictions. There are also a number of ways in which you - are prohibited from using our website or services, some of which - are covered below. -
  • -
  • - Changes. The Terms of Service discuss changes we can make - to our website, services, or the terms themselves, including how - we can suspend or terminate the website or services. Changes to - the Terms of Service, our services, or website may be made at any - time, with or without notice. Continued use of our services and - website is your consent to the Terms of Service and any changes to - them. -
  • -
  • - Risks and Liability. There are risks associated with using - our services, Ink, or Third Party Services. The Terms of Service - also cover your responsibility for taking on risk, limit our - liability to you, and limit the remedies you may have against us - and how you may seek those remedies. -
  • -
  • - Dispute Resolution. We hope to avoid disputes, but if there - is a dispute, you are required to arbitrate disputes with us and - the manner in which you can seek relief may be limited. -
  • -
-
- - The following is the binding and enforceable Terms of Service. - -
-
- Terms of Service -
-
- Last Updated: December 16, 2024 -
-
- Please read these Terms of Service (“Terms”) carefully, as - they are binding and govern your use of our website,{" "} - - https://inkonchain.com/ - {" "} - (the “Website”), Interface, Testnet, Kraken Sequencer and any - content, tools, documentation, features and functionality offered on - or through our Website (collectively, the “Services”). They - also govern your use of the Kraken Sequencer. By accessing or using - our Services, or by submitting any content, you agree to these - Terms. -
-
- These Terms may change at any time and without notice, including - updates to (1) reflect changes to our Services; (2) reflect the - addition of new services, features, technologies, or offers; (3) - address legal, regulatory, or security developments; or (4) prevent - harm to our Services or to those using our Services. These Terms can - only be modified in writing, and any change will be effective as of - the Last Updated date set forth above. You should frequently check - these Terms for updates. If you continue to access or use our - Services, after we change these Terms, you agree to all our changes. -
-
- These Terms are a legally binding agreement between “you” (an - individual, or an entity acting through an authorized individual) - and Ink Foundation, C/O CO Services Cayman Limited, PO Box 10008 - Willow House Cricket Square, Grand Cayman, Cayman Islands KY1-1001 - (“we”, “us”, or “our - ”). -
-
- ARBITRATION NOTICE: THESE TERMS CONTAIN AN ARBITRATION AGREEMENT AND - A CLASS ACTION WAIVER. BY AGREEING TO THESE TERMS, YOU AGREE (A) TO - RESOLVE ALL DISPUTES (WITH LIMITED EXCEPTION) RELATED TO OUR - SERVICES AND/OR PRODUCTS OR THE KRAKEN SEQUENCER THROUGH BINDING - INDIVIDUAL ARBITRATION, WHICH MEANS THAT YOU WAIVE ANY RIGHT TO HAVE - THOSE DISPUTES DECIDED BY A JUDGE OR JURY, AND (B) TO WAIVE YOUR - RIGHT TO PARTICIPATE IN CLASS ACTIONS, CLASS ARBITRATIONS, OR - REPRESENTATIVE ACTIONS, AS SET FORTH BELOW. YOU HAVE THE RIGHT TO - OPT-OUT OF THE ARBITRATION AGREEMENT AND THE CLASS ACTION WAIVER AS - EXPLAINED BELOW. -
-
- To make these Terms easier to read, we have organized them as - follows: -
-
    -
  • - Terms of Service -
      -
    1. Eligibility
    2. -
    3. Ink
    4. -
    5. Our Services
    6. -
    7. Third Party Services
    8. -
    9. Content; Feedback
    10. -
    11. Restrictions
    12. -
    13. Risks
    14. -
    15. Disclaimer of Warranties
    16. -
    17. Limitations on Liability
    18. -
    19. Indemnification
    20. -
    21. - Dispute Resolution by Binding Arbitration; Class Action Waiver -
    22. -
    23. Governing Law
    24. -
    25. Suspension; Termination; Discontinuance
    26. -
    27. Personal Data
    28. -
    29. Notices
    30. -
    31. General
    32. -
    -
  • -
- 1. Eligibility -
- To use any of our Services or the Kraken Sequencer, you must meet at - least the following conditions (“Conditions”): -
-
    -
  • - if you are an individual, be old enough to legally form a binding - contract in your jurisdiction (in the USA, that's 18 years - old, but it may be different where you live), -
  • -
  • - if you are an entity, be duly organized and validly existing under - the applicable laws of the jurisdiction of your organization, -
  • -
  • - have full power and authority to enter into these Terms without - violating any other agreement you have made, -
  • -
  • not have been restricted from using our services,
  • -
  • - if you are an individual, not be located in, under the control of, - or resident in—or, if you are an entity, not be directly or - indirectly owned or controlled by any person located in, under the - control of, or organized or resident in—any sanctioned or - embargoed jurisdiction (including Crimea, Cuba, Donetsk, Iran, - Luhansk, North Korea, Russia, Belarus, and Syria), or any - jurisdiction where we may have restricted use of any services, and -
  • -
  • - if you are an individual, not be listed on—or, if you are an - entity, not listed on or be directly or indirectly owned or - controlled by any person listed on—the Office of Foreign Assets - Control of the U.S. Department of Treas.ury's Specially - Designated Nationals and Blocked Persons List (“SDN”), the - U.S. Department of Commerce's Denied Persons List, - Consolidated Non-SDN Lists available{" "} - - here - - , the United Nations (UN) Security Council Consolidated List - available{" "} - - here - - , or regional or foreign government watchlists. -
  • -
- 2. Ink -
- Ink is a layer 2 optimistic rollup protocol for the Ethereum - blockchain (“Ink”) built on open source software that we do not - control. Ink includes functionality whereby certain open source - smart contracts can receive and hold certain digital currency or - other digital assets (“Digital Assets”) from certain - supported blockchain networks such as Ethereum (“ - Supported Networks”), which are then represented on Ink (“ - Bridge Smart Contracts”). The Bridge Smart Contract can also - be used to withdraw your Digital Assets from Ink back to Supported - Networks. We do not take possession, custody, or control of any - Digital Assets on Ink or sent to its Bridge Smart Contracts. There - is a risk that the open source software, including any upgrades, - that Ink is built on may introduce bugs, viruses, Trojan horses, or - other vulnerabilities or changes to Ink that could result in a - partial or complete disruption of Ink or loss, damage, or - destruction of your Digital Assets. The Supported Networks, and the - types of Digital Assets, that are capable of functionating with Ink - and the Bridge Smart Contracts may also be subject to change at any - time. We do not control third party applications, including their - development or deployment, on Ink, or any activity or transactions - occurring on Ink.{" "} - - Therefore, you acknowledge and agree that Ink, including its - Bridge Smart Contracts, are not part of our Services, and we have - no obligations or liability to you in relation to your use of Ink - or its Bridge Smart Contracts, and you use Ink and its Bridge - Smart Contracts at your own risk. - -
- 3. Our Services -
- Interface -
-
- Our Website includes a user interface (the “Interface”) that - is intended to allow you to more easily interact with certain - functionalities of Ink, such as the Bridge Smart Contracts. Other - third parties may deploy their own applications or interfaces to - interface with Bridge Smart Contracts, and those other applications - or interfaces are not part of our Services. -
-
- Testnet -
-
- We operate the Ink testnet (the “Testnet”) as a testing - environment that is intended to reproduce the functionality and - experience of Ink. The Testnet is intended to allow you to develop - applications for Ink and otherwise improve the stability, security, - and design of Ink and applications built for Ink. Any Testnet tokens - are for testing purposes on the Testnet, have no value, and are not - redeemable or convertible for any other token or item of value. We - may change, upgrade, discontinue, suspend, or terminate the Testnet - at any time and without notice. -
- 4. Third Party Services -
- When using our Services or Ink (including Bridge Smart Contracts), - you may have the opportunity to use or interact with third party - services. We do not verify, approve, monitor, control or endorse any - third-party services and are not liable to you for third-party - services or third-party content displayed or otherwise made - available on the Services. We are not responsible for, and make no - representation as to, any third-party content or services. Your use - of third-party content or services may be subject to additional - terms and conditions with third-parties, and we are not part of - those terms or conditions. You may also incur third-party fees, such - as fees associated with third-party services, or other fees, such as - gas fees. You're solely responsible for paying all such fees. - If any third-party terms and conditions conflict with these Terms, - you agree that these Terms control. Under no circumstances shall we - incur any liability, of any kind, to you arising from or relating to - fees charged to you by third-party content or services linked to or - accessed through our Services or Ink (including Bridge Smart - Contracts). Your interactions with third-party services, including - digital wallets, are governed by their respective privacy policies. - We are not responsible for their data practices. -
-
- Kraken Continuance (“Kraken”) operates a node that receives, - records, and combines multiple transaction records from Ink into - batches, which are then settled to the Ethereum blockchain in a - specified format (the “Kraken Sequencer”). You are not - required to use the Kraken Sequencer. If you use the Kraken - Sequencer, you agree to pay any applicable gas fees, which may be - modified at any time. Kraken will attempt to provide accurate gas - fee information in connection with your use of the Kraken Sequencer, - but such information reflects its estimate of gas fees, which may - vary from the fees you actually pay to use the Kraken Sequencer and - interact with Ink. The Kraken Sequencer does not store, take - possession, custody, or control of your Digital Assets at any time, - except for receiving applicable gas fees. It also does not have the - ability to modify, reverse, or otherwise modify any transactions - submitted to the Ethereum blockchain. Applicable gas fees received - in connection with your use of the Kraken Sequencer may be modified - at any time. -
-
- To use certain of the Services or the Kraken Sequencer, you may need - to connect a compatible third-party digital wallet (“Wallet”) - with the Services or the Kraken Sequencer. By using a Wallet in - connection with the Services or the Kraken Sequencer, you agree that - you are using the Wallet under the terms and conditions of the - applicable third-party provider of such Wallet. Wallets are not - associated with, maintained by, or affiliated with us. We accept no - responsibility or liability to you in connection with your use of a - Wallet, and we make no representations or warranties regarding how - the Services, the Kraken Sequencer or Ink will operate or be - compatible with any specific Wallet. The private keys necessary to - access the assets held in a Wallet are not held by us. You are - solely responsible for maintaining the confidentiality of your - private keys and you are responsible for any transactions signed - with your private keys. We reserve the right, in our sole - discretion, to prohibit certain Wallet addresses from being able to - use or engage in transactions using the Services or the Kraken - Sequencer. -
- 5. Content; Feedback -
- Our Content. We or our licensors - own (1) our Services, (2) all content, materials, software, and - trademarks found on them, (3) the selection and arrangement of them, - and (4) all intellectual property rights in them (collectively, “ - Our Content”). So long as you comply with these Terms, - you're permitted to use our Services, and Our Content made - available to you as part of our Services, but only for your own - benefit. We can take away this permission at any time for any - reason. You don't have or acquire any rights to Our Content - beyond the limited, revocable permission in the previous sentence. -
-
- Your Content. You may have the - opportunity to transmit content or materials in or through our - Services (“Your Content”), excluding Personal Data as defined - in our{" "} - - Privacy Notice - - ). You grant us a perpetual, irrevocable, royalty-free, worldwide, - fully sublicensable, non-exclusive right and license to use and - exploit Your Content in any manner and for any purpose. -
-
- Feedback. You may provide us - feedback, suggestions, or ideas relating to our Services (“ - Feedback”). You represent and warrant that you have the right - to provide us any Feedback that you provide. You agree that - we'll own all Feedback, and you hereby irrevocably assign all - right, title, and interest in and to all Feedback to us. -
- 6. Restrictions -
You won't:
-
    -
  • - use Our Content to engage in, pay for, or support any illegal, - fraudulent, deceptive, or manipulative conduct, including illegal - gambling activities, money-laundering, or terrorist activities, -
  • -
  • - use Our Content in any way or for any purpose that infringes, - misappropriates, or otherwise violates any intellectual property - rights or other rights of us or any third party, or applicable - local, state, or federal law or regulation, or that is prohibited - by these Terms, -
  • -
  • - remove, delete, alter, or obscure any trademarks, specifications, - warranties, or disclaimers, or any intellectual property or - proprietary rights notices from Our Content, -
  • -
  • - use, export, reexport or transfer any of Our Content for any - purpose prohibited by U.S. or local export or import control laws - and regulations, -
  • -
  • - copy, modify, disassemble, decompile, or reverse engineer Our - Content (except to the extent such restrictions are prohibited by - applicable law), -
  • -
  • - use (except as expressly permitted in these Terms), license, - sublicense, sell, resell, transfer, assign, distribute or - otherwise commercially exploit or make available to any third - party Our Content in any way, -
  • -
  • - take any action or use Our Content in any manner that could - damage, destroy, disrupt, disable, impair, overburden, or - otherwise impede or harm in any manner Our Content, or interfere - with any other party's use of Our Content, -
  • -
  • - disrupt, interfere with, violate the security of, or attempt to - gain unauthorized access to Our Content or any computer network, -
  • -
  • - bypass, breach, avoid, remove, deactivate, impair, descramble, or - otherwise circumvent any security device, protection, or - technological measure implemented by us or any of our service - providers to protect Our Content, -
  • -
  • - use any device, software, or routine that interferes with the - function of Our Content or transmit in or through Our Content, or - use in connection with Our Content, any virus, trojan horse, worm, - backdoor, time bomb, malware, or other software or hardware - devices designed to permit unauthorized access to, or disable, - erase, or otherwise harm, any computer, systems, or software, -
  • -
  • - access or use Our Content to build or support products or services - competitive to our products or Services, -
  • -
  • - use any web scraping, web harvesting, or data extraction methods - to extract any data from Our Content, -
  • -
  • - create, use, operate, or employ any bots, robots, parsers, - spiders, scripts, programs, routines, or any other forms of - automation to engage in any activity on Our Content, -
  • -
  • - develop any third-party applications that interact with Our - Content without our prior written consent, -
  • -
  • - use or attempt to use Our Content for any person other than - yourself, -
  • -
  • - provide false, inaccurate, or misleading information in connection - with your use of or access to Our Content, -
  • -
  • - violate any applicable law or regulation in connection with your - use of or access to Our Content; or -
  • -
  • - encourage, permit, or enable any other person or entity to do any - of the foregoing. -
  • -
- 7. Risks -
- There are substantial risks associated with using our Services, Ink - (including the Bridge Smart Contracts) and any third party service - available on Ink, and you should carefully consider whether using - them is suitable for you in light of your circumstances, knowledge, - and financial resources. You may be subject to legal and regulatory - compliance obligations in connection with your use of our Services, - Ink (including Bridge Smart Contracts), and third party services - available on Ink, and you agree that you are solely responsible for - your compliance with all laws and regulations. You acknowledge and - agree that our Services, Ink (including the Bridge Smart Contracts) - and third party services available on Ink may incorporate - experimental and novel technology and that the use of such - technology involves a high degree of risk, could unexpectedly fail - or not perform as intended, and may experience cyber-attacks, - botting or other malicious activity, or other operational or - technical difficulties or vulnerabilities related to your use of our - Services, Ink (including Bridge Smart Contracts), and third party - services available on Ink. You acknowledge and agree that smart - contracts execute automatically when certain conditions are met, and - we do not have the ability to reverse a transaction recorded on a - public blockchain. You are responsible for ensuring that any details - you enter in connection with a transaction using any smart contracts - are accurate and complete. You acknowledge and agree that we cannot - control how third-party exchange platforms quote or value Digital - Assets, and we are not responsible for any losses you may incur as a - result of fluctuations in the value of Digital Assets. As such, you - acknowledge and agree that your use of our Services, Ink (including - the Bridge Smart Contracts) and any third party service available on - Ink, is at your own risk, and that we aren't liable to you for - any losses you incur arising from such risks. -
- 8. Disclaimer of Warranties -
- TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, OUR SERVICES, THE - KRAKEN SEQUENCER, AND INK ARE PROVIDED ON AN “AS IS” AND “AS - AVAILABLE” BASIS. WE (AND AS APPLICABLE KRAKEN) EXPRESSLY DISCLAIM - ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING - IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR - PURPOSE, TITLE, AND NON-INFRINGEMENT RELATING TO OUR SERVICES, THE - KRAKEN SEQUENCER, AND INK. WITHOUT LIMITING THE FOREGOING, WE (AND - AS APPLICABLE KRAKEN) DISCLAIM THAT (i) OUR SERVICES OR THE KRAKEN - SEQUENCER WILL BE AVAILABLE, ACCURATE, SECURE, USEFUL, UNINTERRUPTED - OR ERROR-FREE; (ii) DEFECTS WITH OUR SERVICES OR THE KRAKEN - SEQUENCER CAN OR WILL BE CORRECTED; (iii) THE SERVERS THAT MAKE OUR - SERVICES OR THE KRAKEN SEQUENCER AVAILABLE ARE FREE FROM VIRUSES OR - OTHER HARMFUL COMPONENTS; (iv) THE SERVICES, THE KRAKEN SEQUENCER, - OR INK WILL BE COMPATIBLE WITH ANY OTHER APPLICATION, SYSTEM, DEVICE - OR WALLET; AND (v) THAT THE SERVICES, THE KRAKEN SEQUENCER, OR INK - WILL PROTECT YOUR ASSETS FROM THEFT, HACKING, CYBER ATTACK OR OTHER - FORM OF LOSS CAUSED BY THIRD PARTY CONDUCT. WE DON'T PROVIDE - ANY UPTIME GUARANTEES, AND WE MAY DISCONTINUE MAKING OUR SERVICES OR - THE KRAKEN SEQUENCER AVAILABLE TO YOU AT ANY TIME AT OUR SOLE - DISCRETION. -
- 9. Limitations on Liability -
- TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, NEITHER WE, - KRAKEN, OR OUR RESPECTIVE DIRECTORS, MEMBERS, EMPLOYEES OR AGENTS - WILL BE LIABLE WITH RESPECT TO ANY CLAIM, WHETHER IN CONTRACT, TORT - (INCLUDING NEGLIGENCE), OR OTHERWISE, RELATED IN ANY WAY TO THESE - TERMS, OUR SERVICES, THE KRAKEN SEQUENCER, OR INK FOR (1) ANY - INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR EXEMPLARY DAMAGES, - INCLUDING DAMAGES FOR LOSS OF PROFITS, GOODWILL, USE, OR DATA AND - (2) TO THE EXTENT NOT ALREADY EXCLUDED, ANY AMOUNTS EXCEEDING $100 - UNITED STATES DOLLARS. -
- 10. Indemnification -
- You agree to defend, indemnify, and hold harmless us, Kraken, and - our respective officers, directors, members, employees, and agents, - from any claim, demand, action, damage, loss, cost, or expense - (including reasonable attorneys' fees) relating to (1) your use - of our Services and the Kraken Sequencer, (2) your violation of - these Terms, (3) your infringement, misappropriation, or violation - of the rights of any other person or entity, (4) any content, - materials, or information (in any form or medium) that you submit, - post, upload, provide, contribute, or make available (or authorize - or instruct us to do so) through the Services and the Kraken - Sequencer, and (5) any Feedback. If you're obligated to - indemnify us or Kraken, we respectively have the right to control - any action if we want and you cannot settle any action without our - consent, unless the settlement is only for money damages which you - entirely pay. -
- - 11. Dispute Resolution By Binding Arbitration; Class Action Waiver - -
- This Dispute Resolution by Binding Arbitration section is referred - to in the Terms as the "Arbitration Agreement".{" "} -
-
- - PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT - REQUIRES YOU TO ARBITRATE DISPUTES WITH US OR KRAKEN AND IT LIMITS - THE MANNER IN WHICH YOU CAN SEEK RELIEF. - -
- Informal Process First -
- We are always interested in resolving disputes amicably and - efficiently, and most concerns can be resolved quickly and to your - satisfaction by emailing user support at legal@inkonchain.com. - However, if such efforts prove unsuccessful, you may send to us, by - email, a written Notice of Dispute (“Notice”). The Notice - should be sent to legal@inkonchain.com and must (a) describe the - nature and basis of the claim or dispute and (b) set forth the - specific relief sought. If we and you do not resolve the claim or - dispute set out in the Notice within sixty (60) calendar days from - the date of receipt, we or you may commence an arbitration - proceeding. It is agreed that this dispute resolution procedure is a - condition precedent which must be satisfied before initiating - arbitration. -
- Arbitration and its Terms -
- Subject to the informal process outlined in the preceding paragraph, - you and us agree to arbitrate any dispute arising in connection with - these Terms (including questions related to their validity, - existence, or termination) or your use of the Services and the - Kraken Sequencer, except for disputes in which either party seeks - equitable and other relief for the alleged unlawful use of - copyrights, trademarks, trade names, logos, trade secrets or - patents.{" "} -
-
- The arbitration will be administered in accordance with the Rules of - the London Court of International Arbitration then in effect (the “ - LCIA Rules”). It will be conducted in English and the parties - will keep the arbitration proceedings confidential and not disclose - any information regarding the arbitration (or any underlying claim - or dispute) to any third party except as required by law. -
-
- Other than class procedures and remedies expressly prohibited by - this Arbitration Agreement, the arbitrator(s) will have the - authority to provide any remedy or relief that a court of competent - jurisdiction could award, including injunctive relief. Any decision - or award rendered by the arbitrator will be final and binding, and - may be overturned by a court only for very limited reasons. Any - judgment may be entered in any court of competent jurisdiction.{" "} -
-
- If there is any inconsistency between any term of the LCIA Rules and - any term of this Arbitration Agreement, the applicable terms of this - Arbitration Agreement will control unless the arbitrator determines - that the application of the inconsistent Arbitration Agreement terms - would not result in a fundamentally fair arbitration. The arbitrator - must also follow the provisions of these Terms as a court would. -
-
- - It is expressly agreed that any arbitration under these Terms will - take place on an individual basis – class arbitrations and class - action are not permitted. You understand that by agreeing to these - Terms, you and us are each waiving the right to trial by jury or - to participate in a class action or class arbitration. - -
- Costs of Arbitration -
- Payment of all filing, administration and arbitrator costs and - expenses will be governed by the LCIA Rules then in effect, except - that if you demonstrate that any such costs and expenses owed by you - under those rules would be prohibitively more expensive than a court - proceeding, then we will pay the amount of any such costs and - expenses that the arbitrator determines are necessary to prevent the - arbitration from being prohibitively more expensive than a court - proceeding. -
-
- Fees and costs may be awarded as provided pursuant to applicable - law. The arbitrator may make rulings and resolve disputes as to the - payment and reimbursement of fees or expenses at any time during the - proceeding and upon request from either party made within 14 days of - the arbitrator’s ruling on the merits. -
- Batch Arbitration -
- To increase the efficiency of administration and resolution of - arbitrations, you and us agree that in the event that there are - one-hundred (100) or more individual claims of a substantially - similar nature filed against us by or with the assistance of the - same law firm, group of law firms, or organizations, then within a - thirty (30) day period (or as soon as possible thereafter), the LCIA - shall (a) administer the arbitration demands in batches of - one-hundred (100) claims per batch (plus, to the extent there are - less than one-hundred (100) claims left over after the batching - described above, a final batch consisting of the remaining claims); - (b) appoint one arbitrator for each batch; and (c) provide for the - resolution of each batch as a single consolidated arbitration with - one set of filing and administrative fees due per side per batch, - one procedural calendar, one hearing (if any) in a place to be - determined by the arbitrator, and one final award (“ - Batch Arbitration”). All parties agree that claims are of a - “substantially similar nature” if they arise out of or relate to the - same event or factual scenario and raise the same or similar legal - issues and seek the same or similar relief. To the extent the - parties disagree on the application of the Batch Arbitration - process, the disagreeing party shall advise the LCIA, and the LCIA - shall appoint a sole standing arbitrator to determine the - applicability of the Batch Arbitration process (“ - Administrative Arbitrator”). In an effort to expedite - resolution of any such dispute by the Administrative Arbitrator, the - parties agree the Administrative Arbitrator may set forth such - procedures as are necessary to resolve any disputes promptly. The - Administrative Arbitrator’s fees shall be paid by us. You and us - agree to cooperate in good faith with the LCIA to implement the - Batch Arbitration process including the payment of single filing and - administrative fees for batches of claims, as well as any steps to - minimize the time and costs of arbitration, which may include: (i) - the appointment of a discovery special master to assist the - arbitrator in the resolution of discovery disputes; and (ii) the - adoption of an expedited calendar of the arbitration proceedings. - This Batch Arbitration provision shall in no way be interpreted as - authorizing a class, collective and/or mass arbitration or action of - any kind, or arbitration involving joint or consolidated claims - under any circumstances, except as expressly set forth in this - provision. -
- - - Waiver of Right to Bring Class Action and Representative Claims; - Jury Trial Waiver.{" "} - - -
- WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY - CLAIM OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS - STIPULATED IN THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. -
-
- TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH - AGREE THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR - CONTROVERSY WILL BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE - PARTY’S INDIVIDUAL CAPACITY AND NOT AS PART OF ANY CLASS (OR - PURPORTED CLASS), CONSOLIDATED, MULTIPLE-PLAINTIFF, OR - REPRESENTATIVE ACTION OR PROCEEDING (“CLASS ACTION”).{" "} -
-
- YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR - CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY - ABILITY TO MAINTAIN A CLASS ACTION IN ANY FORUM.{" "} -
-
- IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT - HAVE THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS - ACTION, OR MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE - ARBITRATION . FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT - CONSOLIDATE PROCEEDINGS FOR MORE THAN ONE PERSON’S CLAIMS, AND IT - MAY NOT OTHERWISE PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER - THAN THE BATCH ARBITRATION SPECIFIED ABOVE). FOR THE AVOIDANCE OF - DOUBT, HOWEVER, YOU CAN SEEK PUBLIC INJUNCTIVE RELIEF TO THE EXTENT - AUTHORIZED BY LAW AND CONSISTENT WITH THE EXCEPTIONS DESCRIBED - ABOVE. -
-
- IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND - UNENFORCEABLE, THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, - THE PARTIES’ AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH - RESPECT TO SUCH PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO - PROCEED AS A CLASS ACTION. If a court decides that the limitations - of this paragraph are deemed invalid or unenforceable, any putative - class, private attorney general, or consolidated or representative - action must be brought in a court of proper jurisdiction and not in - arbitration. You acknowledge and agree that this Arbitration - Agreement applies equally to any claims or disputes between you and - Kraken in connection with any dispute that arises in relation to - your use of the Kraken Sequencer, and notices to Kraken may be - provided to legal@kraken.com. -
- - Opt-Out - -
- You have the right to opt-out and not be bound by the Arbitration - Agreement contained in these Terms by sending written notice of your - decision to opt-out to legal@inkonchain.com. The notice must be sent - to us within thirty (30) days of your first registering to use the - Services or agreeing to these Terms; otherwise you shall be bound to - arbitrate disputes on a non-class basis in accordance with these - Terms. If you opt out of only the arbitration provisions, and not - also the class action waiver, the class action waiver still applies. - You may not opt out of only the class action waiver and not also the - arbitration provisions. If you opt-out of these arbitration - provisions, we also will not be bound by them. -
+ + Terms of Service + +
+ + The following is a summary of the Terms of Service provided solely for + your convenience and informational purposes. You must read the + complete Terms of Service below for the legally binding terms. + +
+
+ Summary of Terms of Service +
+
+ This summary provides an overview of our Terms of Service that apply to + your use of our website and other services. This summary isn't + legally binding and is purely for informational purposes. While we hope + this summary section is helpful, please read the complete Terms of + Service below for the legally binding terms. +
+
    +
  • + Eligibility. The Terms of Service sets forth certain criteria + for your eligibility to use our services. +
  • +
  • + Ink, Our Services, and Third Party Services. Below, you'll + find more information about our services, Ink, and Third Party + Services. For clarity, Ink and Third Party Services are not part of + our services, and as such we have no obligations or liability to you + in connection with your use of Ink or Third Party Services. In + addition, we explain that there are a number of ways in which you are + prohibited from using our services, some of which are covered below. +
  • +
  • + Availability of Services. Certain services may not be available + or may only be available in certain jurisdictions. We also may stop + providing certain services. +
  • +
  • + Content and Feedback. You give us the right to use any content + you provide, and we will own any feedback, suggestions, or ideas you + provide related to our website or services. +
  • +
  • + Restrictions. There are also a number of ways in which you are + prohibited from using our website or services, some of which are + covered below. +
  • +
  • + Changes. The Terms of Service discuss changes we can make to + our website, services, or the terms themselves, including how we can + suspend or terminate the website or services. Changes to the Terms of + Service, our services, or website may be made at any time, with or + without notice. Continued use of our services and website is your + consent to the Terms of Service and any changes to them. +
  • +
  • + Risks and Liability. There are risks associated with using our + services, Ink, or Third Party Services. The Terms of Service also + cover your responsibility for taking on risk, limit our liability to + you, and limit the remedies you may have against us and how you may + seek those remedies. +
  • +
  • + Dispute Resolution. We hope to avoid disputes, but if there is + a dispute, you are required to arbitrate disputes with us and the + manner in which you can seek relief may be limited. +
  • +
+
+ The following is the binding and enforceable Terms of Service. +
+
+ Terms of Service +
+
+ Last Updated: December 16, 2024 +
+
+ Please read these Terms of Service (“Terms”) carefully, as they + are binding and govern your use of our website,{" "} + + https://inkonchain.com/ + {" "} + (the “Website”), Interface, Testnet, Kraken Sequencer and any + content, tools, documentation, features and functionality offered on or + through our Website (collectively, the “Services”). They also + govern your use of the Kraken Sequencer. By accessing or using our + Services, or by submitting any content, you agree to these Terms. +
+
+ These Terms may change at any time and without notice, including updates + to (1) reflect changes to our Services; (2) reflect the addition of new + services, features, technologies, or offers; (3) address legal, + regulatory, or security developments; or (4) prevent harm to our + Services or to those using our Services. These Terms can only be + modified in writing, and any change will be effective as of the Last + Updated date set forth above. You should frequently check these Terms + for updates. If you continue to access or use our Services, after we + change these Terms, you agree to all our changes. +
+
+ These Terms are a legally binding agreement between “you” (an + individual, or an entity acting through an authorized individual) and + Ink Foundation, C/O CO Services Cayman Limited, PO Box 10008 Willow + House Cricket Square, Grand Cayman, Cayman Islands KY1-1001 (“we + ”, “us”, or “our + ”). +
+
+ ARBITRATION NOTICE: THESE TERMS CONTAIN AN ARBITRATION AGREEMENT AND A + CLASS ACTION WAIVER. BY AGREEING TO THESE TERMS, YOU AGREE (A) TO + RESOLVE ALL DISPUTES (WITH LIMITED EXCEPTION) RELATED TO OUR SERVICES + AND/OR PRODUCTS OR THE KRAKEN SEQUENCER THROUGH BINDING INDIVIDUAL + ARBITRATION, WHICH MEANS THAT YOU WAIVE ANY RIGHT TO HAVE THOSE DISPUTES + DECIDED BY A JUDGE OR JURY, AND (B) TO WAIVE YOUR RIGHT TO PARTICIPATE + IN CLASS ACTIONS, CLASS ARBITRATIONS, OR REPRESENTATIVE ACTIONS, AS SET + FORTH BELOW. YOU HAVE THE RIGHT TO OPT-OUT OF THE ARBITRATION AGREEMENT + AND THE CLASS ACTION WAIVER AS EXPLAINED BELOW. +
+
+ To make these Terms easier to read, we have organized them as follows: +
+
    +
  • + Terms of Service +
      +
    1. Eligibility
    2. +
    3. Ink
    4. +
    5. Our Services
    6. +
    7. Third Party Services
    8. +
    9. Content; Feedback
    10. +
    11. Restrictions
    12. +
    13. Risks
    14. +
    15. Disclaimer of Warranties
    16. +
    17. Limitations on Liability
    18. +
    19. Indemnification
    20. +
    21. + Dispute Resolution by Binding Arbitration; Class Action Waiver +
    22. +
    23. Governing Law
    24. +
    25. Suspension; Termination; Discontinuance
    26. +
    27. Personal Data
    28. +
    29. Notices
    30. +
    31. General
    32. +
    +
  • +
+ 1. Eligibility +
+ To use any of our Services or the Kraken Sequencer, you must meet at + least the following conditions (“Conditions”): +
+
    +
  • + if you are an individual, be old enough to legally form a binding + contract in your jurisdiction (in the USA, that's 18 years old, + but it may be different where you live), +
  • +
  • + if you are an entity, be duly organized and validly existing under the + applicable laws of the jurisdiction of your organization, +
  • +
  • + have full power and authority to enter into these Terms without + violating any other agreement you have made, +
  • +
  • not have been restricted from using our services,
  • +
  • + if you are an individual, not be located in, under the control of, or + resident in—or, if you are an entity, not be directly or indirectly + owned or controlled by any person located in, under the control of, or + organized or resident in—any sanctioned or embargoed jurisdiction + (including Crimea, Cuba, Donetsk, Iran, Luhansk, North Korea, Russia, + Belarus, and Syria), or any jurisdiction where we may have restricted + use of any services, and +
  • +
  • + if you are an individual, not be listed on—or, if you are an entity, + not listed on or be directly or indirectly owned or controlled by any + person listed on—the Office of Foreign Assets Control of the U.S. + Department of Treas.ury's Specially Designated Nationals and + Blocked Persons List (“SDN”), the U.S. Department of + Commerce's Denied Persons List, Consolidated Non-SDN Lists + available{" "} + + here + + , the United Nations (UN) Security Council Consolidated List available{" "} + + here + + , or regional or foreign government watchlists. +
  • +
+ 2. Ink +
+ Ink is a layer 2 optimistic rollup protocol for the Ethereum blockchain + (“Ink”) built on open source software that we do not control. Ink + includes functionality whereby certain open source smart contracts can + receive and hold certain digital currency or other digital assets (“ + Digital Assets”) from certain supported blockchain networks such + as Ethereum (“ + Supported Networks”), which are then represented on Ink (“ + Bridge Smart Contracts”). The Bridge Smart Contract can also be + used to withdraw your Digital Assets from Ink back to Supported + Networks. We do not take possession, custody, or control of any Digital + Assets on Ink or sent to its Bridge Smart Contracts. There is a risk + that the open source software, including any upgrades, that Ink is built + on may introduce bugs, viruses, Trojan horses, or other vulnerabilities + or changes to Ink that could result in a partial or complete disruption + of Ink or loss, damage, or destruction of your Digital Assets. The + Supported Networks, and the types of Digital Assets, that are capable of + functionating with Ink and the Bridge Smart Contracts may also be + subject to change at any time. We do not control third party + applications, including their development or deployment, on Ink, or any + activity or transactions occurring on Ink.{" "} + + Therefore, you acknowledge and agree that Ink, including its Bridge + Smart Contracts, are not part of our Services, and we have no + obligations or liability to you in relation to your use of Ink or its + Bridge Smart Contracts, and you use Ink and its Bridge Smart Contracts + at your own risk. + +
+ 3. Our Services +
+ Interface +
+
+ Our Website includes a user interface (the “Interface”) that is + intended to allow you to more easily interact with certain + functionalities of Ink, such as the Bridge Smart Contracts. Other third + parties may deploy their own applications or interfaces to interface + with Bridge Smart Contracts, and those other applications or interfaces + are not part of our Services. +
+
+ Testnet +
+
+ We operate the Ink testnet (the “Testnet”) as a testing + environment that is intended to reproduce the functionality and + experience of Ink. The Testnet is intended to allow you to develop + applications for Ink and otherwise improve the stability, security, and + design of Ink and applications built for Ink. Any Testnet tokens are for + testing purposes on the Testnet, have no value, and are not redeemable + or convertible for any other token or item of value. We may change, + upgrade, discontinue, suspend, or terminate the Testnet at any time and + without notice. +
+ 4. Third Party Services +
+ When using our Services or Ink (including Bridge Smart Contracts), you + may have the opportunity to use or interact with third party services. + We do not verify, approve, monitor, control or endorse any third-party + services and are not liable to you for third-party services or + third-party content displayed or otherwise made available on the + Services. We are not responsible for, and make no representation as to, + any third-party content or services. Your use of third-party content or + services may be subject to additional terms and conditions with + third-parties, and we are not part of those terms or conditions. You may + also incur third-party fees, such as fees associated with third-party + services, or other fees, such as gas fees. You're solely + responsible for paying all such fees. If any third-party terms and + conditions conflict with these Terms, you agree that these Terms + control. Under no circumstances shall we incur any liability, of any + kind, to you arising from or relating to fees charged to you by + third-party content or services linked to or accessed through our + Services or Ink (including Bridge Smart Contracts). Your interactions + with third-party services, including digital wallets, are governed by + their respective privacy policies. We are not responsible for their data + practices. +
+
+ Kraken Continuance (“Kraken”) operates a node that receives, + records, and combines multiple transaction records from Ink into + batches, which are then settled to the Ethereum blockchain in a + specified format (the “Kraken Sequencer”). You are not required + to use the Kraken Sequencer. If you use the Kraken Sequencer, you agree + to pay any applicable gas fees, which may be modified at any time. + Kraken will attempt to provide accurate gas fee information in + connection with your use of the Kraken Sequencer, but such information + reflects its estimate of gas fees, which may vary from the fees you + actually pay to use the Kraken Sequencer and interact with Ink. The + Kraken Sequencer does not store, take possession, custody, or control of + your Digital Assets at any time, except for receiving applicable gas + fees. It also does not have the ability to modify, reverse, or otherwise + modify any transactions submitted to the Ethereum blockchain. Applicable + gas fees received in connection with your use of the Kraken Sequencer + may be modified at any time. +
+
+ To use certain of the Services or the Kraken Sequencer, you may need to + connect a compatible third-party digital wallet (“Wallet”) with + the Services or the Kraken Sequencer. By using a Wallet in connection + with the Services or the Kraken Sequencer, you agree that you are using + the Wallet under the terms and conditions of the applicable third-party + provider of such Wallet. Wallets are not associated with, maintained by, + or affiliated with us. We accept no responsibility or liability to you + in connection with your use of a Wallet, and we make no representations + or warranties regarding how the Services, the Kraken Sequencer or Ink + will operate or be compatible with any specific Wallet. The private keys + necessary to access the assets held in a Wallet are not held by us. You + are solely responsible for maintaining the confidentiality of your + private keys and you are responsible for any transactions signed with + your private keys. We reserve the right, in our sole discretion, to + prohibit certain Wallet addresses from being able to use or engage in + transactions using the Services or the Kraken Sequencer. +
+ 5. Content; Feedback +
+ Our Content. We or our licensors own + (1) our Services, (2) all content, materials, software, and trademarks + found on them, (3) the selection and arrangement of them, and (4) all + intellectual property rights in them (collectively, “Our Content + ”). So long as you comply with these Terms, you're permitted to use + our Services, and Our Content made available to you as part of our + Services, but only for your own benefit. We can take away this + permission at any time for any reason. You don't have or acquire + any rights to Our Content beyond the limited, revocable permission in + the previous sentence. +
+
+ Your Content. You may have the + opportunity to transmit content or materials in or through our Services + (“Your Content”), excluding Personal Data as defined in our{" "} + + Privacy Notice + + ). You grant us a perpetual, irrevocable, royalty-free, worldwide, fully + sublicensable, non-exclusive right and license to use and exploit Your + Content in any manner and for any purpose. +
+
+ Feedback. You may provide us + feedback, suggestions, or ideas relating to our Services (“ + Feedback”). You represent and warrant that you have the right to + provide us any Feedback that you provide. You agree that we'll own + all Feedback, and you hereby irrevocably assign all right, title, and + interest in and to all Feedback to us. +
+ 6. Restrictions +
You won't:
+
    +
  • + use Our Content to engage in, pay for, or support any illegal, + fraudulent, deceptive, or manipulative conduct, including illegal + gambling activities, money-laundering, or terrorist activities, +
  • +
  • + use Our Content in any way or for any purpose that infringes, + misappropriates, or otherwise violates any intellectual property + rights or other rights of us or any third party, or applicable local, + state, or federal law or regulation, or that is prohibited by these + Terms, +
  • +
  • + remove, delete, alter, or obscure any trademarks, specifications, + warranties, or disclaimers, or any intellectual property or + proprietary rights notices from Our Content, +
  • +
  • + use, export, reexport or transfer any of Our Content for any purpose + prohibited by U.S. or local export or import control laws and + regulations, +
  • +
  • + copy, modify, disassemble, decompile, or reverse engineer Our Content + (except to the extent such restrictions are prohibited by applicable + law), +
  • +
  • + use (except as expressly permitted in these Terms), license, + sublicense, sell, resell, transfer, assign, distribute or otherwise + commercially exploit or make available to any third party Our Content + in any way, +
  • +
  • + take any action or use Our Content in any manner that could damage, + destroy, disrupt, disable, impair, overburden, or otherwise impede or + harm in any manner Our Content, or interfere with any other + party's use of Our Content, +
  • +
  • + disrupt, interfere with, violate the security of, or attempt to gain + unauthorized access to Our Content or any computer network, +
  • +
  • + bypass, breach, avoid, remove, deactivate, impair, descramble, or + otherwise circumvent any security device, protection, or technological + measure implemented by us or any of our service providers to protect + Our Content, +
  • +
  • + use any device, software, or routine that interferes with the function + of Our Content or transmit in or through Our Content, or use in + connection with Our Content, any virus, trojan horse, worm, backdoor, + time bomb, malware, or other software or hardware devices designed to + permit unauthorized access to, or disable, erase, or otherwise harm, + any computer, systems, or software, +
  • +
  • + access or use Our Content to build or support products or services + competitive to our products or Services, +
  • +
  • + use any web scraping, web harvesting, or data extraction methods to + extract any data from Our Content, +
  • +
  • + create, use, operate, or employ any bots, robots, parsers, spiders, + scripts, programs, routines, or any other forms of automation to + engage in any activity on Our Content, +
  • +
  • + develop any third-party applications that interact with Our Content + without our prior written consent, +
  • +
  • + use or attempt to use Our Content for any person other than yourself, +
  • +
  • + provide false, inaccurate, or misleading information in connection + with your use of or access to Our Content, +
  • +
  • + violate any applicable law or regulation in connection with your use + of or access to Our Content; or +
  • +
  • + encourage, permit, or enable any other person or entity to do any of + the foregoing. +
  • +
+ 7. Risks +
+ There are substantial risks associated with using our Services, Ink + (including the Bridge Smart Contracts) and any third party service + available on Ink, and you should carefully consider whether using them + is suitable for you in light of your circumstances, knowledge, and + financial resources. You may be subject to legal and regulatory + compliance obligations in connection with your use of our Services, Ink + (including Bridge Smart Contracts), and third party services available + on Ink, and you agree that you are solely responsible for your + compliance with all laws and regulations. You acknowledge and agree that + our Services, Ink (including the Bridge Smart Contracts) and third party + services available on Ink may incorporate experimental and novel + technology and that the use of such technology involves a high degree of + risk, could unexpectedly fail or not perform as intended, and may + experience cyber-attacks, botting or other malicious activity, or other + operational or technical difficulties or vulnerabilities related to your + use of our Services, Ink (including Bridge Smart Contracts), and third + party services available on Ink. You acknowledge and agree that smart + contracts execute automatically when certain conditions are met, and we + do not have the ability to reverse a transaction recorded on a public + blockchain. You are responsible for ensuring that any details you enter + in connection with a transaction using any smart contracts are accurate + and complete. You acknowledge and agree that we cannot control how + third-party exchange platforms quote or value Digital Assets, and we are + not responsible for any losses you may incur as a result of fluctuations + in the value of Digital Assets. As such, you acknowledge and agree that + your use of our Services, Ink (including the Bridge Smart Contracts) and + any third party service available on Ink, is at your own risk, and that + we aren't liable to you for any losses you incur arising from such + risks. +
+ 8. Disclaimer of Warranties +
+ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, OUR SERVICES, THE + KRAKEN SEQUENCER, AND INK ARE PROVIDED ON AN “AS IS” AND “AS AVAILABLE” + BASIS. WE (AND AS APPLICABLE KRAKEN) EXPRESSLY DISCLAIM ALL WARRANTIES + OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING IMPLIED WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND + NON-INFRINGEMENT RELATING TO OUR SERVICES, THE KRAKEN SEQUENCER, AND + INK. WITHOUT LIMITING THE FOREGOING, WE (AND AS APPLICABLE KRAKEN) + DISCLAIM THAT (i) OUR SERVICES OR THE KRAKEN SEQUENCER WILL BE + AVAILABLE, ACCURATE, SECURE, USEFUL, UNINTERRUPTED OR ERROR-FREE; (ii) + DEFECTS WITH OUR SERVICES OR THE KRAKEN SEQUENCER CAN OR WILL BE + CORRECTED; (iii) THE SERVERS THAT MAKE OUR SERVICES OR THE KRAKEN + SEQUENCER AVAILABLE ARE FREE FROM VIRUSES OR OTHER HARMFUL COMPONENTS; + (iv) THE SERVICES, THE KRAKEN SEQUENCER, OR INK WILL BE COMPATIBLE WITH + ANY OTHER APPLICATION, SYSTEM, DEVICE OR WALLET; AND (v) THAT THE + SERVICES, THE KRAKEN SEQUENCER, OR INK WILL PROTECT YOUR ASSETS FROM + THEFT, HACKING, CYBER ATTACK OR OTHER FORM OF LOSS CAUSED BY THIRD PARTY + CONDUCT. WE DON'T PROVIDE ANY UPTIME GUARANTEES, AND WE MAY + DISCONTINUE MAKING OUR SERVICES OR THE KRAKEN SEQUENCER AVAILABLE TO YOU + AT ANY TIME AT OUR SOLE DISCRETION. +
+ 9. Limitations on Liability +
+ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, NEITHER WE, KRAKEN, + OR OUR RESPECTIVE DIRECTORS, MEMBERS, EMPLOYEES OR AGENTS WILL BE LIABLE + WITH RESPECT TO ANY CLAIM, WHETHER IN CONTRACT, TORT (INCLUDING + NEGLIGENCE), OR OTHERWISE, RELATED IN ANY WAY TO THESE TERMS, OUR + SERVICES, THE KRAKEN SEQUENCER, OR INK FOR (1) ANY INDIRECT, INCIDENTAL, + SPECIAL, CONSEQUENTIAL, OR EXEMPLARY DAMAGES, INCLUDING DAMAGES FOR LOSS + OF PROFITS, GOODWILL, USE, OR DATA AND (2) TO THE EXTENT NOT ALREADY + EXCLUDED, ANY AMOUNTS EXCEEDING $100 UNITED STATES DOLLARS. +
+ 10. Indemnification +
+ You agree to defend, indemnify, and hold harmless us, Kraken, and our + respective officers, directors, members, employees, and agents, from any + claim, demand, action, damage, loss, cost, or expense (including + reasonable attorneys' fees) relating to (1) your use of our + Services and the Kraken Sequencer, (2) your violation of these Terms, + (3) your infringement, misappropriation, or violation of the rights of + any other person or entity, (4) any content, materials, or information + (in any form or medium) that you submit, post, upload, provide, + contribute, or make available (or authorize or instruct us to do so) + through the Services and the Kraken Sequencer, and (5) any Feedback. If + you're obligated to indemnify us or Kraken, we respectively have + the right to control any action if we want and you cannot settle any + action without our consent, unless the settlement is only for money + damages which you entirely pay. +
+ 11. Dispute Resolution By Binding Arbitration; Class Action Waiver +
+ This Dispute Resolution by Binding Arbitration section is referred to in + the Terms as the "Arbitration Agreement".{" "} +
+
+ + PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT REQUIRES + YOU TO ARBITRATE DISPUTES WITH US OR KRAKEN AND IT LIMITS THE MANNER + IN WHICH YOU CAN SEEK RELIEF. + +
+ Informal Process First +
+ We are always interested in resolving disputes amicably and efficiently, + and most concerns can be resolved quickly and to your satisfaction by + emailing user support at legal@inkonchain.com. However, if such efforts + prove unsuccessful, you may send to us, by email, a written Notice of + Dispute (“Notice”). The Notice should be sent to + legal@inkonchain.com and must (a) describe the nature and basis of the + claim or dispute and (b) set forth the specific relief sought. If we and + you do not resolve the claim or dispute set out in the Notice within + sixty (60) calendar days from the date of receipt, we or you may + commence an arbitration proceeding. It is agreed that this dispute + resolution procedure is a condition precedent which must be satisfied + before initiating arbitration. +
+ Arbitration and its Terms +
+ Subject to the informal process outlined in the preceding paragraph, you + and us agree to arbitrate any dispute arising in connection with these + Terms (including questions related to their validity, existence, or + termination) or your use of the Services and the Kraken Sequencer, + except for disputes in which either party seeks equitable and other + relief for the alleged unlawful use of copyrights, trademarks, trade + names, logos, trade secrets or patents.{" "} +
+
+ The arbitration will be administered in accordance with the Rules of the + London Court of International Arbitration then in effect (the “ + LCIA Rules”). It will be conducted in English and the parties + will keep the arbitration proceedings confidential and not disclose any + information regarding the arbitration (or any underlying claim or + dispute) to any third party except as required by law. +
+
+ Other than class procedures and remedies expressly prohibited by this + Arbitration Agreement, the arbitrator(s) will have the authority to + provide any remedy or relief that a court of competent jurisdiction + could award, including injunctive relief. Any decision or award rendered + by the arbitrator will be final and binding, and may be overturned by a + court only for very limited reasons. Any judgment may be entered in any + court of competent jurisdiction.{" "} +
+
+ If there is any inconsistency between any term of the LCIA Rules and any + term of this Arbitration Agreement, the applicable terms of this + Arbitration Agreement will control unless the arbitrator determines that + the application of the inconsistent Arbitration Agreement terms would + not result in a fundamentally fair arbitration. The arbitrator must also + follow the provisions of these Terms as a court would. +
+
+ + It is expressly agreed that any arbitration under these Terms will + take place on an individual basis – class arbitrations and class + action are not permitted. You understand that by agreeing to these + Terms, you and us are each waiving the right to trial by jury or to + participate in a class action or class arbitration. + +
+ Costs of Arbitration +
+ Payment of all filing, administration and arbitrator costs and expenses + will be governed by the LCIA Rules then in effect, except that if you + demonstrate that any such costs and expenses owed by you under those + rules would be prohibitively more expensive than a court proceeding, + then we will pay the amount of any such costs and expenses that the + arbitrator determines are necessary to prevent the arbitration from + being prohibitively more expensive than a court proceeding. +
+
+ Fees and costs may be awarded as provided pursuant to applicable law. + The arbitrator may make rulings and resolve disputes as to the payment + and reimbursement of fees or expenses at any time during the proceeding + and upon request from either party made within 14 days of the + arbitrator’s ruling on the merits. +
+ Batch Arbitration +
+ To increase the efficiency of administration and resolution of + arbitrations, you and us agree that in the event that there are + one-hundred (100) or more individual claims of a substantially similar + nature filed against us by or with the assistance of the same law firm, + group of law firms, or organizations, then within a thirty (30) day + period (or as soon as possible thereafter), the LCIA shall (a) + administer the arbitration demands in batches of one-hundred (100) + claims per batch (plus, to the extent there are less than one-hundred + (100) claims left over after the batching described above, a final batch + consisting of the remaining claims); (b) appoint one arbitrator for each + batch; and (c) provide for the resolution of each batch as a single + consolidated arbitration with one set of filing and administrative fees + due per side per batch, one procedural calendar, one hearing (if any) in + a place to be determined by the arbitrator, and one final award (“ + Batch Arbitration”). All parties agree that claims are of a + “substantially similar nature” if they arise out of or relate to the + same event or factual scenario and raise the same or similar legal + issues and seek the same or similar relief. To the extent the parties + disagree on the application of the Batch Arbitration process, the + disagreeing party shall advise the LCIA, and the LCIA shall appoint a + sole standing arbitrator to determine the applicability of the Batch + Arbitration process (“ + Administrative Arbitrator”). In an effort to expedite resolution + of any such dispute by the Administrative Arbitrator, the parties agree + the Administrative Arbitrator may set forth such procedures as are + necessary to resolve any disputes promptly. The Administrative + Arbitrator’s fees shall be paid by us. You and us agree to cooperate in + good faith with the LCIA to implement the Batch Arbitration process + including the payment of single filing and administrative fees for + batches of claims, as well as any steps to minimize the time and costs + of arbitration, which may include: (i) the appointment of a discovery + special master to assist the arbitrator in the resolution of discovery + disputes; and (ii) the adoption of an expedited calendar of the + arbitration proceedings. This Batch Arbitration provision shall in no + way be interpreted as authorizing a class, collective and/or mass + arbitration or action of any kind, or arbitration involving joint or + consolidated claims under any circumstances, except as expressly set + forth in this provision. +
+ + + Waiver of Right to Bring Class Action and Representative Claims; Jury + Trial Waiver.{" "} + + +
+ WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY CLAIM + OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS STIPULATED IN + THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. +
+
+ TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH AGREE + THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR CONTROVERSY WILL + BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE PARTY’S INDIVIDUAL + CAPACITY AND NOT AS PART OF ANY CLASS (OR PURPORTED CLASS), + CONSOLIDATED, MULTIPLE-PLAINTIFF, OR REPRESENTATIVE ACTION OR PROCEEDING + (“CLASS ACTION”).{" "} +
+
+ YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR + CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY ABILITY + TO MAINTAIN A CLASS ACTION IN ANY FORUM.{" "} +
+
+ IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT HAVE + THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS ACTION, OR + MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE ARBITRATION . + FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT CONSOLIDATE + PROCEEDINGS FOR MORE THAN ONE PERSON’S CLAIMS, AND IT MAY NOT OTHERWISE + PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER THAN THE BATCH + ARBITRATION SPECIFIED ABOVE). FOR THE AVOIDANCE OF DOUBT, HOWEVER, YOU + CAN SEEK PUBLIC INJUNCTIVE RELIEF TO THE EXTENT AUTHORIZED BY LAW AND + CONSISTENT WITH THE EXCEPTIONS DESCRIBED ABOVE. +
+
+ IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND UNENFORCEABLE, + THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, THE PARTIES’ + AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH RESPECT TO SUCH + PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO PROCEED AS A CLASS + ACTION. If a court decides that the limitations of this paragraph are + deemed invalid or unenforceable, any putative class, private attorney + general, or consolidated or representative action must be brought in a + court of proper jurisdiction and not in arbitration. You acknowledge and + agree that this Arbitration Agreement applies equally to any claims or + disputes between you and Kraken in connection with any dispute that + arises in relation to your use of the Kraken Sequencer, and notices to + Kraken may be provided to legal@kraken.com. +
+ + Opt-Out + +
+ You have the right to opt-out and not be bound by the Arbitration + Agreement contained in these Terms by sending written notice of your + decision to opt-out to legal@inkonchain.com. The notice must be sent to + us within thirty (30) days of your first registering to use the Services + or agreeing to these Terms; otherwise you shall be bound to arbitrate + disputes on a non-class basis in accordance with these Terms. If you opt + out of only the arbitration provisions, and not also the class action + waiver, the class action waiver still applies. You may not opt out of + only the class action waiver and not also the arbitration provisions. If + you opt-out of these arbitration provisions, we also will not be bound + by them. +
- 12. Governing Law -
- These Terms, your use of the Services, the Kraken Sequencer and any - disputes arising out of or related thereto is governed by the laws - of the Cayman Islands, without regard to its conflict of law - provisions or principles. -
+ 12. Governing Law +
+ These Terms, your use of the Services, the Kraken Sequencer and any + disputes arising out of or related thereto is governed by the laws of + the Cayman Islands, without regard to its conflict of law provisions or + principles. +
- 13. Suspension; Termination; Discontinuance -
- We can, at any time and without liability or prior notice to you: -
-
    -
  • - modify or discontinue our Services (or any parts of them) or the - Kraken Sequencer, -
  • -
  • - suspend, restrict, or terminate your access to our Services or the - Kraken Sequencer, or -
  • -
  • suspend, restrict, or delete Your Content.
  • -
-
- You may terminate your use of our Services or the Kraken Sequencer - at any time by ceasing to access or use our Services or the Kraken - Sequencer. -
+ 13. Suspension; Termination; Discontinuance +
+ We can, at any time and without liability or prior notice to you: +
+
    +
  • + modify or discontinue our Services (or any parts of them) or the + Kraken Sequencer, +
  • +
  • + suspend, restrict, or terminate your access to our Services or the + Kraken Sequencer, or +
  • +
  • suspend, restrict, or delete Your Content.
  • +
+
+ You may terminate your use of our Services or the Kraken Sequencer at + any time by ceasing to access or use our Services or the Kraken + Sequencer. +
- 14. Personal Data -
- Please read both our{" "} - - Privacy Notice - - , and the{" "} - - Kraken Privacy Notice - - , for information about how your personal data may be collected, - used, and shared. Both Privacy Notices are incorporated into these - Terms by reference. -
+ 14. Personal Data +
+ Please read both our{" "} + + Privacy Notice + + , and the{" "} + + Kraken Privacy Notice + + , for information about how your personal data may be collected, used, + and shared. Both Privacy Notices are incorporated into these Terms by + reference. +
- 15. Notices -
- You agree that we may electronically provide you all communications, - agreements, documents, notices, and disclosures (“ - Communications”) in connection with your access or use of our - Services or the Kraken Sequencer. You agree that we may provide - Communications to you by posting them on our Services, by emailing - them to you at the email address you provide, or by sending an SMS - or text message to a mobile phone number that you provide. Your - carrier's normal messaging, data, and other rates and fees may - apply to any mobile Communications you should retain copies of all - Communications for your records. -
-
- You may withdraw your consent to receive electronic Communications - by sending a withdrawal notice via the contact form on our website. - If you do, we may suspend or terminate your use of our Services or - the Kraken Sequencer. -
+ 15. Notices +
+ You agree that we may electronically provide you all communications, + agreements, documents, notices, and disclosures (“ + Communications”) in connection with your access or use of our + Services or the Kraken Sequencer. You agree that we may provide + Communications to you by posting them on our Services, by emailing them + to you at the email address you provide, or by sending an SMS or text + message to a mobile phone number that you provide. Your carrier's + normal messaging, data, and other rates and fees may apply to any mobile + Communications you should retain copies of all Communications for your + records. +
+
+ You may withdraw your consent to receive electronic Communications by + sending a withdrawal notice via the contact form on our website. If you + do, we may suspend or terminate your use of our Services or the Kraken + Sequencer. +
- 16. General -
Force Majeure.
-
- We are not responsible or liable for any error, delay, loss, or - damage arising from any event beyond our reasonable control (each, a - “Force Majeure Event”). Force Majeure Events include flood, - extraordinary weather conditions, earthquake, or other act of God, - fire, war, insurrection, riot, labor dispute, accident, action of - government, communications, power failure, or equipment or software - malfunction. -
-
Injunctive Relief.
-
- You agree that a breach of these Terms will cause irreparable injury - to us for which monetary damages would not be an adequate remedy and - we are entitled to equitable relief in addition to any remedies we - may have hereunder or at law without a bond, other security or proof - of damages. -
-
Taxes
-
- You alone are responsible for determining what taxes apply to your - use of our Services, Ink (including the Bridge Smart Contracts) and - any third party service available on Ink, and for reporting and - remitting the correct taxes to the appropriate tax authorities. You - agree that we have no responsibility or liability for determining - what taxes apply or for collecting, reporting, withholding, or - remitting any taxes arising from any trades or transactions, unless - otherwise required by law. -
-
Waiver.
-
- If we don't exercise a right under these Terms, we are not - waiving such right. -
-
Enforceability.
-
- If any provision of these Terms is invalid or unenforceable, such - provision will be deemed severed from these Terms, but such - invalidity or unenforceability won't affect any other part of - these Terms and the rest of these Terms will remain in full force - and effect; provided, however, that if any such invalid or - unenforceable provision can be modified so as to be valid and - enforceable as a matter of law, then such provision is not deemed - severed from these Terms and instead is deemed to have been modified - so as to be valid and enforceable to the maximum extent permitted by - law. -
-
Assignment.
-
- You cannot assign or transfer any right or obligation under these - Terms without our prior written consent. We can assign or transfer - any right or obligation under these Terms, in whole or in part, - without your consent, subject to compliance with applicable laws. In - addition, if we are acquired by or merged with a third-party entity, - we reserve the right to transfer or assign the information we have - collected from you as part of such merger, acquisition, sale, or - other change of control. -
-
Interpretation.
-
- In these Terms, (1) “or” is inclusive, (2) “including” or “such as” - aren't words of limitation, (3) headings are only for your - convenience, and (4) the “Summary of Terms of Service” and any - definitions provided only for informational purposes are provided - only for your convenience, is not legally binding, and does not - affect the interpretation of these Terms. -
-
Relationship.
-
- We don't provide investment or tax advice, including in - connection with your use of our Services. You agree not to rely upon - any statement or content on our Services, or that is otherwise - attributed to us, as a recommendation, advice, or guidance regarding - trades, investments, tax, or any other similar issues. We also are - not acting as your bank, broker, intermediary, agent, advisor, or as - your fiduciary in any capacity, including with respect to the - services. -
-
- Nothing in these Terms will be deemed to or is intended to be deemed - to, nor will it, cause you and us to be treated as partners, joint - venturers, or otherwise as joint associates for profit. -
-
California Residents.
-
- If you are a California resident, in accordance with Cal. Civ. Code - § 1789.3, you may report complaints to the Complaint Assistance Unit - of the Division of Consumer Services of the California Department of - Consumer Affairs by contacting them in writing at 1625 North Market - Blvd., Suite N 112 Sacramento, CA 95834, or by telephone at (800) - 952-5210. -
+ 16. General +
Force Majeure.
+
+ We are not responsible or liable for any error, delay, loss, or damage + arising from any event beyond our reasonable control (each, a “ + Force Majeure Event”). Force Majeure Events include flood, + extraordinary weather conditions, earthquake, or other act of God, fire, + war, insurrection, riot, labor dispute, accident, action of government, + communications, power failure, or equipment or software malfunction. +
+
Injunctive Relief.
+
+ You agree that a breach of these Terms will cause irreparable injury to + us for which monetary damages would not be an adequate remedy and we are + entitled to equitable relief in addition to any remedies we may have + hereunder or at law without a bond, other security or proof of damages. +
+
Taxes
+
+ You alone are responsible for determining what taxes apply to your use + of our Services, Ink (including the Bridge Smart Contracts) and any + third party service available on Ink, and for reporting and remitting + the correct taxes to the appropriate tax authorities. You agree that we + have no responsibility or liability for determining what taxes apply or + for collecting, reporting, withholding, or remitting any taxes arising + from any trades or transactions, unless otherwise required by law. +
+
Waiver.
+
+ If we don't exercise a right under these Terms, we are not waiving + such right. +
+
Enforceability.
+
+ If any provision of these Terms is invalid or unenforceable, such + provision will be deemed severed from these Terms, but such invalidity + or unenforceability won't affect any other part of these Terms and + the rest of these Terms will remain in full force and effect; provided, + however, that if any such invalid or unenforceable provision can be + modified so as to be valid and enforceable as a matter of law, then such + provision is not deemed severed from these Terms and instead is deemed + to have been modified so as to be valid and enforceable to the maximum + extent permitted by law. +
+
Assignment.
+
+ You cannot assign or transfer any right or obligation under these Terms + without our prior written consent. We can assign or transfer any right + or obligation under these Terms, in whole or in part, without your + consent, subject to compliance with applicable laws. In addition, if we + are acquired by or merged with a third-party entity, we reserve the + right to transfer or assign the information we have collected from you + as part of such merger, acquisition, sale, or other change of control. +
+
Interpretation.
+
+ In these Terms, (1) “or” is inclusive, (2) “including” or “such as” + aren't words of limitation, (3) headings are only for your + convenience, and (4) the “Summary of Terms of Service” and any + definitions provided only for informational purposes are provided only + for your convenience, is not legally binding, and does not affect the + interpretation of these Terms. +
+
Relationship.
+
+ We don't provide investment or tax advice, including in connection + with your use of our Services. You agree not to rely upon any statement + or content on our Services, or that is otherwise attributed to us, as a + recommendation, advice, or guidance regarding trades, investments, tax, + or any other similar issues. We also are not acting as your bank, + broker, intermediary, agent, advisor, or as your fiduciary in any + capacity, including with respect to the services. +
+
+ Nothing in these Terms will be deemed to or is intended to be deemed to, + nor will it, cause you and us to be treated as partners, joint + venturers, or otherwise as joint associates for profit. +
+
California Residents.
+
+ If you are a California resident, in accordance with Cal. Civ. Code § + 1789.3, you may report complaints to the Complaint Assistance Unit of + the Division of Consumer Services of the California Department of + Consumer Affairs by contacting them in writing at 1625 North Market + Blvd., Suite N 112 Sacramento, CA 95834, or by telephone at (800) + 952-5210. +
-
Severability.
-
- You agree and understand that if any provision of these Terms, or - application thereof, shall be determined to be invalid or - unenforceable under any rule, law, or regulation or by any - governmental judicial, legislative or administrative body, such - provision will be changed and interpreted to accomplish the - objectives of the provision to the greatest extent possible under - any applicable law. You further agree and understand that the - validity of or enforceability of any other provision of these Terms - unaffected by such invalidity or unenforceability (or of such - provision, to the extent its application is not invalid or - unenforceable) shall remain in full force and effect. -
-
Survival.
-
- All sections which by their nature should survive the termination of - these Terms shall continue in full force and effect subsequent to - and notwithstanding any termination of these Terms by you or us. - Termination won't limit any of our rights or remedies at law or - equity. -
-
Entire Agreement.
-
- These Terms are the entire agreement between you and us, and - supersede all prior and contemporaneous understandings between you - and us about our Services and the Kraken Sequencer. These Terms - include all applicable Annexes hereto. -
-
How to Contact Us.
-
- You may contact us regarding the Services, the Kraken Sequencer or - these Terms - . -
-
+
Severability.
+
+ You agree and understand that if any provision of these Terms, or + application thereof, shall be determined to be invalid or unenforceable + under any rule, law, or regulation or by any governmental judicial, + legislative or administrative body, such provision will be changed and + interpreted to accomplish the objectives of the provision to the + greatest extent possible under any applicable law. You further agree and + understand that the validity of or enforceability of any other provision + of these Terms unaffected by such invalidity or unenforceability (or of + such provision, to the extent its application is not invalid or + unenforceable) shall remain in full force and effect. +
+
Survival.
+
+ All sections which by their nature should survive the termination of + these Terms shall continue in full force and effect subsequent to and + notwithstanding any termination of these Terms by you or us. Termination + won't limit any of our rights or remedies at law or equity. +
+
Entire Agreement.
+
+ These Terms are the entire agreement between you and us, and supersede + all prior and contemporaneous understandings between you and us about + our Services and the Kraken Sequencer. These Terms include all + applicable Annexes hereto. +
+
How to Contact Us.
+
+ You may contact us regarding the Services, the Kraken Sequencer or these + Terms + .
); diff --git a/src/app/[locale]/(info)/terms/terms-before-mainnet.tsx b/src/app/[locale]/(info)/terms/terms-before-mainnet.tsx index 072d7ed..101c50b 100644 --- a/src/app/[locale]/(info)/terms/terms-before-mainnet.tsx +++ b/src/app/[locale]/(info)/terms/terms-before-mainnet.tsx @@ -1,690 +1,659 @@ import { ColoredText } from "@/components/ColoredText"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; export default function TermsBeforeMainnet() { return ( <> -
-
- - Terms of Service - -
- - The following is a summary of the Ink Limited Terms of Service - provided solely for your convenience and informational purposes. - You must read the complete Terms of Service below for the legally - binding terms. - -
-
- Summary of Ink Limited Terms of Service -
-
- This summary provides an overview of our Terms of Service that apply - to your use of our website and other services. This summary - isn't legally binding and is purely for informational purposes. - While we hope this summary section is helpful, please read the - complete Terms of Service below for the legally binding terms. -
-
    -
  • - Eligibility. The Terms of Service sets forth certain - criteria for your eligibility to use our services. -
  • -
  • - Ink, Our Services, and Third Party Services. Below, - you'll find more information about our services, Ink, and - Third Party Services. For clarity, Ink and Third Party Services - are not part of our services, and as such we have no obligations - or liability to you in connection with your use of Ink or Third - Party Services. In addition, we explain that there are a number of - ways in which you are prohibited from using our services, some of - which are covered below.{" "} -
  • -
  • - Availability of Services. Certain services may not be - available or may only be available in certain jurisdictions. We - also may stop providing certain services.{" "} -
  • -
  • - Content and Feedback. You give us the right to use any - content you provide, and we will own any feedback, suggestions, or - ideas you provide related to our website or services. -
  • -
  • - Restrictions. There are also a number of ways in which you - are prohibited from using our website or services, some of which - are covered below. -
  • -
  • - Changes. The Terms of Service discuss changes we can make - to our website, services, or the terms themselves, including how - we can suspend or terminate the website or services. Changes to - the Terms of Service, our services, or website may be made at any - time, with or without notice. Continued use of our services and - website is your consent to the Terms of Service and any changes to - them. -
  • -
  • - Risks and Liability. There are risks associated with using - our services, Ink, or Third Party Services. The Terms of Service - also cover your responsibility for taking on risk, limit our - liability to you, and limit the remedies you may have against us - and how you may seek those remedies. -
  • -
  • - Dispute Resolution. We hope to avoid disputes, but if there - is a dispute, you are required to arbitrate disputes with us and - the manner in which you can seek relief may be limited. -
  • -
- -
- - The following is the binding and enforceable Terms of Service. - -
-
- Ink Limited Terms of Service -
-
- Last Updated: November 1, 2024 -
- -
- Please read these Terms of Service (“Terms”) carefully, as - they are binding and govern your use of our website and services, - including as more fully addressed below (“Services”). By - accessing or using our Services, or by submitting any content, you - agree to these Terms.{" "} -
- -
- These Terms may change at any time and without notice, including - updates to (1) reflect changes to our Services; (2) reflect the - addition of new services, features, technologies, or offers; (3) - address legal, regulatory, or security developments; or (4) prevent - harm to our Services or to those using our Services. These Terms can - only be modified in writing, and any change will be effective as of - the Last Updated date set forth above. You should frequently check - these Terms for updates. If you continue to access or use our - Services, after we change these Terms, you agree to all our changes. -
- -
- These Terms are a legally binding agreement between “you” (an - individual, or an entity acting through an authorized individual) - and Ink Limited, C/O CO Services Cayman Limited, PO Box 10008 Willow - House Cricket Square, Grand Cayman, Cayman Islands KY1-1001 - (including its affiliates, “we”, “us”, or “our - ”). -
- -
- To make these Terms easier to read, we have organized them as - follows: -
- -
    -
  • - Terms of Service -
      -
    1. Eligibility
    2. -
    3. Ink
    4. -
    5. Our Services
    6. -
    7. Third Party Services
    8. -
    9. Content; Feedback
    10. -
    11. Restrictions
    12. -
    13. Risks
    14. -
    15. Disclaimer of Warranties
    16. -
    17. Limitations on Liability
    18. -
    19. Indemnification
    20. -
    21. Dispute Resolution; Arbitration; Applicable Law
    22. -
    23. Suspension; Termination; Discontinuance
    24. -
    25. Personal Data
    26. -
    27. Notices
    28. -
    29. General
    30. -
    -
  • -
- - 1. Eligibility - -
- To use any of our Services, you must meet at least the following - conditions (“Conditions”): -
-
    -
  • - if you are an individual, be old enough to legally form a binding - contract in your jurisdiction (in the USA, that's 18 years - old, but it may be different where you live), -
  • -
  • - if you are an entity, be duly organized and validly existing under - the applicable laws of the jurisdiction of your organization, -
  • -
  • - have full power and authority to enter into these Terms without - violating any other agreement you have made, -
  • -
  • not have been restricted from using our services,
  • -
  • - if you are an individual, not be located in, under the control of, - or resident in—or, if you are an entity, not be directly or - indirectly owned or controlled by any person located in, under the - control of, or organized or resident in—any sanctioned or - embargoed jurisdiction (including Crimea, Cuba, Donetsk, Iran, - Luhansk, North Korea, Russia, Belarus, and Syria), or any - jurisdiction where we may have restricted use of any services, and -
  • -
  • - if you are an individual, not be listed on—or, if you are an - entity, not listed on or be directly or indirectly owned or - controlled by any person listed on—the Office of Foreign Assets - Control of the U.S. Department of Treasury's Specially - Designated Nationals and Blocked Persons List (“SDN”), the - U.S. Department of Commerce's Denied Persons List, - Consolidated Non-SDN Lists available{" "} - - here - - , the United Nations (UN) Security Council Consolidated List - available{" "} - - here - - , or regional or foreign government watchlists. -
  • -
- - 2. Ink - -
- Ink is a layer 2 optimistic rollup for the Ethereum blockchain (“ - Ink”) built on open source software that we do not control. - Ink includes certain open source smart contracts that can receive - and hold certain digital currency or other digital assets (“ - Digital Assets”), which are then represented on Ink (“ - Bridge Smart Contracts”). You may also use the Bridge Smart - Contract to withdraw your Digital Assets from Ink. We do not take - possession, custody, or control of any Digital Assets on Ink or sent - to its Bridge Smart Contracts. There is a risk that the open source - software, including any upgrades, that the Ink is built on may - introduce bugs, viruses, Trojan horses, or other vulnerabilities or - changes to Ink that could result in a partial or complete disruption - of Ink or loss, damage, or destruction of your Digital Assets. IWe - do not control third party applications, including their development - or deployment, on Ink, or any activity or transactions occurring on - Ink. Therefore, you acknowledge and agree that Ink, including its - Bridge Smart Contracts, are not part of our Services, and we have no - obligations or liability to you in relation to your use of Ink or - its Bridge Smart Contracts, and you use Ink and its Bridge Smart - Contracts at your own risk. -
- - 3. Our Services - -
- Testnet -
- -
- The Ink testnet (the “Testnet”) provides a testing - environment intended to reproduce the functionality and experience - of Ink to allow you to develop applications for Ink and otherwise - improve the stability, security, and design of Ink and applications - built for Ink. Any Testnet tokens are for testing purposes on the - Testnet, have no value, and are not redeemable or convertible for - any other token or item of value. Ink may change, upgrade, - discontinue, or terminate the Testnet at any time and without - notice. -
- -
- Ink Sequencer -
- -
- Ink operates a node that receives, records, and combines multiple - transaction records from Ink into batches, which are then settled to - the Ethereum blockchain in a specified format (the “ - Ink Sequencer”). You are not required to use the Ink - Sequencer. If you use the Ink Sequencer, you agree to pay any - applicable gas fees, which may be modified at any time. The Ink - Sequencer does not store, take possession, custody, or control of - your Digital Assets at any time, except for receiving applicable gas - fees. It also does not have the ability to modify, reverse, or - otherwise modify any transactions submitted to the Ethereum - blockchain.Applicable gas fees received in connection with your use - of the Ink Sequencer may be modified at any time. -
- - 4. Third Party Services - -
- When using our Services or Ink (including Bridge Smart Contracts), - you may have the opportunity to use third party services. We do not - verify, approve, monitor, control or endorse any third-party - services and are not liable to you for third-party content or - services in any way. Your use of third-party content or services may - be subject to additional terms and conditions with third-parties, - and we are not part of those terms or conditions. You may also incur - third-party fees, such as fees associated with third-party services, - or other fees, such as gas fees. You're solely responsible for - paying all such fees. If any third-party terms and conditions - conflict with these Terms, you agree that these Terms control. Under - no circumstances shall Ink incur any liability, of any kind, to you - arising from or relating to fees charged to you by third-party - services linked to or accessed through our Services or Ink - (including Bridge Smart Contracts). -
- - 5. Content; Feedback - -
- Our Content. We or our licensors - own (1) our Services, (2) all content, materials, software, and - trademarks found on them, (3) the selection and arrangement of them, - and (4) all intellectual property rights in them (collectively, “ - Our Content”). So long as you comply with these Terms, - you're permitted to use our Services, and Our Content made - available to you as part of our Services, but only for your own - benefit. We can take away this permission at any time for any - reason. You don't have or acquire any rights to Our Content - beyond the limited, revocable permission in the previous sentence. -
- -
- Your Content. You may have the - opportunity to transmit content or materials in or through our - Services (“Your Content”), excluding Personal Data as defined - in our{" "} - - Privacy Notice - - ). You grant us a perpetual, irrevocable, royalty-free, worldwide, - fully sublicensable, non-exclusive right and license to use and - exploit your Content in any manner and for any purpose. -
- -
- Feedback. You may provide us - feedback, suggestions, or ideas relating to our Services (“ - Feedback”). You represent and warrant that you have the right - to provide us any feedback that you provide. You agree that - we'll own all feedback, and you hereby irrevocably assign all - right, title, and interest in and to all feedback to us. -
- - 6. Restrictions -
You won't:
-
    -
  • - use Our Content to engage in, pay for, or support any illegal, - fraudulent, deceptive, or manipulative conduct, including illegal - gambling activities, money-laundering, or terrorist activities, -
  • -
  • - use Our Content in any way or for any purpose that infringes, - misappropriates, or otherwise violates any intellectual property - rights or other rights of us or any third party, or applicable - local, state, or federal law or regulation, or that is prohibited - by these Terms, -
  • -
  • - remove, delete, alter, or obscure any trademarks, specifications, - warranties, or disclaimers, or any intellectual property or - proprietary rights notices from Our Content, -
  • -
  • - use, export, reexport or transfer any of Our Content for any - purpose prohibited by U.S. or local export or import control laws - and regulations, -
  • -
  • - copy, modify, disassemble, decompile, or reverse engineer Our - Content (except to the extent such restrictions are prohibited by - applicable law), -
  • -
  • - use (except as expressly permitted in these Terms), license, - sublicense, sell, resell, transfer, assign, distribute or - otherwise commercially exploit or make available to any third - party Our Content in any way, -
  • -
  • - take any action or use Our Content in any manner that could - damage, destroy, disrupt, disable, impair, overburden, or - otherwise impede or harm in any manner Our Content, or interfere - with any other party's use of Our Content, -
  • -
  • - disrupt, interfere with, violate the security of, or attempt to - gain unauthorized access to Our Content or any computer network, -
  • -
  • - bypass, breach, avoid, remove, deactivate, impair, descramble, or - otherwise circumvent any security device, protection, or - technological measure implemented by us or any of our service - providers to protect Our Content, -
  • -
  • - use any device, software, or routine that interferes with the - function of Our Content or transmit in or through Our Content, or - use in connection with Our Content, any virus, trojan horse, worm, - backdoor, time bomb, malware, or other software or hardware - devices designed to permit unauthorized access to, or disable, - erase, or otherwise harm, any computer, systems, or software, -
  • -
  • - access or use Our Content to build or support products or services - competitive to our products or Services, -
  • -
  • - use any web scraping, web harvesting, or data extraction methods - to extract any data from Our Content, -
  • -
  • - create, use, operate, or employ any bots, robots, parsers, - spiders, scripts, programs, routines, or any other forms of - automation to engage in any activity on Our Content, -
  • -
  • - develop any third-party applications that interact with Our - Content without our prior written consent, -
  • -
  • - use or attempt to use Our Content for any person other than - yourself, -
  • -
  • - provide false, inaccurate, or misleading information in connection - with your use of or access to Our Content, or -
  • -
  • - encourage, permit, or enable any other person or entity to do any - of the foregoing. -
  • -
- - 7. Risks - -
- There are substantial risks associated with using our Services, Ink - (including the Bridge Smart Contracts) and any third party service - available on Ink, and you should carefully consider whether using - them is suitable for you in light of your circumstances, knowledge, - and financial resources. You may be subject to legal and regulatory - compliance obligations in connection with your use of our Services, - Ink (including Bridge Smart Contracts), and third party services - available on Ink, and you agree that you are solely responsible for - your compliance with all laws and regulations. You acknowledge and - agree that our Services, Ink (including Bridge Smart Contracts), and - third party services available on Ink may incorporate experimental - and novel technology and that the use of such technology involves a - high degree of risk, could unexpectedly fail or not perform as - intended, and may experience cyber-attacks, botting or other - malicious activity, or other operational or technical difficulties - or vulnerabilities related to your use of our Services, Ink - (including Bridge Smart Contracts), and third party services - available on Ink. As such, you acknowledge and agree that your use - of our Services, Ink (including the Bridge Smart Contracts) and any - third party service available on Ink, is at your own risk, and that - we aren't liable to you for any losses you incur arising from - such risks. -
- - 8. Disclaimer of Warranties -
- TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, OUR SERVICES ARE - PROVIDED ON AN “AS IS” AND “AS AVAILABLE” BASIS. WE EXPRESSLY - DISCLAIM ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, - INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A - PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT RELATING TO OUR - SERVICES. WITHOUT LIMITING THE FOREGOING, WE DISCLAIM THAT OUR - SERVICES WILL BE AVAILABLE, ACCURATE, SECURE, USEFUL, UNINTERRUPTED - OR ERROR-FREE; THAT DEFECTS WITH OUR SERVICES CAN OR WILL BE - CORRECTED, OR THAT THE SERVERS THAT MAKE THEM AVAILABLE ARE FREE - FROM VIRUSES OR OTHER HARMFUL COMPONENTS. WE DON'T PROVIDE ANY - UPTIME GUARANTEES, AND WE MAY DISCONTINUE MAKING OUR SERVICES - AVAILABLE TO YOU AT ANY TIME AT OUR SOLE DISCRETION. -
- - 9. Limitations on Liability -
- TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, NEITHER WE NOR - OUR DIRECTORS, MEMBERS, EMPLOYEES OR AGENTS WILL BE LIABLE WITH - RESPECT TO ANY CLAIM, WHETHER IN CONTRACT, TORT (INCLUDING - NEGLIGENCE), OR OTHERWISE, RELATED IN ANY WAY TO THESE TERMS OR OUR - SERVICES FOR (1) ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, - OR EXEMPLARY DAMAGES, INCLUDING DAMAGES FOR LOSS OF PROFITS, - GOODWILL, USE, OR DATA AND (2) TO THE EXTENT NOT ALREADY EXCLUDED, - ANY AMOUNTS EXCEEDING $100 UNITED STATES DOLLARS. -
- - 10. Indemnification -
- You agree to defend, indemnify, and hold harmless us and our - officers, directors, members, employees, and agents, from any claim, - demand, action, damage, loss, cost, or expense (including reasonable - attorneys' fees) relating to (1) your use of our Services, (2) - your violation of these Terms, (3) your infringement, - misappropriation, or violation of the rights of any other person or - entity, (4) any content, materials, or information (in any form or - medium) that you submit, post, upload, provide, contribute, or make - available (or authorize or instruct us to do so) through the - Services, and (5) any Feedback. If you're obligated to - indemnify us, we have the right to control any action if we want and - you cannot settle any action without our consent, unless the - settlement is only for money damages which you entirely pay. -
- - 11. Dispute Resolution; Arbitration; Applicable Law -
- - PLEASE READ THE FOLLOWING PARAGRAPH CAREFULLY BECAUSE IT REQUIRES - YOU TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN - WHICH YOU CAN SEEK RELIEF. - -
-
- You and us agree to arbitrate any dispute arising from these Terms - or your use of the Services, except for disputes in which either - party seeks equitable and other relief for the alleged unlawful use - of copyrights, trademarks, trade names, logos, trade secrets or - patents. ARBITRATION PREVENTS YOU FROM SUING IN COURT OR FROM HAVING - A JURY TRIAL. You and us agree to notify each other in writing of - any dispute within 30 days of when it arises. Notice to us must be - sent to legal@inkonchain.com. You and us further agree: (a) to - attempt informal resolution prior to any demand for arbitration; (b) - that any arbitration will occur in San Francisco, California; (c) - that arbitration will be conducted confidentially by a single - arbitrator in accordance with the rules of JAMS; and (d) that the - state or federal courts in San Francisco, California have exclusive - jurisdiction over any appeals of an arbitration award and over any - suit between the parties not subject to arbitration. Other than - class procedures and remedies discussed below, the arbitrator has - the authority to grant any remedy that would otherwise be available - in court. Any dispute between the parties will be governed by these - Terms and the laws of the State of California and applicable United - States law, without giving effect to any conflict of laws principles - that may provide for the application of the law of another - jurisdiction. Whether the dispute is heard in arbitration or in - court, you and us won't commence against the other a class - action, class arbitration or representative action or proceeding. -
- - 12. Suspension; Termination; Discontinuance -
- We can, at any time and without liability or prior notice to you: -
-
    -
  • modify or discontinue our Services (or any parts of them),
  • -
  • - suspend, restrict, or terminate your access to our Services, or -
  • -
  • suspend, restrict, or delete Your Content.
  • -
- -
- You may terminate your use of our Services at any time by ceasing to - access or use our Services. -
- - 13. Personal Data -
- Please read our{" "} - - Privacy Notice - {" "} - for information about how we collect, use, and share your personal - information. Our Privacy Notice is incorporated into these Terms by - reference. -
- - 14. Notices -
- You agree that we may electronically provide you all communications, - agreements, documents, notices, and disclosures (“ - Communications”) in connection with your access or use of our - Services. You agree that we may provide Communications to you by - posting them on our Services, by emailing them to you at the email - address you provide, or by sending an SMS or text message to a - mobile phone number that you provide. Your carrier's normal - messaging, data, and other rates and fees may apply to any mobile - Communications you should retain copies of all Communications for - your records. -
- -
- You may withdraw your consent to receive electronic Communications - by sending a withdrawal notice via the contact form on our website. - If you do, we may suspend or terminate your use of our Services. -
- - 15. General -
Force Majeure.
-
- We are not responsible or liable for any error, delay, loss, or - damage arising from any event beyond our reasonable control (each, a - “Force Majeure Event”). Force Majeure Events include flood, - extraordinary weather conditions, earthquake, or other act of God, - fire, war, insurrection, riot, labor dispute, accident, action of - government, communications, power failure, or equipment or software - malfunction. -
- -
Taxes
-
- You alone are responsible for determining what taxes apply to your - use of our Services, Ink (including the Bridge Smart Contracts) and - any third party service available on Ink, and for reporting and - remitting the correct taxes to the appropriate tax authorities. You - agree that we have no responsibility or liability for determining - what taxes apply or for collecting, reporting, withholding, or - remitting any taxes arising from any trades or transactions, unless - otherwise required by law. -
- -
Waiver.
-
- If we don't exercise a right under these Terms, we are not - waiving such right. -
- -
Enforceability.
-
- If any provision of these Terms is invalid or unenforceable, such - provision will be deemed severed from these Terms, but such - invalidity or unenforceability won't affect any other part of - these Terms and the rest of these Terms will remain in full force - and effect; provided, however, that if any such invalid or - unenforceable provision can be modified so as to be valid and - enforceable as a matter of law, then such provision is not deemed - severed from these Terms and instead is deemed to have been modified - so as to be valid and enforceable to the maximum extent permitted by - law. -
- -
Assignment.
-
- You cannot assign or transfer any right or obligation under these - Terms without our prior written consent. We can assign or transfer - any right or obligation under these Terms, in whole or in part, - without your consent, subject to compliance with applicable laws. In - addition, if we are acquired by or merged with a third-party entity, - we reserve the right to transfer or assign the information we have - collected from you as part of such merger, acquisition, sale, or - other change of control. -
- -
Interpretation.
-
- In these Terms, (1) “or” is inclusive, (2) “including” or “such as” - aren't words of limitation, (3) headings are only for your - convenience, and (4) the “Summary of Ink Limited Terms of Service” - and any definitions provided only for informational purposes are - provided only for your convenience, isn't legally binding, and - does not affect the interpretation of these Terms. -
- -
Relationship.
-
- We don't provide investment or tax advice, including in - connection with your use of our Services. You agree not to rely upon - any statement or content on our Services, or that is otherwise - attributed to us, as a recommendation, advice, or guidance regarding - trades, investments, tax, or any other similar issues. We also are - not acting as your bank, broker, intermediary, agent, advisor, or as - your fiduciary in any capacity, including with respect to the - services. -
- -
- Nothing in these Terms will be deemed to or is intended to be deemed - to, nor will it, cause you and us to be treated as partners, joint - venturers, or otherwise as joint associates for profit. -
- -
Survival.
-
- If these Terms expire or terminate, the following Sections will - remain fully binding upon you and us: 1, 2, 2, 3, 4, 5, 6, 8, 9, 10, - and 11. Termination won't limit any of our rights or remedies - at law or equity. -
- -
Entire Agreement.
-
- These Terms are the entire agreement between you and us, and - supersede all prior and contemporaneous understandings between you - and us about our Services. These Terms include all applicable - Annexes hereto. -
-
+ + Terms of Service + +
+ + The following is a summary of the Ink Limited Terms of Service + provided solely for your convenience and informational purposes. You + must read the complete Terms of Service below for the legally binding + terms. + +
+
+ Summary of Ink Limited Terms of Service +
+
+ This summary provides an overview of our Terms of Service that apply to + your use of our website and other services. This summary isn't + legally binding and is purely for informational purposes. While we hope + this summary section is helpful, please read the complete Terms of + Service below for the legally binding terms. +
+
    +
  • + Eligibility. The Terms of Service sets forth certain criteria + for your eligibility to use our services. +
  • +
  • + Ink, Our Services, and Third Party Services. Below, you'll + find more information about our services, Ink, and Third Party + Services. For clarity, Ink and Third Party Services are not part of + our services, and as such we have no obligations or liability to you + in connection with your use of Ink or Third Party Services. In + addition, we explain that there are a number of ways in which you are + prohibited from using our services, some of which are covered below.{" "} +
  • +
  • + Availability of Services. Certain services may not be available + or may only be available in certain jurisdictions. We also may stop + providing certain services.{" "} +
  • +
  • + Content and Feedback. You give us the right to use any content + you provide, and we will own any feedback, suggestions, or ideas you + provide related to our website or services. +
  • +
  • + Restrictions. There are also a number of ways in which you are + prohibited from using our website or services, some of which are + covered below. +
  • +
  • + Changes. The Terms of Service discuss changes we can make to + our website, services, or the terms themselves, including how we can + suspend or terminate the website or services. Changes to the Terms of + Service, our services, or website may be made at any time, with or + without notice. Continued use of our services and website is your + consent to the Terms of Service and any changes to them. +
  • +
  • + Risks and Liability. There are risks associated with using our + services, Ink, or Third Party Services. The Terms of Service also + cover your responsibility for taking on risk, limit our liability to + you, and limit the remedies you may have against us and how you may + seek those remedies. +
  • +
  • + Dispute Resolution. We hope to avoid disputes, but if there is + a dispute, you are required to arbitrate disputes with us and the + manner in which you can seek relief may be limited. +
  • +
+ +
+ The following is the binding and enforceable Terms of Service. +
+
+ Ink Limited Terms of Service +
+
+ Last Updated: November 1, 2024 +
+ +
+ Please read these Terms of Service (“Terms”) carefully, as they + are binding and govern your use of our website and services, including + as more fully addressed below (“Services”). By accessing or using + our Services, or by submitting any content, you agree to these Terms.{" "} +
+ +
+ These Terms may change at any time and without notice, including updates + to (1) reflect changes to our Services; (2) reflect the addition of new + services, features, technologies, or offers; (3) address legal, + regulatory, or security developments; or (4) prevent harm to our + Services or to those using our Services. These Terms can only be + modified in writing, and any change will be effective as of the Last + Updated date set forth above. You should frequently check these Terms + for updates. If you continue to access or use our Services, after we + change these Terms, you agree to all our changes. +
+ +
+ These Terms are a legally binding agreement between “you” (an + individual, or an entity acting through an authorized individual) and + Ink Limited, C/O CO Services Cayman Limited, PO Box 10008 Willow House + Cricket Square, Grand Cayman, Cayman Islands KY1-1001 (including its + affiliates, “we”, “us”, or “our + ”). +
+ +
+ To make these Terms easier to read, we have organized them as follows: +
+ +
    +
  • + Terms of Service +
      +
    1. Eligibility
    2. +
    3. Ink
    4. +
    5. Our Services
    6. +
    7. Third Party Services
    8. +
    9. Content; Feedback
    10. +
    11. Restrictions
    12. +
    13. Risks
    14. +
    15. Disclaimer of Warranties
    16. +
    17. Limitations on Liability
    18. +
    19. Indemnification
    20. +
    21. Dispute Resolution; Arbitration; Applicable Law
    22. +
    23. Suspension; Termination; Discontinuance
    24. +
    25. Personal Data
    26. +
    27. Notices
    28. +
    29. General
    30. +
    +
  • +
+ + 1. Eligibility + +
+ To use any of our Services, you must meet at least the following + conditions (“Conditions”): +
+
    +
  • + if you are an individual, be old enough to legally form a binding + contract in your jurisdiction (in the USA, that's 18 years old, + but it may be different where you live), +
  • +
  • + if you are an entity, be duly organized and validly existing under the + applicable laws of the jurisdiction of your organization, +
  • +
  • + have full power and authority to enter into these Terms without + violating any other agreement you have made, +
  • +
  • not have been restricted from using our services,
  • +
  • + if you are an individual, not be located in, under the control of, or + resident in—or, if you are an entity, not be directly or indirectly + owned or controlled by any person located in, under the control of, or + organized or resident in—any sanctioned or embargoed jurisdiction + (including Crimea, Cuba, Donetsk, Iran, Luhansk, North Korea, Russia, + Belarus, and Syria), or any jurisdiction where we may have restricted + use of any services, and +
  • +
  • + if you are an individual, not be listed on—or, if you are an entity, + not listed on or be directly or indirectly owned or controlled by any + person listed on—the Office of Foreign Assets Control of the U.S. + Department of Treasury's Specially Designated Nationals and + Blocked Persons List (“SDN”), the U.S. Department of + Commerce's Denied Persons List, Consolidated Non-SDN Lists + available{" "} + + here + + , the United Nations (UN) Security Council Consolidated List available{" "} + + here + + , or regional or foreign government watchlists. +
  • +
+ + 2. Ink + +
+ Ink is a layer 2 optimistic rollup for the Ethereum blockchain (“ + Ink”) built on open source software that we do not control. Ink + includes certain open source smart contracts that can receive and hold + certain digital currency or other digital assets (“ + Digital Assets”), which are then represented on Ink (“ + Bridge Smart Contracts”). You may also use the Bridge Smart + Contract to withdraw your Digital Assets from Ink. We do not take + possession, custody, or control of any Digital Assets on Ink or sent to + its Bridge Smart Contracts. There is a risk that the open source + software, including any upgrades, that the Ink is built on may introduce + bugs, viruses, Trojan horses, or other vulnerabilities or changes to Ink + that could result in a partial or complete disruption of Ink or loss, + damage, or destruction of your Digital Assets. IWe do not control third + party applications, including their development or deployment, on Ink, + or any activity or transactions occurring on Ink. Therefore, you + acknowledge and agree that Ink, including its Bridge Smart Contracts, + are not part of our Services, and we have no obligations or liability to + you in relation to your use of Ink or its Bridge Smart Contracts, and + you use Ink and its Bridge Smart Contracts at your own risk. +
+ + 3. Our Services + +
+ Testnet +
+ +
+ The Ink testnet (the “Testnet”) provides a testing environment + intended to reproduce the functionality and experience of Ink to allow + you to develop applications for Ink and otherwise improve the stability, + security, and design of Ink and applications built for Ink. Any Testnet + tokens are for testing purposes on the Testnet, have no value, and are + not redeemable or convertible for any other token or item of value. Ink + may change, upgrade, discontinue, or terminate the Testnet at any time + and without notice. +
+ +
+ Ink Sequencer +
+ +
+ Ink operates a node that receives, records, and combines multiple + transaction records from Ink into batches, which are then settled to the + Ethereum blockchain in a specified format (the “Ink Sequencer”). + You are not required to use the Ink Sequencer. If you use the Ink + Sequencer, you agree to pay any applicable gas fees, which may be + modified at any time. The Ink Sequencer does not store, take possession, + custody, or control of your Digital Assets at any time, except for + receiving applicable gas fees. It also does not have the ability to + modify, reverse, or otherwise modify any transactions submitted to the + Ethereum blockchain.Applicable gas fees received in connection with your + use of the Ink Sequencer may be modified at any time. +
+ + 4. Third Party Services + +
+ When using our Services or Ink (including Bridge Smart Contracts), you + may have the opportunity to use third party services. We do not verify, + approve, monitor, control or endorse any third-party services and are + not liable to you for third-party content or services in any way. Your + use of third-party content or services may be subject to additional + terms and conditions with third-parties, and we are not part of those + terms or conditions. You may also incur third-party fees, such as fees + associated with third-party services, or other fees, such as gas fees. + You're solely responsible for paying all such fees. If any + third-party terms and conditions conflict with these Terms, you agree + that these Terms control. Under no circumstances shall Ink incur any + liability, of any kind, to you arising from or relating to fees charged + to you by third-party services linked to or accessed through our + Services or Ink (including Bridge Smart Contracts). +
+ + 5. Content; Feedback + +
+ Our Content. We or our licensors own + (1) our Services, (2) all content, materials, software, and trademarks + found on them, (3) the selection and arrangement of them, and (4) all + intellectual property rights in them (collectively, “Our Content + ”). So long as you comply with these Terms, you're permitted to use + our Services, and Our Content made available to you as part of our + Services, but only for your own benefit. We can take away this + permission at any time for any reason. You don't have or acquire + any rights to Our Content beyond the limited, revocable permission in + the previous sentence. +
+ +
+ Your Content. You may have the + opportunity to transmit content or materials in or through our Services + (“Your Content”), excluding Personal Data as defined in our{" "} + + Privacy Notice + + ). You grant us a perpetual, irrevocable, royalty-free, worldwide, fully + sublicensable, non-exclusive right and license to use and exploit your + Content in any manner and for any purpose. +
+ +
+ Feedback. You may provide us + feedback, suggestions, or ideas relating to our Services (“ + Feedback”). You represent and warrant that you have the right to + provide us any feedback that you provide. You agree that we'll own + all feedback, and you hereby irrevocably assign all right, title, and + interest in and to all feedback to us. +
+ + 6. Restrictions +
You won't:
+
    +
  • + use Our Content to engage in, pay for, or support any illegal, + fraudulent, deceptive, or manipulative conduct, including illegal + gambling activities, money-laundering, or terrorist activities, +
  • +
  • + use Our Content in any way or for any purpose that infringes, + misappropriates, or otherwise violates any intellectual property + rights or other rights of us or any third party, or applicable local, + state, or federal law or regulation, or that is prohibited by these + Terms, +
  • +
  • + remove, delete, alter, or obscure any trademarks, specifications, + warranties, or disclaimers, or any intellectual property or + proprietary rights notices from Our Content, +
  • +
  • + use, export, reexport or transfer any of Our Content for any purpose + prohibited by U.S. or local export or import control laws and + regulations, +
  • +
  • + copy, modify, disassemble, decompile, or reverse engineer Our Content + (except to the extent such restrictions are prohibited by applicable + law), +
  • +
  • + use (except as expressly permitted in these Terms), license, + sublicense, sell, resell, transfer, assign, distribute or otherwise + commercially exploit or make available to any third party Our Content + in any way, +
  • +
  • + take any action or use Our Content in any manner that could damage, + destroy, disrupt, disable, impair, overburden, or otherwise impede or + harm in any manner Our Content, or interfere with any other + party's use of Our Content, +
  • +
  • + disrupt, interfere with, violate the security of, or attempt to gain + unauthorized access to Our Content or any computer network, +
  • +
  • + bypass, breach, avoid, remove, deactivate, impair, descramble, or + otherwise circumvent any security device, protection, or technological + measure implemented by us or any of our service providers to protect + Our Content, +
  • +
  • + use any device, software, or routine that interferes with the function + of Our Content or transmit in or through Our Content, or use in + connection with Our Content, any virus, trojan horse, worm, backdoor, + time bomb, malware, or other software or hardware devices designed to + permit unauthorized access to, or disable, erase, or otherwise harm, + any computer, systems, or software, +
  • +
  • + access or use Our Content to build or support products or services + competitive to our products or Services, +
  • +
  • + use any web scraping, web harvesting, or data extraction methods to + extract any data from Our Content, +
  • +
  • + create, use, operate, or employ any bots, robots, parsers, spiders, + scripts, programs, routines, or any other forms of automation to + engage in any activity on Our Content, +
  • +
  • + develop any third-party applications that interact with Our Content + without our prior written consent, +
  • +
  • + use or attempt to use Our Content for any person other than yourself, +
  • +
  • + provide false, inaccurate, or misleading information in connection + with your use of or access to Our Content, or +
  • +
  • + encourage, permit, or enable any other person or entity to do any of + the foregoing. +
  • +
+ + 7. Risks + +
+ There are substantial risks associated with using our Services, Ink + (including the Bridge Smart Contracts) and any third party service + available on Ink, and you should carefully consider whether using them + is suitable for you in light of your circumstances, knowledge, and + financial resources. You may be subject to legal and regulatory + compliance obligations in connection with your use of our Services, Ink + (including Bridge Smart Contracts), and third party services available + on Ink, and you agree that you are solely responsible for your + compliance with all laws and regulations. You acknowledge and agree that + our Services, Ink (including Bridge Smart Contracts), and third party + services available on Ink may incorporate experimental and novel + technology and that the use of such technology involves a high degree of + risk, could unexpectedly fail or not perform as intended, and may + experience cyber-attacks, botting or other malicious activity, or other + operational or technical difficulties or vulnerabilities related to your + use of our Services, Ink (including Bridge Smart Contracts), and third + party services available on Ink. As such, you acknowledge and agree that + your use of our Services, Ink (including the Bridge Smart Contracts) and + any third party service available on Ink, is at your own risk, and that + we aren't liable to you for any losses you incur arising from such + risks. +
+ + 8. Disclaimer of Warranties +
+ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, OUR SERVICES ARE + PROVIDED ON AN “AS IS” AND “AS AVAILABLE” BASIS. WE EXPRESSLY DISCLAIM + ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING + IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, + TITLE, AND NON-INFRINGEMENT RELATING TO OUR SERVICES. WITHOUT LIMITING + THE FOREGOING, WE DISCLAIM THAT OUR SERVICES WILL BE AVAILABLE, + ACCURATE, SECURE, USEFUL, UNINTERRUPTED OR ERROR-FREE; THAT DEFECTS WITH + OUR SERVICES CAN OR WILL BE CORRECTED, OR THAT THE SERVERS THAT MAKE + THEM AVAILABLE ARE FREE FROM VIRUSES OR OTHER HARMFUL COMPONENTS. WE + DON'T PROVIDE ANY UPTIME GUARANTEES, AND WE MAY DISCONTINUE MAKING + OUR SERVICES AVAILABLE TO YOU AT ANY TIME AT OUR SOLE DISCRETION. +
+ + 9. Limitations on Liability +
+ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, NEITHER WE NOR OUR + DIRECTORS, MEMBERS, EMPLOYEES OR AGENTS WILL BE LIABLE WITH RESPECT TO + ANY CLAIM, WHETHER IN CONTRACT, TORT (INCLUDING NEGLIGENCE), OR + OTHERWISE, RELATED IN ANY WAY TO THESE TERMS OR OUR SERVICES FOR (1) ANY + INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR EXEMPLARY DAMAGES, + INCLUDING DAMAGES FOR LOSS OF PROFITS, GOODWILL, USE, OR DATA AND (2) TO + THE EXTENT NOT ALREADY EXCLUDED, ANY AMOUNTS EXCEEDING $100 UNITED + STATES DOLLARS. +
+ + 10. Indemnification +
+ You agree to defend, indemnify, and hold harmless us and our officers, + directors, members, employees, and agents, from any claim, demand, + action, damage, loss, cost, or expense (including reasonable + attorneys' fees) relating to (1) your use of our Services, (2) your + violation of these Terms, (3) your infringement, misappropriation, or + violation of the rights of any other person or entity, (4) any content, + materials, or information (in any form or medium) that you submit, post, + upload, provide, contribute, or make available (or authorize or instruct + us to do so) through the Services, and (5) any Feedback. If you're + obligated to indemnify us, we have the right to control any action if we + want and you cannot settle any action without our consent, unless the + settlement is only for money damages which you entirely pay. +
+ + 11. Dispute Resolution; Arbitration; Applicable Law +
+ + PLEASE READ THE FOLLOWING PARAGRAPH CAREFULLY BECAUSE IT REQUIRES YOU + TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN WHICH YOU + CAN SEEK RELIEF. + +
+
+ You and us agree to arbitrate any dispute arising from these Terms or + your use of the Services, except for disputes in which either party + seeks equitable and other relief for the alleged unlawful use of + copyrights, trademarks, trade names, logos, trade secrets or patents. + ARBITRATION PREVENTS YOU FROM SUING IN COURT OR FROM HAVING A JURY + TRIAL. You and us agree to notify each other in writing of any dispute + within 30 days of when it arises. Notice to us must be sent to + legal@inkonchain.com. You and us further agree: (a) to attempt informal + resolution prior to any demand for arbitration; (b) that any arbitration + will occur in San Francisco, California; (c) that arbitration will be + conducted confidentially by a single arbitrator in accordance with the + rules of JAMS; and (d) that the state or federal courts in San + Francisco, California have exclusive jurisdiction over any appeals of an + arbitration award and over any suit between the parties not subject to + arbitration. Other than class procedures and remedies discussed below, + the arbitrator has the authority to grant any remedy that would + otherwise be available in court. Any dispute between the parties will be + governed by these Terms and the laws of the State of California and + applicable United States law, without giving effect to any conflict of + laws principles that may provide for the application of the law of + another jurisdiction. Whether the dispute is heard in arbitration or in + court, you and us won't commence against the other a class action, + class arbitration or representative action or proceeding. +
+ + 12. Suspension; Termination; Discontinuance +
+ We can, at any time and without liability or prior notice to you: +
+
    +
  • modify or discontinue our Services (or any parts of them),
  • +
  • suspend, restrict, or terminate your access to our Services, or
  • +
  • suspend, restrict, or delete Your Content.
  • +
+ +
+ You may terminate your use of our Services at any time by ceasing to + access or use our Services. +
+ + 13. Personal Data +
+ Please read our{" "} + + Privacy Notice + {" "} + for information about how we collect, use, and share your personal + information. Our Privacy Notice is incorporated into these Terms by + reference. +
+ + 14. Notices +
+ You agree that we may electronically provide you all communications, + agreements, documents, notices, and disclosures (“ + Communications”) in connection with your access or use of our + Services. You agree that we may provide Communications to you by posting + them on our Services, by emailing them to you at the email address you + provide, or by sending an SMS or text message to a mobile phone number + that you provide. Your carrier's normal messaging, data, and other + rates and fees may apply to any mobile Communications you should retain + copies of all Communications for your records. +
+ +
+ You may withdraw your consent to receive electronic Communications by + sending a withdrawal notice via the contact form on our website. If you + do, we may suspend or terminate your use of our Services. +
+ + 15. General +
Force Majeure.
+
+ We are not responsible or liable for any error, delay, loss, or damage + arising from any event beyond our reasonable control (each, a “ + Force Majeure Event”). Force Majeure Events include flood, + extraordinary weather conditions, earthquake, or other act of God, fire, + war, insurrection, riot, labor dispute, accident, action of government, + communications, power failure, or equipment or software malfunction. +
+ +
Taxes
+
+ You alone are responsible for determining what taxes apply to your use + of our Services, Ink (including the Bridge Smart Contracts) and any + third party service available on Ink, and for reporting and remitting + the correct taxes to the appropriate tax authorities. You agree that we + have no responsibility or liability for determining what taxes apply or + for collecting, reporting, withholding, or remitting any taxes arising + from any trades or transactions, unless otherwise required by law. +
+ +
Waiver.
+
+ If we don't exercise a right under these Terms, we are not waiving + such right. +
+ +
Enforceability.
+
+ If any provision of these Terms is invalid or unenforceable, such + provision will be deemed severed from these Terms, but such invalidity + or unenforceability won't affect any other part of these Terms and + the rest of these Terms will remain in full force and effect; provided, + however, that if any such invalid or unenforceable provision can be + modified so as to be valid and enforceable as a matter of law, then such + provision is not deemed severed from these Terms and instead is deemed + to have been modified so as to be valid and enforceable to the maximum + extent permitted by law. +
+ +
Assignment.
+
+ You cannot assign or transfer any right or obligation under these Terms + without our prior written consent. We can assign or transfer any right + or obligation under these Terms, in whole or in part, without your + consent, subject to compliance with applicable laws. In addition, if we + are acquired by or merged with a third-party entity, we reserve the + right to transfer or assign the information we have collected from you + as part of such merger, acquisition, sale, or other change of control. +
+ +
Interpretation.
+
+ In these Terms, (1) “or” is inclusive, (2) “including” or “such as” + aren't words of limitation, (3) headings are only for your + convenience, and (4) the “Summary of Ink Limited Terms of Service” and + any definitions provided only for informational purposes are provided + only for your convenience, isn't legally binding, and does not + affect the interpretation of these Terms. +
+ +
Relationship.
+
+ We don't provide investment or tax advice, including in connection + with your use of our Services. You agree not to rely upon any statement + or content on our Services, or that is otherwise attributed to us, as a + recommendation, advice, or guidance regarding trades, investments, tax, + or any other similar issues. We also are not acting as your bank, + broker, intermediary, agent, advisor, or as your fiduciary in any + capacity, including with respect to the services. +
+ +
+ Nothing in these Terms will be deemed to or is intended to be deemed to, + nor will it, cause you and us to be treated as partners, joint + venturers, or otherwise as joint associates for profit. +
+ +
Survival.
+
+ If these Terms expire or terminate, the following Sections will remain + fully binding upon you and us: 1, 2, 2, 3, 4, 5, 6, 8, 9, 10, and 11. + Termination won't limit any of our rights or remedies at law or + equity. +
+ +
Entire Agreement.
+
+ These Terms are the entire agreement between you and us, and supersede + all prior and contemporaneous understandings between you and us about + our Services. These Terms include all applicable Annexes hereto.
); diff --git a/src/app/[locale]/(info)/training-ground-rules/page.tsx b/src/app/[locale]/(info)/training-ground-rules/page.tsx index f17eaed..5a05bec 100644 --- a/src/app/[locale]/(info)/training-ground-rules/page.tsx +++ b/src/app/[locale]/(info)/training-ground-rules/page.tsx @@ -1,651 +1,626 @@ import { ColoredText } from "@/components/ColoredText"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; export default function TrainingGroundRules() { return ( <> -
-
- - Ink Training Ground Official Rules - + + Ink Training Ground Official Rules + -
- BY ENTERING THE COMPETITION, YOU AGREE TO THESE OFFICIAL RULES AND - THE{" "} - - INKONCHAIN.COM TERMS OF SERVICE - - , WHICH EACH FORM A CONTRACT. READ THEM CAREFULLY BEFORE ENTERING. - PURCHASE, PAYMENT, OR FUNDING WILL NOT INCREASE YOUR CHANCES OF - WINNING. -
+
+ BY ENTERING THE COMPETITION, YOU AGREE TO THESE OFFICIAL RULES AND THE{" "} + + INKONCHAIN.COM TERMS OF SERVICE + + , WHICH EACH FORM A CONTRACT. READ THEM CAREFULLY BEFORE ENTERING. + PURCHASE, PAYMENT, OR FUNDING WILL NOT INCREASE YOUR CHANCES OF WINNING. +
- - 1. Ink - -
- Ink's Training Ground Competition ("Competition") is - run by Ink Foundation, a Cayman Islands foundation company at CO - Services Cayman Limited, PO Box 10008, Willow House, Cricket Square, - Grand Cayman KY1-1001, Cayman Islands ("Ink"). -
+ + 1. Ink + +
+ Ink's Training Ground Competition ("Competition") is run + by Ink Foundation, a Cayman Islands foundation company at CO Services + Cayman Limited, PO Box 10008, Willow House, Cricket Square, Grand Cayman + KY1-1001, Cayman Islands ("Ink"). +
- - 2. Eligibility - -
- Subject to these Official Rules, the Competition is only open to - those who: -
-
    -
  • Agree to the Inkonchain.com Terms of Service;
  • -
  • - Agree to these Official Rules and meet and comply with any and all - applicable requirements herein; and -
  • -
  • - Are not otherwise ineligible to participate under the - Inkonchain.com Terms of Service, these Official Rules, or - applicable law. -
  • -
-
- Your participation in the Competition and any claim of Prizes does - not require or involve any form of purchase, payment, or tangible - consideration provided to Ink, nor otherwise require or involve any - acceptance of value by Ink from you. -
-
- Employees, officers, directors, managers, agents, consultants, - representatives and family members of Ink employees and consultants - (or people living in the same household whether related or not), or - their corporate partners, divisions, subsidiaries, affiliates, - successors in interest, advertising, promotion, and public relations - agencies (collectively, the "Competition Entities") are - not eligible. For the purposes of the Competition, family members - are defined as spouse, mother, father, legal guardian, in-laws, - grandmother, grandfather, brother, sister, children and - grandchildren (including "step" as they may apply). -
+ + 2. Eligibility + +
+ Subject to these Official Rules, the Competition is only open to those + who: +
+
    +
  • Agree to the Inkonchain.com Terms of Service;
  • +
  • + Agree to these Official Rules and meet and comply with any and all + applicable requirements herein; and +
  • +
  • + Are not otherwise ineligible to participate under the Inkonchain.com + Terms of Service, these Official Rules, or applicable law. +
  • +
+
+ Your participation in the Competition and any claim of Prizes does not + require or involve any form of purchase, payment, or tangible + consideration provided to Ink, nor otherwise require or involve any + acceptance of value by Ink from you. +
+
+ Employees, officers, directors, managers, agents, consultants, + representatives and family members of Ink employees and consultants (or + people living in the same household whether related or not), or their + corporate partners, divisions, subsidiaries, affiliates, successors in + interest, advertising, promotion, and public relations agencies + (collectively, the "Competition Entities") are not eligible. + For the purposes of the Competition, family members are defined as + spouse, mother, father, legal guardian, in-laws, grandmother, + grandfather, brother, sister, children and grandchildren (including + "step" as they may apply). +
- - 3. Competition Period - -
- The "Competition Period" for each week of the Competition - will begin at 12:00 PM EST on the Monday of the applicable - Competition week, and ends at 11:59 AM EST on the Sunday of the - applicable Competition week. -
+ + 3. Competition Period + +
+ The "Competition Period" for each week of the Competition will + begin at 12:00 PM EST on the Monday of the applicable Competition week, + and ends at 11:59 AM EST on the Sunday of the applicable Competition + week. +
- - 4. How to Participate - -
To participate in this Competition, you will need to:
-
    -
  • - Join Ink's{" "} - - Discord - {" "} - and follow @inkonchain on X to receive announcements and - information about the contest; and -
  • -
  • - Register an EVM-compatible wallet with{" "} - - Guild - - ; and -
  • -
  • - Follow the instructions to complete each of the announced tasks. -
  • -
-
- Participants using or accessing third party sites or services in - connection with the Competition use and access such sites and - services subject to the terms applicable to third party services - contained in the Inkonchain.com Terms of Service. Further, you agree - to comply with any terms required by such third party services. -
-
- For each week of the competition, participants will need to complete - five tasks, which all must be completed to be eligible to win a - prize. All five tasks must be completed by 11:59 AM EST on the - Sunday at the end of the applicable week for the Competition. -
+ + 4. How to Participate + +
To participate in this Competition, you will need to:
+
    +
  • + Join Ink's{" "} + + Discord + {" "} + and follow @inkonchain on X to receive announcements and information + about the contest; and +
  • +
  • + Register an EVM-compatible wallet with{" "} + + Guild + + ; and +
  • +
  • + Follow the instructions to complete each of the announced tasks. +
  • +
+
+ Participants using or accessing third party sites or services in + connection with the Competition use and access such sites and services + subject to the terms applicable to third party services contained in the + Inkonchain.com Terms of Service. Further, you agree to comply with any + terms required by such third party services. +
+
+ For each week of the competition, participants will need to complete + five tasks, which all must be completed to be eligible to win a prize. + All five tasks must be completed by 11:59 AM EST on the Sunday at the + end of the applicable week for the Competition. +
- - 5. Prohibited Conduct - -
- Ink reserves the right to disqualify participants for (1) violation - of these Official Rules, including breach of the Inkonchain.com - Terms of Service; (2) violations of applicable law; (3) engaging in - unfair competition as determined by Ink in its sole discretion, or - (4) any conduct that violates the following prohibited conduct - guidelines: -
-
    -
  • - misuses or uses without authorization any Ink or third party logo, - trademark, or materials; -
  • -
  • - provides personally identifiable information about yourself or any - third parties, such as an address, phone number or any contact - information; -
  • -
  • - violates any third-party right including, but not limited to, - copyright, trademark, right of publicity or any other proprietary - right; -
  • -
  • is libelous, defamatory, disparaging or tortious;
  • -
  • is sexually-explicit;
  • -
  • - refers to or promotes lotteries or gambling, other competitions or - giveaways, or other promotions; -
  • -
  • includes explicit or offensive language;
  • -
  • advocates violence;
  • -
  • advocates illegal activities;
  • -
  • advocates tobacco, alcohol or drugs;
  • -
  • - is unlawful, in violation of or contrary to the laws or - regulations in any jurisdiction where the content is created; or -
  • -
  • - denigrates, disparages or reflects negatively on Ink, its services - and products and/or its employees, or on any other person, - company, services or product, or that disparages Ink's - competitors. -
  • -
-
- Any conduct that does not comply with the above requirements shall - be invalid and the participant responsible will be automatically - disqualified. -
+ + 5. Prohibited Conduct + +
+ Ink reserves the right to disqualify participants for (1) violation of + these Official Rules, including breach of the Inkonchain.com Terms of + Service; (2) violations of applicable law; (3) engaging in unfair + competition as determined by Ink in its sole discretion, or (4) any + conduct that violates the following prohibited conduct guidelines: +
+
    +
  • + misuses or uses without authorization any Ink or third party logo, + trademark, or materials; +
  • +
  • + provides personally identifiable information about yourself or any + third parties, such as an address, phone number or any contact + information; +
  • +
  • + violates any third-party right including, but not limited to, + copyright, trademark, right of publicity or any other proprietary + right; +
  • +
  • is libelous, defamatory, disparaging or tortious;
  • +
  • is sexually-explicit;
  • +
  • + refers to or promotes lotteries or gambling, other competitions or + giveaways, or other promotions; +
  • +
  • includes explicit or offensive language;
  • +
  • advocates violence;
  • +
  • advocates illegal activities;
  • +
  • advocates tobacco, alcohol or drugs;
  • +
  • + is unlawful, in violation of or contrary to the laws or regulations in + any jurisdiction where the content is created; or +
  • +
  • + denigrates, disparages or reflects negatively on Ink, its services and + products and/or its employees, or on any other person, company, + services or product, or that disparages Ink's competitors. +
  • +
+
+ Any conduct that does not comply with the above requirements shall be + invalid and the participant responsible will be automatically + disqualified. +
- - 6. Determination of Winners - -
- Winners for each week of the competition will be determined within - five (5) business days of the end of the applicable week. -
-
- If the task requires submission of content for judgment, each - participant is limited to submitting one eligible entry. Multiple - submissions will not be considered. Each submission will be judged - by Ink, in its sole discretion, in accordance with the judging - criteria announced for that task. In the event no criteria is - mentioned, judging will be based on originality and creativity - (equally weighted) to determine the winning submission. -
+ + 6. Determination of Winners + +
+ Winners for each week of the competition will be determined within five + (5) business days of the end of the applicable week. +
+
+ If the task requires submission of content for judgment, each + participant is limited to submitting one eligible entry. Multiple + submissions will not be considered. Each submission will be judged by + Ink, in its sole discretion, in accordance with the judging criteria + announced for that task. In the event no criteria is mentioned, judging + will be based on originality and creativity (equally weighted) to + determine the winning submission. +
- - 7. Winner Notification - -
- Winners will be notified via direct message from the official Ink - social media accounts. The winner will be required to provide - sufficient information to deliver any prize awarded. -
-
- Winners may be required to report and pay taxes on the value of any - prizes they have won, regardless of the value of that prize. Winners - are solely responsible for any taxes that may apply. You agree that - we have no responsibility or liability for determining what taxes - apply or for collecting, reporting, withholding, or remitting any - taxes arising from your participation in the Competition, unless - otherwise required by law. The recipient of any prize acknowledges - and agrees that they may be required to submit additional - documentation upon request, including Form W-9 Request for Taxpayer - Identification Number and Certification (for US Residents) or Form - W-8BEN (for non-US Residents), to be eligible to receive a prize. -
-
- Upon confirmation of the winner's eligibility and compliance - with these Rules, Prizes will be distributed to the winner. -
+ + 7. Winner Notification + +
+ Winners will be notified via direct message from the official Ink social + media accounts. The winner will be required to provide sufficient + information to deliver any prize awarded. +
+
+ Winners may be required to report and pay taxes on the value of any + prizes they have won, regardless of the value of that prize. Winners are + solely responsible for any taxes that may apply. You agree that we have + no responsibility or liability for determining what taxes apply or for + collecting, reporting, withholding, or remitting any taxes arising from + your participation in the Competition, unless otherwise required by law. + The recipient of any prize acknowledges and agrees that they may be + required to submit additional documentation upon request, including Form + W-9 Request for Taxpayer Identification Number and Certification (for US + Residents) or Form W-8BEN (for non-US Residents), to be eligible to + receive a prize. +
+
+ Upon confirmation of the winner's eligibility and compliance with + these Rules, Prizes will be distributed to the winner. +
- - 8. Prize - -
- For each week of the Competition, Ink will announce the number of - potential winners and available prizes at the time of announcing the - tasks to be completed for that week of the Competition. -
-
- All Prizes are subject to such KYC and other compliance checks as - may be reasonably required by Ink in its sole discretion. Failure to - provide any requested identification documentation or to meet any - other compliance requirements may result in your exclusion from the - Competition or the forfeiture of any and all prizes. -
- - 9. Licenses and Approvals - -
- By entering the Competition, you agree that any content and any - other information submitted by you or collected by Ink in connection - with the Competition may be used by Ink and shared with Ink's - affiliated business entities. You give consent for Ink and its agents - to obtain and deliver your name, address and other information to - third parties for the purpose of administering this Competition and - complying with applicable laws, regulations, and rules. Except as - otherwise contemplated in these Official Rules, Ink will use - personal information collected in connection with the Competition in - accordance with its online privacy policy, located at - https://inkonchain.com/privacy. -
-
- You further represent and warrant that you meet all eligibility - criteria for participation in the Competition and, in connection - with the Competition, grant the Competition Entities an irrevocable, - perpetual, non-exclusive worldwide license to publish, post, - display, copy, distribute, transmit, edit, use alone, together or - with other works, and otherwise exploit your Competition - information, and any other indicia of persona associated with your - Competition Information, in any manner whatsoever throughout the - world, including on the internet, and at any time or times, in any - and all forms of media, now known or hereafter discovered, without - additional compensation, review or approval rights, notification or - permission, except where prohibited by law, and you release all - Competition Entities from any and all liability related thereto. For - the sake of clarity, you give consent and approval to announce - Competition results during and at the completion of the Competition - Period on the internet and social media applications. YOU FURTHER - ACKNOWLEDGE THAT IF YOU ARE A WINNER, YOUR IDENTIFYING INFORMATION, - INCLUDING BUT NOT LIMITED TO YOUR NAME AND ADDRESS, MAY BE DISCLOSED - TO THIRD PARTIES TO FACILITATE THE AWARDING OF PRIZES AND COMPLY - WITH APPLICABLE LAW AND REPORTING REQUIREMENTS. -
+ + 8. Prize + +
+ For each week of the Competition, Ink will announce the number of + potential winners and available prizes at the time of announcing the + tasks to be completed for that week of the Competition. +
+
+ All Prizes are subject to such KYC and other compliance checks as may be + reasonably required by Ink in its sole discretion. Failure to provide + any requested identification documentation or to meet any other + compliance requirements may result in your exclusion from the + Competition or the forfeiture of any and all prizes. +
+ + 9. Licenses and Approvals + +
+ By entering the Competition, you agree that any content and any other + information submitted by you or collected by Ink in connection with the + Competition may be used by Ink and shared with Ink's affiliated + business entities. You give consent for Ink and its agents to obtain and + deliver your name, address and other information to third parties for + the purpose of administering this Competition and complying with + applicable laws, regulations, and rules. Except as otherwise + contemplated in these Official Rules, Ink will use personal information + collected in connection with the Competition in accordance with its + online privacy policy, located at https://inkonchain.com/privacy. +
+
+ You further represent and warrant that you meet all eligibility criteria + for participation in the Competition and, in connection with the + Competition, grant the Competition Entities an irrevocable, perpetual, + non-exclusive worldwide license to publish, post, display, copy, + distribute, transmit, edit, use alone, together or with other works, and + otherwise exploit your Competition information, and any other indicia of + persona associated with your Competition Information, in any manner + whatsoever throughout the world, including on the internet, and at any + time or times, in any and all forms of media, now known or hereafter + discovered, without additional compensation, review or approval rights, + notification or permission, except where prohibited by law, and you + release all Competition Entities from any and all liability related + thereto. For the sake of clarity, you give consent and approval to + announce Competition results during and at the completion of the + Competition Period on the internet and social media applications. YOU + FURTHER ACKNOWLEDGE THAT IF YOU ARE A WINNER, YOUR IDENTIFYING + INFORMATION, INCLUDING BUT NOT LIMITED TO YOUR NAME AND ADDRESS, MAY BE + DISCLOSED TO THIRD PARTIES TO FACILITATE THE AWARDING OF PRIZES AND + COMPLY WITH APPLICABLE LAW AND REPORTING REQUIREMENTS. +
- - 10. Limitation of Liability - + + 10. Limitation of Liability + -
- By participating in the Competition, you agree to and hereby do - release and hold harmless the Competition Entities from any damage, - injury, death, loss, claim, action, demand, or other liability - (collectively, "Claims") that may arise from your - acceptance, possession and/or use of any prize or your participation - in this Competition, regardless of whether such Claims, or knowledge - of the facts constituting such Claims, exist at the time of entry or - arise at any time thereafter. Any person attempting to defraud or in - any way tamper with this Competition may be prosecuted to the full - extent of the law. Ink reserves the right to modify these Official - Rules in any way or at any time. Ink reserves the right, in its sole - discretion, to cancel or suspend this Competition should viruses, - bugs or other causes beyond their control corrupt the - administration, security or proper operation of the Competition. In - the event of cancellation or suspension, Ink shall promptly post a - notice on Ink's website to such effect. -
+
+ By participating in the Competition, you agree to and hereby do release + and hold harmless the Competition Entities from any damage, injury, + death, loss, claim, action, demand, or other liability (collectively, + "Claims") that may arise from your acceptance, possession + and/or use of any prize or your participation in this Competition, + regardless of whether such Claims, or knowledge of the facts + constituting such Claims, exist at the time of entry or arise at any + time thereafter. Any person attempting to defraud or in any way tamper + with this Competition may be prosecuted to the full extent of the law. + Ink reserves the right to modify these Official Rules in any way or at + any time. Ink reserves the right, in its sole discretion, to cancel or + suspend this Competition should viruses, bugs or other causes beyond + their control corrupt the administration, security or proper operation + of the Competition. In the event of cancellation or suspension, Ink + shall promptly post a notice on Ink's website to such effect. +
- - 11. Additional Disclaimers - + + 11. Additional Disclaimers + -
- Without limiting any other provision in these Official Rules, - Competition Entities are not responsible or liable to any - participant or prize winner or any person claiming through such - participant or prize winner for failure to supply the prize or any - part thereof in the event that any of the Competition activities or - the Competition Entities' operations or activities are - affected, as determined by the Ink in its sole discretion, - including, without limitation, by reason of any acts of God, any - action, regulation, equipment failure, threatened terrorist acts, - terrorist acts, air raid, blackout, act of public enemy, earthquake, - war, fire, flood, epidemic, explosion, unusually severe weather, - hurricane, embargo, labor dispute or strike labor or material - shortage, transportation interruption of any kind, civil - disturbance, insurrection, riot, or any law, rule, regulation, order - or other action adopted or taken by any governmental, federal, state - or local government authority, or any other cause, whether or not - specifically mentioned above. -
+
+ Without limiting any other provision in these Official Rules, + Competition Entities are not responsible or liable to any participant or + prize winner or any person claiming through such participant or prize + winner for failure to supply the prize or any part thereof in the event + that any of the Competition activities or the Competition Entities' + operations or activities are affected, as determined by the Ink in its + sole discretion, including, without limitation, by reason of any acts of + God, any action, regulation, equipment failure, threatened terrorist + acts, terrorist acts, air raid, blackout, act of public enemy, + earthquake, war, fire, flood, epidemic, explosion, unusually severe + weather, hurricane, embargo, labor dispute or strike labor or material + shortage, transportation interruption of any kind, civil disturbance, + insurrection, riot, or any law, rule, regulation, order or other action + adopted or taken by any governmental, federal, state or local government + authority, or any other cause, whether or not specifically mentioned + above. +
- - 12. Dispute Resolution by Binding Arbitration - + + 12. Dispute Resolution by Binding Arbitration + -
- This Dispute Resolution by Binding Arbitration section is referred - to in the Terms as the "Arbitration Agreement". -
-
- PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT REQUIRES - YOU TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN WHICH - YOU CAN SEEK RELIEF. -
+
+ This Dispute Resolution by Binding Arbitration section is referred to in + the Terms as the "Arbitration Agreement". +
+
+ PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT REQUIRES YOU + TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN WHICH YOU CAN + SEEK RELIEF. +
- - Informal Process First - + + Informal Process First + -
- We are always interested in resolving disputes amicably and - efficiently, and most concerns can be resolved quickly and to your - satisfaction by emailing user support at{" "} - - legal@inkonchain.com - - . However, if such efforts prove unsuccessful, you may send to us, - by email, a written Notice of Dispute ("Notice"). The - Notice should be sent to{" "} - - legal@inkonchain.com - {" "} - and must (a) describe the nature and basis of the claim or dispute - and (b) set forth the specific relief sought. -
+
+ We are always interested in resolving disputes amicably and efficiently, + and most concerns can be resolved quickly and to your satisfaction by + emailing user support at{" "} + + legal@inkonchain.com + + . However, if such efforts prove unsuccessful, you may send to us, by + email, a written Notice of Dispute ("Notice"). The Notice + should be sent to{" "} + + legal@inkonchain.com + {" "} + and must (a) describe the nature and basis of the claim or dispute and + (b) set forth the specific relief sought. +
- - Arbitration and its Terms - -
- Subject to the informal process outlined in the preceding paragraph, - you and us agree to arbitrate any dispute arising in connection with - these Official Rules (including questions related to their validity, - existence, or termination), except for disputes in which either - party seeks equitable and other relief for the alleged unlawful use - of copyrights, trademarks, trade names, logos, trade secrets or - patents. -
-
- The arbitration will be administered in accordance with the Rules of - the London Court of International Arbitration then in effect (the - "LCIA Rules"). It will be conducted in English and the - parties will keep the arbitration proceedings confidential and not - disclose any information regarding the arbitration (or any - underlying claim or dispute) to any third party except as required - by law. -
-
- Other than class procedures and remedies expressly prohibited by - this Arbitration Agreement, the arbitrator(s) will have the - authority to provide any remedy or relief that a court of competent - jurisdiction could award, including injunctive relief. Any decision - or award rendered by the arbitrator will be final and binding, and - may be overturned by a court only for very limited reasons. Any - judgment may be entered in any court of competent jurisdiction. -
-
- If there is any inconsistency between any term of the LCIA Rules and - any term of this Arbitration Agreement, the applicable terms of this - Arbitration Agreement will control unless the arbitrator determines - that the application of the inconsistent Arbitration Agreement terms - would not result in a fundamentally fair arbitration. The arbitrator - must also follow the provisions of these Terms as a court would. -
-
- It is expressly agreed that any arbitration under these Official - Rules will take place on an individual basis – class arbitrations - and class action are not permitted. You understand that by agreeing - to these Official Rules, you and us are each waiving the right to - trial by jury or to participate in a class action or class - arbitration. -
+ + Arbitration and its Terms + +
+ Subject to the informal process outlined in the preceding paragraph, you + and us agree to arbitrate any dispute arising in connection with these + Official Rules (including questions related to their validity, + existence, or termination), except for disputes in which either party + seeks equitable and other relief for the alleged unlawful use of + copyrights, trademarks, trade names, logos, trade secrets or patents. +
+
+ The arbitration will be administered in accordance with the Rules of the + London Court of International Arbitration then in effect (the "LCIA + Rules"). It will be conducted in English and the parties will keep + the arbitration proceedings confidential and not disclose any + information regarding the arbitration (or any underlying claim or + dispute) to any third party except as required by law. +
+
+ Other than class procedures and remedies expressly prohibited by this + Arbitration Agreement, the arbitrator(s) will have the authority to + provide any remedy or relief that a court of competent jurisdiction + could award, including injunctive relief. Any decision or award rendered + by the arbitrator will be final and binding, and may be overturned by a + court only for very limited reasons. Any judgment may be entered in any + court of competent jurisdiction. +
+
+ If there is any inconsistency between any term of the LCIA Rules and any + term of this Arbitration Agreement, the applicable terms of this + Arbitration Agreement will control unless the arbitrator determines that + the application of the inconsistent Arbitration Agreement terms would + not result in a fundamentally fair arbitration. The arbitrator must also + follow the provisions of these Terms as a court would. +
+
+ It is expressly agreed that any arbitration under these Official Rules + will take place on an individual basis – class arbitrations and class + action are not permitted. You understand that by agreeing to these + Official Rules, you and us are each waiving the right to trial by jury + or to participate in a class action or class arbitration. +
- - Costs of Arbitration - -
- Payment of all filing, administration and arbitrator costs and - expenses will be governed by the LCIA Rules then in effect, except - that if you demonstrate that any such costs and expenses owed by you - under those rules would be prohibitively more expensive than a court - proceeding, then we will pay the amount of any such costs and - expenses that the arbitrator determines are necessary to prevent the - arbitration from being prohibitively more expensive than a court - proceeding. -
-
- Fees and costs may be awarded as provided pursuant to applicable - law. The arbitrator may make rulings and resolve disputes as to the - payment and reimbursement of fees or expenses at any time during the - proceeding and upon request from either party made within 14 days of - the arbitrator's ruling on the merits. -
+ + Costs of Arbitration + +
+ Payment of all filing, administration and arbitrator costs and expenses + will be governed by the LCIA Rules then in effect, except that if you + demonstrate that any such costs and expenses owed by you under those + rules would be prohibitively more expensive than a court proceeding, + then we will pay the amount of any such costs and expenses that the + arbitrator determines are necessary to prevent the arbitration from + being prohibitively more expensive than a court proceeding. +
+
+ Fees and costs may be awarded as provided pursuant to applicable law. + The arbitrator may make rulings and resolve disputes as to the payment + and reimbursement of fees or expenses at any time during the proceeding + and upon request from either party made within 14 days of the + arbitrator's ruling on the merits. +
- - Batch Arbitration - -
- To increase the efficiency of administration and resolution of - arbitrations, you and us agree that in the event that there are - one-hundred (100) or more individual claims of a substantially - similar nature filed against us by or with the assistance of the - same law firm, group of law firms, or organizations, then within a - thirty (30) day period (or as soon as possible thereafter), the LCIA - shall (a) administer the arbitration demands in batches of - one-hundred (100) claims per batch (plus, to the extent there are - less than one-hundred (100) claims left over after the batching - described above, a final batch consisting of the remaining claims); - (b) appoint one arbitrator for each batch; and (c) provide for the - resolution of each batch as a single consolidated arbitration with - one set of filing and administrative fees due per side per batch, - one procedural calendar, one hearing (if any) in a place to be - determined by the arbitrator, and one final award ("Batch - Arbitration"). -
-
- All parties agree that claims are of a "substantially similar - nature" if they arise out of or relate to the same event or - factual scenario and raise the same or similar legal issues and seek - the same or similar relief. To the extent the parties disagree on - the application of the Batch Arbitration process, the disagreeing - party shall advise the LCIA, and the LCIA shall appoint a sole - standing arbitrator to determine the applicability of the Batch - Arbitration process ("Administrative Arbitrator"). In an - effort to expedite resolution of any such dispute by the - Administrative Arbitrator, the parties agree the Administrative - Arbitrator may set forth such procedures as are necessary to resolve - any disputes promptly. The Administrative Arbitrator's fees - shall be paid by us. -
-
- You and us agree to cooperate in good faith with the LCIA to - implement the Batch Arbitration process including the payment of - single filing and administrative fees for batches of claims, as well - as any steps to minimize the time and costs of arbitration, which - may include: (i) the appointment of a discovery special master to - assist the arbitrator in the resolution of discovery disputes; and - (ii) the adoption of an expedited calendar of the arbitration - proceedings. -
-
- To the extent the parties disagree on the application of the Batch - Arbitration process, the disagreeing party shall advise the LCIA, - and the LCIA shall appoint a sole standing arbitrator to determine - the applicability of the Batch Arbitration process - ("Administrative Arbitrator"). -
-
- The arbitration will be administered in accordance with the Rules of - the London Court of International Arbitration then in effect (the - "LCIA Rules"). It will be conducted in English and the - parties will keep the arbitration proceedings confidential and not - disclose any information regarding the arbitration (or any - underlying claim or dispute) to any third party except as required - by law. -
-
- YOU AND US EXPRESSLY WAIVE ANY ABILITY TO MAINTAIN A CLASS ACTION IN - ANY FORUM. IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR - WILL NOT HAVE THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT - A CLASS ACTION, OR MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY - TO THE ARBITRATION. -
+ + Batch Arbitration + +
+ To increase the efficiency of administration and resolution of + arbitrations, you and us agree that in the event that there are + one-hundred (100) or more individual claims of a substantially similar + nature filed against us by or with the assistance of the same law firm, + group of law firms, or organizations, then within a thirty (30) day + period (or as soon as possible thereafter), the LCIA shall (a) + administer the arbitration demands in batches of one-hundred (100) + claims per batch (plus, to the extent there are less than one-hundred + (100) claims left over after the batching described above, a final batch + consisting of the remaining claims); (b) appoint one arbitrator for each + batch; and (c) provide for the resolution of each batch as a single + consolidated arbitration with one set of filing and administrative fees + due per side per batch, one procedural calendar, one hearing (if any) in + a place to be determined by the arbitrator, and one final award + ("Batch Arbitration"). +
+
+ All parties agree that claims are of a "substantially similar + nature" if they arise out of or relate to the same event or factual + scenario and raise the same or similar legal issues and seek the same or + similar relief. To the extent the parties disagree on the application of + the Batch Arbitration process, the disagreeing party shall advise the + LCIA, and the LCIA shall appoint a sole standing arbitrator to determine + the applicability of the Batch Arbitration process ("Administrative + Arbitrator"). In an effort to expedite resolution of any such + dispute by the Administrative Arbitrator, the parties agree the + Administrative Arbitrator may set forth such procedures as are necessary + to resolve any disputes promptly. The Administrative Arbitrator's + fees shall be paid by us. +
+
+ You and us agree to cooperate in good faith with the LCIA to implement + the Batch Arbitration process including the payment of single filing and + administrative fees for batches of claims, as well as any steps to + minimize the time and costs of arbitration, which may include: (i) the + appointment of a discovery special master to assist the arbitrator in + the resolution of discovery disputes; and (ii) the adoption of an + expedited calendar of the arbitration proceedings. +
+
+ To the extent the parties disagree on the application of the Batch + Arbitration process, the disagreeing party shall advise the LCIA, and + the LCIA shall appoint a sole standing arbitrator to determine the + applicability of the Batch Arbitration process ("Administrative + Arbitrator"). +
+
+ The arbitration will be administered in accordance with the Rules of the + London Court of International Arbitration then in effect (the "LCIA + Rules"). It will be conducted in English and the parties will keep + the arbitration proceedings confidential and not disclose any + information regarding the arbitration (or any underlying claim or + dispute) to any third party except as required by law. +
+
+ YOU AND US EXPRESSLY WAIVE ANY ABILITY TO MAINTAIN A CLASS ACTION IN ANY + FORUM. IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT + HAVE THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS + ACTION, OR MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE + ARBITRATION. +
- - Waiver of Right to Bring Class Action and Representative Claims; - Jury Trial Waiver - -
- WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY - CLAIM OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS - STIPULATED IN THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. -
-
- TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH - AGREE THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR - CONTROVERSY WILL BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE - PARTY'S INDIVIDUAL CAPACITY AND NOT AS PART OF ANY CLASS (OR - PURPORTED CLASS), CONSOLIDATED, MULTIPLE-PLAINTIFF, OR - REPRESENTATIVE ACTION OR PROCEEDING ("CLASS ACTION"). -
-
- YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR - CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY - ABILITY TO MAINTAIN A CLASS ACTION IN ANY FORUM. -
-
- IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT - HAVE THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS - ACTION, OR MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE - ARBITRATION. FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT - CONSOLIDATE PROCEEDINGS FOR MORE THAN ONE PERSON'S CLAIMS, AND - IT MAY NOT OTHERWISE PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER - THAN THE BATCH ARBITRATION SPECIFIED ABOVE). -
-
- FOR THE AVOIDANCE OF DOUBT, HOWEVER, YOU CAN SEEK PUBLIC INJUNCTIVE - RELIEF TO THE EXTENT AUTHORIZED BY LAW AND CONSISTENT WITH THE - EXCEPTIONS DESCRIBED ABOVE. -
-
- IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND - UNENFORCEABLE, THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, - THE PARTIES' AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH - RESPECT TO SUCH PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO - PROCEED AS A CLASS ACTION. -
-
- If a court decides that the limitations of this paragraph are deemed - invalid or unenforceable, any putative class, private attorney - general, or consolidated or representative action must be brought in - a court of proper jurisdiction and not in arbitration. -
+ + Waiver of Right to Bring Class Action and Representative Claims; Jury + Trial Waiver + +
+ WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY CLAIM + OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS STIPULATED IN + THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. +
+
+ TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH AGREE + THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR CONTROVERSY WILL + BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE PARTY'S INDIVIDUAL + CAPACITY AND NOT AS PART OF ANY CLASS (OR PURPORTED CLASS), + CONSOLIDATED, MULTIPLE-PLAINTIFF, OR REPRESENTATIVE ACTION OR PROCEEDING + ("CLASS ACTION"). +
+
+ YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR + CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY ABILITY + TO MAINTAIN A CLASS ACTION IN ANY FORUM. +
+
+ IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT HAVE + THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS ACTION, OR + MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE ARBITRATION. + FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT CONSOLIDATE + PROCEEDINGS FOR MORE THAN ONE PERSON'S CLAIMS, AND IT MAY NOT + OTHERWISE PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER THAN THE BATCH + ARBITRATION SPECIFIED ABOVE). +
+
+ FOR THE AVOIDANCE OF DOUBT, HOWEVER, YOU CAN SEEK PUBLIC INJUNCTIVE + RELIEF TO THE EXTENT AUTHORIZED BY LAW AND CONSISTENT WITH THE + EXCEPTIONS DESCRIBED ABOVE. +
+
+ IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND UNENFORCEABLE, + THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, THE PARTIES' + AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH RESPECT TO SUCH + PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO PROCEED AS A CLASS + ACTION. +
+
+ If a court decides that the limitations of this paragraph are deemed + invalid or unenforceable, any putative class, private attorney general, + or consolidated or representative action must be brought in a court of + proper jurisdiction and not in arbitration. +
- - Opt-Out - -
- You have the right to opt-out and not be bound by the Arbitration - Agreement contained in these Terms by sending written notice of your - decision to opt-out to{" "} - - legal@inkonchain.com - - . The notice must be sent to us within thirty (30) days of your - first registering to use the Services or agreeing to these Terms; - otherwise you shall be bound to arbitrate disputes on a non-class - basis in accordance with these Terms. If you opt out of only the - arbitration provisions, and not also the class action waiver, the - class action waiver still applies. You may not opt out of only the - class action waiver and not also the arbitration provisions. If you - opt-out of these arbitration provisions, we also will not be bound - by them. -
+ + Opt-Out + +
+ You have the right to opt-out and not be bound by the Arbitration + Agreement contained in these Terms by sending written notice of your + decision to opt-out to{" "} + + legal@inkonchain.com + + . The notice must be sent to us within thirty (30) days of your first + registering to use the Services or agreeing to these Terms; otherwise + you shall be bound to arbitrate disputes on a non-class basis in + accordance with these Terms. If you opt out of only the arbitration + provisions, and not also the class action waiver, the class action + waiver still applies. You may not opt out of only the class action + waiver and not also the arbitration provisions. If you opt-out of these + arbitration provisions, we also will not be bound by them. +
- - 13. General Rules - -
- Ink is not responsible for any changes or unavailability of your - internet, your wallet, dapps, other third party services, or any - other interference with your ability to access or otherwise - participate in the Competition, including your ability to timely - enter or receive notices or communicate with Ink. Ink's failure - to enforce any term of these Official Rules shall not constitute a - waiver of that provision. Ink's decisions will be final in all - matters relating to the Competition. Ink reserves the right to - restrict or void participation from any IP address if any suspicious - participation is detected. Ink reserves the right, in its sole - discretion, to void Participants who Ink believes have attempted to - tamper with or impair the administration, security, fairness or - proper play of the Competition. -
-
- In the event there is an alleged or actual ambiguity, discrepancy or - inconsistency between disclosures or other statements contained in - any Competition-related materials and/or these Official Rules - (including any alleged discrepancy or inconsistency in these - Official Rules), it will be resolved in Ink's sole discretion. - You waive any right to claim ambiguity in the Competition or these - Official Rules. If Ink determines at any time in its sole discretion - that you are disqualified, ineligible, or in violation of these - Official Rules, or engaging in behavior that Ink deems obnoxious, - inappropriate, threatening, infringing, illegal or that is intended - to annoy, abuse, threaten or harass any other person, Ink reserves - the right in its sole discretion to select an alternate winner. -
-
- The invalidity or unenforceability of any provision of these - Official Rules will not affect the validity or enforceability of any - other provision. If the Competition is not capable of running as - planned for any reason, Ink reserves the right, in its sole - discretion, to cancel, modify or suspend the Competition and award - the Prize from eligible entries received prior to cancellation, - modification, or suspension or as otherwise deemed fair and - appropriate by Ink. Ink may suspend, modify, or terminate the - Competition in its sole discretion if circumstances arise that - compromise the integrity, legality, or viability of the Competition. -
-
- Each potential Winner may be required to provide Ink with proof that - he or she is the authorized account holder and complete - documentation required for tax or other legal purposes. If a dispute - cannot be resolved to Ink's satisfaction, the individual(s) may - be deemed ineligible in Ink's sole discretion CAUTION: ANY - ATTEMPT TO DAMAGE ANY ONLINE SERVICE OR UNDERMINE THE LEGITIMATE - OPERATIONS OF THE COMPETITION VIOLATES CRIMINAL AND CIVIL LAWS. IF - SUCH AN ATTEMPT IS MADE, INK MAY SEEK DAMAGES TO THE FULLEST EXTENT - PERMITTED BY LAW AND MAY DISQUALIFY ANY PARTICIPANT MAKING SUCH - ATTEMPT. -
-
+ + 13. General Rules + +
+ Ink is not responsible for any changes or unavailability of your + internet, your wallet, dapps, other third party services, or any other + interference with your ability to access or otherwise participate in the + Competition, including your ability to timely enter or receive notices + or communicate with Ink. Ink's failure to enforce any term of these + Official Rules shall not constitute a waiver of that provision. + Ink's decisions will be final in all matters relating to the + Competition. Ink reserves the right to restrict or void participation + from any IP address if any suspicious participation is detected. Ink + reserves the right, in its sole discretion, to void Participants who Ink + believes have attempted to tamper with or impair the administration, + security, fairness or proper play of the Competition. +
+
+ In the event there is an alleged or actual ambiguity, discrepancy or + inconsistency between disclosures or other statements contained in any + Competition-related materials and/or these Official Rules (including any + alleged discrepancy or inconsistency in these Official Rules), it will + be resolved in Ink's sole discretion. You waive any right to claim + ambiguity in the Competition or these Official Rules. If Ink determines + at any time in its sole discretion that you are disqualified, + ineligible, or in violation of these Official Rules, or engaging in + behavior that Ink deems obnoxious, inappropriate, threatening, + infringing, illegal or that is intended to annoy, abuse, threaten or + harass any other person, Ink reserves the right in its sole discretion + to select an alternate winner. +
+
+ The invalidity or unenforceability of any provision of these Official + Rules will not affect the validity or enforceability of any other + provision. If the Competition is not capable of running as planned for + any reason, Ink reserves the right, in its sole discretion, to cancel, + modify or suspend the Competition and award the Prize from eligible + entries received prior to cancellation, modification, or suspension or + as otherwise deemed fair and appropriate by Ink. Ink may suspend, + modify, or terminate the Competition in its sole discretion if + circumstances arise that compromise the integrity, legality, or + viability of the Competition. +
+
+ Each potential Winner may be required to provide Ink with proof that he + or she is the authorized account holder and complete documentation + required for tax or other legal purposes. If a dispute cannot be + resolved to Ink's satisfaction, the individual(s) may be deemed + ineligible in Ink's sole discretion CAUTION: ANY ATTEMPT TO DAMAGE + ANY ONLINE SERVICE OR UNDERMINE THE LEGITIMATE OPERATIONS OF THE + COMPETITION VIOLATES CRIMINAL AND CIVIL LAWS. IF SUCH AN ATTEMPT IS + MADE, INK MAY SEEK DAMAGES TO THE FULLEST EXTENT PERMITTED BY LAW AND + MAY DISQUALIFY ANY PARTICIPANT MAKING SUCH ATTEMPT.
); diff --git a/src/app/[locale]/(info)/wizarding-academy-rules/page.tsx b/src/app/[locale]/(info)/wizarding-academy-rules/page.tsx index eea0633..bd51489 100644 --- a/src/app/[locale]/(info)/wizarding-academy-rules/page.tsx +++ b/src/app/[locale]/(info)/wizarding-academy-rules/page.tsx @@ -1,5 +1,4 @@ import { ColoredText } from "@/components/ColoredText"; -import { containerClasses } from "@/components/styles/container"; import { EXTERNAL_LINKS, Link } from "@/routing"; /** @@ -19,494 +18,484 @@ Here is the prompt that I used (change the examples if needed): 6. Change single list ol + li into a ColoredText component with 'variant="purple"' and the text-2xl or text-4xl class depending on the heading level. For instance, numbered items should have text-4xl. Use text-6xl for the main header. If the elements needs to be bold, add "font-bold" to the class as well. 7. Change mailto:legal to EXTERNAL_LINKS.legal and a Link component 8. All links should have classes "text-blue-500 hover:underline" and 'target="_blank' and 'rel="noopener noreferrer"' - 9. Wrap the whole thing in
+ 9. Wrap the whole thing in a fragment: `<>` 10. In the text, change the ' character with "'", the " character with """ */ export default function TrainingGroundRules() { return ( -
-
- - INK WIZARDING ACADEMY - OFFICIAL RULES - - -

- BY PARTICIPATING IN THE ACADEMY, YOU AGREE TO THESE OFFICIAL RULES AND - THE{" "} - - INKONCHAIN.COM TERMS OF SERVICE - - , WHICH FORM A CONTRACT. READ THEM CAREFULLY BEFORE ENTERING. - PURCHASE, PAYMENT, OR FUNDING WILL NOT INCREASE YOUR CHANCES OF - WINNING. -

- -

- Ink's Wizarding Academy ("Academy") is run by Ink - Foundation, a Cayman Islands foundation company at CO Services Cayman - Limited, PO Box 10008, Willow House, Cricket Square, Grand Cayman - KY1-1001, Cayman Islands ("Ink"). -

- - - 1. Eligibility to Participate in the Academy - - -

- You are eligible to participate in the Academy if, at the time of - entry and during the Academy, you: -

- -
    -
  • Reside in the Eligible Areas identified above;
  • -
  • Agree to the Inkonchain.com Terms of Service;
  • -
  • - Agree to these Rules and meet and comply with any and all applicable - requirements herein; -
  • -
  • - Are not otherwise ineligible to participate under the Inkonchain.com - Terms of Service, these Rules, or applicable law. -
  • -
- -

- By submitting participating in the Academy, you represent and warrant - that you meet, and will continue to meet throughout the Academy - Session, each of the above criteria and are eligible to participate in - the Academy. -

- - - 2. Disqualification - - -

- Ink reserves the right to disqualify you if Ink determines, in its - sole discretion, that you have (A) violated these Rules, including the - Inkonchain.com Terms of Service or applicable law. -

- - - 3. Daap Cosponsors - - -

- In the event that an Academy Session is co-sponsored by a Dapp, such - co-sponsorship does not constitute an endorsement of the Dapp, its - personnel, or its products or services by Ink. Further, the Daap - cosponsor will be solely responsible and liable for the determination - and notification of winners and providing any prizes. As a result, you - acknowledge and agree that Ink makes no representations or warranties, - express or implied, regarding any prize and will not be liable for any - claims, damages, losses, or injuries arising out of or related to the - receipt, use, or misuse of any prize provided by the Dapp cosponsor. - Any issues or disputes regarding the prizes must be resolved directly - with the Dapp cosponsor. -

- - - 4. Notification of Winner - - -

- If a task requires submission of content for judgment, each - participant is limited to submitting one eligible entry. Multiple - submissions will not be considered. Each submission will be judged by - Ink or the Daap co-sponsor, in its sole discretion, in accordance with - the judging criteria announced for that task. In the event no criteria - is mentioned, judging will be based on originality and creativity - (equally weighted) to determine the winning submission. -

- -

- The winner will be notified via any means of communication provided by - the participant, which may include direct message on social media - accounts and email. The winner will be required to provide sufficient - information to deliver any prize awarded. The recipient of any prize - acknowledges and agrees that they may be required to submit additional - documentation to be eligible to receive a prize. Upon confirmation of - the winner's compliance with these Rules, the prize will be made - available to the winner. In the event that a winner cannot be - contacted, fails to respond within 48 hours of any communication, - refuses the prize, or fails to provide any information or - documentation requested by Ink, the winner may be disqualified by Ink - without further notice and an alternate winner selected. -

- - - 5. Consents and Approvals - - -

- By entering the Academy, you agree that any content and any other - information submitted by you or collected by Ink in connection with - the Academy may be used by Ink, including their affiliated business - entities. Further, you consent to and opt-in to any communications, - including marketing communications, from Ink. You give consent for Ink - and its agents to obtain and deliver your name, address and other - information to third parties for the purpose of administering this - Academy and complying with applicable laws, regulations, and rules. - YOU FURTHER ACKNOWLEDGE THAT IF YOU ARE A WINNER, YOUR IDENTIFYING - INFORMATION, INCLUDING BUT NOT LIMITED TO YOUR NAME AND ADDRESS, MAY - BE DISCLOSED TO THIRD PARTIES TO FACILITATE THE PROMOTION AND COMPLY - WITH APPLICABLE LAW, TAX, AND REPORTING REQUIREMENTS. Except as - otherwise contemplated in these Rules, Ink will use personal - information collected in connection with the Academy in accordance - with its online privacy policy located at{" "} - - https://inkonchain.com/privacy - - . -

- - - 6. Disclaimers - - -

- Ink is not responsible for any changes or unavailability of your - internet or any other interference with your ability to access or - otherwise participate in the Academy, including your ability to timely - enter, receive notices, or communicate with Ink. Without limiting any - other provision in these Rules, Ink and Ink Related Parties are not - responsible or liable for any damage or loss by reason of any acts of - God, equipment failure, terrorist acts, earthquake, war, fire, flood, - epidemic, explosion, unusually severe weather, embargo, labor dispute, - transportation interruption of any kind, civil disturbance, or any - governmental, federal, state or local government authority action, or - any other cause, whether or not specifically mentioned above. -

- - - 7. Limitation of Liability, Disputes, and Governing Law - - -

- By participating in the Academy, you agree to and hereby do release - and hold harmless Ink and its related parties from any damage, injury, - death, loss, claim, action, demand, or other liability (collectively, - "Claims") that may arise from your acceptance, possession - and/or use of any prize or your participation in this Academy, - regardless of whether such Claims, or knowledge of the facts - constituting such Claims, exist at the time of entry or arise at any - time thereafter. -

- -

- BY PARTICIPATING IN THE PROMOTION, YOU AGREE THAT TO THE EXTENT - PERMITTED BY APPLICABLE LAW: (1) ANY AND ALL DISPUTES, CLAIMS AND - CAUSES OF ACTION THAT CANNOT BE RESOLVED BETWEEN YOU AND Ink, OR THE - Ink RELATED PARTIES ARISING OUT OF OR CONNECTED WITH THE PROMOTION - WILL BE RESOLVED INDIVIDUALLY, WITHOUT RESORT TO ANY FORM OF CLASS - ACTION; (2) ANY AND ALL CLAIMS, JUDGMENTS AND AWARDS WILL BE LIMITED - TO ACTUAL THIRD-PARTY, OUT-OF-POCKET COSTS INCURRED, (IF ANY), NOT TO - EXCEED TWENTY FIVE DOLLARS ($25.00), BUT IN NO EVENT WILL - ATTORNEYS' FEES BE AWARDED OR RECOVERABLE; (3) UNDER NO - CIRCUMSTANCES WILL YOU BE PERMITTED TO OBTAIN ANY AWARD FOR, AND YOU - HEREBY KNOWINGLY AND EXPRESSLY WAIVE ALL RIGHTS TO SEEK, PUNITIVE, - INCIDENTAL, CONSEQUENTIAL OR SPECIAL DAMAGES, LOST PROFITS AND/OR ANY - OTHER DAMAGES, OTHER THAN ACTUAL OUT-OF-POCKET EXPENSES NOT TO EXCEED - TWENTY FIVE DOLLARS ($25.00), AND/OR ANY RIGHTS TO HAVE DAMAGES - MULTIPLIED OR OTHERWISE INCREASED; AND (4) YOUR REMEDIES ARE LIMITED - TO A CLAIM FOR MONEY DAMAGES (IF ANY) AND YOU IRREVOCABLY WAIVE ANY - RIGHT TO SEEK INJUNCTIVE OR EQUITABLE RELIEF. -

- -

- Any dispute arising under or related hereto (whether for breach of - contract, tortious conduct or otherwise) will be governed by the laws - of England and Wales, without reference to its conflicts of law - principles. By participating in this Academy, you agree that any - dispute arising from or relating to this Academy shall be determined - by confidential binding arbitration only in London, England, by and - under the LCIA rules, and judgment on the award rendered by the - arbitrator(s) may be entered in any court having jurisdiction thereof. - Notwithstanding the foregoing, Ink may seek equitable relief in any - court of competent jurisdiction. If any provision of these rules is - held to be illegal or unenforceable, such provision shall be limited - or eliminated to the minimum extent necessary so that these rules - otherwise remain in full force and effect and enforceable. -

- - - 8. General Rules - - -

- Ink reserves the right to modify these Rules in any way or at any - time. Ink reserves the right, in its sole discretion, to cancel or - suspend this Academy should viruses, bugs or other causes beyond their - control corrupt the administration, security or proper operation of - the Participation. In the event of cancellation or suspension, Ink - shall promptly post a notice on its website to such effect. Failure to - enforce any provision of these Rules shall not constitute a waiver of - that provision. Ink's decisions will be final in all matters - relating to the Academy. You waive any right to claim ambiguity in the - Academy or these Rules. The invalidity or unenforceability of any - provision of these Rules will not affect the validity or - enforceability of any other provision. If the Academy is not capable - of running as planned for any reason, Ink reserves the right, in our - sole discretion, to cancel, modify or suspend the Academy and - unilaterally select winners from eligible submissions received prior - to cancellation, modification, or suspension or as otherwise deemed - fair and appropriate by Ink. -

- - - 9. Dispute Resolution by Binding Arbitration - - -

- This Dispute Resolution by Binding Arbitration section is referred to - in the Terms as the " - Arbitration Agreement". -

- -

- PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT REQUIRES - YOU TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN WHICH - YOU CAN SEEK RELIEF. -

- -

Informal Process First

- -

- We are always interested in resolving disputes amicably and - efficiently, and most concerns can be resolved quickly and to your - satisfaction by emailing user support at{" "} - - legal@inkonchain.com - - . However, if such efforts prove unsuccessful, you may send to us, by - email, a written Notice of Dispute (" - Notice"). The Notice should be - sent to{" "} - - legal@inkonchain.com - {" "} - and must (a) describe the nature and basis of the claim or dispute and - (b) set forth the specific relief sought. If we and you do not resolve - the claim or dispute set out in the Notice within sixty (60) calendar - days from the date of receipt, we or you may commence an arbitration - proceeding. It is agreed that this dispute resolution procedure is a - condition precedent which must be satisfied before initiating - arbitration. -

- -

Arbitration and its Terms

- -

- Subject to the informal process outlined in the preceding paragraph, - you and us agree to arbitrate any dispute arising in connection with - these Official Rules (including questions related to their validity, - existence, or termination), except for disputes in which either party - seeks equitable and other relief for the alleged unlawful use of - copyrights, trademarks, trade names, logos, trade secrets or patents. -

- -

- The arbitration will be administered in accordance with the Rules of - the London Court of International Arbitration then in effect (the - " - LCIA Rules"). It will be - conducted in English and the parties will keep the arbitration - proceedings confidential and not disclose any information regarding - the arbitration (or any underlying claim or dispute) to any third - party except as required by law. -

- -

- Other than class procedures and remedies expressly prohibited by this - Arbitration Agreement, the arbitrator(s) will have the authority to - provide any remedy or relief that a court of competent jurisdiction - could award, including injunctive relief. Any decision or award - rendered by the arbitrator will be final and binding, and may be - overturned by a court only for very limited reasons. Any judgment may - be entered in any court of competent jurisdiction. -

- -

- If there is any inconsistency between any term of the LCIA Rules and - any term of this Arbitration Agreement, the applicable terms of this - Arbitration Agreement will control unless the arbitrator determines - that the application of the inconsistent Arbitration Agreement terms - would not result in a fundamentally fair arbitration. The arbitrator - must also follow the provisions of these Terms as a court would. -

- -

- It is expressly agreed that any arbitration under these Official Rules - will take place on an individual basis – class arbitrations and class - action are not permitted. You understand that by agreeing to these - Official Rules, you and us are each waiving the right to trial by jury - or to participate in a class action or class arbitration. -

- -

Costs of Arbitration

- -

- Payment of all filing, administration and arbitrator costs and - expenses will be governed by the LCIA Rules then in effect, except - that if you demonstrate that any such costs and expenses owed by you - under those rules would be prohibitively more expensive than a court - proceeding, then we will pay the amount of any such costs and expenses - that the arbitrator determines are necessary to prevent the - arbitration from being prohibitively more expensive than a court - proceeding. -

- -

- Fees and costs may be awarded as provided pursuant to applicable law. - The arbitrator may make rulings and resolve disputes as to the payment - and reimbursement of fees or expenses at any time during the - proceeding and upon request from either party made within 14 days of - the arbitrator's ruling on the merits. -

- -

Batch Arbitration

- -

- To increase the efficiency of administration and resolution of - arbitrations, you and us agree that in the event that there are - one-hundred (100) or more individual claims of a substantially similar - nature filed against us by or with the assistance of the same law - firm, group of law firms, or organizations, then within a thirty (30) - day period (or as soon as possible thereafter), the LCIA shall (a) - administer the arbitration demands in batches of one-hundred (100) - claims per batch (plus, to the extent there are less than one-hundred - (100) claims left over after the batching described above, a final - batch consisting of the remaining claims); (b) appoint one arbitrator - for each batch; and (c) provide for the resolution of each batch as a - single consolidated arbitration with one set of filing and - administrative fees due per side per batch, one procedural calendar, - one hearing (if any) in a place to be determined by the arbitrator, - and one final award (" - Batch Arbitration"). All - parties agree that claims are of a "substantially similar - nature" if they arise out of or relate to the same event or - factual scenario and raise the same or similar legal issues and seek - the same or similar relief. To the extent the parties disagree on the - application of the Batch Arbitration process, the disagreeing party - shall advise the LCIA, and the LCIA shall appoint a sole standing - arbitrator to determine the applicability of the Batch Arbitration - process (" - Administrative Arbitrator"). - In an effort to expedite resolution of any such dispute by the - Administrative Arbitrator, the parties agree the Administrative - Arbitrator may set forth such procedures as are necessary to resolve - any disputes promptly. The Administrative Arbitrator's fees shall - be paid by us. You and us agree to cooperate in good faith with the - LCIA to implement the Batch Arbitration process including the payment - of single filing and administrative fees for batches of claims, as - well as any steps to minimize the time and costs of arbitration, which - may include: (i) the appointment of a discovery special master to - assist the arbitrator in the resolution of discovery disputes; and - (ii) the adoption of an expedited calendar of the arbitration - proceedings. This Batch Arbitration provision shall in no way be - interpreted as authorizing a class, collective and/or mass arbitration - or action of any kind, or arbitration involving joint or consolidated - claims under any circumstances, except as expressly set forth in this - provision. -

- -

- Waiver of Right to Bring Class Action and Representative Claims; Jury - Trial Waiver. -

- -

- WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY CLAIM - OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS STIPULATED IN - THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. -

- -

- TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH - AGREE THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR - CONTROVERSY WILL BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE - PARTY'S INDIVIDUAL CAPACITY AND NOT AS PART OF ANY CLASS (OR - PURPORTED CLASS), CONSOLIDATED, MULTIPLE-PLAINTIFF, OR REPRESENTATIVE - ACTION OR PROCEEDING (" - CLASS ACTION"). -

- -

- YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR - CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY - ABILITY TO MAINTAIN A CLASS ACTION IN ANY FORUM. -

- -

- IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT HAVE - THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS ACTION, - OR MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE - ARBITRATION. FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT - CONSOLIDATE PROCEEDINGS FOR MORE THAN ONE PERSON'S CLAIMS, AND IT - MAY NOT OTHERWISE PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER THAN - THE BATCH ARBITRATION SPECIFIED ABOVE). FOR THE AVOIDANCE OF DOUBT, - HOWEVER, YOU CAN SEEK PUBLIC INJUNCTIVE RELIEF TO THE EXTENT - AUTHORIZED BY LAW AND CONSISTENT WITH THE EXCEPTIONS DESCRIBED ABOVE. -

- -

- IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND - UNENFORCEABLE, THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, THE - PARTIES' AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH - RESPECT TO SUCH PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO - PROCEED AS A CLASS ACTION. If a court decides that the limitations of - this paragraph are deemed invalid or unenforceable, any putative - class, private attorney general, or consolidated or representative - action must be brought in a court of proper jurisdiction and not in - arbitration. -

- -

Opt-Out

- -

- You have the right to opt-out and not be bound by the Arbitration - Agreement contained in these Terms by sending written notice of your - decision to opt-out to{" "} - - legal@inkonchain.com - - . The notice must be sent to us within thirty (30) days of your first - registering to use the Services or agreeing to these Terms; otherwise - you shall be bound to arbitrate disputes on a non-class basis in - accordance with these Terms. If you opt out of only the arbitration - provisions, and not also the class action waiver, the class action - waiver still applies. You may not opt out of only the class action - waiver and not also the arbitration provisions. If you opt-out of - these arbitration provisions, we also will not be bound by them. -

-
-
+ <> + + INK WIZARDING ACADEMY - OFFICIAL RULES + + +

+ BY PARTICIPATING IN THE ACADEMY, YOU AGREE TO THESE OFFICIAL RULES AND + THE{" "} + + INKONCHAIN.COM TERMS OF SERVICE + + , WHICH FORM A CONTRACT. READ THEM CAREFULLY BEFORE ENTERING. PURCHASE, + PAYMENT, OR FUNDING WILL NOT INCREASE YOUR CHANCES OF WINNING. +

+ +

+ Ink's Wizarding Academy ("Academy") is run by Ink + Foundation, a Cayman Islands foundation company at CO Services Cayman + Limited, PO Box 10008, Willow House, Cricket Square, Grand Cayman + KY1-1001, Cayman Islands ("Ink"). +

+ + + 1. Eligibility to Participate in the Academy + + +

+ You are eligible to participate in the Academy if, at the time of entry + and during the Academy, you: +

+ +
    +
  • Reside in the Eligible Areas identified above;
  • +
  • Agree to the Inkonchain.com Terms of Service;
  • +
  • + Agree to these Rules and meet and comply with any and all applicable + requirements herein; +
  • +
  • + Are not otherwise ineligible to participate under the Inkonchain.com + Terms of Service, these Rules, or applicable law. +
  • +
+ +

+ By submitting participating in the Academy, you represent and warrant + that you meet, and will continue to meet throughout the Academy Session, + each of the above criteria and are eligible to participate in the + Academy. +

+ + + 2. Disqualification + + +

+ Ink reserves the right to disqualify you if Ink determines, in its sole + discretion, that you have (A) violated these Rules, including the + Inkonchain.com Terms of Service or applicable law. +

+ + + 3. Daap Cosponsors + + +

+ In the event that an Academy Session is co-sponsored by a Dapp, such + co-sponsorship does not constitute an endorsement of the Dapp, its + personnel, or its products or services by Ink. Further, the Daap + cosponsor will be solely responsible and liable for the determination + and notification of winners and providing any prizes. As a result, you + acknowledge and agree that Ink makes no representations or warranties, + express or implied, regarding any prize and will not be liable for any + claims, damages, losses, or injuries arising out of or related to the + receipt, use, or misuse of any prize provided by the Dapp cosponsor. Any + issues or disputes regarding the prizes must be resolved directly with + the Dapp cosponsor. +

+ + + 4. Notification of Winner + + +

+ If a task requires submission of content for judgment, each participant + is limited to submitting one eligible entry. Multiple submissions will + not be considered. Each submission will be judged by Ink or the Daap + co-sponsor, in its sole discretion, in accordance with the judging + criteria announced for that task. In the event no criteria is mentioned, + judging will be based on originality and creativity (equally weighted) + to determine the winning submission. +

+ +

+ The winner will be notified via any means of communication provided by + the participant, which may include direct message on social media + accounts and email. The winner will be required to provide sufficient + information to deliver any prize awarded. The recipient of any prize + acknowledges and agrees that they may be required to submit additional + documentation to be eligible to receive a prize. Upon confirmation of + the winner's compliance with these Rules, the prize will be made + available to the winner. In the event that a winner cannot be contacted, + fails to respond within 48 hours of any communication, refuses the + prize, or fails to provide any information or documentation requested by + Ink, the winner may be disqualified by Ink without further notice and an + alternate winner selected. +

+ + + 5. Consents and Approvals + + +

+ By entering the Academy, you agree that any content and any other + information submitted by you or collected by Ink in connection with the + Academy may be used by Ink, including their affiliated business + entities. Further, you consent to and opt-in to any communications, + including marketing communications, from Ink. You give consent for Ink + and its agents to obtain and deliver your name, address and other + information to third parties for the purpose of administering this + Academy and complying with applicable laws, regulations, and rules. YOU + FURTHER ACKNOWLEDGE THAT IF YOU ARE A WINNER, YOUR IDENTIFYING + INFORMATION, INCLUDING BUT NOT LIMITED TO YOUR NAME AND ADDRESS, MAY BE + DISCLOSED TO THIRD PARTIES TO FACILITATE THE PROMOTION AND COMPLY WITH + APPLICABLE LAW, TAX, AND REPORTING REQUIREMENTS. Except as otherwise + contemplated in these Rules, Ink will use personal information collected + in connection with the Academy in accordance with its online privacy + policy located at{" "} + + https://inkonchain.com/privacy + + . +

+ + + 6. Disclaimers + + +

+ Ink is not responsible for any changes or unavailability of your + internet or any other interference with your ability to access or + otherwise participate in the Academy, including your ability to timely + enter, receive notices, or communicate with Ink. Without limiting any + other provision in these Rules, Ink and Ink Related Parties are not + responsible or liable for any damage or loss by reason of any acts of + God, equipment failure, terrorist acts, earthquake, war, fire, flood, + epidemic, explosion, unusually severe weather, embargo, labor dispute, + transportation interruption of any kind, civil disturbance, or any + governmental, federal, state or local government authority action, or + any other cause, whether or not specifically mentioned above. +

+ + + 7. Limitation of Liability, Disputes, and Governing Law + + +

+ By participating in the Academy, you agree to and hereby do release and + hold harmless Ink and its related parties from any damage, injury, + death, loss, claim, action, demand, or other liability (collectively, + "Claims") that may arise from your acceptance, possession + and/or use of any prize or your participation in this Academy, + regardless of whether such Claims, or knowledge of the facts + constituting such Claims, exist at the time of entry or arise at any + time thereafter. +

+ +

+ BY PARTICIPATING IN THE PROMOTION, YOU AGREE THAT TO THE EXTENT + PERMITTED BY APPLICABLE LAW: (1) ANY AND ALL DISPUTES, CLAIMS AND CAUSES + OF ACTION THAT CANNOT BE RESOLVED BETWEEN YOU AND Ink, OR THE Ink + RELATED PARTIES ARISING OUT OF OR CONNECTED WITH THE PROMOTION WILL BE + RESOLVED INDIVIDUALLY, WITHOUT RESORT TO ANY FORM OF CLASS ACTION; (2) + ANY AND ALL CLAIMS, JUDGMENTS AND AWARDS WILL BE LIMITED TO ACTUAL + THIRD-PARTY, OUT-OF-POCKET COSTS INCURRED, (IF ANY), NOT TO EXCEED + TWENTY FIVE DOLLARS ($25.00), BUT IN NO EVENT WILL ATTORNEYS' FEES + BE AWARDED OR RECOVERABLE; (3) UNDER NO CIRCUMSTANCES WILL YOU BE + PERMITTED TO OBTAIN ANY AWARD FOR, AND YOU HEREBY KNOWINGLY AND + EXPRESSLY WAIVE ALL RIGHTS TO SEEK, PUNITIVE, INCIDENTAL, CONSEQUENTIAL + OR SPECIAL DAMAGES, LOST PROFITS AND/OR ANY OTHER DAMAGES, OTHER THAN + ACTUAL OUT-OF-POCKET EXPENSES NOT TO EXCEED TWENTY FIVE DOLLARS + ($25.00), AND/OR ANY RIGHTS TO HAVE DAMAGES MULTIPLIED OR OTHERWISE + INCREASED; AND (4) YOUR REMEDIES ARE LIMITED TO A CLAIM FOR MONEY + DAMAGES (IF ANY) AND YOU IRREVOCABLY WAIVE ANY RIGHT TO SEEK INJUNCTIVE + OR EQUITABLE RELIEF. +

+ +

+ Any dispute arising under or related hereto (whether for breach of + contract, tortious conduct or otherwise) will be governed by the laws of + England and Wales, without reference to its conflicts of law principles. + By participating in this Academy, you agree that any dispute arising + from or relating to this Academy shall be determined by confidential + binding arbitration only in London, England, by and under the LCIA + rules, and judgment on the award rendered by the arbitrator(s) may be + entered in any court having jurisdiction thereof. Notwithstanding the + foregoing, Ink may seek equitable relief in any court of competent + jurisdiction. If any provision of these rules is held to be illegal or + unenforceable, such provision shall be limited or eliminated to the + minimum extent necessary so that these rules otherwise remain in full + force and effect and enforceable. +

+ + + 8. General Rules + + +

+ Ink reserves the right to modify these Rules in any way or at any time. + Ink reserves the right, in its sole discretion, to cancel or suspend + this Academy should viruses, bugs or other causes beyond their control + corrupt the administration, security or proper operation of the + Participation. In the event of cancellation or suspension, Ink shall + promptly post a notice on its website to such effect. Failure to enforce + any provision of these Rules shall not constitute a waiver of that + provision. Ink's decisions will be final in all matters relating to + the Academy. You waive any right to claim ambiguity in the Academy or + these Rules. The invalidity or unenforceability of any provision of + these Rules will not affect the validity or enforceability of any other + provision. If the Academy is not capable of running as planned for any + reason, Ink reserves the right, in our sole discretion, to cancel, + modify or suspend the Academy and unilaterally select winners from + eligible submissions received prior to cancellation, modification, or + suspension or as otherwise deemed fair and appropriate by Ink. +

+ + + 9. Dispute Resolution by Binding Arbitration + + +

+ This Dispute Resolution by Binding Arbitration section is referred to in + the Terms as the " + Arbitration Agreement". +

+ +

+ PLEASE READ THIS ARBITRATION AGREEMENT CAREFULLY BECAUSE IT REQUIRES YOU + TO ARBITRATE DISPUTES WITH US AND IT LIMITS THE MANNER IN WHICH YOU CAN + SEEK RELIEF. +

+ +

Informal Process First

+ +

+ We are always interested in resolving disputes amicably and efficiently, + and most concerns can be resolved quickly and to your satisfaction by + emailing user support at{" "} + + legal@inkonchain.com + + . However, if such efforts prove unsuccessful, you may send to us, by + email, a written Notice of Dispute (" + Notice"). The Notice should be + sent to{" "} + + legal@inkonchain.com + {" "} + and must (a) describe the nature and basis of the claim or dispute and + (b) set forth the specific relief sought. If we and you do not resolve + the claim or dispute set out in the Notice within sixty (60) calendar + days from the date of receipt, we or you may commence an arbitration + proceeding. It is agreed that this dispute resolution procedure is a + condition precedent which must be satisfied before initiating + arbitration. +

+ +

Arbitration and its Terms

+ +

+ Subject to the informal process outlined in the preceding paragraph, you + and us agree to arbitrate any dispute arising in connection with these + Official Rules (including questions related to their validity, + existence, or termination), except for disputes in which either party + seeks equitable and other relief for the alleged unlawful use of + copyrights, trademarks, trade names, logos, trade secrets or patents. +

+ +

+ The arbitration will be administered in accordance with the Rules of the + London Court of International Arbitration then in effect (the " + LCIA Rules"). It will be + conducted in English and the parties will keep the arbitration + proceedings confidential and not disclose any information regarding the + arbitration (or any underlying claim or dispute) to any third party + except as required by law. +

+ +

+ Other than class procedures and remedies expressly prohibited by this + Arbitration Agreement, the arbitrator(s) will have the authority to + provide any remedy or relief that a court of competent jurisdiction + could award, including injunctive relief. Any decision or award rendered + by the arbitrator will be final and binding, and may be overturned by a + court only for very limited reasons. Any judgment may be entered in any + court of competent jurisdiction. +

+ +

+ If there is any inconsistency between any term of the LCIA Rules and any + term of this Arbitration Agreement, the applicable terms of this + Arbitration Agreement will control unless the arbitrator determines that + the application of the inconsistent Arbitration Agreement terms would + not result in a fundamentally fair arbitration. The arbitrator must also + follow the provisions of these Terms as a court would. +

+ +

+ It is expressly agreed that any arbitration under these Official Rules + will take place on an individual basis – class arbitrations and class + action are not permitted. You understand that by agreeing to these + Official Rules, you and us are each waiving the right to trial by jury + or to participate in a class action or class arbitration. +

+ +

Costs of Arbitration

+ +

+ Payment of all filing, administration and arbitrator costs and expenses + will be governed by the LCIA Rules then in effect, except that if you + demonstrate that any such costs and expenses owed by you under those + rules would be prohibitively more expensive than a court proceeding, + then we will pay the amount of any such costs and expenses that the + arbitrator determines are necessary to prevent the arbitration from + being prohibitively more expensive than a court proceeding. +

+ +

+ Fees and costs may be awarded as provided pursuant to applicable law. + The arbitrator may make rulings and resolve disputes as to the payment + and reimbursement of fees or expenses at any time during the proceeding + and upon request from either party made within 14 days of the + arbitrator's ruling on the merits. +

+ +

Batch Arbitration

+ +

+ To increase the efficiency of administration and resolution of + arbitrations, you and us agree that in the event that there are + one-hundred (100) or more individual claims of a substantially similar + nature filed against us by or with the assistance of the same law firm, + group of law firms, or organizations, then within a thirty (30) day + period (or as soon as possible thereafter), the LCIA shall (a) + administer the arbitration demands in batches of one-hundred (100) + claims per batch (plus, to the extent there are less than one-hundred + (100) claims left over after the batching described above, a final batch + consisting of the remaining claims); (b) appoint one arbitrator for each + batch; and (c) provide for the resolution of each batch as a single + consolidated arbitration with one set of filing and administrative fees + due per side per batch, one procedural calendar, one hearing (if any) in + a place to be determined by the arbitrator, and one final award (" + Batch Arbitration"). All parties + agree that claims are of a "substantially similar nature" if + they arise out of or relate to the same event or factual scenario and + raise the same or similar legal issues and seek the same or similar + relief. To the extent the parties disagree on the application of the + Batch Arbitration process, the disagreeing party shall advise the LCIA, + and the LCIA shall appoint a sole standing arbitrator to determine the + applicability of the Batch Arbitration process (" + Administrative Arbitrator"). In + an effort to expedite resolution of any such dispute by the + Administrative Arbitrator, the parties agree the Administrative + Arbitrator may set forth such procedures as are necessary to resolve any + disputes promptly. The Administrative Arbitrator's fees shall be + paid by us. You and us agree to cooperate in good faith with the LCIA to + implement the Batch Arbitration process including the payment of single + filing and administrative fees for batches of claims, as well as any + steps to minimize the time and costs of arbitration, which may include: + (i) the appointment of a discovery special master to assist the + arbitrator in the resolution of discovery disputes; and (ii) the + adoption of an expedited calendar of the arbitration proceedings. This + Batch Arbitration provision shall in no way be interpreted as + authorizing a class, collective and/or mass arbitration or action of any + kind, or arbitration involving joint or consolidated claims under any + circumstances, except as expressly set forth in this provision. +

+ +

+ Waiver of Right to Bring Class Action and Representative Claims; Jury + Trial Waiver. +

+ +

+ WE AND YOU EACH AGREE TO WAIVE ANY RIGHT TO A TRIAL BY JURY. ANY CLAIM + OR DISPUTE WILL BE DETERMINED BY A NEUTRAL ARBITRATOR AS STIPULATED IN + THIS ARBITRATION AGREEMENT, NOT A JUDGE OR JURY. +

+ +

+ TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, YOU AND US EACH AGREE + THAT ANY PROCEEDING TO RESOLVE ANY DISPUTE, CLAIM, OR CONTROVERSY WILL + BE BROUGHT AND CONDUCTED ONLY IN THE RESPECTIVE PARTY'S INDIVIDUAL + CAPACITY AND NOT AS PART OF ANY CLASS (OR PURPORTED CLASS), + CONSOLIDATED, MULTIPLE-PLAINTIFF, OR REPRESENTATIVE ACTION OR PROCEEDING + (" + CLASS ACTION"). +

+ +

+ YOU AND US AGREE TO WAIVE THE RIGHT TO PARTICIPATE AS A PLAINTIFF OR + CLASS MEMBER IN ANY CLASS ACTION. YOU AND US EXPRESSLY WAIVE ANY ABILITY + TO MAINTAIN A CLASS ACTION IN ANY FORUM. +

+ +

+ IF THE DISPUTE IS SUBJECT TO ARBITRATION, THE ARBITRATOR WILL NOT HAVE + THE AUTHORITY TO COMBINE OR AGGREGATE CLAIMS, CONDUCT A CLASS ACTION, OR + MAKE AN AWARD TO ANY PERSON OR ENTITY NOT A PARTY TO THE ARBITRATION. + FURTHER, YOU AND US AGREE THAT THE ARBITRATOR MAY NOT CONSOLIDATE + PROCEEDINGS FOR MORE THAN ONE PERSON'S CLAIMS, AND IT MAY NOT + OTHERWISE PRESIDE OVER ANY FORM OF A CLASS ACTION (OTHER THAN THE BATCH + ARBITRATION SPECIFIED ABOVE). FOR THE AVOIDANCE OF DOUBT, HOWEVER, YOU + CAN SEEK PUBLIC INJUNCTIVE RELIEF TO THE EXTENT AUTHORIZED BY LAW AND + CONSISTENT WITH THE EXCEPTIONS DESCRIBED ABOVE. +

+ +

+ IF THIS CLASS ACTION WAIVER IS LIMITED, VOIDED, OR FOUND UNENFORCEABLE, + THEN, UNLESS THE PARTIES MUTUALLY AGREE OTHERWISE, THE PARTIES' + AGREEMENT TO ARBITRATE SHALL BE NULL AND VOID WITH RESPECT TO SUCH + PROCEEDING SO LONG AS THE PROCEEDING IS PERMITTED TO PROCEED AS A CLASS + ACTION. If a court decides that the limitations of this paragraph are + deemed invalid or unenforceable, any putative class, private attorney + general, or consolidated or representative action must be brought in a + court of proper jurisdiction and not in arbitration. +

+ +

Opt-Out

+ +

+ You have the right to opt-out and not be bound by the Arbitration + Agreement contained in these Terms by sending written notice of your + decision to opt-out to{" "} + + legal@inkonchain.com + + . The notice must be sent to us within thirty (30) days of your first + registering to use the Services or agreeing to these Terms; otherwise + you shall be bound to arbitrate disputes on a non-class basis in + accordance with these Terms. If you opt out of only the arbitration + provisions, and not also the class action waiver, the class action + waiver still applies. You may not opt out of only the class action + waiver and not also the arbitration provisions. If you opt-out of these + arbitration provisions, we also will not be bound by them. +

+ ); } diff --git a/src/app/[locale]/_components/Home/HomeTitle.tsx b/src/app/[locale]/_components/Home/HomeTitle.tsx index 27b7c61..e670d6d 100644 --- a/src/app/[locale]/_components/Home/HomeTitle.tsx +++ b/src/app/[locale]/_components/Home/HomeTitle.tsx @@ -1,4 +1,5 @@ "use client"; +import { useMemo } from "react"; import { Button, InkIcon } from "@inkonchain/ink-kit"; import { useTranslations } from "next-intl"; @@ -39,8 +40,19 @@ const TagLineWithHighlight: React.FC<{ text?: string; disableRotating?: boolean; }> = ({ text }) => { - const [first, second] = text?.split("|") || []; - const sections = second?.split(",") || []; + const [first, second] = useMemo(() => text?.split("|") || [], [text]); + const allSections = useMemo(() => { + const sections = second?.split(",") || []; + return sections.map((s, i) => { + return i === sections.length - 1 ? ( + + {s} + + ) : ( + {s} + ); + }); + }, [second]); return (
{/** Height should match the height of the PillContainer+Rotating text for the text to be aligned. */} @@ -51,15 +63,7 @@ const TagLineWithHighlight: React.FC<{ > {first} - { - return i === sections.length - 1 ? ( - {s} - ) : ( - s - ); - })} - /> +
); }; diff --git a/src/app/[locale]/_components/PageHeader.tsx b/src/app/[locale]/_components/PageHeader.tsx index a91a245..af43b46 100644 --- a/src/app/[locale]/_components/PageHeader.tsx +++ b/src/app/[locale]/_components/PageHeader.tsx @@ -26,8 +26,8 @@ export const PageHeader = ({ >
{title}
{ @@ -19,7 +17,7 @@ export const ThemeToggle = () => { className="ink:text-text-muted duration-0 bg-transparent" iconLeft={
- { size="icon-lg" enforce="inherit" /> - - <> - - - - - - + <> + + + + + ); } diff --git a/src/app/[locale]/apps/_components/AppLinks.tsx b/src/app/[locale]/apps/_components/AppLinks.tsx index fb6f983..fa84b4d 100644 --- a/src/app/[locale]/apps/_components/AppLinks.tsx +++ b/src/app/[locale]/apps/_components/AppLinks.tsx @@ -1,10 +1,6 @@ import React from "react"; +import { Button, InkIcon } from "@inkonchain/ink-kit"; -import { DiscordIcon } from "@/components/icons/Discord"; -import { GateIcon } from "@/components/icons/Gate"; -import { GitHubIcon } from "@/components/icons/GitHub"; -import { TelegramIcon } from "@/components/icons/Telegram"; -import { TwitterIcon } from "@/components/icons/Twitter"; import { classNames } from "@/util/classes"; import { InkApp, InkAppNetwork } from "./InkApp"; @@ -12,7 +8,6 @@ import { InkApp, InkAppNetwork } from "./InkApp"; export function AppLinks({ className, links, - network, }: { className?: string; links: InkApp["links"]; @@ -30,47 +25,29 @@ export function AppLinks({ > {links.x && ( - + )} {links.discord && ( - + )} {links.telegram && ( - + )} {links.farcaster && ( - - {/* */} + )} - {/* Not showing the website URL as the cards/rows are clickable */} - {/* {websiteUrl && ( - - - - )} */} {links.github && ( - + )} - {/* {links.docs && ( - - - - )} */}
); } @@ -83,17 +60,24 @@ function AppLink({ children: React.ReactNode; }) { return ( - { - e.stopPropagation(); - }} + ); } diff --git a/src/app/[locale]/apps/_components/AppMainnetToggle.tsx b/src/app/[locale]/apps/_components/AppMainnetToggle.tsx index 47b3778..b09df48 100644 --- a/src/app/[locale]/apps/_components/AppMainnetToggle.tsx +++ b/src/app/[locale]/apps/_components/AppMainnetToggle.tsx @@ -29,7 +29,7 @@ export function AppMainnetToggle({ value, onChange }: AppMainnetToggleProps) { onChange(option.value)}>
{/* Floating section on desktop */} -
+
-
+
{ diff --git a/src/app/[locale]/apps/_components/SubmitAppButton.css b/src/app/[locale]/apps/_components/SubmitAppButton.css index 0fa8d8f..811f8ab 100644 --- a/src/app/[locale]/apps/_components/SubmitAppButton.css +++ b/src/app/[locale]/apps/_components/SubmitAppButton.css @@ -1,6 +1,6 @@ .gradient-border { position: relative; - --border-width: 2px; + --gradient-border-width: 2px; } .gradient-border:hover::before { @@ -16,12 +16,16 @@ z-index: 1; box-sizing: border-box; - padding: var(--border-width); + padding: var(--gradient-border-width); border-radius: 999px; background: linear-gradient(to right, #fff 0%, #fff 50%, #8049f2 100%); + -webkit-mask: + linear-gradient(#fff 0 0) content-box, + linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); + -webkit-mask-composite: xor; mask-composite: exclude, xor; background-position: 100% 100%; diff --git a/src/app/[locale]/apps/_components/SubmitAppButton.tsx b/src/app/[locale]/apps/_components/SubmitAppButton.tsx index 7da38b6..46d991e 100644 --- a/src/app/[locale]/apps/_components/SubmitAppButton.tsx +++ b/src/app/[locale]/apps/_components/SubmitAppButton.tsx @@ -1,13 +1,13 @@ "use client"; -import { Button, InkIcon } from "@inkonchain/ink-kit"; +import { Button, InkIcon, useModalContext } from "@inkonchain/ink-kit"; -import { useAppSubmissionModalContext } from "@/components/AppSubmissionModal/AppSubmissionModalContext"; +import { APP_SUBMISSION_MODAL_KEY } from "@/components/Modals/AppSubmissionModal/AppSubmissionModal"; import { classNames } from "@/util/classes"; import "./SubmitAppButton.css"; export function SubmitAppButton() { - const { setIsOpen } = useAppSubmissionModalContext(); + const { openModal } = useModalContext(APP_SUBMISSION_MODAL_KEY); return ( diff --git a/src/app/[locale]/apps/_components/categories.tsx b/src/app/[locale]/apps/_components/categories.tsx index fbd917a..2cff934 100644 --- a/src/app/[locale]/apps/_components/categories.tsx +++ b/src/app/[locale]/apps/_components/categories.tsx @@ -1,52 +1,30 @@ -import { InkIcon } from "@inkonchain/ink-kit"; - -import { AppsIcon } from "@/components/icons/Apps"; -import { BankIcon } from "@/components/icons/Bank"; -import { BlocksIcon } from "@/components/icons/Blocks"; -import { BridgeIcon } from "@/components/icons/Bridge"; -import { GlobeIcon } from "@/components/icons/Globe"; -import { UsersIcon } from "@/components/icons/Users"; - export const appCategories = [ { value: null, label: "All categories", - icon: , }, { value: "bridge", label: "Bridge", - icon: ( - - ), }, { value: "defi", label: "DeFi", - icon: , }, { value: "explorers", label: "Explorers", - icon: , }, { value: "infra", label: "Infrastructure", - icon: ( - - ), }, { value: "on-ramps", label: "On-ramps", - icon: ( - - ), }, { value: "social", label: "Social", - icon: , }, ] as const; diff --git a/src/app/[locale]/apps/page.tsx b/src/app/[locale]/apps/page.tsx index 313e55d..825d89e 100644 --- a/src/app/[locale]/apps/page.tsx +++ b/src/app/[locale]/apps/page.tsx @@ -1,8 +1,7 @@ import { Metadata } from "next"; -import { AppSubmissionModal } from "@/components/AppSubmissionModal/AppSubmissionModal"; -import { AppSubmissionModalProvider } from "@/components/AppSubmissionModal/AppSubmissionModalContext"; import { JsonLd } from "@/components/JsonLd"; +import { AppSubmissionModal } from "@/components/Modals/AppSubmissionModal/AppSubmissionModal"; import { PageView } from "@/components/PageView"; import { newLayoutContainerClasses } from "@/components/styles/container"; @@ -16,22 +15,20 @@ export const metadata: Metadata = { export default function AppsPage() { return ( - - <> - - -
- -
- - -
+ <> + + +
+ +
+ + ); } diff --git a/src/app/[locale]/faucet/_components/Faucet.tsx b/src/app/[locale]/faucet/_components/Faucet.tsx index 6c01efb..f664032 100644 --- a/src/app/[locale]/faucet/_components/Faucet.tsx +++ b/src/app/[locale]/faucet/_components/Faucet.tsx @@ -2,11 +2,11 @@ import { useEffect, useRef, useState } from "react"; import Confetti from "react-confetti"; +import { Input } from "@inkonchain/ink-kit"; import { useTranslations } from "next-intl"; import { useAccount } from "wagmi"; -import { BigScalableTitle } from "@/components/BigScallableTitle"; -import { ColoredText } from "@/components/ColoredText"; +import { newLayoutSectionClasses } from "@/components/styles/container"; import { FaucetRequestButton } from "./FaucetRequestButton"; @@ -14,7 +14,6 @@ export function Faucet() { const t = useTranslations("Faucet"); const [address, setAddress] = useState(""); const hasSetInitialAddress = useRef(false); - const buttonRef = useRef(null); const [requestSuccess, setRequestSuccess] = useState(null); const { address: connectedAddress, isConnected } = useAccount(); @@ -26,54 +25,22 @@ export function Faucet() { }, [isConnected, connectedAddress]); return ( -
-
- - {t("description")} - - } - /> - -
-
-
{ - e.preventDefault(); - buttonRef.current?.click(); - }} - > -
-
- setAddress(e.target.value)} - placeholder={t("enterAddress")} - className="w-full bg-transparent text-black/50 [&:not(:placeholder-shown)]:text-[#101114] focus:outline-none font-[Plus_Jakarta_Sans] font-bold text-[18px]" - /> -
-
- - {t("requestTokens")} - -
-
-
-
-
+ <> +
+
+ setAddress(e.target.value)} + placeholder={t("enterAddress")} + /> + + {t("requestTokens")} + +
{requestSuccess && ( )} -
+ ); } diff --git a/src/app/[locale]/faucet/_components/FaucetRequestButton.tsx b/src/app/[locale]/faucet/_components/FaucetRequestButton.tsx index 827aa53..9effbaa 100644 --- a/src/app/[locale]/faucet/_components/FaucetRequestButton.tsx +++ b/src/app/[locale]/faucet/_components/FaucetRequestButton.tsx @@ -1,24 +1,20 @@ "use client"; -import { forwardRef, useCallback, useEffect, useRef, useState } from "react"; +import React, { useCallback, useEffect, useRef, useState } from "react"; import { toast } from "react-toastify"; +import { + Button, + InkIcon, + Input, + Modal, + useModalContext, +} from "@inkonchain/ink-kit"; import { useConnectModal } from "@rainbow-me/rainbowkit"; import { CloudflareProvider, getAddress } from "ethers"; import { useAccount } from "wagmi"; import { Backdrop } from "@/components/Backdrop"; -import { Button } from "@/components/Button/Button"; -import { - CenteredModal, - CenteredModalContainer, -} from "@/components/CenteredModal"; import { ColoredText } from "@/components/ColoredText"; -import { TwitterIcon } from "@/components/icons/Twitter"; -import { - inputClassNames, - inputContainerClassNames, - inputIconClassNames, -} from "@/components/InputWithSubmit/styles"; import { clientEnv } from "@/env-client"; import { useFaucetInfoAndCaptcha } from "@/hooks/useFaucetInfoAndHCaptcha"; @@ -133,417 +129,389 @@ const getRandomTweetTemplate = () => { return TWEET_TEMPLATES[randomIndex]; }; -export const FaucetRequestButton = forwardRef< - HTMLButtonElement, - FaucetRequestButtonProps ->( - ( - { disabled, children, className, type = "button", onChange, address }, - ref - ) => { - const chainId = 763373; // Ink Sepolia - const [requestLoading, setRequestLoading] = useState(false); - const [waitingForConnection, setWaitingForConnection] = useState(false); - const hasAutoRequested = useRef(false); - const { hcaptchaLoaded, executeHCaptcha } = - useFaucetInfoAndCaptcha(chainId); - const { isConnected } = useAccount(); - const { openConnectModal } = useConnectModal(); - const [showTweetPrompt, setShowTweetPrompt] = useState(false); - const [tweetUrl, setTweetUrl] = useState(""); - const [isHCaptchaVisible, setIsHCaptchaVisible] = useState(false); - const [showBackdrop, setShowBackdrop] = useState(false); - const [skipTweetPrompt, setSkipTweetPrompt] = useState(false); - const [tweetModalLoading, setTweetModalLoading] = useState(false); - - const handleRequest = useCallback( - async (forceSkip?: boolean, setLoading = setRequestLoading) => { - setLoading(true); - - if (!isConnected && address.trim() === "" && openConnectModal) { - setWaitingForConnection(true); - openConnectModal(); +export const FaucetRequestButton: React.FC = ({ + disabled, + children, + type = "button", + onChange, + address, +}) => { + const chainId = 763373; // Ink Sepolia + const [requestLoading, setRequestLoading] = useState(false); + const [waitingForConnection, setWaitingForConnection] = useState(false); + const hasAutoRequested = useRef(false); + const { hcaptchaLoaded, executeHCaptcha } = useFaucetInfoAndCaptcha(chainId); + const { isConnected } = useAccount(); + const { openConnectModal } = useConnectModal(); + const [tweetUrl, setTweetUrl] = useState(""); + const [isHCaptchaVisible, setIsHCaptchaVisible] = useState(false); + const [showBackdrop, setShowBackdrop] = useState(false); + const [skipTweetPrompt, setSkipTweetPrompt] = useState(false); + const [tweetModalLoading, setTweetModalLoading] = useState(false); + const modalId = "tweet-prompt-modal"; + const { openModal: openTweetPrompt } = useModalContext(modalId); + + const handleRequest = useCallback( + async (forceSkip?: boolean, setLoading = setRequestLoading) => { + setLoading(true); + + if (!isConnected && address.trim() === "" && openConnectModal) { + setWaitingForConnection(true); + openConnectModal(); + setLoading(false); + return; + } + + if (address.trim() === "") { + toast.error("Please enter an address or ENS name first.", { + toastId: "address-error", + ...TOAST_STYLE, + }); + setLoading(false); + return; + } + + let resolvedAddress: string; + try { + resolvedAddress = await resolveAddress(address); + } catch (error) { + toast.error((error as Error).message, TOAST_STYLE); + setLoading(false); + return; + } + + try { + // Check rate limit first + const rateLimitRes = await fetch( + `${clientEnv.NEXT_PUBLIC_FAUCET_API_URL}/api/check-rate-limit`, + { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ address: resolvedAddress, chainId }), + } + ); + + if (!rateLimitRes.ok) { + const errorData = await rateLimitRes.json(); + toast.error( + <> + + {errorData.message ?? + "Faucet is temporarily unavailable. Please try again later."} + + + See{" "} + + docs.inkonchain.com + {" "} + for other faucet options. + + , + TOAST_STYLE + ); setLoading(false); return; } - if (address.trim() === "") { - toast.error("Please enter an address or ENS name first.", { - toastId: "address-error", - ...TOAST_STYLE, - }); + const rateLimitData = await rateLimitRes.json(); + + if (!rateLimitData.allowed) { + toast.error( + <> + + {rateLimitData.message ?? + "Faucet is temporarily unavailable. Please try again later."} + + + See{" "} + + docs.inkonchain.com + {" "} + for other faucet options. + + , + TOAST_STYLE + ); setLoading(false); return; } - let resolvedAddress: string; - try { - resolvedAddress = await resolveAddress(address); - } catch (error) { - toast.error((error as Error).message, TOAST_STYLE); + if (forceSkip) { + setTweetUrl(""); + } else if (!tweetUrl && !skipTweetPrompt) { setLoading(false); + openTweetPrompt(); return; - } - - try { - // Check rate limit first - const rateLimitRes = await fetch( - `${clientEnv.NEXT_PUBLIC_FAUCET_API_URL}/api/check-rate-limit`, - { - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify({ address: resolvedAddress, chainId }), - } + } else if (tweetUrl && !validateTweetUrl(tweetUrl)) { + toast.error( + "Please provide a valid X/Twitter post URL.", + TOAST_STYLE ); + setLoading(false); + return; + } - if (!rateLimitRes.ok) { - const errorData = await rateLimitRes.json(); - toast.error( - <> - - {errorData.message ?? - "Faucet is temporarily unavailable. Please try again later."} - - - See{" "} - - docs.inkonchain.com - {" "} - for other faucet options. - - , - TOAST_STYLE - ); - setLoading(false); - return; - } - - const rateLimitData = await rateLimitRes.json(); - - if (!rateLimitData.allowed) { - toast.error( - <> - - {rateLimitData.message ?? - "Faucet is temporarily unavailable. Please try again later."} - - - See{" "} - - docs.inkonchain.com - {" "} - for other faucet options. - - , - TOAST_STYLE - ); - setLoading(false); - return; - } - - if (forceSkip) { - setTweetUrl(""); - } else if (!tweetUrl && !skipTweetPrompt) { - setLoading(false); - setShowTweetPrompt(true); - return; - } else if (tweetUrl && !validateTweetUrl(tweetUrl)) { - toast.error( - "Please provide a valid X/Twitter post URL.", - TOAST_STYLE - ); + // If not rate limited, proceed with captcha verification + let hcaptchaToken = undefined; + if (hcaptchaLoaded) { + try { + setIsHCaptchaVisible(true); + + // Small delay before showing backdrop + setTimeout(() => { + setShowBackdrop(true); + }, 600); + + hcaptchaToken = await executeHCaptcha(); + + setShowBackdrop(false); + setIsHCaptchaVisible(false); + } catch (error) { + setShowBackdrop(false); + setIsHCaptchaVisible(false); + console.error("hCaptcha execution error:", error); + toast.error("Failed to verify captcha.", TOAST_STYLE); setLoading(false); return; } + } else { + console.warn("hCaptcha not loaded or not ready"); + toast.warning("hCaptcha not ready. Please try again.", TOAST_STYLE); + setLoading(false); + return; + } - // If not rate limited, proceed with captcha verification - let hcaptchaToken = undefined; - if (hcaptchaLoaded) { - try { - setIsHCaptchaVisible(true); - - // Small delay before showing backdrop - setTimeout(() => { - setShowBackdrop(true); - }, 600); - - hcaptchaToken = await executeHCaptcha(); - - setShowBackdrop(false); - setIsHCaptchaVisible(false); - } catch (error) { - setShowBackdrop(false); - setIsHCaptchaVisible(false); - console.error("hCaptcha execution error:", error); - toast.error("Failed to verify captcha.", TOAST_STYLE); - setLoading(false); - return; - } - } else { - console.warn("hCaptcha not loaded or not ready"); - toast.warning("hCaptcha not ready. Please try again.", TOAST_STYLE); - setLoading(false); - return; + // If captcha is solved, proceed with the claim + const res = await fetch( + `${clientEnv.NEXT_PUBLIC_FAUCET_API_URL}/api/claim`, + { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + address: resolvedAddress, + chainId, + hcaptchaToken, + multiplierToken: localStorage.getItem("multiplierToken"), + }), } + ); - // If captcha is solved, proceed with the claim - const res = await fetch( - `${clientEnv.NEXT_PUBLIC_FAUCET_API_URL}/api/claim`, - { - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify({ - address: resolvedAddress, - chainId, - hcaptchaToken, - multiplierToken: localStorage.getItem("multiplierToken"), - }), - } - ); - - const responseData = await res.json(); + const responseData = await res.json(); - await onChange(true); + await onChange(true); - res.ok - ? toast.success( - `🎉 Testnet ETH successfully claimed! Enjoy!`, - TOAST_STYLE - ) - : toast.error(`${responseData.message}`, TOAST_STYLE); - } catch (error) { - console.error("Request error:", error); - await onChange(false); - toast.error( - `${error instanceof Error ? error.message : "❌ Failed to claim testnet ETH. Please try again."}`, - TOAST_STYLE - ); - } finally { - localStorage.removeItem("multiplierToken"); - setLoading(false); - setSkipTweetPrompt(false); - setTweetUrl(""); - } - }, - [ - address, - isConnected, - openConnectModal, - onChange, - hcaptchaLoaded, - executeHCaptcha, - tweetUrl, - skipTweetPrompt, - setTweetUrl, - ] - ); - - // Watch for connection success and address being populated - useEffect(() => { - if ( - waitingForConnection && - isConnected && - address && - !hasAutoRequested.current - ) { - setWaitingForConnection(false); - hasAutoRequested.current = true; - handleRequest(); + res.ok + ? toast.success( + `🎉 Testnet ETH successfully claimed! Enjoy!`, + TOAST_STYLE + ) + : toast.error(`${responseData.message}`, TOAST_STYLE); + } catch (error) { + console.error("Request error:", error); + await onChange(false); + toast.error( + `${error instanceof Error ? error.message : "❌ Failed to claim testnet ETH. Please try again."}`, + TOAST_STYLE + ); + } finally { + localStorage.removeItem("multiplierToken"); + setLoading(false); + setSkipTweetPrompt(false); + setTweetUrl(""); } - }, [isConnected, waitingForConnection, address, handleRequest]); - - // Reset auto-request flag when address changes - useEffect(() => { - hasAutoRequested.current = false; - }, [address]); - - return ( - <> - + + {isHCaptchaVisible && ( + { + const closeButton = document.querySelector( + 'iframe[title="close"]' + ) as HTMLIFrameElement; + if (closeButton) { + closeButton.click(); + } }} - disabled={requestLoading || disabled} - type={type} - className={`bg-[#7538F5] hover:bg-[#7538F5]/90 shadow-blue-glow - rounded-full text-center text-white text-base font-bold uppercase font-[Plus_Jakarta_Sans] min-w-[160px] ${ - requestLoading ? "opacity-50 cursor-not-allowed" : "" - } ${className}`} - variant="primary" - size="md" - > - {requestLoading ? "Requesting..." : children} - - - {isHCaptchaVisible && ( - { - const closeButton = document.querySelector( - 'iframe[title="close"]' - ) as HTMLIFrameElement; - if (closeButton) { - closeButton.click(); + /> + )} + + + {({ closeModal }) => ( +
+
+ + Share a tweet for a 2x bonus! + +

+ Tweet about our faucet and include the faucet URL to get 2x more + testnet ETH. +

+
+ +
+ +
+ + - )} - - {showTweetPrompt && ( - - setShowTweetPrompt(false)} + value={tweetUrl} + iconRight={} + onChange={(e) => setTweetUrl(e.target.value)} + placeholder="Paste your tweet URL here" + onKeyDown={async (e) => { + if (e.key === "Enter") { + e.preventDefault(); + try { + await validateAndProcessTweet(chainId, tweetUrl); + handleRequest(false, setTweetModalLoading); + closeModal(); + } catch (error) { + toast.error( + error instanceof Error + ? error.message + : "Failed to validate tweet. Please try again.", + TOAST_STYLE + ); + } + } + }} /> - setShowTweetPrompt(false)} - contentClassName="max-w-[536px] flex-1 relative z-[10000]" - > -
-
- - Share a tweet for a 2x bonus! - -

- Tweet about our faucet and include the faucet URL to get 2x - more testnet ETH. -

-
- -
- -
- -
- setTweetUrl(e.target.value)} - onKeyDown={async (e) => { - if (e.key === "Enter") { - e.preventDefault(); - try { - await validateAndProcessTweet(chainId, tweetUrl); - handleRequest(false, setTweetModalLoading); - } catch (error) { - toast.error( - error instanceof Error - ? error.message - : "Failed to validate tweet. Please try again.", - TOAST_STYLE - ); - } - } - }} - /> -
- -
-
- -
- - -
-
-
-
+ +
+ + +
+
)} - - ); - } -); +
+ + ); +}; FaucetRequestButton.displayName = "FaucetRequestButton"; diff --git a/src/app/[locale]/faucet/page.tsx b/src/app/[locale]/faucet/page.tsx index 3b65126..c143078 100644 --- a/src/app/[locale]/faucet/page.tsx +++ b/src/app/[locale]/faucet/page.tsx @@ -1,7 +1,11 @@ import { Metadata } from "next"; +import { useTranslations } from "next-intl"; import { JsonLd } from "@/components/JsonLd"; import { PageView } from "@/components/PageView"; +import { newLayoutContainerClasses } from "@/components/styles/container"; + +import { PageHeader } from "../_components/PageHeader"; import { Faucet } from "./_components/Faucet"; @@ -27,6 +31,7 @@ export const metadata: Metadata = { }; export default function FaucetPage() { + const t = useTranslations("Faucet"); return ( <> - +
+ + +
); } diff --git a/src/app/[locale]/get-verified/_components/VerificationContent.tsx b/src/app/[locale]/get-verified/_components/VerificationContent.tsx deleted file mode 100644 index 3227182..0000000 --- a/src/app/[locale]/get-verified/_components/VerificationContent.tsx +++ /dev/null @@ -1,282 +0,0 @@ -"use client"; - -import Image from "next/image"; - -import { Button } from "@/components/Button/Button"; -import { ColoredText } from "@/components/ColoredText"; -import { useFeatureRequestModalContext } from "@/components/FeatureRequestModal/FeatureRequestModalContext"; -import { FlyWhenIntoView } from "@/components/FlyWhenIntoView"; -import { useVerificationModalContext } from "@/components/VerificationModal/VerificationModalContext"; - -export function VerificationContent() { - const { setIsOpen: openVerificationModal } = useVerificationModalContext(); - const { setIsOpen: openFeatureRequestModal } = - useFeatureRequestModalContext(); - - return ( -
- {/* First section with two noisy containers */} -
- -
- {/* Add background noise div with matching rounded corners */} -
- -
-
-
- attestation -
-
-
- - What is Ink Verify? - -
- Ink Verify is a public infrastructure that enables onchain - attestations about both offhcain and onchain data. Powered by - the Ethereum Attestation Service. -
-
-
-
- - - -
-
-
-
- how it works -
-
-
- - Why Verify - -
- We're building openly and we want to hear from you. - Verify your attendance, get tooling rewards, and tell us how - you want to use Ink Verify. -
-
-
-
-
-
- - {/* Benefits section */} -
-
- - By verifying your attendance you can get... - -
- -
-
- {/* USPs grid - 50% width */} -
-
- {/* QuickNode */} -
-
- QuickNode icon -
- QuickNode -
-
-
- Best in class RPC, Streams, Functions, Alerts! -
-
- - {/* Tenderly */} -
-
- Tenderly icon -
- Tenderly -
-
-
- Full stack web3 infrastructure -
-
- - {/* Goldsky */} -
-
- Goldsky icon -
- Goldsky -
-
-
Data indexing made easy
-
- - {/* And more */} -
-
- More icon - - And more - -
-
-
-
- - {/* Discord badge - 50% width */} -
-
-
-
- Ink Discord Badge -
-
- - Get a Discord badge - -
- By verifying your attendance of Ink DevJam, you'll get a - one of a kind Discord badge to display on your profile. -
-
-
-
-
- - {/* Verify now button */} -
-
- -
-
-
- - {/* Request a feature section */} -
- {/* Left side content */} -
- - Request a feature - -
- What data would you like to see attestations for? -
-
- -
-
- - {/* Right side image - positioned to bottom right */} -
- Brain visualization -
-
- - {/* Final CTA section */} - - - Get Verified and start building - - -
- -
-
-
- ); -} diff --git a/src/app/[locale]/get-verified/_components/VerificationHero.tsx b/src/app/[locale]/get-verified/_components/VerificationHero.tsx deleted file mode 100644 index 23cb10b..0000000 --- a/src/app/[locale]/get-verified/_components/VerificationHero.tsx +++ /dev/null @@ -1,65 +0,0 @@ -"use client"; - -import Image from "next/image"; - -import { Button } from "@/components/Button/Button"; -import { ColoredText } from "@/components/ColoredText"; -import { useVerificationModalContext } from "@/components/VerificationModal/VerificationModalContext"; -import { classNames } from "@/util/classes"; - -export function VerificationHero() { - const { setIsOpen } = useVerificationModalContext(); - - return ( -
-
- {/* Left side - Image */} -
- Ink DevJam Verification -
- - {/* Right side - Content */} -
- -
- Get Verified onchain to unlock perks and dev tools -
-
- -
- Simply verify your attendance of the Ink DevJam event and - you're golden! -
- -
- -
-
-
-
- ); -} diff --git a/src/app/[locale]/get-verified/page.tsx b/src/app/[locale]/get-verified/page.tsx deleted file mode 100644 index 5d07d26..0000000 --- a/src/app/[locale]/get-verified/page.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import { Metadata } from "next"; - -import { FeatureRequestModal } from "@/components/FeatureRequestModal/FeatureRequestModal"; -import { FeatureRequestModalProvider } from "@/components/FeatureRequestModal/FeatureRequestModalContext"; -import { JsonLd } from "@/components/JsonLd"; -import { PageView } from "@/components/PageView"; -import { newLayoutContainerClasses } from "@/components/styles/container"; -import { VerificationModal } from "@/components/VerificationModal/VerificationModal"; -import { VerificationModalProvider } from "@/components/VerificationModal/VerificationModalContext"; - -import { VerificationContent } from "./_components/VerificationContent"; -import { VerificationHero } from "./_components/VerificationHero"; - -export const metadata: Metadata = { - title: "Get Verified - Ink", - description: - "Get verified on Ink, Kraken's Layer 2 blockchain built on the Superchain. Join our verification program to establish your identity and unlock enhanced features.", -}; - -export default function GetVerifiedPage() { - return ( - - - <> - - - -
- - - -
- - - -
-
- ); -} diff --git a/src/app/[locale]/layout.tsx b/src/app/[locale]/layout.tsx index 9588730..1c39013 100644 --- a/src/app/[locale]/layout.tsx +++ b/src/app/[locale]/layout.tsx @@ -4,12 +4,11 @@ import { cookies, headers } from "next/headers"; import { NextIntlClientProvider } from "next-intl"; import { getMessages } from "next-intl/server"; -import { ContactUsModal } from "@/components/ContactUsModal"; import { ConsentLogger } from "@/components/CookieConsent/ConsentLogger"; import { CookieConsent } from "@/components/CookieConsent/CookieConsent"; import { Footer } from "@/components/Footer"; import { GlobalSvgStuff } from "@/components/icons/GlobalSvgStuff"; -import { NewsletterModal } from "@/components/NewsletterModal"; +import { ContactUsModal, NewsletterModal } from "@/components/Modals"; import { Providers } from "@/components/Providers"; import { ToggleThemeShortcut } from "@/components/ToggleThemeShortcut"; import { clientEnv } from "@/env-client"; diff --git a/src/app/[locale]/newsletter/resubscribe/_components/ResubscribeForm.tsx b/src/app/[locale]/newsletter/resubscribe/_components/ResubscribeForm.tsx index b3965bd..7ff1491 100644 --- a/src/app/[locale]/newsletter/resubscribe/_components/ResubscribeForm.tsx +++ b/src/app/[locale]/newsletter/resubscribe/_components/ResubscribeForm.tsx @@ -2,11 +2,11 @@ import { useActionState } from "react"; import { useFormStatus } from "react-dom"; +import { Button } from "@inkonchain/ink-kit"; import { resubscribeToBraze } from "@/actions/resubscribe-to-braze"; -import { Button } from "@/components/Button/Button"; -import { ButtonLink } from "@/components/Button/ButtonLink"; import { FormStatus } from "@/components/FormStatus"; +import { Link } from "@/routing"; interface ResubscribeFormProps { userBrazeId: string; @@ -30,17 +30,16 @@ export const ResubscribeForm: React.FC = ({ was a mistake, use the button below to unsubscribe - - Unsuscribe - +
); } @@ -64,7 +63,7 @@ export const ResubscribeForm: React.FC = ({ type="checkbox" id="generalWailist" name="generalWailist" - className="h-4 w-4 rounded border-gray-300 text-whiteMagic" + className="h-4 w-4 rounded-sm border-gray-300 text-whiteMagic" />
@@ -79,7 +78,7 @@ export const ResubscribeForm: React.FC = ({ type="checkbox" id="developerWailist" name="developerWailist" - className="h-4 w-4 rounded border-gray-300 text-whiteMagic" + className="h-4 w-4 rounded-sm border-gray-300 text-whiteMagic" />
@@ -116,7 +115,7 @@ const Submit = () => { return (
); } @@ -64,7 +63,7 @@ export const UnsubscribeForm: React.FC = ({ type="checkbox" id="generalWailist" name="generalWailist" - className="h-4 w-4 rounded border-gray-300 text-whiteMagic" + className="h-4 w-4 rounded-sm border-gray-300 text-whiteMagic" />
@@ -79,7 +78,7 @@ export const UnsubscribeForm: React.FC = ({ type="checkbox" id="developerWailist" name="developerWailist" - className="h-4 w-4 rounded border-gray-300 text-whiteMagic" + className="h-4 w-4 rounded-sm border-gray-300 text-whiteMagic" />
@@ -116,7 +115,7 @@ const Submit = () => { return (
diff --git a/src/app/[locale]/testnet-bridge/_components/Bridge.tsx b/src/app/[locale]/testnet-bridge/_components/Bridge.tsx index acb34d6..74eba34 100644 --- a/src/app/[locale]/testnet-bridge/_components/Bridge.tsx +++ b/src/app/[locale]/testnet-bridge/_components/Bridge.tsx @@ -1,6 +1,7 @@ "use client"; import { useEffect, useState } from "react"; +import { Button, useModalContext } from "@inkonchain/ink-kit"; import Image from "next/image"; import { useTranslations } from "next-intl"; import { parseEther } from "viem"; @@ -15,8 +16,10 @@ import { } from "wagmi"; import { sepolia } from "wagmi/chains"; -import { useBridgeTransactionModal } from "@/app/[locale]/testnet-bridge/_components/BridgeTransactionModal"; -import { Button } from "@/components/Button/Button"; +import { + BRIDGE_TRANSACTION_MODAL_KEY, + useBridgeTransactionModal, +} from "@/app/[locale]/testnet-bridge/_components/BridgeTransactionModal"; import { ColoredText } from "@/components/ColoredText"; import { ConnectWalletButton } from "@/components/ConnectWalletButton"; import { Loader } from "@/components/Loader"; @@ -37,8 +40,8 @@ export function Bridge() { const { address, isConnected, chain } = useAccount(); const { switchChain } = useSwitchChain(); - const { setIsOpen: setIsBridgeTransactionModalOpen, setTxHash } = - useBridgeTransactionModal(); + const { setTxHash } = useBridgeTransactionModal(); + const { openModal } = useModalContext(BRIDGE_TRANSACTION_MODAL_KEY); const isCorrectNetwork = chain?.id === sepolia.id; const isWrongNetwork = isConnected && !isCorrectNetwork; @@ -84,8 +87,8 @@ export function Bridge() { onSuccess: (hash: Hash) => { if (hash) { setStatus(`success:${hash}`); - setIsBridgeTransactionModalOpen(true); setTxHash(hash); + openModal(); setAmount(""); } else { console.error("Unexpected transaction response:", hash); @@ -283,7 +286,7 @@ export function Bridge() {
@@ -424,7 +427,7 @@ export function Bridge() {
document.getElementById("amount-input")?.focus() } @@ -435,7 +438,7 @@ export function Bridge() { id="amount-input" type="number" placeholder="0" - className={`dark:bg-white text-black w-full outline-none text-4xl font-medium [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none ${error ? "border-red-500 border-b" : ""}`} + className={`dark:bg-white text-black w-full outline-hidden text-4xl font-medium [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none ${error ? "border-red-500 border-b" : ""}`} min="0" step="any" value={amount} @@ -445,7 +448,7 @@ export function Bridge() { }} />
= () => { const t = useTranslations("Bridge"); - const { isOpen, setIsOpen, txHash, setTxHash } = useBridgeTransactionModal(); - useModal({ isOpen, closeModal, modalKey: "bridge-transaction-modal" }); + const { txHash, setTxHash } = useBridgeTransactionModal(); + const { closeModal } = useModalContext(BRIDGE_TRANSACTION_MODAL_KEY); - function closeModal() { - setIsOpen(false); + function onCloseModal() { setTxHash(null); } - if (!isOpen) return null; - if (!txHash) return null; - return ( - - - -
- -
- + {() => ( +
+
+ +
+ + {t("transactionSubmitted")} + +

+ {t.rich("bridgingTime", { + network: (network) => {network}, + })} +

+
+
+
+ +
+
+
-
- -
-
- -
- - + )} + ); }; diff --git a/src/app/[locale]/testnet-bridge/_components/BridgeTransactionModal/BridgeTransactionModalContext.tsx b/src/app/[locale]/testnet-bridge/_components/BridgeTransactionModal/BridgeTransactionModalContext.tsx index d3ec983..9f288ee 100644 --- a/src/app/[locale]/testnet-bridge/_components/BridgeTransactionModal/BridgeTransactionModalContext.tsx +++ b/src/app/[locale]/testnet-bridge/_components/BridgeTransactionModal/BridgeTransactionModalContext.tsx @@ -10,24 +10,14 @@ import { } from "react"; interface BridgeTransactionModalContextProps { - isOpen: boolean; txHash: null | string; - setIsOpen: Dispatch>; setTxHash: Dispatch>; } -function notImplementedYet() { - throw new Error( - "Not yet implemented, make sure component is wrapped by BridgeTransactionModalContextProvider." - ); -} - const BridgeTransactionModalContext = createContext({ - isOpen: false, txHash: null, - setIsOpen: notImplementedYet, - setTxHash: notImplementedYet, + setTxHash: () => {}, }); export const useBridgeTransactionModal = () => @@ -36,12 +26,11 @@ export const useBridgeTransactionModal = () => export const BridgeTransactionModalContextProvider: React.FC< PropsWithChildren > = ({ children }) => { - const [isOpen, setIsOpen] = useState(false); const [txHash, setTxHash] = useState(null); const context: BridgeTransactionModalContextProps = useMemo( - () => ({ isOpen, setIsOpen, txHash, setTxHash }), - [isOpen, setIsOpen, txHash, setTxHash] + () => ({ txHash, setTxHash }), + [txHash, setTxHash] ); return ( diff --git a/src/app/[locale]/verify/_components/Verifications.tsx b/src/app/[locale]/verify/_components/Verifications.tsx index 40eacaa..7a46187 100644 --- a/src/app/[locale]/verify/_components/Verifications.tsx +++ b/src/app/[locale]/verify/_components/Verifications.tsx @@ -72,7 +72,7 @@ export const Verifications = () => { const DesktopVerificationsTable = () => { const { isConnected } = useAccount(); return ( - +
@@ -144,7 +144,7 @@ const DesktopVerificationsTable = () => {
{isConnected ? ( Available @@ -164,7 +164,7 @@ const DesktopVerificationsTable = () => { const MobileVerificationsTable = () => { const { isConnected } = useAccount(); return ( -
+
@@ -225,7 +225,7 @@ const MobileVerificationsTable = () => {
{isConnected ? ( Available diff --git a/src/app/[locale]/verify/_components/VerifyHaveASuggestion.tsx b/src/app/[locale]/verify/_components/VerifyHaveASuggestion.tsx index f74d17f..a3f1aca 100644 --- a/src/app/[locale]/verify/_components/VerifyHaveASuggestion.tsx +++ b/src/app/[locale]/verify/_components/VerifyHaveASuggestion.tsx @@ -1,14 +1,15 @@ "use client"; -import { Button } from "@inkonchain/ink-kit"; +import { Button, useModalContext } from "@inkonchain/ink-kit"; import { useTranslations } from "next-intl"; import { ColoredText } from "@/components/ColoredText"; -import { useContactUsModalContext } from "@/components/ContactUsModal/ContactUsModalContext"; +import { CONTACT_US_MODAL_KEY } from "@/components/Modals/ContactUsModal"; export function VerifyHaveASuggestion() { const t = useTranslations("Verify.haveASuggestion"); - const { setIsOpen } = useContactUsModalContext(); + const { openModal: openContactUsModal } = + useModalContext(CONTACT_US_MODAL_KEY); return (
@@ -24,7 +25,7 @@ export function VerifyHaveASuggestion() { {t("description")}
-
diff --git a/src/app/globals.css b/src/app/globals.css index 76cee6d..6f1ddd6 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -1,207 +1,3 @@ -@import "@inkonchain/ink-kit/style.css"; - -@tailwind base; -@tailwind components; -@tailwind utilities; - -@layer utilities { - body { - font-family: - var(--font-plus-jakarta-sans), - var(--font-inter), - -apple-system, - BlinkMacSystemFont, - "Segoe UI", - Helvetica, - "Apple Color Emoji", - Arial, - sans-serif, - "Segoe UI Emoji", - "Segoe UI Symbol"; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - background-color: #f0efff; - background-size: cover; - } - html { - scroll-behavior: smooth; - } - /** To optimise **/ - - .dark body { - background-color: #160f1f; - } - /** https://github.com/tailwindlabs/tailwindcss/discussions/3654#discussioncomment-2327745 */ - .pause { - animation-play-state: paused; - } - - /** Transform matching Tailwind 4 new 3D transforms. Remove this once we migrate to Tailwind 4. */ - .transform-3d { - transform: translate3d( - var(--tw-translate-x), - var(--tw-translate-y), - var(--tw-translate-z) - ) - var(--tw-rotate-x) !important; - } - - :root { - --ink-button-primary: rgb(113, 50, 245); - --ink-scrollbar: color-mix( - in srgb, - var(--ink-button-primary) 20%, - transparent - ); - } - - .-rotate-x-180 { - --tw-rotate-x: rotateX(-180deg); - } - - .scrollbar-custom { - scrollbar-width: thin; /* Firefox */ - scrollbar-color: var(--ink-scrollbar) transparent; /* Firefox */ - } - - .scrollbar-custom::-webkit-scrollbar { - width: 12px; /* width of the entire scrollbar */ - } - f .scrollbar-custom::-webkit-scrollbar-track { - background: transparent; /* color of the tracking area */ - } - - .scrollbar-custom::-webkit-scrollbar-thumb { - background-color: var(--ink-scrollbar); /* color of the scroll thumb */ - border-radius: 20px; /* roundness of the scroll thumb */ - } - - .no-scrollbar::-webkit-scrollbar { - display: none; - } - - .no-scrollbar { - -ms-overflow-style: none; - scrollbar-width: none; - } -} - -:root { - --relay-kit-font-family: "Plus Jakarta Sans"; - --relay-kit-primary: #7132f5; - --relay-kit-primary-hover: #7132f5e5; - --relay-kit-primary-disabled: #7032f59c; - --relay-kit-subtle-bg: #f5f3ff; - --relay-kit-subtle-border: #e9e5ff; - --relay-kit-text: #1a1523; - --relay-kit-text-subtle: #64618b; - --relay-kit-text-error: #dc2626; - --relay-kit-text-success: #16a34a; - - --relay-kit-button-secondary-bg: #f5f3ff; - --relay-kit-button-secondary-hover: #e9e5ff; - - --relay-kit-input-bg: #f5f3ff; - --relay-kit-input-radius: 16px; - - --relay-kit-skeleton-bg: #f5f3ff; - - --relay-kit-dropdown-bg: #ffffff; - --relay-kit-dropdown-radius: 16px; - - --relay-kit-widget-bg: #ffffff; - --relay-kit-widget-radius: 16px; - --relay-kit-widget-shadow: 0px 4px 30px rgba(0, 0, 0, 0.08); - --relay-kit-widget-card-bg: #f8f7ff; - --relay-kit-widget-card-radius: 16px; - --relay-kit-widget-selector-bg: #f5f3ff; - --relay-kit-widget-selector-hover: #e9e5ff; - - --relay-kit-widget-swap-border: #dedbf0; - --relay-kit-widget-swap-radius: 16px; - - --relay-kit-modal-bg: #ffffff; - --relay-kit-modal-radius: 16px; -} - -.dark { - --relay-kit-subtle-bg: #6451aa26; - --relay-kit-subtle-border: #261e2f; - - --relay-kit-text: #ffffff; - --relay-kit-text-subtle: #ffffff80; - --relay-kit-text-error: #ff4d4d; - --relay-kit-text-success: #4caf50; - - --relay-kit-button-secondary-bg: #261e2f; - --relay-kit-button-secondary-hover: #211a29; - - --relay-kit-input-bg: #261e2f; - - --relay-kit-skeleton-bg: #261e2f; - --relay-kit-dropdown-bg: #211a29ad; - - --relay-kit-widget-bg: #2b2a4e; - --relay-kit-widget-card-bg: red; - --relay-kit-widget-selector-bg: #211a29ad; - --relay-kit-widget-selector-hover: #211a29; - - --relay-kit-widget-swap-border: #161c33; - - --relay-kit-modal-bg: #160f1f; -} - -/* Relay UI Kit CSS overrides (properties we cannot change through the theme) */ - -.relay-bg_widget-selector-background { - border-radius: 999px !important; -} - -.relay-kit-reset button { - border-radius: 999px !important; -} - -.relay-kit-reset button[aria-label="Swap"], -.relay-kit-reset button[aria-label="Connect wallet"] { - padding-top: 20px !important; - padding-bottom: 20px !important; - font-size: 20px !important; -} - -div[type="button"] > button { - padding: 22px !important; - padding-left: 8px !important; - padding-right: 12px !important; -} - -.relay-kit-reset img { - border-radius: 999px !important; - width: 32px !important; -} - -.relay-bg_secondary-button-background { - padding: 12px !important; - padding-left: 16px !important; - padding-right: 16px !important; -} - -.relay-bg_secondary-button-background > div { - font-weight: bold !important; - color: var(--ink-text-on-secondary) !important; -} - -.relay-h_24 { - height: 32px !important; -} - -.relay-w_24 { - width: 32px !important; -} - -.relay-fw_500:not(#\#):not(#\#):not(#\#):not(#\#) { - font-weight: 700 !important; -} - /* A fix that must be applied to all h- so that they don't cut off the text */ .ink\:text-h1 { margin-top: -4px; diff --git a/src/app/layout.tsx b/src/app/layout.tsx index cd637b5..653698a 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,7 +1,7 @@ import React from "react"; import { Metadata, Viewport } from "next"; -import "@/app/globals.css"; +import "@/app/tailwind.css"; export const metadata: Metadata = { verification: { diff --git a/src/app/tailwind.css b/src/app/tailwind.css new file mode 100644 index 0000000..3b05a78 --- /dev/null +++ b/src/app/tailwind.css @@ -0,0 +1,220 @@ +@import "@inkonchain/ink-kit/style.css" layer(base); + +@import "tailwindcss"; +@import "./globals.css"; + +@custom-variant dark (&:where(.dark, .dark *)); + +/* + The default border color has changed to `currentColor` in Tailwind CSS v4, + so we've added these compatibility styles to make sure everything still + looks the same as it did with Tailwind CSS v3. + + If we ever want to remove these styles, we need to add an explicit border + color utility to any element that depends on these defaults. +*/ +@layer base { + *, + ::after, + ::before, + ::backdrop, + ::file-selector-button { + border-color: var(--color-gray-200, currentColor); + } +} + +@theme { + /** Colors */ + --color-default: var(--ink-text-default); + --color-inkGradient: var(--ink-button-primary); + --color-gradientPurple: #8049f2; + --color-blackMagic: #0b0d12; + --color-whiteMagic: #f6f4ff; + + --color-dapps-icon-gradient: linear-gradient( + 144.22deg, + #c7e1ff -40.26%, + #c6c7d2 66.08%, + #7132f5 125.73% + ), + radial-gradient( + 61.23% 153.65% at -4.6% -9.33%, + #c7e1ff 0%, + rgba(199, 225, 255, 0.6) 33.33%, + #f6f4ff 66.67%, + rgba(198, 199, 210, 0) 100% + ), + linear-gradient(0deg, rgba(130, 215, 251, 0), rgba(130, 215, 251, 0)), + radial-gradient( + 50% 50% at 50% 50%, + rgba(255, 255, 255, 0.7) 0%, + rgba(255, 255, 255, 0) 100% + ); + + --animation-marquee: "marquee 25s linear infinite"; + --animation-pulse: "slight-pulse 3s ease-in-out infinite"; + --animation-slightPulse: "slight-pulse 5.5s ease-in-out infinite"; + + --blur-xs: "2px"; + --backdrop-blur-xs: "2px"; + + --border-radius-4xl: "30px"; + + --font-size-h1: "64px"; + --font-size-h1-line-height: "60.8px"; + --font-size-h1-letter-spacing: "-2%"; + + --font-size-h2: "38px"; + --font-size-h2-line-height: "38px"; + --font-size-h2-letter-spacing: "-1%"; + + --font-size-h3: "32px"; + --font-size-h3-line-height: "32px"; + --font-size-h3-letter-spacing: "-1%"; + + --font-size-body: "16px"; + --font-size-body-line-height: "22px"; + + --font-size-body-2: "16px"; + --font-size-body-2-line-height: "20px"; + + --font-size-body-3: "14px"; + --font-size-body-3-line-height: "18px"; + + --font-size-4xl: "36px"; + --font-size-4xl-line-height: "47px"; + --font-size-4xl-letter-spacing: "-2%"; + + --font-size-6xl: "60px"; + --font-size-6xl-line-height: "72px"; + --font-size-6xl-letter-spacing: "-2%"; + + --duration-150: "150ms"; + --duration-600: "600ms"; + + --background-size-overflow-150: "150% 100%"; + --background-size-overflow-200: "200% 100%"; + + /* Generated using: https://linear-easing-generator.netlify.app/ */ + --ease-spring: linear( + 0, + 0.002, + 0.007 1.1%, + 0.027, + 0.06, + 0.108 5.1%, + 0.214 7.7%, + 0.58 15.8%, + 0.686, + 0.774, + 0.847, + 0.907, + 0.955, + 0.991 32.1%, + 1.011 34.6%, + 1.026 37.3%, + 1.034 40.2%, + 1.037 43.5%, + 1.034 48.2%, + 1.012 62.1%, + 1.003 71%, + 0.999 81.9% 100% + ); + + --breakpoint-menu: 1035px; + --breakpoint-sm-landscape-only: \(max-height: 700px\)and \(min-width: 640px\); + --breakpoint-hd: 1920px; + --breakpoint-2xl: 1600px; + + @keyframes marquee { + 0% { + transform: translateX(0); + } + 100% { + transform: translateX(-50%); + } + } + + @keyframes slightPulse { + 0% { + background-position: 0% 50%; + } + 50% { + background-position: 100% 50%; + } + 100% { + background-position: 0% 50%; + } + } +} + +@utility dark { + /** To optimise **/ + + & body { + background-color: #160f1f; + } +} + +@utility pause { + /** https://github.com/tailwindlabs/tailwindcss/discussions/3654#discussioncomment-2327745 */ + animation-play-state: paused; +} + +@utility scrollbar-custom { + scrollbar-width: thin; /* Firefox */ + scrollbar-color: var(--ink-scrollbar) transparent; /* Firefox */ + + &::-webkit-scrollbar { + width: 12px; /* width of the entire scrollbar */ + } + f &::-webkit-scrollbar-track { + background: transparent; /* color of the tracking area */ + } + + &::-webkit-scrollbar-thumb { + background-color: var(--ink-scrollbar); /* color of the scroll thumb */ + border-radius: 20px; /* roundness of the scroll thumb */ + } +} + +@utility no-scrollbar { + &::-webkit-scrollbar { + display: none; + } + -ms-overflow-style: none; + scrollbar-width: none; +} + +@layer utilities { + body { + font-family: + var(--font-plus-jakarta-sans), + var(--font-inter), + -apple-system, + BlinkMacSystemFont, + "Segoe UI", + Helvetica, + "Apple Color Emoji", + Arial, + sans-serif, + "Segoe UI Emoji", + "Segoe UI Symbol"; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + background-color: #f0efff; + background-size: cover; + } + html { + scroll-behavior: smooth; + } + + :root { + --ink-button-primary: rgb(113, 50, 245); + --ink-scrollbar: color-mix( + in srgb, + var(--ink-button-primary) 20%, + transparent + ); + } +} diff --git a/src/components/AppSubmissionModal/AppSubmissionModalContext.tsx b/src/components/AppSubmissionModal/AppSubmissionModalContext.tsx deleted file mode 100644 index 78008e0..0000000 --- a/src/components/AppSubmissionModal/AppSubmissionModalContext.tsx +++ /dev/null @@ -1,27 +0,0 @@ -"use client"; -import React, { createContext, useContext, useState } from "react"; - -interface AppSubmissionModalContextType { - isOpen: boolean; - setIsOpen: (isOpen: boolean) => void; -} - -const AppSubmissionModalContext = createContext({ - isOpen: false, - setIsOpen: () => {}, -}); - -export const useAppSubmissionModalContext = () => - useContext(AppSubmissionModalContext); - -export const AppSubmissionModalProvider: React.FC<{ - children: React.ReactNode; -}> = ({ children }) => { - const [isOpen, setIsOpen] = useState(false); - - return ( - - {children} - - ); -}; diff --git a/src/components/Backdrop.tsx b/src/components/Backdrop.tsx index d019df2..1f91384 100644 --- a/src/components/Backdrop.tsx +++ b/src/components/Backdrop.tsx @@ -35,7 +35,7 @@ export const Backdrop: React.FC = ({ return (
= ({ - title, - subtitle, - ratio = 8, - align = "center", - variant = "purple", -}) => { - return ( -
- -
- {title} -
-
- {subtitle} -
- ); -}; diff --git a/src/components/Button/Button.tsx b/src/components/Button/Button.tsx deleted file mode 100644 index 5c11f0a..0000000 --- a/src/components/Button/Button.tsx +++ /dev/null @@ -1,94 +0,0 @@ -"use client"; - -import React from "react"; -import { AnimatePresence, motion } from "framer-motion"; - -import { Loader } from "@/components/Loader"; - -import { - buttonClassName, - ButtonSizes, - ButtonVariants, - IconPositions, -} from "./styles"; - -export interface ButtonProps - extends React.ButtonHTMLAttributes { - variant: ButtonVariants; - icon?: React.ReactNode; - iconPosition?: IconPositions; - iconOnly?: boolean; - size: ButtonSizes; - compact?: boolean; - pending?: boolean; -} - -export const Button = React.forwardRef( - ( - { - className, - variant, - icon, - iconPosition = "left", - size, - compact = false, - iconOnly = false, - pending = false, - children, - ...props - }, - ref - ) => { - return ( - - ); - } -); - -Button.displayName = "Button"; diff --git a/src/components/Button/ButtonLink.tsx b/src/components/Button/ButtonLink.tsx deleted file mode 100644 index 89de149..0000000 --- a/src/components/Button/ButtonLink.tsx +++ /dev/null @@ -1,54 +0,0 @@ -"use client"; - -import React, { PropsWithChildren } from "react"; - -import { HrefProp, Link } from "@/routing"; -import { classNames } from "@/util/classes"; - -import { - buttonClassName, - ButtonSizes, - ButtonVariants, - IconPositions, -} from "./styles"; - -export interface ButtonLinkProps - extends Omit, "href"> { - className?: string; - href: HrefProp; - variant: ButtonVariants; - icon?: React.ReactNode; - iconPosition?: IconPositions; - size: ButtonSizes; - compact?: boolean; -} - -export const ButtonLink: React.FC> = ({ - className, - variant, - icon, - iconPosition = "left", - children, - size, - compact = false, - ...props -}) => { - return ( - - {icon && iconPosition === "left" && icon} - {children} - {icon && iconPosition === "right" && icon} - - ); -}; diff --git a/src/components/Button/styles.ts b/src/components/Button/styles.ts deleted file mode 100644 index 29e762e..0000000 --- a/src/components/Button/styles.ts +++ /dev/null @@ -1,94 +0,0 @@ -import { classNames } from "@/util/classes"; - -export type ButtonVariants = - | "primary" - | "outline" - | "dark" - | "black" - | "spotlight" - | "developer" - | "link"; -export type ButtonSizes = "xs" | "md" | "lg"; -export type IconPositions = "left" | "right"; - -const BACKGROUND_PRIMARY = - "text-whiteMagic bg-krakenPurple hover:brightness-110 duration-300 transition-[box-shadow] hover:shadow-krakenPurple/50 hover:shadow-large-pop text-whiteMagic"; - -const BACKGROUND_DARK = - "text-whiteMagic bg-[length:110%,100%] text-white bg-blackMagic hover:bg-[linear-gradient(129.5deg,#0B0D12_14.89%,#101114_14.9%,#2B1463_58.71%,#7132F5_83.46%,#C6C7D2_103.36%),radial-gradient(73.68%_66.96%_at_1.95%_4.66%,#101114_0%,rgba(16,17,20,0)_100%)]"; - -const BACKGROUND_OUTLINE = - "text-whiteMagic bg-blackMagic outline outline-2 outline-whiteMagic hover:brightness-90"; - -const BACKGROUND_SPOTLIGHT = - "text-purpleMagic bg-whiteMagic hover:brightness-90"; - -const BACKGROUND_LINK = - "text-whiteMagic bg-blackMagic/25 hover:brightness-110 duration-300 transition-[box-shadow] hover:shadow-krakenPurple/50 hover:shadow-large-pop text-whiteMagic"; - -const BACKGROUND_BLACK = - "bg-blackMagic shadow-blue-glow backdrop-blur-2xl hover:bg-blackMagic/80 dark:hover:bg-blackMagic/40 transition-all duration-300 text-white"; - -interface ButtonClassNameOptions { - iconOnly?: boolean; - compact?: boolean; - variant: ButtonVariants; - size: ButtonSizes; - extraClassName?: string; -} - -export const buttonClassName = ({ - variant, - iconOnly = false, - compact = false, - size, - extraClassName, -}: ButtonClassNameOptions) => { - return classNames( - "cursor-pointer opacity-100 rounded-full w-full h-full border-white overflow-hidden flex items-center justify-center gap-2 font-bold shadow", - "transition-colors", - "relative flex items-center gap-3 select-none w-full", - { - "justify-center": variant !== "link", - "justify-between": variant === "link", - }, - { - "py-2": size === "xs", - "py-4": size === "md", - "py-5": size === "lg", - }, - compact - ? { - "px-2": size === "xs", - "px-4": size === "md", - "px-8": size === "lg", - } - : { - "px-4": size === "xs", - "px-8": size === "md", - "px-16": size === "lg", - }, - { - "text-base": size === "md", - "text-xl": size === "lg", - }, - { - "px-4 py-4": variant === "link", - }, - iconOnly && { - "aspect-square": true, - "px-4": size === "xs", - "px-5": size === "md", - "px-6": size === "lg", - }, - { - [BACKGROUND_PRIMARY]: variant === "primary" || variant === "developer", - [BACKGROUND_DARK]: variant === "dark", - [BACKGROUND_OUTLINE]: variant === "outline", - [BACKGROUND_SPOTLIGHT]: variant === "spotlight", - [BACKGROUND_LINK]: variant === "link", - [BACKGROUND_BLACK]: variant === "black", - }, - extraClassName - ); -}; diff --git a/src/components/CenteredModal.tsx b/src/components/CenteredModal.tsx deleted file mode 100644 index c828a9f..0000000 --- a/src/components/CenteredModal.tsx +++ /dev/null @@ -1,96 +0,0 @@ -import { PropsWithChildren } from "react"; -import FocusLock from "react-focus-lock"; - -import { classNames } from "@/util/classes"; - -import { CloseIcon } from "./icons/Close"; - -export interface ModalContainerProps - extends React.HTMLAttributes {} - -export const CenteredModalContainer: React.FC< - PropsWithChildren -> = (props) => { - const { children, className, ...rest } = props; - return ( -
- {children} -
- ); -}; - -export interface CenteredModalProps - extends React.HTMLAttributes { - isOpen: boolean; - closeModal: () => void; - contentClassName?: string; - scrollable?: boolean; -} - -export const CenteredModal: React.FC> = ( - props -) => { - const { - isOpen, - closeModal, - children, - className, - contentClassName, - scrollable = false, - ...rest - } = props; - - if (!isOpen) return null; - - return ( - -
-
- -
-
- {children} -
-
-
-
-
- ); -}; diff --git a/src/components/ColoredText.tsx b/src/components/ColoredText.tsx index 224478c..903e5ce 100644 --- a/src/components/ColoredText.tsx +++ b/src/components/ColoredText.tsx @@ -30,20 +30,17 @@ export const ColoredText: React.FC = ({ return ( = ({}) => { - const { isOpen, setIsOpen } = useContactUsModalContext(); - - function closeModal() { - setIsOpen(false); - } - - useModal({ isOpen, closeModal, modalKey: "contact-us-modal" }); - - const baseUrl = "https://surveys.kraken.com/jfe/form/SV_8AgphAlvVoBgM4K"; - const [srcWithTimestamp, setSrcWithTimestamp] = useState(""); - - useEffect(() => { - const timestamp = new Date().getTime(); - setSrcWithTimestamp(`${baseUrl}?t=${timestamp}`); - }, [baseUrl]); - - useCallbackOnKey({ - key: "c", - handler: () => { - setIsOpen(true); - return true; - }, - }); - - if (!isOpen) return null; - - return ( - - - -
-
VerificationVerification