diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index 26e07e37387..b98aa7fac8f 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -86,6 +86,7 @@ "react-i18next": "^14.0.5", "react-icons": "^5.0.1", "react-konva": "^18.2.10", + "react-lottie": "^1.2.4", "react-redux": "9.1.0", "react-resizable-panels": "^2.0.11", "react-select": "5.8.0", @@ -125,6 +126,7 @@ "@types/node": "^20.11.20", "@types/react": "^18.2.59", "@types/react-dom": "^18.2.19", + "@types/react-lottie": "^1.2.10", "@types/uuid": "^9.0.8", "@vitejs/plugin-react-swc": "^3.6.0", "concurrently": "^8.2.2", diff --git a/invokeai/frontend/web/pnpm-lock.yaml b/invokeai/frontend/web/pnpm-lock.yaml index e1a1e4b7411..e091b689462 100644 --- a/invokeai/frontend/web/pnpm-lock.yaml +++ b/invokeai/frontend/web/pnpm-lock.yaml @@ -113,6 +113,9 @@ dependencies: react-konva: specifier: ^18.2.10 version: 18.2.10(konva@9.3.3)(react-dom@18.2.0)(react@18.2.0) + react-lottie: + specifier: ^1.2.4 + version: 1.2.4(react@18.2.0) react-redux: specifier: 9.1.0 version: 9.1.0(@types/react@18.2.59)(react@18.2.0)(redux@5.0.1) @@ -208,6 +211,9 @@ devDependencies: '@types/react-dom': specifier: ^18.2.19 version: 18.2.19 + '@types/react-lottie': + specifier: ^1.2.10 + version: 1.2.10 '@types/uuid': specifier: ^9.0.8 version: 9.0.8 @@ -6499,6 +6505,12 @@ packages: '@types/react': 18.2.59 dev: true + /@types/react-lottie@1.2.10: + resolution: {integrity: sha512-rCd1p3US4ELKJlqwVnP0h5b24zt5p9OCvKUoNpYExLqwbFZMWEiJ6EGLMmH7nmq5V7KomBIbWO2X/XRFsL0vCA==} + dependencies: + '@types/react': 18.2.59 + dev: true + /@types/react-reconciler@0.28.8: resolution: {integrity: sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==} dependencies: @@ -7868,6 +7880,13 @@ packages: - supports-color dev: true + /babel-runtime@6.26.0: + resolution: {integrity: sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==} + dependencies: + core-js: 2.6.12 + regenerator-runtime: 0.11.1 + dev: false + /babylon@6.18.0: resolution: {integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==} hasBin: true @@ -8385,6 +8404,12 @@ packages: browserslist: 4.23.0 dev: true + /core-js@2.6.12: + resolution: {integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==} + deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. + requiresBuild: true + dev: false + /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true @@ -11027,6 +11052,10 @@ packages: dependencies: js-tokens: 4.0.0 + /lottie-web@5.12.2: + resolution: {integrity: sha512-uvhvYPC8kGPjXT3MyKMrL3JitEAmDMp30lVkuq/590Mw9ok6pWcFCwXJveo0t5uqYw1UREQHofD+jVpdjBv8wg==} + dev: false + /loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} dependencies: @@ -12371,6 +12400,17 @@ packages: scheduler: 0.23.0 dev: false + /react-lottie@1.2.4(react@18.2.0): + resolution: {integrity: sha512-kBGxI+MIZGBf4wZhNCWwHkMcVP+kbpmrLWH/SkO0qCKc7D7eSPcxQbfpsmsCo8v2KCBYjuGSou+xTqK44D/jMg==} + engines: {npm: ^3.0.0} + peerDependencies: + react: '>=15.0.0' + dependencies: + babel-runtime: 6.26.0 + lottie-web: 5.12.2 + react: 18.2.0 + dev: false + /react-reconciler@0.29.0(react@18.2.0): resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} engines: {node: '>=0.10.0'} @@ -12780,6 +12820,10 @@ packages: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: true + /regenerator-runtime@0.11.1: + resolution: {integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==} + dev: false + /regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} diff --git a/invokeai/frontend/web/public/locales/en.json b/invokeai/frontend/web/public/locales/en.json index 21ab0eb94e3..77af09fd3e3 100644 --- a/invokeai/frontend/web/public/locales/en.json +++ b/invokeai/frontend/web/public/locales/en.json @@ -116,6 +116,7 @@ "imagePrompt": "Image Prompt", "imageFailedToLoad": "Unable to Load Image", "img2img": "Image To Image", + "initializingInvokeAI": "Initializing Invoke AI ...", "inpaint": "inpaint", "input": "Input", "installed": "Installed", diff --git a/invokeai/frontend/web/src/common/components/Loading/Loading.tsx b/invokeai/frontend/web/src/common/components/Loading/Loading.tsx index dae5b40e8ce..d37133de862 100644 --- a/invokeai/frontend/web/src/common/components/Loading/Loading.tsx +++ b/invokeai/frontend/web/src/common/components/Loading/Loading.tsx @@ -1,23 +1,38 @@ -import { Flex, Image, Spinner } from '@invoke-ai/ui-library'; -import InvokeLogoWhite from 'public/assets/images/invoke-symbol-wht-lrg.svg'; +import { Flex, Text } from '@invoke-ai/ui-library'; +// import AnimatedVideoSpinner from 'public/assets/videos/LogoAnim.webm'; import { memo } from 'react'; +import { useTranslation } from 'react-i18next'; +import type { Options } from 'react-lottie'; +import Lottie from 'react-lottie'; -// This component loads before the theme so we cannot use theme tokens here +import { LoadingAnimationData } from './LoadingAnimationData'; + +const options: Options = { + loop: true, + autoplay: true, + animationData: LoadingAnimationData, + rendererSettings: { + preserveAspectRatio: 'xMidYMid slice', + }, +}; +// This component loads before the theme so we cannot use theme tokens here const Loading = () => { + const { t } = useTranslation(); return ( - - - + + + + {t('common.initializingInvokeAI')} + ); }; diff --git a/invokeai/frontend/web/src/common/components/Loading/LoadingAnimationData.ts b/invokeai/frontend/web/src/common/components/Loading/LoadingAnimationData.ts new file mode 100644 index 00000000000..48e5e6f0844 --- /dev/null +++ b/invokeai/frontend/web/src/common/components/Loading/LoadingAnimationData.ts @@ -0,0 +1,856 @@ +export const LoadingAnimationData = { + v: '5.12.2', + fr: 60, + ip: 0, + op: 120, + w: 512, + h: 512, + nm: 'InvokeAI/InvokeAI_Logo', + ddd: 0, + assets: [ + { + id: 'comp_0', + nm: 'InvokeAI Logo', + fr: 60, + layers: [ + { + ddd: 0, + ind: 4, + ty: 4, + nm: 'InvokeAI_Logo 2', + sr: 1, + ks: { + o: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [100] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [100] }, + { t: 120, s: [50] }, + ], + ix: 11, + }, + r: { a: 0, k: 0, ix: 10 }, + p: { a: 0, k: [256, 256, 0], ix: 2, l: 2 }, + a: { a: 0, k: [211, 211, 0], ix: 1, l: 2 }, + s: { + a: 1, + k: [ + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 0, + s: [98, 98, 100], + }, + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 60, + s: [98, 98, 100], + }, + { t: 120, s: [98, 98, 100] }, + ], + ix: 6, + l: 2, + }, + }, + ao: 0, + ef: [ + { + ty: 25, + nm: 'Drop Shadow', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 1, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { a: 0, k: [0.542745053768, 1, 0.266666650772, 1], ix: 1 }, + }, + { ty: 0, nm: 'Opacity', mn: 'ADBE Drop Shadow-0002', ix: 2, v: { a: 0, k: 255, ix: 2 } }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { ty: 0, nm: 'Softness', mn: 'ADBE Drop Shadow-0005', ix: 5, v: { a: 0, k: 61, ix: 5 } }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + { + ty: 25, + nm: 'Drop Shadow 2', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 2, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { a: 0, k: [0.784313738346, 1, 0.266666650772, 1], ix: 1 }, + }, + { ty: 0, nm: 'Opacity', mn: 'ADBE Drop Shadow-0002', ix: 2, v: { a: 0, k: 255, ix: 2 } }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { ty: 0, nm: 'Softness', mn: 'ADBE Drop Shadow-0005', ix: 5, v: { a: 0, k: 8, ix: 5 } }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + ], + shapes: [ + { + ind: 0, + ty: 'sh', + ix: 1, + ks: { + a: 0, + k: { + i: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + o: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + v: [ + [282.8, 96.94], + [411.25, 96.94], + [411.25, 10], + [10, 10], + [10, 96.94], + [138.45, 96.94], + [282.8, 324.32], + [411.25, 324.32], + [411.25, 411.26], + [10, 411.26], + [10, 324.32], + [138.45, 324.32], + ], + c: false, + }, + ix: 2, + }, + nm: 'Path 1', + mn: 'ADBE Vector Shape - Group', + hd: false, + }, + { + ty: 'tm', + s: { + a: 1, + k: [ + { i: { x: [0.5], y: [1] }, o: { x: [0.333], y: [0] }, t: 0, s: [100] }, + { t: 113, s: [0] }, + ], + ix: 1, + }, + e: { + a: 1, + k: [ + { i: { x: [0.667], y: [1] }, o: { x: [0.333], y: [0] }, t: 0, s: [100] }, + { i: { x: [0.667], y: [1] }, o: { x: [0.333], y: [0] }, t: 12, s: [100] }, + { t: 120, s: [0] }, + ], + ix: 2, + }, + o: { a: 0, k: 0, ix: 3 }, + m: 1, + ix: 2, + nm: 'Trim Paths 1', + mn: 'ADBE Vector Filter - Trim', + hd: false, + }, + { + ty: 'st', + c: { a: 0, k: [0.862111210823, 0.937254905701, 0.172748938203, 1], ix: 3 }, + o: { a: 0, k: 100, ix: 4 }, + w: { a: 0, k: 6.7, ix: 5 }, + lc: 2, + lj: 1, + ml: 4, + bm: 0, + nm: 'Stroke 1', + mn: 'ADBE Vector Graphic - Stroke', + hd: false, + }, + { + ty: 'gr', + it: [ + { + ty: 'rc', + d: 1, + s: { a: 0, k: [512, 512], ix: 2 }, + p: { a: 0, k: [0, 0], ix: 3 }, + r: { a: 0, k: 0, ix: 4 }, + nm: 'Rectangle Path 1', + mn: 'ADBE Vector Shape - Rect', + hd: false, + }, + { + ty: 'st', + c: { a: 0, k: [0.86211122999, 0.937254901961, 0.172748939664, 1], ix: 3 }, + o: { a: 0, k: 100, ix: 4 }, + w: { a: 0, k: 0, ix: 5 }, + lc: 1, + lj: 1, + ml: 4, + bm: 0, + nm: 'Stroke 1', + mn: 'ADBE Vector Graphic - Stroke', + hd: false, + }, + { + ty: 'fl', + c: { a: 0, k: [1, 0, 0, 1], ix: 4 }, + o: { a: 0, k: 0, ix: 5 }, + r: 1, + bm: 0, + nm: 'Fill 1', + mn: 'ADBE Vector Graphic - Fill', + hd: false, + }, + { + ty: 'tr', + p: { a: 0, k: [211, 212], ix: 2 }, + a: { a: 0, k: [0, 0], ix: 1 }, + s: { a: 0, k: [100, 100], ix: 3 }, + r: { a: 0, k: 0, ix: 6 }, + o: { a: 0, k: 100, ix: 7 }, + sk: { a: 0, k: 0, ix: 4 }, + sa: { a: 0, k: 0, ix: 5 }, + nm: 'Transform', + }, + ], + nm: 'Rectangle 1', + np: 3, + cix: 2, + bm: 0, + ix: 4, + mn: 'ADBE Vector Group', + hd: false, + }, + ], + ip: 0, + op: 121, + st: 0, + ct: 1, + bm: 0, + }, + { + ddd: 0, + ind: 5, + ty: 4, + nm: 'InvokeAI_Logo 6', + sr: 1, + ks: { + o: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [100] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 30, s: [50] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [80] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 90, s: [50] }, + { t: 120, s: [100] }, + ], + ix: 11, + }, + r: { a: 0, k: 0, ix: 10 }, + p: { a: 0, k: [256, 256, 0], ix: 2, l: 2 }, + a: { a: 0, k: [211, 211, 0], ix: 1, l: 2 }, + s: { + a: 1, + k: [ + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 0, + s: [98, 98, 100], + }, + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 60, + s: [98, 98, 100], + }, + { t: 120, s: [98, 98, 100] }, + ], + ix: 6, + l: 2, + }, + }, + ao: 0, + ef: [ + { + ty: 25, + nm: 'Drop Shadow', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 1, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { + a: 1, + k: [ + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 0, + s: [0.30068436265, 0.347045511007, 0.368627458811, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 41, + s: [0.165321037173, 0.186308428645, 0.196078434587, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 60, + s: [0.574994146824, 1, 0.231372535229, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 81, + s: [0.165321037173, 0.186308428645, 0.196078434587, 1], + }, + { t: 120, s: [0.301960796118, 0.345098048449, 0.368627458811, 1] }, + ], + ix: 1, + }, + }, + { + ty: 0, + nm: 'Opacity', + mn: 'ADBE Drop Shadow-0002', + ix: 2, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 41, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [127.5] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 81, s: [0] }, + { t: 120, s: [0] }, + ], + ix: 2, + }, + }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { + ty: 0, + nm: 'Softness', + mn: 'ADBE Drop Shadow-0005', + ix: 5, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [60] }, + { t: 60, s: [100] }, + ], + ix: 5, + }, + }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + { + ty: 25, + nm: 'Drop Shadow 2', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 2, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { + a: 1, + k: [ + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 0, + s: [0.154048442841, 0.185692384839, 0.207843139768, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 41, + s: [0.154048442841, 0.185692384839, 0.207843139768, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 60, + s: [0.732041478157, 1, 0.309803903103, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 81, + s: [0.154048442841, 0.185692384839, 0.207843139768, 1], + }, + { t: 120, s: [0.154048442841, 0.185692384839, 0.207843139768, 1] }, + ], + ix: 1, + }, + }, + { + ty: 0, + nm: 'Opacity', + mn: 'ADBE Drop Shadow-0002', + ix: 2, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 41, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [25.5] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 81, s: [0] }, + { t: 120, s: [0] }, + ], + ix: 2, + }, + }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { + ty: 0, + nm: 'Softness', + mn: 'ADBE Drop Shadow-0005', + ix: 5, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [10] }, + { t: 60, s: [10] }, + ], + ix: 5, + }, + }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + ], + shapes: [ + { + ind: 0, + ty: 'sh', + ix: 1, + ks: { + a: 0, + k: { + i: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + o: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + v: [ + [282.8, 96.94], + [411.25, 96.94], + [411.25, 10], + [10, 10], + [10, 96.94], + [138.45, 96.94], + [282.8, 324.32], + [411.25, 324.32], + [411.25, 411.26], + [10, 411.26], + [10, 324.32], + [138.45, 324.32], + ], + c: false, + }, + ix: 2, + }, + nm: 'Path 1', + mn: 'ADBE Vector Shape - Group', + hd: false, + }, + { + ty: 'tm', + s: { a: 0, k: 100, ix: 1 }, + e: { a: 0, k: 0, ix: 2 }, + o: { a: 0, k: 0, ix: 3 }, + m: 1, + ix: 2, + nm: 'Trim Paths 1', + mn: 'ADBE Vector Filter - Trim', + hd: false, + }, + { + ty: 'st', + c: { + a: 1, + k: [ + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 0, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 41, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 60, + s: [0.672798216343, 0.843137264252, 0.343867719173, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 81, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { t: 120, s: [0.262745112181, 0.262745112181, 0.309803932905, 1] }, + ], + ix: 3, + }, + o: { a: 0, k: 100, ix: 4 }, + w: { a: 0, k: 6.67, ix: 5 }, + lc: 1, + lj: 1, + ml: 4, + bm: 0, + nm: 'Stroke 1', + mn: 'ADBE Vector Graphic - Stroke', + hd: false, + }, + ], + ip: 0, + op: 121, + st: 0, + ct: 1, + bm: 0, + }, + { + ddd: 0, + ind: 6, + ty: 4, + nm: 'InvokeAI_Logo', + sr: 1, + ks: { + o: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [50] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [50] }, + { t: 120, s: [50] }, + ], + ix: 11, + }, + r: { a: 0, k: 0, ix: 10 }, + p: { a: 0, k: [256, 256, 0], ix: 2, l: 2 }, + a: { a: 0, k: [211, 211, 0], ix: 1, l: 2 }, + s: { + a: 1, + k: [ + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 0, + s: [98, 98, 100], + }, + { + i: { x: [0.833, 0.833, 0.833], y: [0.833, 0.833, 0.833] }, + o: { x: [0.167, 0.167, 0.167], y: [0.167, 0.167, 0.167] }, + t: 60, + s: [98, 98, 100], + }, + { t: 120, s: [98, 98, 100] }, + ], + ix: 6, + l: 2, + }, + }, + ao: 0, + ef: [ + { + ty: 25, + nm: 'Drop Shadow', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 1, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { a: 0, k: [0.165321037173, 0.186308428645, 0.196078434587, 1], ix: 1 }, + }, + { + ty: 0, + nm: 'Opacity', + mn: 'ADBE Drop Shadow-0002', + ix: 2, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [255] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 41, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [255] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 80, s: [0] }, + { t: 120, s: [0] }, + ], + ix: 2, + }, + }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { ty: 0, nm: 'Softness', mn: 'ADBE Drop Shadow-0005', ix: 5, v: { a: 0, k: 60, ix: 5 } }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + { + ty: 25, + nm: 'Drop Shadow 2', + np: 8, + mn: 'ADBE Drop Shadow', + ix: 2, + en: 1, + ef: [ + { + ty: 2, + nm: 'Shadow Color', + mn: 'ADBE Drop Shadow-0001', + ix: 1, + v: { a: 0, k: [0.154048442841, 0.185692384839, 0.207843139768, 1], ix: 1 }, + }, + { + ty: 0, + nm: 'Opacity', + mn: 'ADBE Drop Shadow-0002', + ix: 2, + v: { + a: 1, + k: [ + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 0, s: [255] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 41, s: [0] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 60, s: [255] }, + { i: { x: [0.833], y: [0.833] }, o: { x: [0.167], y: [0.167] }, t: 80, s: [0] }, + { t: 120, s: [0] }, + ], + ix: 2, + }, + }, + { ty: 0, nm: 'Direction', mn: 'ADBE Drop Shadow-0003', ix: 3, v: { a: 0, k: 135, ix: 3 } }, + { ty: 0, nm: 'Distance', mn: 'ADBE Drop Shadow-0004', ix: 4, v: { a: 0, k: 0, ix: 4 } }, + { ty: 0, nm: 'Softness', mn: 'ADBE Drop Shadow-0005', ix: 5, v: { a: 0, k: 10, ix: 5 } }, + { ty: 7, nm: 'Shadow Only', mn: 'ADBE Drop Shadow-0006', ix: 6, v: { a: 0, k: 0, ix: 6 } }, + ], + }, + ], + shapes: [ + { + ind: 0, + ty: 'sh', + ix: 1, + ks: { + a: 0, + k: { + i: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + o: [ + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + [0, 0], + ], + v: [ + [282.8, 96.94], + [411.25, 96.94], + [411.25, 10], + [10, 10], + [10, 96.94], + [138.45, 96.94], + [282.8, 324.32], + [411.25, 324.32], + [411.25, 411.26], + [10, 411.26], + [10, 324.32], + [138.45, 324.32], + ], + c: false, + }, + ix: 2, + }, + nm: 'Path 1', + mn: 'ADBE Vector Shape - Group', + hd: false, + }, + { + ty: 'tm', + s: { a: 0, k: 100, ix: 1 }, + e: { a: 0, k: 0, ix: 2 }, + o: { a: 0, k: 0, ix: 3 }, + m: 1, + ix: 2, + nm: 'Trim Paths 1', + mn: 'ADBE Vector Filter - Trim', + hd: false, + }, + { + ty: 'st', + c: { + a: 1, + k: [ + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 0, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 41, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 60, + s: [0.672798216343, 0.843137264252, 0.343867719173, 1], + }, + { + i: { x: [0.833], y: [0.833] }, + o: { x: [0.167], y: [0.167] }, + t: 81, + s: [0.262422144413, 0.262422144413, 0.309803932905, 1], + }, + { t: 120, s: [0.262745112181, 0.262745112181, 0.309803932905, 1] }, + ], + ix: 3, + }, + o: { a: 0, k: 100, ix: 4 }, + w: { a: 0, k: 6.67, ix: 5 }, + lc: 1, + lj: 1, + ml: 4, + bm: 0, + nm: 'Stroke 1', + mn: 'ADBE Vector Graphic - Stroke', + hd: false, + }, + ], + ip: 0, + op: 121, + st: 0, + ct: 1, + bm: 0, + }, + ], + }, + ], + layers: [ + { + ddd: 0, + ind: 1, + ty: 0, + nm: 'InvokeAI Logo', + refId: 'comp_0', + sr: 1, + ks: { + o: { a: 0, k: 100, ix: 11 }, + r: { a: 0, k: 0, ix: 10 }, + p: { a: 0, k: [256, 256, 0], ix: 2, l: 2 }, + a: { a: 0, k: [256, 256, 0], ix: 1, l: 2 }, + s: { a: 0, k: [100, 100, 100], ix: 6, l: 2 }, + }, + ao: 0, + w: 512, + h: 512, + ip: 0, + op: 120, + st: 0, + bm: 0, + }, + ], + markers: [], + props: {}, +};