Compare commits
3 Commits
update_vLL
...
replace_ag
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9d1e01bf61 | ||
|
|
36461d7303 | ||
|
|
c7bec31873 |
@@ -0,0 +1,77 @@
|
||||
From 799dcc304b3aecf2e2969df47c8dcac16d2267b0 Mon Sep 17 00:00:00 2001
|
||||
From: lkk12014402 <kaokao.lv@intel.com>
|
||||
Date: Fri, 4 Apr 2025 07:40:30 +0000
|
||||
Subject: [PATCH] deal opea agent tool content.
|
||||
|
||||
---
|
||||
backend/open_webui/utils/middleware.py | 54 ++++++++++++++++++++++++++
|
||||
1 file changed, 54 insertions(+)
|
||||
|
||||
diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py
|
||||
index 289d887df..afa0edf1e 100644
|
||||
--- a/backend/open_webui/utils/middleware.py
|
||||
+++ b/backend/open_webui/utils/middleware.py
|
||||
@@ -1486,6 +1486,60 @@ async def process_chat_response(
|
||||
try:
|
||||
data = json.loads(data)
|
||||
|
||||
+ tool_content_block = []
|
||||
+ if data.get("tool_name"):
|
||||
+ sources.append(
|
||||
+ {
|
||||
+ "source": {
|
||||
+ "name": f"TOOL:{data.get('tool_name')}"},
|
||||
+ "document": [data.get("tool_content")],
|
||||
+ "metadata": [{
|
||||
+ "source": f"TOOL:{data.get('tool_name')}"}],
|
||||
+ }
|
||||
+ )
|
||||
+ events.append({"sources": sources})
|
||||
+
|
||||
+ await event_emitter(
|
||||
+ {
|
||||
+ "type": "chat:completion",
|
||||
+ "data": {"sources": sources},
|
||||
+ }
|
||||
+ )
|
||||
+ tool_content_block = [
|
||||
+ {
|
||||
+ "type": "tool_calls",
|
||||
+ "content": [
|
||||
+ {"id": data.get('tool_name'), "function": {"name": data.get('tool_name')}}
|
||||
+ ]
|
||||
+ }
|
||||
+ ]
|
||||
+
|
||||
+ await event_emitter(
|
||||
+ {
|
||||
+ "type": "chat:completion",
|
||||
+ "data": {
|
||||
+ "content": serialize_content_blocks(tool_content_block),
|
||||
+ },
|
||||
+ }
|
||||
+ )
|
||||
+
|
||||
+ tool_content_block = [
|
||||
+ {
|
||||
+ "type": "tool_calls",
|
||||
+ "content": [
|
||||
+ {"id": data.get('tool_name'), "function": {"name": data.get('tool_name')}}
|
||||
+ ],
|
||||
+ "results": [
|
||||
+ {"tool_call_id": data.get('tool_name'), "content": data.get("tool_content")}
|
||||
+ ]
|
||||
+ },
|
||||
+ {
|
||||
+ "type": "text",
|
||||
+ "content": "",
|
||||
+ }
|
||||
+ ]
|
||||
+ content_blocks.extend(tool_content_block)
|
||||
+
|
||||
data, _ = await process_filter_functions(
|
||||
request=request,
|
||||
filter_functions=filter_functions,
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
[*]
|
||||
indent_style = tab
|
||||
|
||||
[package.json]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[*.md]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
@@ -1 +0,0 @@
|
||||
AGENT_URL = '/v1/chat/completions'
|
||||
@@ -1,13 +0,0 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
|
||||
# Ignore files for PNPM, NPM and YARN
|
||||
pnpm-lock.yaml
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
@@ -1,20 +0,0 @@
|
||||
module.exports = {
|
||||
root: true,
|
||||
parser: "@typescript-eslint/parser",
|
||||
extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier"],
|
||||
plugins: ["svelte3", "@typescript-eslint", "neverthrow"],
|
||||
ignorePatterns: ["*.cjs"],
|
||||
overrides: [{ files: ["*.svelte"], processor: "svelte3/svelte3" }],
|
||||
settings: {
|
||||
"svelte3/typescript": () => require("typescript"),
|
||||
},
|
||||
parserOptions: {
|
||||
sourceType: "module",
|
||||
ecmaVersion: 2020,
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
es2017: true,
|
||||
node: true,
|
||||
},
|
||||
};
|
||||
@@ -1,13 +0,0 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
|
||||
# Ignore files for PNPM, NPM and YARN
|
||||
pnpm-lock.yaml
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"pluginSearchDirs": [
|
||||
"."
|
||||
],
|
||||
"overrides": [
|
||||
{
|
||||
"files": "*.svelte",
|
||||
"options": {
|
||||
"parser": "svelte"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,72 +0,0 @@
|
||||
# AgentQnA
|
||||
|
||||
## 📸 Project Screenshots
|
||||
|
||||

|
||||

|
||||
|
||||
## 🧐 Features
|
||||
|
||||
Here're some of the project's features:
|
||||
|
||||
- Create Agent:Provide more precise answers based on user queries, showcase the high-quality output process of complex queries across different dimensions, and consolidate information to present comprehensive answers.
|
||||
|
||||
## 🛠️ Get it Running
|
||||
|
||||
1. Clone the repo.
|
||||
|
||||
2. cd command to the current folder.
|
||||
|
||||
```
|
||||
cd AgentQnA/ui/svelte
|
||||
```
|
||||
|
||||
3. Modify the required .env variables. The `AGENT_URL` should be in the form of the following:
|
||||
|
||||
```
|
||||
AGENT_URL = "http://${ip_address}:${agent_port}/v1/chat/completions"
|
||||
```
|
||||
|
||||
For example: assume that the ip address of the host machine is 10.10.10.1, and the agent port is 9090,then
|
||||
|
||||
```
|
||||
AGENT_URL = "http://10.10.10.1:9090/v1/chat/completions"
|
||||
```
|
||||
|
||||
You can get the ip address of the host machine by running the command below:
|
||||
|
||||
```bash
|
||||
export ip_address=$(hostname -I | awk '{print $1}')
|
||||
```
|
||||
|
||||
4. **For Local Development:**
|
||||
|
||||
- Install the dependencies:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
- Start the development server:
|
||||
|
||||
```
|
||||
npm run dev
|
||||
```
|
||||
|
||||
- The application will be available at `http://localhost:5173`.
|
||||
|
||||
5. **For Docker Setup:**
|
||||
|
||||
- Build the Docker image:
|
||||
|
||||
```
|
||||
docker build -t opea:agent-ui .
|
||||
```
|
||||
|
||||
- Run the Docker container:
|
||||
|
||||
```
|
||||
docker run -d -p 5173:5173 --name agent-ui opea:agent-ui
|
||||
```
|
||||
|
||||
- The application will be available at `http://${ip_address}:5173`. You can access it with a web browser on your laptop. Note the `ip_address` should be the ip address of the host machine where the UI container runs.
|
||||
@@ -1,60 +0,0 @@
|
||||
{
|
||||
"name": "agent-example",
|
||||
"version": "0.0.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vite dev --host 0.0.0.0",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
||||
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
||||
"lint": "prettier --check . && eslint .",
|
||||
"format": "prettier --write ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"@fortawesome/free-solid-svg-icons": "6.2.0",
|
||||
"@sveltejs/adapter-auto": "1.0.0-next.75",
|
||||
"@sveltejs/kit": "^1.20.1",
|
||||
"@tailwindcss/typography": "0.5.7",
|
||||
"@types/debug": "4.1.7",
|
||||
"@typescript-eslint/eslint-plugin": "^5.27.0",
|
||||
"@typescript-eslint/parser": "^5.27.0",
|
||||
"autoprefixer": "^10.4.7",
|
||||
"daisyui": "^2.52.0",
|
||||
"debug": "4.3.4",
|
||||
"eslint": "^8.16.0",
|
||||
"eslint-config-prettier": "^8.3.0",
|
||||
"eslint-plugin-neverthrow": "1.1.4",
|
||||
"eslint-plugin-svelte3": "^4.0.0",
|
||||
"neverthrow": "5.0.0",
|
||||
"pocketbase": "0.7.0",
|
||||
"postcss": "^8.4.23",
|
||||
"postcss-load-config": "^4.0.1",
|
||||
"postcss-preset-env": "^8.3.2",
|
||||
"prettier": "^2.8.8",
|
||||
"prettier-plugin-svelte": "^2.7.0",
|
||||
"prettier-plugin-tailwindcss": "^0.3.0",
|
||||
"svelte": "^3.59.1",
|
||||
"svelte-check": "^2.7.1",
|
||||
"svelte-fa": "3.0.3",
|
||||
"svelte-preprocess": "^4.10.7",
|
||||
"tailwindcss": "^3.1.5",
|
||||
"ts-pattern": "4.0.5",
|
||||
"tslib": "^2.3.1",
|
||||
"typescript": "^4.7.4",
|
||||
"vite": "^4.3.9"
|
||||
},
|
||||
"type": "module",
|
||||
"dependencies": {
|
||||
"@heroicons/vue": "^2.1.5",
|
||||
"echarts": "^5.4.2",
|
||||
"flowbite-svelte": "^0.38.5",
|
||||
"flowbite-svelte-icons": "^0.3.6",
|
||||
"fuse.js": "^6.6.2",
|
||||
"marked": "^15.0.0",
|
||||
"ramda": "^0.29.0",
|
||||
"sjcl": "^1.0.8",
|
||||
"sse.js": "^0.6.1",
|
||||
"svelte-notifications": "^0.9.98"
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
const tailwindcss = require("tailwindcss");
|
||||
const autoprefixer = require("autoprefixer");
|
||||
|
||||
const config = {
|
||||
plugins: [
|
||||
//Some plugins, like tailwindcss/nesting, need to run before Tailwind,
|
||||
tailwindcss(),
|
||||
//But others, like autoprefixer, need to run after,
|
||||
autoprefixer,
|
||||
],
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
50
AgentQnA/ui/svelte/src/app.d.ts
vendored
@@ -1,50 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// See: https://kit.svelte.dev/docs/types#app
|
||||
// import { Result} from "neverthrow";
|
||||
|
||||
declare namespace App {
|
||||
interface Locals {
|
||||
user?: User;
|
||||
}
|
||||
// interface PageData { }
|
||||
// interface PageError {}
|
||||
// interface Platform {}
|
||||
}
|
||||
|
||||
interface User {
|
||||
id?: string;
|
||||
email: string;
|
||||
password?: string;
|
||||
token?: string;
|
||||
[key: string]: any;
|
||||
}
|
||||
|
||||
type AuthResponse = Result<User>;
|
||||
|
||||
interface AuthAdapter {
|
||||
login(props: { email: string; password: string }): Promise<AuthResponse>;
|
||||
signup(props: { email: string; password: string; password_confirm: string }): Promise<AuthResponse>;
|
||||
validate_session(props: { token: string }): Promise<AuthResponse>;
|
||||
logout(props: { token: string; email: string }): Promise<Result<void>>;
|
||||
forgotPassword(props: { email: string; password: string }): Promise<Result<void>>;
|
||||
}
|
||||
|
||||
interface ChatAdapter {
|
||||
modelList(props: {}): Promise<Result<void>>;
|
||||
txt2img(props: {}): Promise<Result<void>>;
|
||||
}
|
||||
|
||||
interface ChatMessage {
|
||||
role: string;
|
||||
content: string;
|
||||
}
|
||||
|
||||
interface ChatMessageType {
|
||||
model: string;
|
||||
knowledge: string;
|
||||
temperature: string;
|
||||
max_new_tokens: string;
|
||||
topk: string;
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
%sveltekit.head%
|
||||
</head>
|
||||
<body>
|
||||
<div>%sveltekit.body%</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,82 +0,0 @@
|
||||
/* Write your global styles here, in PostCSS syntax */
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
.btn {
|
||||
@apply flex-nowrap;
|
||||
}
|
||||
a.btn {
|
||||
@apply no-underline;
|
||||
}
|
||||
.input {
|
||||
@apply text-base;
|
||||
}
|
||||
|
||||
.bg-dark-blue {
|
||||
background-color: #004a86;
|
||||
}
|
||||
|
||||
.bg-light-blue {
|
||||
background-color: #0068b5;
|
||||
}
|
||||
|
||||
.bg-turquoise {
|
||||
background-color: #00a3f6;
|
||||
}
|
||||
|
||||
.bg-header {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
.bg-button {
|
||||
background-color: #0068b5;
|
||||
}
|
||||
|
||||
.bg-title {
|
||||
background-color: #f7f7f7;
|
||||
}
|
||||
|
||||
.text-header {
|
||||
color: #0068b5;
|
||||
}
|
||||
|
||||
.text-button {
|
||||
color: #0071c5;
|
||||
}
|
||||
|
||||
.text-title-color {
|
||||
color: rgb(38,38,38);
|
||||
}
|
||||
|
||||
.font-intel {
|
||||
font-family: "intel-clear","tahoma",Helvetica,"helvetica",Arial,sans-serif;
|
||||
}
|
||||
|
||||
.font-title-intel {
|
||||
font-family: "intel-one","intel-clear",Helvetica,Arial,sans-serif;
|
||||
}
|
||||
|
||||
.bg-footer {
|
||||
background-color: #e7e7e7;
|
||||
}
|
||||
|
||||
.bg-light-green {
|
||||
background-color: #d7f3a1;
|
||||
}
|
||||
|
||||
.bg-purple {
|
||||
background-color: #653171;
|
||||
}
|
||||
|
||||
.bg-dark-blue {
|
||||
background-color: #224678;
|
||||
}
|
||||
|
||||
.border-input-color {
|
||||
border-color: #605e5c;
|
||||
}
|
||||
|
||||
.w-12\/12 {
|
||||
width: 100%
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731984271860"
|
||||
class="w-8 h-8"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="11418"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M0 0m170.666667 0l682.666666 0q170.666667 0 170.666667 170.666667l0 682.666666q0 170.666667-170.666667 170.666667l-682.666666 0q-170.666667 0-170.666667-170.666667l0-682.666666q0-170.666667 170.666667-170.666667Z"
|
||||
fill="#1890FF"
|
||||
fill-opacity=".1"
|
||||
p-id="11419"
|
||||
/><path
|
||||
d="M404.352 552.661333a63.018667 63.018667 0 1 0 0-125.994666 63.018667 63.018667 0 0 0 0 125.994666z m0 213.333334a63.018667 63.018667 0 1 0 0-125.994667 63.018667 63.018667 0 0 0 0 125.994667z m-213.333333-426.666667a63.018667 63.018667 0 1 0 0-125.994667 63.018667 63.018667 0 0 0 0 125.994667z m669.653333-10.88H376.362667a35.669333 35.669333 0 0 1-35.114667-36.096c0-19.882667 15.786667-36.096 35.114667-36.096h484.394666c19.370667 0 35.157333 16.213333 35.157334 36.096a35.669333 35.669333 0 0 1-35.242667 36.096z m16.384 213.034667h-260.821333c-10.410667 0-18.901333-16.213333-18.901334-36.096 0-19.925333 8.490667-36.138667 18.901334-36.138667h260.864c10.410667 0 18.901333 16.213333 18.901333 36.138667-0.042667 19.882667-8.490667 36.096-18.944 36.096z m0 212.992h-260.821333c-10.410667 0-18.901333-16.213333-18.901334-36.096 0-19.925333 8.490667-36.096 18.901334-36.096h260.864c10.410667 0 18.901333 16.213333 18.901333 36.096-0.042667 19.882667-8.490667 36.096-18.944 36.096z"
|
||||
fill="#1890FF"
|
||||
p-id="11420"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
@@ -1,9 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg class="w-3.5 h-3.5 me-2.5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
|
||||
<path d="M14.707 7.793a1 1 0 0 0-1.414 0L11 10.086V1.5a1 1 0 0 0-2 0v8.586L6.707 7.793a1 1 0 1 0-1.414 1.414l4 4a1 1 0 0 0 1.416 0l4-4a1 1 0 0 0-.002-1.414Z"/>
|
||||
<path d="M18 12h-2.55l-2.975 2.975a3.5 3.5 0 0 1-4.95 0L4.55 12H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2Zm-3 5a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 559 B |
@@ -1,16 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
class="me-2 h-3 w-3"
|
||||
aria-hidden="true"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="currentColor"
|
||||
viewBox="0 0 20 14"
|
||||
>
|
||||
<path
|
||||
d="M10 0C4.612 0 0 5.336 0 7c0 1.742 3.546 7 10 7 6.454 0 10-5.258 10-7 0-1.664-4.612-7-10-7Zm0 10a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z"
|
||||
/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 413 B |
@@ -1,97 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<!-- <svg class="h-11 w-11 flex-none overflow-visible" fill="none"
|
||||
><defs
|
||||
><filter
|
||||
id="step-icon-2"
|
||||
x="-3"
|
||||
y="-1"
|
||||
width="50"
|
||||
height="50"
|
||||
filterUnits="userSpaceOnUse"
|
||||
color-interpolation-filters="sRGB"
|
||||
><feFlood flood-opacity="0" result="BackgroundImageFix" /><feColorMatrix
|
||||
in="SourceAlpha"
|
||||
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
|
||||
result="hardAlpha"
|
||||
/><feOffset dy="2" /><feGaussianBlur stdDeviation="2.5" /><feComposite
|
||||
in2="hardAlpha"
|
||||
operator="out"
|
||||
/><feColorMatrix
|
||||
values="0 0 0 0 0.054902 0 0 0 0 0.647059 0 0 0 0 0.913725 0 0 0 0.12 0"
|
||||
/><feBlend
|
||||
in2="BackgroundImageFix"
|
||||
result="effect1_dropShadow_804_95228"
|
||||
/><feBlend
|
||||
in="SourceGraphic"
|
||||
in2="effect1_dropShadow_804_95228"
|
||||
result="shape"
|
||||
/></filter
|
||||
></defs
|
||||
><g filter="url(#step-icon-2)"
|
||||
><path
|
||||
d="M2.75 10A7.25 7.25 0 0 1 10 2.75h24A7.25 7.25 0 0 1 41.25 10v24A7.25 7.25 0 0 1 34 41.25H10A7.25 7.25 0 0 1 2.75 34V10Z"
|
||||
fill="#EEF2FF"
|
||||
/><path
|
||||
d="M2.75 10A7.25 7.25 0 0 1 10 2.75h24A7.25 7.25 0 0 1 41.25 10v24A7.25 7.25 0 0 1 34 41.25H10A7.25 7.25 0 0 1 2.75 34V10Z"
|
||||
stroke="#6366F1"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/></g
|
||||
><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="M23 35.25c.69 0 1.25-.56 1.25-1.25A3.75 3.75 0 0 1 28 30.25a1.25 1.25 0 1 0 0-2.5A3.75 3.75 0 0 1 24.25 24a1.25 1.25 0 1 0-2.5 0A3.75 3.75 0 0 1 18 27.75a1.25 1.25 0 0 0 0 2.5A3.75 3.75 0 0 1 21.75 34c0 .69.56 1.25 1.25 1.25Z"
|
||||
fill="#fff"
|
||||
/><path
|
||||
d="M28 27a.75.75 0 0 0 0 1.5V27Zm-4.5 7a.5.5 0 0 1-.5.5V36a2 2 0 0 0 2-2h-1.5Zm5-5a.5.5 0 0 1-.5.5V31a2 2 0 0 0 2-2h-1.5Zm-.5-.5a.5.5 0 0 1 .5.5H30a2 2 0 0 0-2-2v1.5Zm-5-5a.5.5 0 0 1 .5.5H25a2 2 0 0 0-2-2v1.5Zm-.5.5a.5.5 0 0 1 .5-.5V22a2 2 0 0 0-2 2h1.5Zm-5 5a.5.5 0 0 1 .5-.5V27a2 2 0 0 0-2 2h1.5Zm.5.5a.5.5 0 0 1-.5-.5H16a2 2 0 0 0 2 2v-1.5Zm5 5a.5.5 0 0 1-.5-.5H21a2 2 0 0 0 2 2v-1.5ZM18 31a3 3 0 0 1 3 3h1.5a4.5 4.5 0 0 0-4.5-4.5V31Zm3-7a3 3 0 0 1-3 3v1.5a4.5 4.5 0 0 0 4.5-4.5H21Zm7 3a3 3 0 0 1-3-3h-1.5a4.5 4.5 0 0 0 4.5 4.5V27Zm-3 7a3 3 0 0 1 3-3v-1.5a4.5 4.5 0 0 0-4.5 4.5H25Z"
|
||||
fill="#6366F1"
|
||||
/><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="M13 27.25c.69 0 1.25-.56 1.25-1.25 0-.966.784-1.75 1.75-1.75a1.25 1.25 0 1 0 0-2.5A1.75 1.75 0 0 1 14.25 20a1.25 1.25 0 1 0-2.5 0A1.75 1.75 0 0 1 10 21.75a1.25 1.25 0 0 0 0 2.5c.966 0 1.75.784 1.75 1.75 0 .69.56 1.25 1.25 1.25Z"
|
||||
fill="#fff"
|
||||
/><path
|
||||
d="M16 21a.75.75 0 0 0 0 1.5V21Zm-2.5 5a.5.5 0 0 1-.5.5V28a2 2 0 0 0 2-2h-1.5Zm3-3a.5.5 0 0 1-.5.5V25a2 2 0 0 0 2-2h-1.5Zm-.5-.5a.5.5 0 0 1 .5.5H18a2 2 0 0 0-2-2v1.5Zm-3-3a.5.5 0 0 1 .5.5H15a2 2 0 0 0-2-2v1.5Zm-.5.5a.5.5 0 0 1 .5-.5V18a2 2 0 0 0-2 2h1.5Zm-3 3a.5.5 0 0 1 .5-.5V21a2 2 0 0 0-2 2h1.5Zm.5.5a.5.5 0 0 1-.5-.5H8a2 2 0 0 0 2 2v-1.5Zm3 3a.5.5 0 0 1-.5-.5H11a2 2 0 0 0 2 2v-1.5ZM10 25a1 1 0 0 1 1 1h1.5a2.5 2.5 0 0 0-2.5-2.5V25Zm1-5a1 1 0 0 1-1 1v1.5a2.5 2.5 0 0 0 2.5-2.5H11Zm5 1a1 1 0 0 1-1-1h-1.5a2.5 2.5 0 0 0 2.5 2.5V21Zm-1 5a1 1 0 0 1 1-1v-1.5a2.5 2.5 0 0 0-2.5 2.5H15Z"
|
||||
fill="#6366F1"
|
||||
/><path
|
||||
opacity=".4"
|
||||
d="M29.75 35.25h2.5a3 3 0 0 0 3-3v-20.5a3 3 0 0 0-3-3h-20.5a3 3 0 0 0-3 3v5.5M12.75 14.25h18.5"
|
||||
stroke="#6366F1"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/></svg
|
||||
> -->
|
||||
|
||||
<svg
|
||||
t="1731984480564"
|
||||
class="h-10 w-10"
|
||||
viewBox="0 0 1114 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="29550"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M1081.916235 788.781176H909.312v172.634353a24.696471 24.696471 0 0 1-49.332706 0V788.781176H687.314824a24.696471 24.696471 0 0 1 0-49.362823H859.949176V566.814118a24.696471 24.696471 0 0 1 49.332706 0v172.634353h172.664471a24.696471 24.696471 0 0 1 0 49.362823z"
|
||||
fill="#0972E7"
|
||||
p-id="29551"
|
||||
/><path
|
||||
d="M174.772706 143.028706h509.831529c43.550118 0 78.516706 35.689412 78.516706 80.173176v280.576c0 44.453647-34.966588 80.173176-78.516706 80.173177H174.772706c-43.550118 0-78.516706-35.719529-78.516706-80.173177V223.171765c0-43.851294 34.966588-80.173176 78.516706-80.173177z"
|
||||
fill="#CAE4FF"
|
||||
p-id="29552"
|
||||
/><path
|
||||
d="M335.600941 910.637176H104.899765c-24.545882 0-43.550118-20.028235-43.550118-45.086117V107.098353c0-25.057882 19.636706-45.086118 44.182588-45.086118h742.912c23.913412 0 44.182588 20.028235 44.182589 44.453647V282.503529c0 16.896 13.492706 31.322353 30.659764 31.322353a30.72 30.72 0 0 0 30.689883-31.322353V106.465882C953.976471 47.585882 906.721882 0 849.046588 0H104.899765C47.224471 0 0 48.218353 0 107.098353v758.452706c0 58.88 46.622118 107.098353 104.297412 107.098353h230.671059c16.564706 0 30.659765-13.793882 30.659764-31.322353a30.027294 30.027294 0 0 0-30.057411-30.689883z"
|
||||
fill="#0972E7"
|
||||
p-id="29553"
|
||||
/><path
|
||||
d="M709.180235 219.196235c0-16.896-13.492706-31.322353-30.659764-31.322353H171.760941c-16.564706 0-30.659765 13.793882-30.659765 31.322353 0 16.926118 13.492706 31.322353 30.659765 31.322353h506.75953a30.72 30.72 0 0 0 30.659764-31.322353zM171.760941 436.525176c-16.564706 0-30.659765 13.793882-30.659765 31.322353 0 16.896 13.492706 31.322353 30.659765 31.322353h344.786824c16.564706 0 30.689882-13.793882 30.689882-31.322353 0-16.926118-13.522824-31.322353-30.689882-31.322353H171.760941z"
|
||||
fill="#0972E7"
|
||||
p-id="29554"
|
||||
/></svg
|
||||
>
|
||||
@@ -1,8 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg class="h-5 w-5 flex-shrink-0 text-[#1d4dd5]" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">
|
||||
<path fill-rule="evenodd" d="M15.621 4.379a3 3 0 0 0-4.242 0l-7 7a3 3 0 0 0 4.241 4.243h.001l.497-.5a.75.75 0 0 1 1.064 1.057l-.498.501-.002.002a4.5 4.5 0 0 1-6.364-6.364l7-7a4.5 4.5 0 0 1 6.368 6.36l-3.455 3.553A2.625 2.625 0 1 1 9.52 9.52l3.45-3.451a.75.75 0 1 1 1.061 1.06l-3.45 3.451a1.125 1.125 0 0 0 1.587 1.595l3.454-3.553a3 3 0 0 0 0-4.242Z" clip-rule="evenodd"></path>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 601 B |
@@ -1,13 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
class="pointer-events-none absolute left-0 ml-4 hidden h-4 w-4 fill-current text-gray-500 group-hover:text-gray-400 sm:block"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 20 20"
|
||||
><path
|
||||
d="M12.9 14.32a8 8 0 1 1 1.41-1.41l5.35 5.33-1.42 1.42-5.33-5.34zM8 14A6 6 0 1 0 8 2a6 6 0 0 0 0 12z"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 413 B |
@@ -1,17 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
fill="none"
|
||||
class="relative h-5 w-5"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
viewBox="0 0 24 24"
|
||||
><path
|
||||
d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 369 B |
@@ -1,20 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731987484014"
|
||||
class="w-5 h-5"
|
||||
viewBox="0 0 1267 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="49311"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M56.880762 910.214095H1194.666667a57.051429 57.051429 0 0 1 56.880762 56.905143A57.051429 57.051429 0 0 1 1194.666667 1024H56.880762A57.051429 57.051429 0 0 1 0 967.119238a57.051429 57.051429 0 0 1 56.880762-56.905143z m1024-56.880762H170.666667a114.102857 114.102857 0 0 1-113.785905-113.785904V113.785905A114.102857 114.102857 0 0 1 170.666667 0h910.214095A114.102857 114.102857 0 0 1 1194.666667 113.785905l-0.560762 625.761524C1194.105905 802.133333 1143.466667 853.333333 1080.880762 853.333333zM495.006476 227.328a198.948571 198.948571 0 0 0-63.219809 59.977143c-43.227429 63.707429-45.519238 150.747429-3.974096 215.600762 63.146667 99.547429 187.733333 120.027429 277.040762 63.146666l88.185905 88.161524a42.910476 42.910476 0 0 0 60.294095 0 42.910476 42.910476 0 0 0 0-60.294095l-88.746666-88.185905c49.493333-77.360762 40.399238-180.906667-26.745905-248.027428a198.92419 198.92419 0 0 0-242.834286-30.378667z m216.112762 170.910476a113.785905 113.785905 0 1 1-227.571809 0 113.785905 113.785905 0 0 1 227.571809 0z"
|
||||
fill="#0377FF"
|
||||
p-id="49312"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1,22 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1730766012593"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="11065"
|
||||
class="w-4 h-4"
|
||||
><path
|
||||
d="M996.693333 494.933333l-341.333333-126.293333-126.293333-341.333333c-3.413333-13.653333-27.306667-13.653333-30.72 0l-126.293334 341.333333-341.333333 126.293333c-6.826667 3.413333-10.24 10.24-10.24 17.066667s3.413333 13.653333 10.24 17.066667l341.333333 126.293333 126.293334 341.333333c3.413333 6.826667 10.24 10.24 17.066666 10.24s13.653333-3.413333 17.066667-10.24l126.293333-341.333333 341.333334-126.293333c6.826667-3.413333 10.24-10.24 10.24-17.066667s-6.826667-13.653333-13.653334-17.066667z m-314.026666 34.133334h-153.6V682.666667c0 10.24-6.826667 17.066667-17.066667 17.066666s-17.066667-6.826667-17.066667-17.066666v-153.6H341.333333c-10.24 0-17.066667-6.826667-17.066666-17.066667s6.826667-17.066667 17.066666-17.066667h153.6V341.333333c0-10.24 6.826667-17.066667 17.066667-17.066666s17.066667 6.826667 17.066667 17.066666v153.6H682.666667c10.24 0 17.066667 6.826667 17.066666 17.066667s-6.826667 17.066667-17.066666 17.066667z"
|
||||
fill="#ffffff"
|
||||
p-id="11066"
|
||||
/><path
|
||||
d="M293.546667 703.146667l-136.533334 136.533333c-6.826667 6.826667-6.826667 17.066667 0 23.893333 3.413333 3.413333 6.826667 3.413333 13.653334 3.413334s10.24 0 13.653333-3.413334l136.533333-136.533333c6.826667-6.826667 6.826667-17.066667 0-23.893333s-20.48-6.826667-27.306666 0zM716.8 324.266667c3.413333 0 10.24 0 13.653333-3.413334l136.533334-136.533333c6.826667-6.826667 6.826667-17.066667 0-23.893333s-17.066667-6.826667-23.893334 0l-136.533333 136.533333c-6.826667 6.826667-6.826667 17.066667 0 23.893333 0 0 6.826667 3.413333 10.24 3.413334zM293.546667 317.44c3.413333 3.413333 10.24 6.826667 13.653333 6.826667s10.24 0 13.653333-3.413334c6.826667-6.826667 6.826667-17.066667 0-23.893333l-136.533333-136.533333c-6.826667-6.826667-17.066667-6.826667-23.893333 0s-6.826667 17.066667 0 23.893333l133.12 133.12zM730.453333 703.146667c-6.826667-6.826667-17.066667-6.826667-23.893333 0s-6.826667 17.066667 0 23.893333l136.533333 136.533333c3.413333 3.413333 6.826667 3.413333 13.653334 3.413334s10.24 0 13.653333-3.413334c6.826667-6.826667 6.826667-17.066667 0-23.893333l-139.946667-136.533333z"
|
||||
fill="#ffffff"
|
||||
p-id="11067"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,44 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731984744752"
|
||||
class="w-12 h-12"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="31753"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M244.224 370.78016h526.336c48.64 0 87.552 39.424 87.552 87.552v292.352c0 48.64-39.424 87.552-87.552 87.552H244.224c-48.64 0-87.552-39.424-87.552-87.552v-292.352c-0.512-48.128 38.912-87.552 87.552-87.552z"
|
||||
fill="#CAE4FF"
|
||||
p-id="31754"
|
||||
/><path
|
||||
d="M760.832 983.30624H245.76c-114.176 0-206.848-92.672-206.848-206.848v-357.888c0-114.176 92.672-206.336 206.848-206.848h515.072c114.176 0 206.336 92.672 206.848 206.848v357.888c0 114.176-92.672 206.848-206.848 206.848zM245.76 270.09024c-81.92 0-148.48 66.56-148.48 148.48v357.888c0 81.92 66.56 148.48 148.48 148.48h515.072c81.92 0 148.48-66.56 148.48-148.48v-357.888c0-81.92-66.56-148.48-148.48-148.48H245.76z"
|
||||
fill="#0972E7"
|
||||
p-id="31755"
|
||||
/><path
|
||||
d="M303.616 748.29824c0.512 14.848-11.264 27.648-26.112 28.16-14.848 0.512-27.648-11.264-28.16-26.112v-291.328c0.512-14.848 13.312-26.624 28.16-26.112 14.336 0.512 25.6 11.776 26.112 26.112v289.28z"
|
||||
fill="#0972E7"
|
||||
p-id="31756"
|
||||
/><path
|
||||
d="M742.912 758.53824c0 13.824-11.264 25.088-25.088 25.088H274.432c-13.824 0.512-25.6-9.728-26.112-23.552-0.512-13.824 9.728-25.6 23.552-26.112h446.464c13.312 0 24.576 11.264 24.576 24.576z m-261.12-224.768c-9.728-10.24-26.112-10.24-36.352-0.512l-78.848 79.36c-10.24 10.24-10.24 26.624 0 36.864 9.728 10.24 26.112 10.24 36.352 0.512l79.36-78.848c9.728-10.752 9.728-27.136-0.512-37.376z"
|
||||
fill="#0972E7"
|
||||
p-id="31757"
|
||||
/><path
|
||||
d="M564.736 648.97024c10.24-9.728 10.24-26.112 0-36.352l-79.36-78.848c-10.24-10.24-26.624-10.24-36.864 0-10.24 9.728-10.24 26.112 0 36.352l78.848 78.848c10.752 10.24 27.136 10.24 37.376 0z"
|
||||
fill="#0972E7"
|
||||
p-id="31758"
|
||||
/><path
|
||||
d="M649.216 533.77024c-9.728-10.24-26.112-10.24-36.352-0.512l-79.36 78.848c-10.24 10.24-10.24 26.624 0 36.864 9.728 10.24 26.112 10.24 36.352 0.512l79.36-78.848c9.728-10.24 9.728-26.624 0-36.864z"
|
||||
fill="#0972E7"
|
||||
p-id="31759"
|
||||
/><path
|
||||
d="M714.24 468.74624c-9.728-10.24-26.112-10.24-36.352-0.512l-79.36 78.848c-10.24 10.24-10.24 26.624 0 36.864 9.728 10.24 26.112 10.24 36.352 0.512l79.36-78.848c10.24-10.24 10.24-27.136 0-36.864zM97.792 404.74624H39.936c0-51.2-0.512-120.832-0.512-120.832 0-112.128 91.136-203.264 203.264-203.264h136.704c123.392 0 194.56 66.56 194.56 182.784h-57.856c0-83.968-44.544-124.928-136.192-124.928H242.688c-80.384 0-145.408 65.024-145.408 145.408 0 0 0.512 69.632 0.512 120.832z"
|
||||
fill="#0972E7"
|
||||
p-id="31760"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 2.6 KiB |
@@ -1,24 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731987065328"
|
||||
class="w-5 h-5"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="35111"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M740.565333 112c63.146667 0 114.304 51.2 114.304 114.304v457.130667H169.130667V226.304c0-63.146667 51.2-114.304 114.304-114.304h457.130666z m-219.434666 326.826667H331.434667c-32 0-48 16.042667-48 48.042666l0.213333 6.186667c2.005333 27.861333 17.92 41.813333 47.786667 41.813333h189.696c32 0 48-16 48-48l-0.213334-6.186666c-1.962667-27.904-17.92-41.813333-47.786666-41.813334z m171.434666-212.522667H331.434667c-32 0-48 16-48 48l0.213333 6.186667c2.005333 27.861333 17.92 41.813333 47.786667 41.813333h361.130666c32 0 48-16 48-48l-0.213333-6.186667c-2.005333-27.904-17.92-41.813333-47.786667-41.813333z"
|
||||
fill="#93C0FB"
|
||||
p-id="35112"
|
||||
/><path
|
||||
d="M154.752 422.101333l343.68 196.096a28.586667 28.586667 0 0 0 28.330667 0l342.485333-196.010666a28.586667 28.586667 0 0 1 42.752 24.789333v350.72c0 63.146667-51.2 114.304-114.304 114.304H226.261333c-63.104 0-114.261333-51.2-114.261333-114.304v-350.805333a28.586667 28.586667 0 0 1 42.752-24.789334z"
|
||||
fill="#4B96F9"
|
||||
p-id="35113"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.2 KiB |
@@ -1,60 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731987759041"
|
||||
class="w-7 h-7"
|
||||
viewBox="0 0 1230 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="50480"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M455.756297 168.055915a69.477515 69.477515 0 0 1-1.687986 16.069629c-2.768298 18.837927-9.385204 26.062508-9.385204 31.058948s5.536595 6.076751 10.465515 6.07675c30.991428 0 98.51088-32.679414 196.414084-32.679414 28.695767 0 112.554925 3.848609 112.554926 32.139259C764.117632 276.154556 533.403666 351.101147 533.403666 351.101147a0.540156 0.540156 0 0 0 0.540156 0.540156h15.461954c40.511671-2.228142 140.643017-39.36384 321.662667-39.36384 118.024001 0 291.819069 21.606224 291.819069 62.590531 0 23.901886-56.783859 73.731241-116.94369 121.535013-51.7199 40.849268-122.885402 77.51233-122.885402 118.024001 0 27.007781 30.856389 31.599103 59.012001 31.599103 55.703547 0 139.02255-19.378083 193.645786-19.378083 23.766847 0 54.623236 3.848609 54.623236 27.007781 0 37.743373-262.042991 370.344191-652.710536 370.344191-44.090202 0-102.021891-6.751945-102.021891-49.896875s55.163392-108.031122 103.169721-145.301859c38.080971-29.303442 67.519451-38.216009 67.519452-43.752605 0-3.308453-11.07319-3.916128-14.921799-3.916128-32.00422 0-110.866939 16.137149-183.720427 60.767507-55.703547 34.367401-71.165502 48.208888-121.535013 73.73124-31.396545 15.529474-63.94092 37.135698-110.326783 37.135699-62.320454 0-93.784518-37.743373-93.784518-93.716999 0-63.738362 60.767506-81.495978 60.767506-143.006198C183.180272 657.571937 47.263616 698.556244 47.263616 629.821443c0-29.911117 27.007781-65.966504 33.759726-74.811552 114.242912-152.458921 226.190162-143.613873 253.805618-157.995517 31.464064-16.069629-2.768298-25.522353-25.387314-25.522352-20.998549 0-45.778188 8.304893-67.519452 17.21746-9.385204 3.848609-22.078861 16.069629-40.51167 16.069629-14.921799 0-19.378083-14.989318-19.378083-29.978636C180.95213 282.231307 374.057761 143.681393 434.757748 143.681393c15.461954 0 20.998549 8.845048 20.998549 24.374522z"
|
||||
fill="#E1EBFF"
|
||||
p-id="50481"
|
||||
/><path
|
||||
d="M898.751418 191.350125H341.513385A24.712119 24.712119 0 0 0 316.666227 216.062244v671.886061a24.712119 24.712119 0 0 0 24.847158 24.374522h557.238033a25.049716 25.049716 0 0 0 24.847158-24.374522V216.062244a24.712119 24.712119 0 0 0-24.847158-24.374521"
|
||||
fill="#335DFF"
|
||||
p-id="50482"
|
||||
/><path
|
||||
d="M847.436635 853.783463h-458.457075a25.049716 25.049716 0 0 1-24.847159-24.374522V279.463009a24.6446 24.6446 0 0 1 24.847159-24.374522h458.457075a25.049716 25.049716 0 0 1 24.847158 24.374522v549.945932a24.712119 24.712119 0 0 1-24.847158 24.374522z"
|
||||
fill="#FFFFFF"
|
||||
p-id="50483"
|
||||
/><path
|
||||
d="M58.471845 792.273243H41.389424v-17.21746a8.507451 8.507451 0 0 0-8.304893-8.304893 8.439931 8.439931 0 0 0-8.237373 8.304893v17.21746H8.304893a8.304893 8.304893 0 1 0 0 16.609785h17.082421v17.21746A8.507451 8.507451 0 0 0 33.759726 834.40538a8.57497 8.57497 0 0 0 8.237373-8.304892v-17.21746h17.082421a8.304893 8.304893 0 1 0-0.607675-16.609785z"
|
||||
fill="#D2DFFF"
|
||||
p-id="50484"
|
||||
/><path
|
||||
d="M809.355664 225.717526h-371.356983a16.204668 16.204668 0 0 1-16.542265-16.069629v-39.903996a16.204668 16.204668 0 0 1 16.542265-16.137149h371.356983a16.204668 16.204668 0 0 1 16.609785 16.069629v40.511671a16.137149 16.137149 0 0 1-16.609785 15.529474z"
|
||||
fill="#8FAFFF"
|
||||
p-id="50485"
|
||||
/><path
|
||||
d="M677.490175 181.357246H570.471845A16.542266 16.542266 0 0 1 553.659502 165.287617v-55.973625a16.137149 16.137149 0 0 1 16.542265-16.06963h107.018331a16.542266 16.542266 0 0 1 16.609785 16.06963v56.513781a16.474746 16.474746 0 0 1-16.339708 15.529473z"
|
||||
fill="#8FAFFF"
|
||||
p-id="50486"
|
||||
/><path
|
||||
d="M459.13227 688.02321h280.205723a16.272188 16.272188 0 0 1 16.542265 16.609785v8.912567a16.272188 16.272188 0 0 1-16.542265 16.609785H459.13227a16.272188 16.272188 0 0 1-16.542266-16.002109v-9.520243A17.014902 17.014902 0 0 1 459.13227 688.02321z m0-111.947251h224.569695a16.272188 16.272188 0 0 1 16.542266 16.609785v8.845049a16.272188 16.272188 0 0 1-16.542266 16.677304H459.13227a16.272188 16.272188 0 0 1-16.542266-16.069629 1.890545 1.890545 0 0 1 0-0.607675v-8.845049A16.609785 16.609785 0 0 1 459.13227 576.075959z m0-112.014769h224.569695a16.272188 16.272188 0 0 1 16.542266 16.609785v8.912567a16.272188 16.272188 0 0 1-16.677305 16.812344H459.13227a16.204668 16.204668 0 0 1-16.542266-16.00211 1.890545 1.890545 0 0 1 0-0.607676v-9.115125A16.677304 16.677304 0 0 1 459.13227 464.06119z m0-111.947251h280.205723a16.272188 16.272188 0 0 1 16.879863 16.609785v8.912568a16.272188 16.272188 0 0 1-16.542266 16.609785H459.13227A16.339707 16.339707 0 0 1 442.454965 378.108928v-9.452723A16.609785 16.609785 0 0 1 459.13227 352.113939zM247.526309 0.810233l-10.465515 18.905447a39.093762 39.093762 0 0 1-14.921799 14.921799l-18.230252 10.533034a2.160622 2.160622 0 0 0 0 3.375973l18.230252 10.465515A39.296321 39.296321 0 0 1 237.060794 74.271397l10.465515 18.837926a2.025584 2.025584 0 0 0 3.308453 0L261.300277 74.271397a38.823685 38.823685 0 0 1 14.921799-14.989319l18.230252-10.465515a2.160622 2.160622 0 0 0 0-3.375972l-18.230252-10.533035a38.621126 38.621126 0 0 1-14.921799-15.191876L250.834762 0.810233c-0.540156-0.810233-2.228142-0.810233-3.308453 0zM1057.624687 183.585388a22.754055 22.754055 0 1 1-22.011341 22.686536 21.606224 21.606224 0 0 1 22.011341-22.686536z m0-11.07319a33.759726 33.759726 0 0 0-33.084531 33.759726 33.152051 33.152051 0 1 0 66.236581 0 33.354609 33.354609 0 0 0-33.15205-33.759726z"
|
||||
fill="#D2DFFF"
|
||||
p-id="50487"
|
||||
/><path
|
||||
d="M642.785177 138.144798a22.821575 22.821575 0 0 1-22.686535 22.686535 22.281419 22.281419 0 0 1-22.551497-22.213899 1.147831 1.147831 0 0 1 0-0.472636 22.821575 22.821575 0 0 1 22.619016-22.754056 22.416458 22.416458 0 0 1 22.686536 22.2139z m68.059607 445.628379A178.791507 178.791507 0 1 0 762.969801 456.971647a179.66926 179.66926 0 0 0-52.125017 126.869049z"
|
||||
fill="#FFFFFF"
|
||||
p-id="50488"
|
||||
/><path
|
||||
d="M889.298694 436.91837a145.706976 145.706976 0 0 0-145.504417 145.909535v1.012791a145.571937 145.571937 0 1 0 291.076355 0.742714v-0.742714a146.787287 146.787287 0 0 0-145.571938-146.989845z"
|
||||
fill="#2ED073"
|
||||
p-id="50489"
|
||||
/><path
|
||||
d="M856.230925 638.373959m5.681472-5.681472l95.534667-95.534667q5.681472-5.681472 11.362944 0l0 0q5.681472 5.681472 0 11.362943l-95.534667 95.534668q-5.681472 5.681472-11.362944 0l0 0q-5.681472-5.681472 0-11.362944Z"
|
||||
fill="#FFFFFF"
|
||||
p-id="50490"
|
||||
/><path
|
||||
d="M804.217647 586.365756m5.681472-5.681472l0 0q5.681472-5.681472 11.362944 0l51.944886 51.944887q5.681472 5.681472 0 11.362944l0 0q-5.681472 5.681472-11.362944 0l-51.944886-51.944887q-5.681472-5.681472 0-11.362944Z"
|
||||
fill="#FFFFFF"
|
||||
p-id="50491"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 6.6 KiB |
@@ -1,8 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg class="w-2.5 h-2.5 text-blue-800 dark:text-blue-300" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
|
||||
<path d="M20 4a2 2 0 0 0-2-2h-2V1a1 1 0 0 0-2 0v1h-3V1a1 1 0 0 0-2 0v1H6V1a1 1 0 0 0-2 0v1H2a2 2 0 0 0-2 2v2h20V4ZM0 18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8H0v10Zm5-8h10a1 1 0 0 1 0 2H5a1 1 0 0 1 0-2Z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 451 B |
@@ -1,36 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1731987374334"
|
||||
class="w-4 h-4"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="47097"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M210.488889 246.670222m35.043555 0l349.923556 0q35.043556 0 35.043556 35.043556l0 0.056889q0 35.043556-35.043556 35.043555l-349.923556 0q-35.043556 0-35.043555-35.043555l0-0.056889q0-35.043556 35.043555-35.043556Z"
|
||||
fill="#89BAF7"
|
||||
p-id="47098"
|
||||
/><path
|
||||
d="M210.488889 471.210667m35.043555 0l349.923556 0q35.043556 0 35.043556 35.043555l0 0.056889q0 35.043556-35.043556 35.043556l-349.923556 0q-35.043556 0-35.043555-35.043556l0-0.056889q0-35.043556 35.043555-35.043555Z"
|
||||
fill="#89BAF7"
|
||||
p-id="47099"
|
||||
/><path
|
||||
d="M210.488889 695.296m35.043555 0l140.344889 0q35.043556 0 35.043556 35.043556l0 0.056888q0 35.043556-35.043556 35.043556l-140.344889 0q-35.043556 0-35.043555-35.043556l0-0.056888q0-35.043556 35.043555-35.043556Z"
|
||||
fill="#89BAF7"
|
||||
p-id="47100"
|
||||
/><path
|
||||
d="M436.565333 982.186667h-261.176889a175.559111 175.559111 0 0 1-175.331555-175.388445v-631.466666a175.559111 175.559111 0 0 1 175.331555-175.388445h490.951112a175.559111 175.559111 0 0 1 175.331555 175.388445v278.016a35.100444 35.100444 0 1 1-70.144 0v-278.016a105.358222 105.358222 0 0 0-105.187555-105.244445h-490.951112a105.358222 105.358222 0 0 0-105.187555 105.244445v631.466666a105.358222 105.358222 0 0 0 105.187555 105.244445h261.176889a35.100444 35.100444 0 0 1 0 70.144z"
|
||||
fill="#0A71EF"
|
||||
p-id="47101"
|
||||
/><path
|
||||
d="M1008.184889 628.167111l-5.688889-11.889778-2.104889-2.616889a19.683556 19.683556 0 0 0-24.519111-2.616888h-0.910222l-97.28 97.336888-49.265778-49.265777 101.489778-101.717334-1.080889-1.422222a18.090667 18.090667 0 0 0-4.039111-18.944 16.668444 16.668444 0 0 0-5.688889-3.868444l-10.695111-4.721778a192.056889 192.056889 0 0 0-258.958222 235.292444l-105.927112 105.927111a87.608889 87.608889 0 0 0 0 123.619556 87.608889 87.608889 0 0 0 123.448889 0l105.927111-106.097778a188.757333 188.757333 0 0 0 59.278223 9.500445 192.056889 192.056889 0 0 0 176.355555-268.288z m-176.355556 215.836445a137.728 137.728 0 0 1-55.409777-11.377778l-16.327112-6.997334-130.446222 130.446223a35.669333 35.669333 0 0 1-49.265778 0 34.702222 34.702222 0 0 1 0-49.265778l130.446223-130.446222-6.997334-16.497778a136.192 136.192 0 0 1-11.377777-55.239111 139.719111 139.719111 0 0 1 139.548444-139.548445 111.502222 111.502222 0 0 1 15.303111 0.853334l-79.985778 79.985777a20.650667 20.650667 0 0 0-3.356444 21.219556l-0.512 1.251556 101.489778 101.546666a19.569778 19.569778 0 0 0 24.746666 0.341334l81.009778-81.009778a151.210667 151.210667 0 0 1 0.853333 15.416889 139.719111 139.719111 0 0 1-139.605333 139.320889z"
|
||||
fill="#FD7733"
|
||||
p-id="47102"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 2.7 KiB |
@@ -1,28 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699532005309"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="31791"
|
||||
width="1rem"
|
||||
height="1rem"
|
||||
><path
|
||||
d="M505.088 513.1264m-450.816 0a450.816 450.816 0 1 0 901.632 0 450.816 450.816 0 1 0-901.632 0Z"
|
||||
fill="#e02424"
|
||||
p-id="31792"
|
||||
data-spm-anchor-id="a313x.search_index.0.i28.33343a81AAN1qI"
|
||||
class="selected"
|
||||
/><path
|
||||
d="M356.6592 575.0784c0-54.5792 0.3584-109.1584-0.2048-163.6864-0.1536-15.872 5.5296-24.2176 20.992-29.5424 58.88-20.2752 93.7472-63.1296 110.848-121.9072 5.9392-20.4288 11.4176-41.216 19.7632-60.672 13.4656-31.5904 38.2464-42.7008 72.6528-35.328 26.5216 5.6832 43.3152 28.3648 43.5712 60.16 0.3584 40.4992 0.0512 80.9984 0.1536 121.4976 0.0512 22.2208 3.9424 26.7264 26.5728 26.9824 45.568 0.512 91.1872 1.536 136.704-0.256 40.5504-1.5872 69.9392 24.832 59.7504 69.9904-12.2368 54.0672-27.648 107.4688-42.7008 160.8704-9.2672 32.9216-20.1728 65.4336-30.8736 97.9456-14.1312 43.008-40.448 62.0544-84.8896 62.0544H390.2976c-32.1024 0-33.6384-1.536-33.6384-32.8704v-155.2384zM307.8656 573.9008c0 52.8896 0.1024 105.7792-0.0512 158.6688-0.1024 26.0096-4.9152 30.6176-30.3616 30.6688-7.3216 0-14.6432 0.0512-21.9648 0-29.8496-0.1536-44.032-14.08-44.2368-44.6976-0.3072-55.1424-0.1024-110.2848-0.1024-165.4272 0-40.4992-0.1536-81.0496 0.0512-121.5488 0.2048-32.2048 15.7696-47.616 47.5136-47.7184 49.1008-0.2048 49.152-0.2048 49.152 48.2304 0.0512 47.2576 0.0512 94.5152 0 141.824z"
|
||||
fill="#ffffff"
|
||||
p-id="31793"
|
||||
data-spm-anchor-id="a313x.search_index.0.i26.33343a81AAN1qI"
|
||||
class=""
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -1,24 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699531880178"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="26552"
|
||||
width="1rem"
|
||||
height="1rem"
|
||||
><path
|
||||
d="M505.088 513.1264m-450.816 0a450.816 450.816 0 1 0 901.632 0 450.816 450.816 0 1 0-901.632 0Z"
|
||||
fill="#FFBC42"
|
||||
p-id="26553"
|
||||
/><path
|
||||
d="M356.6592 575.0784c0-54.5792 0.3584-109.1584-0.2048-163.6864-0.1536-15.872 5.5296-24.2176 20.992-29.5424 58.88-20.2752 93.7472-63.1296 110.848-121.9072 5.9392-20.4288 11.4176-41.216 19.7632-60.672 13.4656-31.5904 38.2464-42.7008 72.6528-35.328 26.5216 5.6832 43.3152 28.3648 43.5712 60.16 0.3584 40.4992 0.0512 80.9984 0.1536 121.4976 0.0512 22.2208 3.9424 26.7264 26.5728 26.9824 45.568 0.512 91.1872 1.536 136.704-0.256 40.5504-1.5872 69.9392 24.832 59.7504 69.9904-12.2368 54.0672-27.648 107.4688-42.7008 160.8704-9.2672 32.9216-20.1728 65.4336-30.8736 97.9456-14.1312 43.008-40.448 62.0544-84.8896 62.0544H390.2976c-32.1024 0-33.6384-1.536-33.6384-32.8704v-155.2384zM307.8656 573.9008c0 52.8896 0.1024 105.7792-0.0512 158.6688-0.1024 26.0096-4.9152 30.6176-30.3616 30.6688-7.3216 0-14.6432 0.0512-21.9648 0-29.8496-0.1536-44.032-14.08-44.2368-44.6976-0.3072-55.1424-0.1024-110.2848-0.1024-165.4272 0-40.4992-0.1536-81.0496 0.0512-121.5488 0.2048-32.2048 15.7696-47.616 47.5136-47.7184 49.1008-0.2048 49.152-0.2048 49.152 48.2304 0.0512 47.2576 0.0512 94.5152 0 141.824z"
|
||||
fill="#FFFFFF"
|
||||
p-id="26554"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
@@ -1,28 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1697617760586"
|
||||
class="h-10 w-10"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="5216"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M826.9 461.6h-723v391.5c0 21.7 17.7 39.4 39.4 39.4h677c4.1-6.4 6.6-14.1 6.6-22.3V461.6zM826.9 422.3v-64.7c0-22.9-18.6-41.6-41.6-41.6H340l-32.7-61.2c-7.2-13.5-21.3-22-36.7-22H134.9c-12.4 0-23.4 5.5-31 14.2v175.2l723 0.1z"
|
||||
fill="#FFD524"
|
||||
p-id="5217"
|
||||
/><path
|
||||
d="M687 252.6h11.4c10.8 0 19.6-8.8 19.6-19.6s-8.8-19.6-19.6-19.6H687c-10.8 0-19.6 8.8-19.6 19.6s8.8 19.6 19.6 19.6zM753.3 252.6h18c10.8 0 19.6-8.8 19.6-19.6s-8.8-19.6-19.6-19.6h-18c-10.8 0-19.6 8.8-19.6 19.6s8.7 19.6 19.6 19.6z"
|
||||
fill="#6B400D"
|
||||
p-id="5218"
|
||||
/><path
|
||||
d="M881.6 213.3h-44.9c-10.8 0-19.6 8.8-19.6 19.6s8.8 19.6 19.6 19.6h44.9c21.7 0 39.4 17.7 39.4 39.4v130.3H103.8V173.9c0-21.7 17.7-39.4 39.4-39.4h193c14.6 0 27.9 8 34.7 20.8l46.5 86.9c3.4 6.4 10.1 10.4 17.3 10.4h84.5c10.8 0 19.6-8.8 19.6-19.6s-8.8-19.6-19.6-19.6h-72.7l-40.9-76.5c-13.7-25.7-40.3-41.6-69.4-41.6H143.3c-43.4 0-78.7 35.3-78.7 78.7v679.3c0 43.4 35.3 78.7 78.7 78.7h738.3c43.4 0 78.7-35.3 78.7-78.7V292c0-43.4-35.3-78.7-78.7-78.7z m39.5 639.8c0 21.7-17.7 39.4-39.4 39.4H143.4c-21.7 0-39.4-17.7-39.4-39.4V461.6h817.2v391.5z"
|
||||
fill="#6B400D"
|
||||
p-id="5219"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1,38 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
class="h-10 w-10"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="200"
|
||||
height="200"
|
||||
><path
|
||||
d="M192.028 0.008c-47.06 0-85.34 38.282-85.34 85.342V853.34c0 11.782 9.53 21.312 21.342 21.312h106.654V0.008H192.028z"
|
||||
fill="#656D78"
|
||||
/><path
|
||||
d="M192.028 789.34c-35.374 0-63.998 28.656-63.998 64s28.624 63.996 63.998 63.996H896V789.34H192.028z"
|
||||
fill="#E6E9ED"
|
||||
/><path
|
||||
d="M917.312 21.352c0-11.782-9.562-21.344-21.312-21.344H234.684v810.644H896c11.75 0 21.312-9.532 21.312-21.312V21.352z"
|
||||
fill="#5D9CEC"
|
||||
/><path
|
||||
d="M384.026 874.652H213.34c-11.75 0-21.312-9.532-21.312-21.312s9.562-21.344 21.312-21.344h170.686c11.782 0 21.312 9.562 21.312 21.344s-9.532 21.312-21.312 21.312zM725.316 831.996c-11.75 0-21.312 9.562-21.312 21.344s9.562 21.312 21.312 21.312H896v-42.656h-170.684z"
|
||||
fill="#CCD1D9"
|
||||
/><path d="M320.026 149.35h490.662v255.996H320.026z" fill="#E6E9ED" /><path
|
||||
d="M128.03 170.678c11.782 0 21.312-9.546 21.312-21.328s-9.532-21.344-21.312-21.344H106.686v42.672h21.344zM128.03 298.676c11.782 0 21.312-9.546 21.312-21.328 0-11.78-9.532-21.342-21.312-21.342H106.686v42.67h21.344zM128.03 426.672c11.782 0 21.312-9.546 21.312-21.328 0-11.78-9.532-21.342-21.312-21.342H106.686v42.67h21.344zM128.03 554.656c11.782 0 21.312-9.532 21.312-21.312S139.81 512 128.03 512H106.686v42.656h21.344zM128.03 682.656c11.782 0 21.312-9.532 21.312-21.312S139.81 640 128.03 640H106.686v42.656h21.344zM725.316 298.676h-319.98c-11.75 0-21.312-9.546-21.312-21.328 0-11.78 9.562-21.342 21.312-21.342h319.98c11.812 0 21.376 9.562 21.376 21.342s-9.564 21.328-21.376 21.328z"
|
||||
fill="#434A54"
|
||||
/><path
|
||||
d="M917.312 917.336c0-11.782-9.562-21.344-21.312-21.344H234.684v42.656H896c11.75 0 21.312-9.53 21.312-21.312z"
|
||||
fill="#5D9CEC"
|
||||
/><path
|
||||
d="M234.684 895.992H192.028c-23.53 0-42.686-19.152-42.686-42.652 0-23.532 19.156-42.688 42.686-42.688h42.656v-42.656H192.028c-47.06 0-85.34 38.282-85.34 85.344 0 47.028 38.28 85.308 85.34 85.308h42.656v-42.656z"
|
||||
fill="#656D78"
|
||||
/><path
|
||||
d="M362.682 853.34H213.34v149.308c0 6.876 3.312 13.312 8.876 17.312s12.718 5.094 19.218 2.938l57.25-19.094 57.25 19.094c2.218 0.718 4.468 1.094 6.75 1.094 4.406 0 8.782-1.376 12.468-4.032 5.562-4 8.876-10.438 8.876-17.312V853.34h-21.346z"
|
||||
fill="#ED5564"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,32 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699516160889"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1937"
|
||||
width="14"
|
||||
height="14"
|
||||
><path
|
||||
d="M226.94 618.816L191.296 751.88l-130.278 2.756C22.084 682.422 0 599.8 0 512c0-84.902 20.648-164.966 57.248-235.464h0.028L173.26 297.8l50.808 115.288c-10.634 31.002-16.43 64.282-16.43 98.912 0.004 37.584 6.812 73.594 19.302 106.816z"
|
||||
fill="#FBBB00"
|
||||
p-id="1938"
|
||||
/><path
|
||||
d="M1015.054 416.352C1020.934 447.324 1024 479.31 1024 512c0 36.656-3.854 72.412-11.196 106.902-24.924 117.366-90.05 219.85-180.268 292.374l-0.028-0.028-146.088-7.454-20.676-129.07c59.864-35.108 106.648-90.05 131.292-155.822h-273.78V416.352h491.798z"
|
||||
fill="#518EF8"
|
||||
p-id="1939"
|
||||
/><path
|
||||
d="M832.506 911.248l0.028 0.028C744.792 981.802 633.332 1024 512 1024c-194.982 0-364.504-108.982-450.982-269.362l165.922-135.82c43.238 115.396 154.556 197.542 285.06 197.542 56.094 0 108.646-15.164 153.74-41.636l166.766 136.524z"
|
||||
fill="#28B446"
|
||||
p-id="1940"
|
||||
/><path
|
||||
d="M838.808 117.872l-165.866 135.792C626.272 224.492 571.104 207.64 512 207.64c-133.458 0-246.858 85.914-287.93 205.448l-166.794-136.552h-0.028C142.46 112.246 314.12 0 512 0c124.23 0 238.136 44.252 326.808 117.872z"
|
||||
fill="#F14336"
|
||||
p-id="1941"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1,41 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1689149335476"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1964"
|
||||
width="32"
|
||||
height="32"
|
||||
data-spm-anchor-id="a313x.7781069.0.i17"
|
||||
><path
|
||||
d="M949.333333 96v704H614.4l-21.333333 25.6v2.133333L512 906.666667l-78.933333-78.933334-2.133334-2.133333-21.333333-25.6H74.666667v-704h874.666666M960 21.333333H64C27.733333 21.333333 0 49.066667 0 85.333333v725.333334c0 36.266667 27.733333 64 64 64h311.466667v2.133333l121.6 121.6c4.266667 4.266667 10.666667 6.4 14.933333 6.4s10.666667-2.133333 14.933333-6.4l121.6-121.6V874.666667H960c36.266667 0 64-27.733333 64-64V85.333333c0-36.266667-27.733333-64-64-64z"
|
||||
fill="#0071c5"
|
||||
p-id="1965"
|
||||
data-spm-anchor-id="a313x.7781069.0.i8"
|
||||
class=""
|
||||
/><path
|
||||
d="M512 601.6c-21.333333 0-38.4-17.066667-38.4-36.266667v-27.733333c0-21.333333 17.066667-36.266667 36.266667-36.266667 21.333333 0 36.266667 17.066667 36.266666 36.266667v27.733333c4.266667 19.2-12.8 36.266667-34.133333 36.266667z"
|
||||
fill="#0071c5"
|
||||
p-id="1966"
|
||||
data-spm-anchor-id="a313x.7781069.0.i9"
|
||||
class=""
|
||||
/><path
|
||||
d="M512 742.4c-23.466667 0-42.666667-19.2-42.666667-42.666667s19.2-42.666667 42.666667-42.666666 42.666667 19.2 42.666667 42.666666-19.2 42.666667-42.666667 42.666667z"
|
||||
fill="#0071c5"
|
||||
p-id="1967"
|
||||
data-spm-anchor-id="a313x.7781069.0.i7"
|
||||
class="selected"
|
||||
/><path
|
||||
d="M512 576c-21.333333 0-38.4-17.066667-38.4-38.4s17.066667-38.4 38.4-38.4c68.266667 0 121.6-55.466667 121.6-123.733333S580.266667 256 512 256c-64 0-119.466667 51.2-121.6 115.2-2.133333 21.333333-19.2 36.266667-38.4 34.133333-21.333333-2.133333-36.266667-19.2-34.133333-38.4 6.4-104.533333 91.733333-185.6 196.266666-185.6 108.8 0 196.266667 87.466667 196.266667 196.266667S620.8 576 512 576z"
|
||||
fill="#0071c5"
|
||||
p-id="1968"
|
||||
data-spm-anchor-id="a313x.7781069.0.i10"
|
||||
class="selected"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.9 KiB |
@@ -1,6 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg t="1689232479587" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="20682" width="32" height="32"><path d="M512 512m-384 0a384 384 0 1 0 768 0 384 384 0 1 0-768 0Z" fill="#2196F3" p-id="20683"></path><path d="M465.28 613.333333c0-134.4 109.013333-138.453333 109.013333-217.386666a58.88 58.88 0 0 0-61.013333-64 59.093333 59.093333 0 0 0-64 59.946666h-81.066667c0-21.333333 10.24-128 144.64-128 142.08 0 142.08 108.586667 142.08 128 0 106.666667-114.346667 119.04-114.346666 220.373334z m-5.546667 103.68a42.666667 42.666667 0 0 1 45.653334-43.946666 42.666667 42.666667 0 0 1 45.866666 43.946666 42.666667 42.666667 0 0 1-45.866666 42.666667 42.666667 42.666667 0 0 1-45.653334-42.666667z" fill="#FFFFFF" p-id="20684"></path></svg>
|
||||
|
Before Width: | Height: | Size: 866 B |
@@ -1,92 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1710303075816"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="32606"
|
||||
width="6rem"
|
||||
height="6rem"
|
||||
><path
|
||||
d="M241.0496 404.48a31.470933 31.470933 0 0 1-31.1296-28.2624 31.061333 31.061333 0 1 1 33.5872 28.2624z m0-54.613333H238.933333A23.415467 23.415467 0 0 0 217.7024 375.466667a23.7568 23.7568 0 0 0 25.3952 21.2992 23.415467 23.415467 0 0 0-2.048-46.6944z m572.6208 331.3664a22.254933 22.254933 0 0 1-21.777067-19.933867 21.504 21.504 0 0 1 20.0704-23.7568 22.596267 22.596267 0 0 1 15.9744 4.9152 21.162667 21.162667 0 0 1 7.7824 15.1552 21.504 21.504 0 0 1-20.0704 23.7568z m0-36.4544H812.373333a14.882133 14.882133 0 0 0-13.1072 15.5648 14.609067 14.609067 0 0 0 15.5648 13.1072 14.882133 14.882133 0 0 0 13.1072-15.5648 14.609067 14.609067 0 0 0-14.267733-12.970667z m-493.568-375.466667a16.1792 16.1792 0 0 1-11.0592-4.096 17.8176 17.8176 0 0 1-6.144-11.8784 17.271467 17.271467 0 0 1 34.133333-3.2768 16.452267 16.452267 0 0 1-4.096 12.6976 16.1792 16.1792 0 0 1-11.8784 6.144 1.501867 1.501867 0 0 1-0.955733 0.4096z m0-27.306667h-0.8192A9.284267 9.284267 0 0 0 310.6816 252.586667a10.103467 10.103467 0 0 0 3.345067 6.826666 8.8064 8.8064 0 0 0 6.826666 2.048 10.103467 10.103467 0 0 0 6.826667-3.2768 8.8064 8.8064 0 0 0 2.048-6.826666 9.352533 9.352533 0 0 0-9.6256-9.079467z"
|
||||
fill="#82A0F6"
|
||||
p-id="32607"
|
||||
/><path
|
||||
d="M254.1568 719.0528h-32.3584a3.6864 3.6864 0 1 1 0-7.3728h32.3584a3.6864 3.6864 0 0 1 0 7.3728z"
|
||||
fill="#2B77EF"
|
||||
p-id="32608"
|
||||
/><path
|
||||
d="M237.7728 735.0272a3.6864 3.6864 0 0 1-3.6864-3.6864v-32.3584a3.6864 3.6864 0 1 1 7.3728 0v32.3584c0.4096 2.048-1.2288 3.6864-3.6864 3.6864z"
|
||||
fill="#2B77EF"
|
||||
p-id="32609"
|
||||
/><path
|
||||
d="M800.9728 430.6944h-32.3584a3.6864 3.6864 0 1 1 0-7.3728h32.3584a3.6864 3.6864 0 1 1 0 7.3728z"
|
||||
fill="#82A0F6"
|
||||
p-id="32610"
|
||||
/><path
|
||||
d="M785.066667 446.6688a3.6864 3.6864 0 0 1-3.6864-3.6864v-32.3584a3.6864 3.6864 0 0 1 7.3728 0v32.3584a3.6864 3.6864 0 0 1-3.6864 3.6864z"
|
||||
fill="#82A0F6"
|
||||
p-id="32611"
|
||||
/><path
|
||||
d="M531.8656 645.7344h-315.392a31.9488 31.9488 0 0 1 0-63.8976h315.392a31.9488 31.9488 0 1 1 0 63.8976z"
|
||||
fill="#E3EEFF"
|
||||
p-id="32612"
|
||||
/><path
|
||||
d="M533.0944 759.6032h-4.5056a56.9344 56.9344 0 0 1 0-113.8688h4.5056v-63.8976H237.7728v63.8976h107.3152a56.9344 56.9344 0 1 1 0 113.8688H237.7728v63.8976H532.48v-63.8976z"
|
||||
fill="#E3EEFF"
|
||||
p-id="32613"
|
||||
/><path
|
||||
d="M550.7072 484.693333a21.640533 21.640533 0 0 0-20.8896-21.2992h-211.626667a21.2992 21.2992 0 0 0 0 42.5984h86.016a38.0928 38.0928 0 1 1 0 76.1856H332.8v43.008h197.0176v-43.008h-3.2768a38.0928 38.0928 0 1 1 0-76.1856h3.2768A21.640533 21.640533 0 0 0 550.7072 484.693333zM669.013333 759.6032H216.4736a31.9488 31.9488 0 1 0 0 63.8976H669.013333z m11.8784 0h27.306667v63.8976h-27.306667z m59.8016 0h17.066667v63.8976h-17.6128z m67.1744 0h-40.5504v63.8976h40.5504a31.9488 31.9488 0 0 0 0-63.8976z"
|
||||
fill="#E3EEFF"
|
||||
p-id="32614"
|
||||
/><path
|
||||
d="M803.4304 273.408a3.6864 3.6864 0 0 1-3.6864-3.6864V245.76l-16.7936 16.7936a3.754667 3.754667 0 0 1-5.3248-5.3248l16.7936-16.7936h-24.1664a3.6864 3.6864 0 1 1 0-7.3728h23.7568l-16.7936-16.7936a3.754667 3.754667 0 0 1 5.3248-5.3248l16.7936 16.7936v-23.552a3.6864 3.6864 0 0 1 7.3728 0v23.7568l16.7936-16.7936a3.754667 3.754667 0 0 1 5.3248 5.3248L812.373333 233.2672h23.7568a3.6864 3.6864 0 0 1 0 7.3728H812.373333l16.7936 16.7936a3.754667 3.754667 0 0 1-5.3248 5.3248L806.7072 245.76v23.7568a3.140267 3.140267 0 0 1-3.2768 3.8912z"
|
||||
fill="#82A0F6"
|
||||
p-id="32615"
|
||||
/><path
|
||||
d="M669.013333 735.8464c0 20.0704-13.653333 36.4544-30.72 36.4544 16.7936 0 30.72 16.384 30.72 36.4544 0-20.0704 13.653333-36.4544 30.72-36.4544-17.066667 0-30.72-16.384-30.72-36.4544z"
|
||||
fill="#76A6EF"
|
||||
p-id="32616"
|
||||
/><path
|
||||
d="M644.5056 269.312a22.254933 22.254933 0 0 1-13.653333-4.9152 20.48 20.48 0 0 1-7.3728-14.7456 21.572267 21.572267 0 0 1 4.573866-15.5648 20.48 20.48 0 0 1 14.7456-7.3728 21.572267 21.572267 0 0 1 15.5648 4.9152 20.48 20.48 0 0 1 7.3728 14.7456 21.572267 21.572267 0 0 1-4.9152 15.5648 20.48 20.48 0 0 1-14.7456 7.3728z m0-35.2256h-1.2288a13.653333 13.653333 0 0 0-7.7824 24.1664 15.018667 15.018667 0 0 0 9.8304 3.2768 13.653333 13.653333 0 0 0 7.7824-24.1664 12.424533 12.424533 0 0 0-8.6016-3.2768z"
|
||||
fill="#82A0F6"
|
||||
p-id="32617"
|
||||
/><path
|
||||
d="M740.7616 442.9824H612.5568A12.970667 12.970667 0 0 1 599.4496 430.08V301.2608a12.970667 12.970667 0 0 0-13.1072-13.1072H437.6576a12.970667 12.970667 0 0 0-13.1072 13.1072v128.2048a12.970667 12.970667 0 0 1-13.1072 13.1072H282.8288a12.970667 12.970667 0 0 0-13.1072 13.1072v148.2752a12.970667 12.970667 0 0 0 13.1072 13.1072h128.2048a12.970667 12.970667 0 0 1 13.1072 13.1072v128.2048a12.970667 12.970667 0 0 0 13.1072 13.038933h148.6848a12.970667 12.970667 0 0 0 13.1072-13.1072V630.5792a12.970667 12.970667 0 0 1 13.1072-13.1072h128.2048a12.970667 12.970667 0 0 0 13.1072-13.1072V456.0896a12.356267 12.356267 0 0 0-12.6976-13.1072z"
|
||||
fill="#C7DDFF"
|
||||
p-id="32618"
|
||||
/><path
|
||||
d="M399.9744 452.8128h18.432c15.9744 0 29.0816-11.0592 29.0816-24.9856v-137.216h-22.9376v147.456z m2.048 158.1056h18.432c15.9744 0 29.0816 11.0592 29.0816 24.9856v136.533333h-22.9376v-146.773333z"
|
||||
fill="#FFFFFF"
|
||||
p-id="32619"
|
||||
/><path
|
||||
d="M740.7616 442.9824H612.5568A12.970667 12.970667 0 0 1 599.4496 430.08V301.2608a12.970667 12.970667 0 0 0-13.1072-13.1072H437.6576a12.970667 12.970667 0 0 0-13.1072 13.1072v2.4576h134.7584a12.970667 12.970667 0 0 1 13.1072 13.1072v128.2048a12.970667 12.970667 0 0 0 13.1072 13.1072h128.2048a12.970667 12.970667 0 0 1 13.1072 12.9024v146.0224h13.1072a12.970667 12.970667 0 0 0 13.1072-13.1072V456.0896a11.810133 11.810133 0 0 0-12.288-13.1072z"
|
||||
fill="#76A6EF"
|
||||
p-id="32620"
|
||||
/><path
|
||||
d="M295.1168 447.0784v166.2976h-12.6976L269.7216 600.746667V459.776l12.6976-12.6976z"
|
||||
fill="#FFFFFF"
|
||||
p-id="32621"
|
||||
/><path
|
||||
d="M269.7216 536.3712a6.280533 6.280533 0 0 1-6.144-6.144v-19.2512a6.144 6.144 0 1 1 12.288 0v19.2512a6.280533 6.280533 0 0 1-6.144 6.144z m0-47.104a6.280533 6.280533 0 0 1-6.144-6.144v-27.306667A19.2512 19.2512 0 0 1 282.8288 436.906667h128.2048a7.168 7.168 0 0 0 6.826667-6.826667V352.0512a6.144 6.144 0 1 1 12.288 0V430.08a19.2512 19.2512 0 0 1-19.2512 19.2512H282.8288a7.168 7.168 0 0 0-6.826667 6.826667v27.306666a6.280533 6.280533 0 0 1-6.280533 5.802667z"
|
||||
fill="#2B77EF"
|
||||
p-id="32622"
|
||||
/><path
|
||||
d="M585.9328 778.24H437.6576a19.2512 19.2512 0 0 1-19.2512-19.2512V630.5792a7.168 7.168 0 0 0-6.826667-6.826667H282.8288a19.2512 19.2512 0 0 1-19.2512-19.2512v-45.056a6.144 6.144 0 0 1 12.288 0v45.056a7.168 7.168 0 0 0 6.826667 6.826667h128.341333A19.2512 19.2512 0 0 1 430.08 630.5792v128.2048a7.168 7.168 0 0 0 6.826667 6.826667h149.026133a7.168 7.168 0 0 0 6.826667-6.826667V630.5792a19.2512 19.2512 0 0 1 19.2512-19.2512h128.2048a7.168 7.168 0 0 0 6.826666-6.826667V456.0896a7.168 7.168 0 0 0-6.826666-6.826667H612.1472A19.2512 19.2512 0 0 1 592.896 430.08V301.2608a7.168 7.168 0 0 0-6.826667-6.826667H437.6576a7.168 7.168 0 0 0-6.826667 6.826667v23.3472a6.144 6.144 0 1 1-12.288 0v-23.3472a19.2512 19.2512 0 0 1 19.2512-19.2512h148.138667a19.2512 19.2512 0 0 1 19.2512 19.2512v128.2048a7.168 7.168 0 0 0 6.826667 6.826667h128.2048a19.2512 19.2512 0 0 1 19.2512 19.2512v148.411733a19.2512 19.2512 0 0 1-19.2512 19.2512H612.1472a7.168 7.168 0 0 0-6.826667 6.826667v128.2048a19.456 19.456 0 0 1-19.387733 20.002133z"
|
||||
fill="#2B77EF"
|
||||
p-id="32623"
|
||||
/><path
|
||||
d="M556.4416 540.4672H474.9312a6.826667 6.826667 0 0 1 0-13.653333h81.5104a6.826667 6.826667 0 0 1 0 13.653333z"
|
||||
fill="#F68282"
|
||||
p-id="32624"
|
||||
/><path
|
||||
d="M508.928 574.0544V492.9536a6.826667 6.826667 0 0 1 13.653333 0v81.5104a7.168 7.168 0 0 1-6.826666 6.826667 7.509333 7.509333 0 0 1-6.826667-7.236267z"
|
||||
fill="#F68282"
|
||||
p-id="32625"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 7.7 KiB |
@@ -1,229 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1710303147323"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="33782"
|
||||
width="5rem"
|
||||
height="5rem"
|
||||
><path
|
||||
d="M617.813333 701.44C597.333333 659.911111 554.666667 631.466667 505.173333 631.466667c-66.56 0-120.604444 51.2-125.155555 116.622222-48.924444 13.653333-84.195556 56.32-84.195556 106.951111 0 59.733333 49.493333 108.088889 111.502222 111.502222h209.351112c69.404444 0 125.724444-59.164444 125.724444-132.551111 0-70.542222-55.182222-128-124.586667-132.551111z"
|
||||
fill="#4598F0"
|
||||
p-id="33783"
|
||||
/><path
|
||||
d="M529.066667 797.013333h59.164444c2.275556 0 3.413333-2.275556 3.413333-4.551111v-14.222222c0-2.275556-1.137778-4.551111-3.413333-4.551111H518.257778c-3.413333 0-4.551111 4.551111-2.275556 7.395555l10.808889 15.36c0 0.568889 1.137778 0.568889 2.275556 0.568889z m61.44 9.671111H529.066667c-2.275556 0-6.257778-1.137778-7.395556-4.551111l-23.893333-30.72c-2.275556-2.275556-4.551111-3.413333-8.533334-3.413333h-44.373333c-6.257778 0-10.808889 5.688889-10.808889 11.946667v116.622222c0 7.395556 4.551111 11.946667 10.808889 11.946667h145.635556c6.257778 0 10.808889-5.688889 10.808889-11.946667V819.2c0-7.964444-5.12-12.515556-10.808889-12.515556z m-50.631111 65.422223c0 3.413333-2.275556 5.688889-6.257778 5.688889h-73.955556c-3.413333 0-6.257778-2.275556-6.257778-5.688889s2.275556-5.688889 6.257778-5.688889h75.662222c2.275556 0 4.551111 2.275556 4.551112 5.688889z m31.288888 0c0 3.413333-2.275556 5.688889-6.257777 5.688889h-4.551111c-3.413333 0-6.257778-2.275556-6.257778-5.688889s2.275556-5.688889 6.257778-5.688889h4.551111c3.982222 0 6.257778 2.275556 6.257777 5.688889z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33784"
|
||||
/><path
|
||||
d="M694.044444 466.488889h73.955556c12.515556 0 22.755556 10.24 22.755556 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755556 22.755556h-73.955556c-12.515556 0-22.755556-10.24-22.755555-22.755556V489.244444c0-12.515556 10.24-22.755556 22.755555-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33785"
|
||||
/><path
|
||||
d="M704.853333 553.528889c1.137778 0 2.275556-1.137778 2.275556-2.275556v-48.355555c0-1.137778-1.137778-2.275556-2.275556-2.275556s-2.275556 1.137778-2.275555 2.275556v48.355555c0 1.137778 1.137778 2.275556 2.275555 2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33786"
|
||||
/><path
|
||||
d="M754.915556 553.528889c1.137778 0 2.275556-1.137778 2.275555-2.275556v-48.355555c0-1.137778-1.137778-2.275556-2.275555-2.275556s-2.275556 1.137778-2.275556 2.275556v48.355555c0 1.137778 1.137778 2.275556 2.275556 2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33787"
|
||||
/><path
|
||||
d="M757.191111 502.897778c0-1.137778-1.137778-2.275556-2.275555-2.275556h-50.062223c-1.137778 0-2.275556 1.137778-2.275555 2.275556s1.137778 2.275556 2.275555 2.275555h50.062223c1.137778 0 2.275556-1.137778 2.275555-2.275555"
|
||||
fill="#FFFFFF"
|
||||
p-id="33788"
|
||||
/><path
|
||||
d="M746.382222 551.253333c0-1.137778-1.137778-2.275556-2.275555-2.275555H705.422222c-1.137778 0-2.275556 1.137778-2.275555 2.275555s1.137778 2.275556 2.275555 2.275556h38.684445c1.137778 0 2.275556-1.137778 2.275555-2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33789"
|
||||
/><path
|
||||
d="M725.902222 522.24c-1.137778-0.568889-2.275556-0.568889-3.413333 0.568889l-19.342222 27.306667c-0.568889 1.137778-0.568889 2.275556 0.568889 3.413333 1.137778 0.568889 2.275556 0.568889 3.413333-0.568889l19.342222-27.306667c0.568889-1.137778 0.568889-2.844444-0.568889-3.413333"
|
||||
fill="#FFFFFF"
|
||||
p-id="33790"
|
||||
/><path
|
||||
d="M723.057778 522.24c1.137778-0.568889 2.275556-0.568889 3.413333 0.568889l19.342222 27.306667c0.568889 1.137778 0.568889 2.275556-0.568889 3.413333-1.137778 0.568889-2.275556 0.568889-3.413333-0.568889l-19.342222-27.306667c-0.568889-1.137778-0.568889-2.844444 0.568889-3.413333"
|
||||
fill="#FFFFFF"
|
||||
p-id="33791"
|
||||
/><path
|
||||
d="M738.986667 529.635556c1.137778-0.568889 2.275556-0.568889 3.413333 0.568888l14.222222 19.911112c0.568889 1.137778 0.568889 2.275556-0.568889 3.413333-1.137778 0.568889-2.275556 0.568889-3.413333-0.568889l-14.222222-19.911111c-0.568889-1.706667-0.568889-2.844444 0.568889-3.413333"
|
||||
fill="#FFFFFF"
|
||||
p-id="33792"
|
||||
/><path
|
||||
d="M861.866667 676.977778h74.524444c12.515556 0 22.755556 10.24 22.755556 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755556 22.755555h-74.524444c-12.515556 0-22.755556-10.24-22.755556-22.755555v-73.955556c0-12.515556 10.24-22.755556 22.755556-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33793"
|
||||
/><path
|
||||
d="M888.604444 718.506667v38.115555c0 5.688889-4.551111 10.24-10.24 10.24s-10.24-4.551111-10.24-10.24 4.551111-10.24 10.24-10.24c1.137778 0 2.275556 1.137778 2.275556 2.275556s-1.137778 2.275556-2.275556 2.275555c-2.844444 0-5.688889 2.275556-5.688888 5.688889s2.275556 5.688889 5.688888 5.688889c2.844444 0 5.688889-2.275556 5.688889-5.688889v-38.115555c0-0.568889 0-1.137778 0.568889-1.706667 0.568889-0.568889 1.137778-0.568889 1.706667-0.568889 1.137778 0 2.275556 1.137778 2.275555 2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33794"
|
||||
/><path
|
||||
d="M926.72 714.524444v38.115556c0 5.688889-4.551111 10.24-10.24 10.24s-10.24-4.551111-10.24-10.24 4.551111-10.24 10.24-10.24c1.137778 0 2.275556 1.137778 2.275556 2.275556s-1.137778 2.275556-2.275556 2.275555c-2.844444 0-5.688889 2.275556-5.688889 5.688889s2.275556 5.688889 5.688889 5.688889c2.844444 0 5.688889-2.275556 5.688889-5.688889v-38.115556c0-0.568889 0-1.137778 0.568889-1.706666 0.568889-0.568889 1.137778-0.568889 1.706666-0.568889h0.568889c1.137778 0 1.706667 1.137778 1.706667 2.275555"
|
||||
fill="#FFFFFF"
|
||||
p-id="33795"
|
||||
/><path
|
||||
d="M926.72 713.955556c0-1.137778-1.137778-2.275556-2.844444-2.275556l-38.115556 4.551111c-1.137778 0-2.275556 1.137778-2.275556 2.844445 0 1.137778 1.137778 2.275556 2.844445 2.275555l38.115555-4.551111c1.706667-0.568889 2.844444-1.706667 2.275556-2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33796"
|
||||
/><path
|
||||
d="M880.64 748.657778c0 1.137778-1.137778 2.275556-2.275556 2.275555s-2.275556-1.137778-2.275555-2.275555 1.137778-2.275556 2.275555-2.275556 2.275556 1.137778 2.275556 2.275556M918.755556 744.106667c0 1.137778-1.137778 2.275556-2.275556 2.275555s-2.275556-1.137778-2.275556-2.275555 1.137778-2.275556 2.275556-2.275556 2.275556 1.137778 2.275556 2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33797"
|
||||
/><path
|
||||
d="M22.755556 483.555556h73.955555c12.515556 0 22.755556 10.24 22.755556 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755556 22.755555H22.755556c-12.515556 0-22.755556-10.24-22.755556-22.755555V506.311111c0-12.515556 10.24-22.755556 22.755556-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33798"
|
||||
/><path
|
||||
d="M50.062222 557.511111c-0.568889 1.137778-1.706667 1.706667-2.844444 1.137778-1.137778-0.568889-1.706667-1.706667-1.137778-2.844445 4.551111-11.377778 5.12-23.893333 2.275556-36.408888-0.568889-1.137778 0.568889-2.844444 1.706666-2.844445 1.137778-0.568889 2.275556 0.568889 2.844445 1.706667 2.844444 13.084444 2.275556 26.737778-2.844445 39.253333z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33799"
|
||||
/><path
|
||||
d="M69.404444 548.408889c1.137778 0 2.275556 1.137778 2.275556 2.275555s-1.137778 2.275556-2.275556 2.275556c-3.413333 0-6.826667 0.568889-10.808888 1.706667l-10.24 3.413333c-1.137778 0.568889-2.275556 0-2.844445-1.137778-0.568889-1.137778 0-2.844444 1.137778-3.413333 3.413333-1.706667 7.395556-2.844444 10.808889-3.982222 4.551111 0 8.533333-0.568889 11.946666-1.137778z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33800"
|
||||
/><path
|
||||
d="M57.457778 539.875556c-0.568889-1.137778-0.568889-2.844444 0.568889-3.413334 1.137778-0.568889 2.275556-0.568889 3.413333 0.568889 2.844444 4.551111 6.257778 8.533333 10.24 11.946667 1.137778 1.137778 1.137778 2.275556 0 3.413333-0.568889 1.137778-2.275556 1.137778-3.413333 0-3.982222-3.413333-7.964444-7.395556-10.808889-12.515555zM36.977778 566.044444z m0 0c-0.568889 0.568889-0.568889 1.706667 0 2.275556 1.137778 1.137778 1.137778 2.275556 0 3.413333s-2.275556 1.137778-3.413334 0c-2.275556-2.275556-2.844444-6.257778-0.568888-9.102222l0.568888-0.568889c1.706667-1.706667 3.982222-2.844444 6.257778-3.982222l6.826667-3.413333c1.137778-0.568889 2.275556 0 2.844444 1.137777s0 2.844444-1.137777 3.413334c-2.275556 1.137778-3.982222 2.275556-6.257778 3.413333-1.137778 0.568889-2.844444 1.706667-5.12 3.413333 0.568889 0 0.568889 0 0 0 0.568889 0 0.568889 0 0 0z m0 0c0.568889 0 0.568889 0 0 0z m-2.275556-3.982222z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33801"
|
||||
/><path
|
||||
d="M39.253333 568.32c2.844444-3.982222 5.12-7.964444 6.257778-12.515556 0.568889-1.137778 1.706667-1.706667 2.844445-1.137777 1.137778 0.568889 1.706667 1.706667 1.137777 2.844444-1.706667 4.551111-3.982222 9.102222-6.826666 13.084445v-0.568889 0.568889s0 0.568889-0.568889 0.568888c-2.275556 2.844444-6.257778 2.844444-8.533334 0.568889-1.137778-1.137778-1.137778-2.275556 0-3.413333 1.137778-1.137778 2.275556-1.137778 3.413334 0 0.568889 0.568889 1.706667 0.568889 2.275555 0z m0.568889 0z m3.413334 2.275556v-0.568889c0.568889 0.568889 0 0.568889 0 0.568889z m0 0.568888z m0 0l-1.706667-1.706666 1.706667 1.706666z m0-0.568888zM84.764444 556.942222c1.137778-1.137778 2.275556-1.137778 3.413334 0 1.137778 1.137778 1.137778 2.275556 0 3.413334-1.706667 2.275556-5.12 2.844444-7.395556 1.137777-4.551111-2.275556-8.533333-5.12-12.515555-8.533333-1.137778-1.137778-1.137778-2.275556 0-3.413333 0.568889-1.137778 2.275556-1.137778 3.413333 0 3.413333 2.844444 7.395556 5.688889 11.377778 7.964444 0 0 1.137778 0 1.706666-0.568889z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33802"
|
||||
/><path
|
||||
d="M69.973333 553.528889c-1.137778 0-2.275556-1.137778-2.275555-2.275556s1.137778-2.275556 2.275555-2.275555c5.12-0.568889 10.24 0 14.791111 1.137778 1.137778 0 2.275556 0.568889 2.844445 1.706666 2.275556 2.275556 2.844444 6.257778 0.568889 9.102222-1.137778 1.137778-2.275556 1.137778-3.413334 0-1.137778-1.137778-1.137778-2.275556 0-3.413333 0.568889-0.568889 0.568889-1.706667 0-2.275555l-0.568888-0.568889c-5.12-1.137778-9.671111-1.706667-14.222223-1.137778z"
|
||||
fill="#FFFFFF"
|
||||
p-id="33803"
|
||||
/><path
|
||||
d="M460.8 409.6h73.955556c12.515556 0 22.755556 10.24 22.755555 22.755556v73.955555c0 12.515556-10.24 22.755556-22.755555 22.755556H460.8c-12.515556 0-22.755556-10.24-22.755556-22.755556V432.355556c0-12.515556 10.24-22.755556 22.755556-22.755556z"
|
||||
fill="#4598F0"
|
||||
p-id="33804"
|
||||
/><path
|
||||
d="M498.346667 454.542222c1.137778 0 2.275556-1.137778 2.275555-2.275555v-3.413334c0-1.137778-1.137778-2.275556-2.275555-2.275555s-2.275556 1.137778-2.275556 2.275555v3.413334c0 1.137778 1.137778 2.275556 2.275556 2.275555M498.346667 465.351111c1.137778 0 2.275556-1.137778 2.275555-2.275555v-3.413334c0-1.137778-1.137778-2.275556-2.275555-2.275555s-2.275556 1.137778-2.275556 2.275555v3.413334c0 1.137778 1.137778 2.275556 2.275556 2.275555M498.346667 476.728889c1.137778 0 2.275556-1.137778 2.275555-2.275556v-3.413333c0-1.137778-1.137778-2.275556-2.275555-2.275556s-2.275556 1.137778-2.275556 2.275556v3.413333c0 1.137778 1.137778 2.275556 2.275556 2.275556M508.017778 485.831111H489.244444c-1.137778 0-2.275556-1.137778-2.275555-2.275555s1.137778-2.275556 2.275555-2.275556h18.773334c1.137778 0 2.275556 1.137778 2.275555 2.275556s-1.137778 2.275556-2.275555 2.275555"
|
||||
fill="#FFFFFF"
|
||||
p-id="33805"
|
||||
/><path
|
||||
d="M510.293333 483.555556v2.844444c0 3.413333-1.137778 6.257778-3.413333 7.964444-2.275556 2.275556-5.12 3.413333-8.533333 3.413334-6.826667 0-11.946667-5.12-11.946667-11.377778V483.555556v-0.568889c0.568889-0.568889 1.137778-1.137778 2.275556-1.137778s2.275556 1.137778 2.275555 2.275555v2.844445c0 3.982222 3.413333 6.826667 7.395556 6.826667 3.982222 0 7.395556-2.844444 7.395555-6.826667V483.555556c0-1.137778 1.137778-2.275556 2.275556-2.275556s1.706667 0.568889 2.275555 1.137778v1.137778c0-0.568889 0-0.568889 0 0"
|
||||
fill="#FFFFFF"
|
||||
p-id="33806"
|
||||
/><path
|
||||
d="M490.951111 483.555556c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555v-0.568889c0.568889-0.568889 1.137778-1.137778 2.275556-1.137778 1.706667-1.137778 2.275556 0 2.275555 1.706667"
|
||||
fill="#FFFFFF"
|
||||
p-id="33807"
|
||||
/><path
|
||||
d="M510.293333 483.555556c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555 1.137778-2.275556 2.275556-2.275556 1.706667 0.568889 2.275555 1.137778v1.137778c0-0.568889 0-0.568889 0 0"
|
||||
fill="#FFFFFF"
|
||||
p-id="33808"
|
||||
/><path
|
||||
d="M341.333333 136.533333h73.955556c12.515556 0 22.755556 10.24 22.755555 22.755556v73.955555c0 12.515556-10.24 22.755556-22.755555 22.755556H341.333333c-12.515556 0-22.755556-10.24-22.755555-22.755556V159.288889c0-12.515556 10.24-22.755556 22.755555-22.755556z"
|
||||
fill="#4598F0"
|
||||
p-id="33809"
|
||||
/><path
|
||||
d="M349.866667 197.404444c0-1.137778 1.137778-2.275556 2.275555-2.275555h49.493334c1.137778 0 2.275556 1.137778 2.275555 2.275555s-1.137778 2.275556-2.275555 2.275556h-49.493334c-1.137778 0-2.275556-1.137778-2.275555-2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33810"
|
||||
/><path
|
||||
d="M349.866667 219.022222c0-1.137778 1.137778-2.275556 2.275555-2.275555h49.493334c1.137778 0 2.275556 1.137778 2.275555 2.275555s-1.137778 2.275556-2.275555 2.275556h-49.493334c-1.137778 0-2.275556-1.137778-2.275555-2.275556"
|
||||
fill="#FFFFFF"
|
||||
p-id="33811"
|
||||
/><path
|
||||
d="M387.413333 175.786667c0-1.137778-1.137778-2.275556-2.275555-2.275556h-22.755556c-1.137778 0-2.275556 1.137778-2.275555 2.275556s1.137778 2.275556 2.275555 2.275555h22.755556c1.137778 0.568889 2.275556-0.568889 2.275555-2.275555M354.986667 175.786667c0-1.137778-1.137778-2.275556-2.275556-2.275556s-2.275556 1.137778-2.275555 2.275556 1.137778 2.275556 2.275555 2.275555c1.137778 0.568889 2.275556-0.568889 2.275556-2.275555"
|
||||
fill="#FFFFFF"
|
||||
p-id="33812"
|
||||
/><path
|
||||
d="M153.6 676.977778h73.955556c12.515556 0 22.755556 10.24 22.755555 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755555 22.755555H153.6c-12.515556 0-22.755556-10.24-22.755556-22.755555v-73.955556c0-12.515556 10.24-22.755556 22.755556-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33813"
|
||||
/><path
|
||||
d="M178.062222 714.524444v50.062223c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555v-50.062223c0-1.137778 1.137778-2.275556 2.275556-2.275555 0.568889 0 1.137778 0 1.706666 0.568889 0.568889 0 0.568889 0.568889 0.568889 1.706666"
|
||||
fill="#FFFFFF"
|
||||
p-id="33814"
|
||||
/><path
|
||||
d="M209.351111 729.884444c0 9.671111-7.964444 18.204444-18.204444 18.204445-3.413333 0-6.257778-1.137778-9.102223-2.275556-0.568889-0.568889-1.137778-1.137778-1.137777-1.706666 0-1.137778 1.137778-2.275556 2.275555-2.275556h1.137778c1.706667 1.137778 4.551111 1.706667 6.826667 1.706667 7.395556 0 13.084444-5.688889 13.084444-13.084445 0-7.395556-5.688889-13.084444-13.084444-13.084444s-13.084444 5.688889-13.084445 13.084444v11.946667c-2.844444-3.413333-4.551111-7.395556-4.551111-11.946667s1.706667-9.102222 4.551111-11.946666c3.413333-3.413333 7.964444-5.688889 13.084445-5.688889 10.24-1.137778 18.204444 7.395556 18.204444 17.066666"
|
||||
fill="#FFFFFF"
|
||||
p-id="33815"
|
||||
/><path
|
||||
d="M185.457778 743.537778c0 1.137778-1.137778 2.275556-2.275556 2.275555H182.044444c-0.568889-0.568889-1.137778-1.137778-1.137777-1.706666 0-1.137778 1.137778-2.275556 2.275555-2.275556h1.137778c1.137778 0 1.137778 0.568889 1.137778 1.706667"
|
||||
fill="#FFFFFF"
|
||||
p-id="33816"
|
||||
/><path
|
||||
d="M238.933333 375.466667h73.955556c12.515556 0 22.755556 10.24 22.755555 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755555 22.755555H238.933333c-12.515556 0-22.755556-10.24-22.755555-22.755555V398.222222c0-12.515556 10.24-22.755556 22.755555-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33817"
|
||||
/><path
|
||||
d="M250.311111 417.564444c-1.137778 0.568889-2.844444-0.568889-2.844444-1.706666-0.568889-1.137778 0.568889-2.275556 1.706666-2.844445 1.137778-0.568889 2.844444 0.568889 2.844445 1.706667 0.568889 1.706667-0.568889 2.844444-1.706667 2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33818"
|
||||
/><path
|
||||
d="M286.72 463.644444c1.137778 0.568889 2.844444-0.568889 2.844444-1.706666l12.515556-45.511111c0.568889-1.137778-0.568889-2.275556-1.706667-2.844445-1.137778-0.568889-2.844444 0.568889-2.844444 1.706667l-12.515556 45.511111c-0.568889 1.137778 0.568889 2.275556 1.706667 2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33819"
|
||||
/><path
|
||||
d="M261.688889 463.644444c1.137778 0.568889 2.844444-0.568889 2.844444-1.706666l12.515556-45.511111c0.568889-1.137778-0.568889-2.275556-1.706667-2.844445-1.137778-0.568889-2.844444 0.568889-2.844444 1.706667l-12.515556 45.511111c-0.568889 1.137778 0.568889 2.275556 1.706667 2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33820"
|
||||
/><path
|
||||
d="M287.857778 463.644444c-1.137778 0.568889-2.844444-0.568889-2.844445-1.706666l-12.515555-45.511111c-0.568889-1.137778 0.568889-2.275556 1.706666-2.844445 1.137778-0.568889 2.844444 0.568889 2.844445 1.706667l12.515555 45.511111c0.568889 1.137778-0.568889 2.275556-1.706666 2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33821"
|
||||
/><path
|
||||
d="M262.826667 463.644444c-1.137778 0.568889-2.844444-0.568889-2.844445-1.706666l-10.24-36.977778c-0.568889-1.137778 0.568889-2.275556 1.706667-2.844444 1.137778-0.568889 2.844444 0.568889 2.844444 1.706666l10.24 36.977778c0.568889 1.137778-0.568889 2.275556-1.706666 2.844444"
|
||||
fill="#FFFFFF"
|
||||
p-id="33822"
|
||||
/><path
|
||||
d="M739.555556 45.511111h73.955555c12.515556 0 22.755556 10.24 22.755556 22.755556v73.955555c0 12.515556-10.24 22.755556-22.755556 22.755556h-73.955555c-12.515556 0-22.755556-10.24-22.755556-22.755556V68.266667c0-12.515556 10.24-22.755556 22.755556-22.755556z"
|
||||
fill="#4598F0"
|
||||
p-id="33823"
|
||||
/><path
|
||||
d="M754.346667 131.413333c-1.137778-1.137778-1.137778-2.275556 0-3.413333l44.373333-43.804444c1.137778-1.137778 2.275556-1.137778 3.413333 0 1.137778 1.137778 1.137778 2.275556 0 3.413333l-44.373333 43.804444c-0.568889 0.568889-2.275556 0.568889-3.413333 0"
|
||||
fill="#FFFFFF"
|
||||
p-id="33824"
|
||||
/><path
|
||||
d="M802.133333 131.413333c1.137778-1.137778 1.137778-2.275556 0-3.413333l-22.186666-22.186667c-1.137778-1.137778-2.275556-1.137778-3.413334 0-1.137778 1.137778-1.137778 2.275556 0 3.413334l22.186667 22.186666c1.137778 0.568889 2.844444 0.568889 3.413333 0"
|
||||
fill="#FFFFFF"
|
||||
p-id="33825"
|
||||
/><path
|
||||
d="M774.257778 102.968889c1.137778-1.137778 1.137778-2.275556 0-3.413333l-15.928889-15.928889c-1.137778-1.137778-2.275556-1.137778-3.413333 0-1.137778 1.137778-1.137778 2.275556 0 3.413333l15.928888 15.928889c0.568889 1.137778 2.275556 1.137778 3.413334 0"
|
||||
fill="#FFFFFF"
|
||||
p-id="33826"
|
||||
/><path
|
||||
d="M927.288889 375.466667h73.955555c12.515556 0 22.755556 10.24 22.755556 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755556 22.755555h-73.955555c-12.515556 0-22.755556-10.24-22.755556-22.755555V398.222222c0-12.515556 10.24-22.755556 22.755556-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33827"
|
||||
/><path
|
||||
d="M943.786667 409.6h41.528889c1.137778 0 2.275556 1.137778 2.275555 2.275556s-1.137778 2.275556-2.275555 2.275555h-41.528889c-1.137778 0-2.275556-1.137778-2.275556-2.275555s1.137778-2.275556 2.275556-2.275556z"
|
||||
fill="#FFFFFF"
|
||||
fill-opacity=".8"
|
||||
p-id="33828"
|
||||
/><path
|
||||
d="M946.631111 411.875556v49.493333c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555v-49.493333c0-1.137778 1.137778-2.275556 2.275556-2.275556s2.275556 1.137778 2.275555 2.275556zM987.591111 411.875556v34.133333c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555v-34.133333c0-1.137778 1.137778-2.275556 2.275556-2.275556s2.275556 1.137778 2.275555 2.275556z"
|
||||
fill="#FFFFFF"
|
||||
fill-opacity=".8"
|
||||
p-id="33829"
|
||||
/><path
|
||||
d="M943.786667 459.662222h15.36c1.137778 0 2.275556 1.137778 2.275555 2.275556s-1.137778 2.275556-2.275555 2.275555h-15.36c-1.137778 0-2.275556-1.137778-2.275556-2.275555s1.137778-2.275556 2.275556-2.275556zM955.733333 421.546667h15.36c1.137778 0 2.275556 1.137778 2.275556 2.275555s-1.137778 2.275556-2.275556 2.275556H955.733333c-1.137778 0-2.275556-1.137778-2.275555-2.275556s1.137778-2.275556 2.275555-2.275555zM955.733333 431.786667h15.36c1.137778 0 2.275556 1.137778 2.275556 2.275555s-1.137778 2.275556-2.275556 2.275556H955.733333c-1.137778 0-2.275556-1.137778-2.275555-2.275556s1.137778-2.275556 2.275555-2.275555zM968.248889 460.231111l15.36-15.36c1.137778-1.137778 2.275556-1.137778 3.413333 0 1.137778 1.137778 1.137778 2.275556 0 3.413333l-15.36 15.36c-1.137778 1.137778-2.275556 1.137778-3.413333 0-1.137778-1.137778-1.137778-2.844444 0-3.413333z"
|
||||
fill="#FFFFFF"
|
||||
fill-opacity=".8"
|
||||
p-id="33830"
|
||||
/><path
|
||||
d="M969.386667 443.733333h15.36c1.137778 0 2.275556 1.137778 2.275555 2.275556s-1.137778 2.275556-2.275555 2.275555h-15.36c-1.137778 0-2.275556-1.137778-2.275556-2.275555s1.137778-2.275556 2.275556-2.275556z"
|
||||
fill="#FFFFFF"
|
||||
fill-opacity=".8"
|
||||
p-id="33831"
|
||||
/><path
|
||||
d="M972.231111 446.008889v15.36c0 1.137778-1.137778 2.275556-2.275555 2.275555s-2.275556-1.137778-2.275556-2.275555v-15.36c0-1.137778 1.137778-2.275556 2.275556-2.275556s2.275556 1.137778 2.275555 2.275556z"
|
||||
fill="#FFFFFF"
|
||||
fill-opacity=".8"
|
||||
p-id="33832"
|
||||
/><path
|
||||
d="M585.955556 216.177778h73.955555c12.515556 0 22.755556 10.24 22.755556 22.755555v73.955556c0 12.515556-10.24 22.755556-22.755556 22.755555h-73.955555c-12.515556 0-22.755556-10.24-22.755556-22.755555V238.933333c0-12.515556 10.24-22.755556 22.755556-22.755555z"
|
||||
fill="#4598F0"
|
||||
p-id="33833"
|
||||
/><path
|
||||
d="M593.351111 267.946667V284.444444c0 4.551111 3.982222 8.533333 8.533333 8.533334h26.737778c4.551111 0 8.533333-3.982222 8.533334-8.533334v-16.497777c0-4.551111-3.982222-8.533333-8.533334-8.533334h-26.737778c-4.551111 0-8.533333 3.982222-8.533333 8.533334zM652.515556 267.946667c2.275556-1.706667 4.551111-1.137778 4.551111 2.275555v11.946667c0 3.413333-2.275556 3.982222-4.551111 2.275555l-6.257778-4.551111c-2.275556-1.706667-2.275556-5.12 0-6.826666l6.257778-5.12z"
|
||||
fill="#4598F0"
|
||||
p-id="33834"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 21 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses ? overrideClasses : 'w-4 h-4 text-gray-500';
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0l3.181 3.183a8.25 8.25 0 0013.803-3.7M4.031 9.865a8.25 8.25 0 0113.803-3.7l3.181 3.182m0-4.991v4.99"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,33 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
width="45"
|
||||
height="45"
|
||||
viewBox="0 0 48 48"
|
||||
fill="none"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<g clip-path="url(#clip0_16_93)">
|
||||
<rect x="0.5" y="0.238312" width="47" height="47" fill="#0068B5" />
|
||||
<path
|
||||
d="M39.51 0.238312H8.49C4.0955 0.238312 0.5 3.83381 0.5 8.22831V39.2483C0.5 43.6428 4.0955 47.2383 8.49 47.2383H39.51C43.9045 47.2383 47.5 43.6428 47.5 39.2483V8.22831C47.5 3.83381 43.9045 0.238312 39.51 0.238312ZM44.915 39.2483C44.915 42.2328 42.4945 44.6533 39.51 44.6533H8.49C5.5055 44.6533 3.085 42.2328 3.085 39.2483V8.22831C3.085 5.24381 5.5055 2.82331 8.49 2.82331H39.51C42.4945 2.82331 44.915 5.24381 44.915 8.22831V39.2483Z"
|
||||
fill="#0068B5"
|
||||
/>
|
||||
<path
|
||||
d="M9.52393 21.3178H11.7094L11.7094 29.3548H9.52393V21.3178ZM20.3574 22.2108C20.1694 21.9523 19.8874 21.7408 19.4879 21.5763C19.1119 21.4118 18.6889 21.3178 18.2424 21.3178C17.2084 21.3178 16.3389 21.7643 15.6574 22.6338V21.4823H13.7304V29.3078H15.7984V25.7593C15.7984 24.8898 15.8454 24.2788 15.9629 23.9498C16.0569 23.6208 16.2684 23.3623 16.5504 23.1743C16.8324 22.9863 17.1614 22.8688 17.5139 22.8688C17.7959 22.8688 18.0309 22.9393 18.2424 23.0803C18.4304 23.2213 18.5949 23.4093 18.6654 23.6678C18.7594 23.9263 18.8064 24.4668 18.8064 25.3128V29.3078H20.8744V24.4433C20.8744 23.8323 20.8274 23.3858 20.7569 23.0568C20.6864 22.7513 20.5689 22.4693 20.3574 22.2108ZM25.7389 27.8038C25.5979 27.8038 25.4804 27.7803 25.3864 27.7098C25.2924 27.6393 25.2219 27.5453 25.1984 27.4513C25.1749 27.3573 25.1514 26.9813 25.1514 26.3233V23.1508H26.5614V21.5058H25.1514V18.7563L23.0834 19.9548V21.5058V23.1508V26.5583C23.0834 27.2868 23.1069 27.7803 23.1539 28.0153C23.2009 28.3443 23.2949 28.6263 23.4359 28.8143C23.5769 29.0023 23.7884 29.1668 24.0939 29.3078C24.3994 29.4253 24.7284 29.4958 25.1044 29.4958C25.7154 29.4958 26.2559 29.4018 26.7494 29.1903L26.5614 27.5923C26.2089 27.7333 25.9269 27.8038 25.7389 27.8038ZM33.7524 22.4928C33.0709 21.7173 32.1544 21.3413 31.0029 21.3413C29.9689 21.3413 29.0994 21.7173 28.4414 22.4458C27.7599 23.1743 27.4309 24.1848 27.4309 25.5008C27.4309 26.5818 27.6894 27.4748 28.2064 28.2033C28.8644 29.0963 29.8749 29.5428 31.2379 29.5428C32.1074 29.5428 32.8124 29.3548 33.3764 28.9553C33.9404 28.5558 34.3634 27.9918 34.6219 27.2163L32.5539 26.8638C32.4364 27.2633 32.2719 27.5453 32.0604 27.7098C31.8489 27.8743 31.5669 27.9683 31.2379 27.9683C30.7679 27.9683 30.3684 27.8038 30.0394 27.4513C29.7104 27.0988 29.5459 26.6288 29.5459 26.0178H34.7394C34.7394 24.4433 34.4339 23.2448 33.7524 22.4928ZM29.5694 24.7488C29.5694 24.1848 29.7104 23.7383 29.9924 23.4093C30.2979 23.0803 30.6504 22.9158 31.1204 22.9158C31.5434 22.9158 31.8959 23.0803 32.2014 23.3858C32.5069 23.6913 32.6479 24.1613 32.6714 24.7488H29.5694ZM36.4079 18.5448H38.4759V29.3548H36.4079V18.5448Z"
|
||||
fill="white"
|
||||
/>
|
||||
<path
|
||||
d="M9.52393 18.5448H11.7094L11.7094 20.5654H9.52393V18.5448ZM39.2058 53.1889C59.7131 70.5741 37.9465 53.1367 37.547 52.9722C60.5267 71.228 41.5876 53.1889 41.1411 53.1889C40.1071 53.1889 54.2638 57.2959 53.5823 58.1654L44.3775 54.0099L42.8 56.0803L44.9335 56.0763L43.617 55.1029L49.2888 57.4321C49.2888 56.5626 69.0838 68.5409 41.665 52.9722C67.9574 69.2353 48.7539 58.3534 49.0359 58.1654C49.3179 57.9774 72.2331 77.3305 48.0529 59.0448C73.8431 77.373 40.6532 52.2185 40.8647 52.3595C64.5928 69.3279 66.2469 69.734 44.0477 53.3531C68.4587 70.8049 45.1808 54.42 45.1808 55.266L49.6436 57.6191L50.8176 56.2254L46.645 54.7317C46.645 54.1207 47.0599 55.184 46.9894 54.855C46.9189 54.5495 63.0924 72.6928 39.2058 53.1889ZM45.3834 56.0442C45.2424 56.0442 60.49 64.1373 43.0764 53.1889C59.6606 67.1938 58.0346 62.1756 40.8647 50.7007C58.8678 64.6804 43.7296 53.3942 43.7296 52.7362L43.617 55.1029L43.3529 52.3595L44.7353 53.7418L43.0764 53.1889L44.244 54.855L46.1176 55.6771L42.8 57.336L45.5647 53.1889L41.9705 49.5948L46.1176 55.1029L46.3941 55.6771C46.3941 56.4056 44.3403 54.3363 44.3873 54.5713C65.2775 66.4664 68.0297 70.4029 45.348 56.6803C69.965 73.7705 43.9793 55.5361 44.2848 55.6771C44.5903 55.7946 60.4832 66.2088 41.9705 53.7418C42.5815 53.7418 44.8545 53.1837 45.348 52.9722L43.7511 52.3595C43.3986 52.5005 45.5714 56.0442 45.3834 56.0442ZM44.0342 56.5108C43.3527 55.7353 45.3338 56.783 44.1823 56.783C43.1483 56.783 44.9043 55.6048 44.2463 56.3333C43.5648 57.0618 43.7511 51.0435 43.7511 52.3595C43.7511 53.4405 43.6653 53.0133 44.1823 53.7418C44.8403 54.6348 41.7134 54.2598 43.0764 54.2598C43.9459 54.2598 43.4702 56.9103 44.0342 56.5108C44.5982 56.1113 44.1288 57.5428 44.3873 56.7673L43.7511 56.2254C55.3795 71.8986 44.3938 54.9384 44.1823 55.1029C43.9708 55.2674 44.0801 54.2598 43.7511 54.2598C56.2643 69.3767 58.4567 71.4935 44.1823 55.1029C57.894 68.7712 44.3873 57.3783 44.3873 56.7673L44.1823 56.945C44.1823 55.3705 44.7157 57.2628 44.0342 56.5108ZM44.3873 54.5713C44.3873 54.0073 43.7522 56.8398 44.0342 56.5108C44.3397 56.1818 43.495 56.2254 43.965 56.2254C44.388 56.2254 55.4258 75.7185 43.7511 56.2254C44.0566 56.5309 44.1588 56.1955 44.1823 56.783L44.3873 54.5713Z"
|
||||
fill="#00C7FD"
|
||||
/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_16_93">
|
||||
<rect x="0.5" y="0.238312" width="47" height="47" fill="white" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 5.1 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses ? overrideClasses : `w-6 h-6`;
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M2.25 12.76c0 1.6 1.123 2.994 2.707 3.227 1.087.16 2.185.283 3.293.369V21l4.076-4.076a1.526 1.526 0 011.037-.443 48.282 48.282 0 005.68-.494c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0012 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018z"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,6 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg class="w-6 h-6" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" fill="#797a9f"><path d="M512 64c259.2 0 469.333333 200.576 469.333333 448s-210.133333 448-469.333333 448a484.48 484.48 0 0 1-232.725333-58.88l-116.394667 50.645333a42.666667 42.666667 0 0 1-58.517333-49.002666l29.76-125.013334C76.629333 703.402667 42.666667 611.477333 42.666667 512 42.666667 264.576 252.8 64 512 64z m0 64C287.488 128 106.666667 300.586667 106.666667 512c0 79.573333 25.557333 155.434667 72.554666 219.285333l5.525334 7.317334 18.709333 24.192-26.965333 113.237333 105.984-46.08 27.477333 15.018667C370.858667 878.229333 439.978667 896 512 896c224.512 0 405.333333-172.586667 405.333333-384S736.512 128 512 128z m-157.696 341.333333a42.666667 42.666667 0 1 1 0 85.333334 42.666667 42.666667 0 0 1 0-85.333334z m159.018667 0a42.666667 42.666667 0 1 1 0 85.333334 42.666667 42.666667 0 0 1 0-85.333334z m158.997333 0a42.666667 42.666667 0 1 1 0 85.333334 42.666667 42.666667 0 0 1 0-85.333334z"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses ? overrideClasses : `w-6 h-6`;
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M4.5 12.75l6 6 9-13.5"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,12 +0,0 @@
|
||||
<svg height="64" viewBox="0 0 56 64" width="56" xmlns="http://www.w3.org/2000/svg">
|
||||
<path clip-rule="evenodd"
|
||||
d="m5.106 0c-2.802 0-5.073 2.272-5.073 5.074v53.841c0 2.803 2.271 5.074 5.073 5.074h45.774c2.801 0 5.074-2.271 5.074-5.074v-38.605l-18.903-20.31h-31.945z"
|
||||
fill="#45b058" fill-rule="evenodd" />
|
||||
<path
|
||||
d="m20.306 43.197c.126.144.198.324.198.522 0 .378-.306.72-.703.72-.18 0-.378-.072-.504-.234-.702-.846-1.891-1.387-3.007-1.387-2.629 0-4.627 2.017-4.627 4.88 0 2.845 1.999 4.879 4.627 4.879 1.134 0 2.25-.486 3.007-1.369.125-.144.324-.233.504-.233.415 0 .703.359.703.738 0 .18-.072.36-.198.504-.937.972-2.215 1.693-4.015 1.693-3.457 0-6.176-2.521-6.176-6.212s2.719-6.212 6.176-6.212c1.8.001 3.096.721 4.015 1.711zm6.802 10.714c-1.782 0-3.187-.594-4.213-1.495-.162-.144-.234-.342-.234-.54 0-.361.27-.757.702-.757.144 0 .306.036.432.144.828.739 1.98 1.314 3.367 1.314 2.143 0 2.827-1.152 2.827-2.071 0-3.097-7.112-1.386-7.112-5.672 0-1.98 1.764-3.331 4.123-3.331 1.548 0 2.881.467 3.853 1.278.162.144.252.342.252.54 0 .36-.306.72-.703.72-.144 0-.306-.054-.432-.162-.882-.72-1.98-1.044-3.079-1.044-1.44 0-2.467.774-2.467 1.909 0 2.701 7.112 1.152 7.112 5.636.001 1.748-1.187 3.531-4.428 3.531zm16.994-11.254-4.159 10.335c-.198.486-.685.81-1.188.81h-.036c-.522 0-1.008-.324-1.207-.81l-4.142-10.335c-.036-.09-.054-.18-.054-.288 0-.36.323-.793.81-.793.306 0 .594.18.72.486l3.889 9.992 3.889-9.992c.108-.288.396-.486.72-.486.468 0 .81.378.81.793.001.09-.017.198-.052.288z"
|
||||
fill="#fff" />
|
||||
<g clip-rule="evenodd" fill-rule="evenodd">
|
||||
<path d="m56.001 20.357v1h-12.8s-6.312-1.26-6.128-6.707c0 0 .208 5.707 6.003 5.707z" fill="#349c42" />
|
||||
<path d="m37.098.006v14.561c0 1.656 1.104 5.791 6.104 5.791h12.8l-18.904-20.352z" fill="#fff" opacity=".5" />
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -1,28 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699532005309"
|
||||
class="icon rotate-180"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="31791"
|
||||
width="1rem"
|
||||
height="1rem"
|
||||
><path
|
||||
d="M505.088 513.1264m-450.816 0a450.816 450.816 0 1 0 901.632 0 450.816 450.816 0 1 0-901.632 0Z"
|
||||
fill="#b8b8b8"
|
||||
p-id="31792"
|
||||
data-spm-anchor-id="a313x.search_index.0.i28.33343a81AAN1qI"
|
||||
class="selected"
|
||||
/><path
|
||||
d="M356.6592 575.0784c0-54.5792 0.3584-109.1584-0.2048-163.6864-0.1536-15.872 5.5296-24.2176 20.992-29.5424 58.88-20.2752 93.7472-63.1296 110.848-121.9072 5.9392-20.4288 11.4176-41.216 19.7632-60.672 13.4656-31.5904 38.2464-42.7008 72.6528-35.328 26.5216 5.6832 43.3152 28.3648 43.5712 60.16 0.3584 40.4992 0.0512 80.9984 0.1536 121.4976 0.0512 22.2208 3.9424 26.7264 26.5728 26.9824 45.568 0.512 91.1872 1.536 136.704-0.256 40.5504-1.5872 69.9392 24.832 59.7504 69.9904-12.2368 54.0672-27.648 107.4688-42.7008 160.8704-9.2672 32.9216-20.1728 65.4336-30.8736 97.9456-14.1312 43.008-40.448 62.0544-84.8896 62.0544H390.2976c-32.1024 0-33.6384-1.536-33.6384-32.8704v-155.2384zM307.8656 573.9008c0 52.8896 0.1024 105.7792-0.0512 158.6688-0.1024 26.0096-4.9152 30.6176-30.3616 30.6688-7.3216 0-14.6432 0.0512-21.9648 0-29.8496-0.1536-44.032-14.08-44.2368-44.6976-0.3072-55.1424-0.1024-110.2848-0.1024-165.4272 0-40.4992-0.1536-81.0496 0.0512-121.5488 0.2048-32.2048 15.7696-47.616 47.5136-47.7184 49.1008-0.2048 49.152-0.2048 49.152 48.2304 0.0512 47.2576 0.0512 94.5152 0 141.824z"
|
||||
fill="#ffffff"
|
||||
p-id="31793"
|
||||
data-spm-anchor-id="a313x.search_index.0.i26.33343a81AAN1qI"
|
||||
class=""
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -1,16 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
height="1em"
|
||||
><path
|
||||
d="M576 64c0-35.4-28.6-64-64-64s-64 28.6-64 64v485.4l-146.8-146.8c-25-25-65.6-25-90.6 0s-25 65.6 0 90.6l256 256c25 25 65.6 25 90.6 0l256-256c25-25 25-65.6 0-90.6s-65.6-25-90.6 0L576 549.4V64zM128 704c-70.6 0-128 57.4-128 128v64c0 70.6 57.4 128 128 128h768c70.6 0 128-57.4 128-128v-64c0-70.6-57.4-128-128-128H693l-90.6 90.6c-50 50-131 50-181 0L331 704H128z m736 112a48 48 0 1 1 0 96 48 48 0 1 1 0-96z"
|
||||
fill="white"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 633 B |
@@ -1,24 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699531880178"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="26552"
|
||||
width="1rem"
|
||||
height="1rem"
|
||||
><path
|
||||
d="M505.088 513.1264m-450.816 0a450.816 450.816 0 1 0 901.632 0 450.816 450.816 0 1 0-901.632 0Z"
|
||||
fill="#b8b8b8"
|
||||
p-id="26553"
|
||||
/><path
|
||||
d="M356.6592 575.0784c0-54.5792 0.3584-109.1584-0.2048-163.6864-0.1536-15.872 5.5296-24.2176 20.992-29.5424 58.88-20.2752 93.7472-63.1296 110.848-121.9072 5.9392-20.4288 11.4176-41.216 19.7632-60.672 13.4656-31.5904 38.2464-42.7008 72.6528-35.328 26.5216 5.6832 43.3152 28.3648 43.5712 60.16 0.3584 40.4992 0.0512 80.9984 0.1536 121.4976 0.0512 22.2208 3.9424 26.7264 26.5728 26.9824 45.568 0.512 91.1872 1.536 136.704-0.256 40.5504-1.5872 69.9392 24.832 59.7504 69.9904-12.2368 54.0672-27.648 107.4688-42.7008 160.8704-9.2672 32.9216-20.1728 65.4336-30.8736 97.9456-14.1312 43.008-40.448 62.0544-84.8896 62.0544H390.2976c-32.1024 0-33.6384-1.536-33.6384-32.8704v-155.2384zM307.8656 573.9008c0 52.8896 0.1024 105.7792-0.0512 158.6688-0.1024 26.0096-4.9152 30.6176-30.3616 30.6688-7.3216 0-14.6432 0.0512-21.9648 0-29.8496-0.1536-44.032-14.08-44.2368-44.6976-0.3072-55.1424-0.1024-110.2848-0.1024-165.4272 0-40.4992-0.1536-81.0496 0.0512-121.5488 0.2048-32.2048 15.7696-47.616 47.5136-47.7184 49.1008-0.2048 49.152-0.2048 49.152 48.2304 0.0512 47.2576 0.0512 94.5152 0 141.824z"
|
||||
fill="#FFFFFF"
|
||||
p-id="26554"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
class="animate-spin -ml-1 mr-3 h-5 w-5 text-gray-500"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
>
|
||||
<circle
|
||||
class="opacity-25"
|
||||
cx="12"
|
||||
cy="12"
|
||||
r="10"
|
||||
stroke="#fff"
|
||||
stroke-width="4"
|
||||
/>
|
||||
<path
|
||||
class="opacity-75"
|
||||
fill="#fff"
|
||||
d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
|
||||
/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 514 B |
@@ -1,17 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import PersonOutlined from "$lib/assets/icons/portrait.svelte";
|
||||
import AssistantIcon from "$lib/assets/icons/assistant.svelte";
|
||||
|
||||
export let role: string;
|
||||
</script>
|
||||
|
||||
{#if role === "Assistant"}
|
||||
<AssistantIcon />
|
||||
{:else}
|
||||
<PersonOutlined />
|
||||
{/if}
|
||||
@@ -1,37 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1697618332186"
|
||||
class="w-16 h-16"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="7984"
|
||||
width="16"
|
||||
height="16"
|
||||
><path
|
||||
d="M146.285714 146.285714a97.52381 97.52381 0 0 1 97.52381-97.523809h341.333333l292.571429 292.571428v536.380953a97.52381 97.52381 0 0 1-97.52381 97.523809H243.809524a97.52381 97.52381 0 0 1-97.52381-97.523809V146.285714z"
|
||||
fill="#D1DDE5"
|
||||
p-id="7985"
|
||||
/><path
|
||||
d="M585.142857 48.761905l292.571429 292.571428h-195.047619a97.52381 97.52381 0 0 1-97.52381-97.523809V48.761905z"
|
||||
fill="#ABBBC7"
|
||||
p-id="7986"
|
||||
/><path
|
||||
d="M73.142857 609.52381m48.761905 0l365.714286 0q48.761905 0 48.761904 48.761904l0 121.904762q0 48.761905-48.761904 48.761905l-365.714286 0q-48.761905 0-48.761905-48.761905l0-121.904762q0-48.761905 48.761905-48.761904Z"
|
||||
fill="#ABBBC7"
|
||||
p-id="7987"
|
||||
/><path
|
||||
d="M162.06019 674.133333v34.572191h51.321905v22.186666H162.06019v55.637334H136.533333v-134.582857h85.430857v22.186666H162.06019zM238.640762 651.946667h25.502476v134.582857H238.665143v-134.582857zM288.353524 651.946667h25.502476v112.39619h58.953143v22.186667h-84.455619v-134.582857zM414.427429 674.133333v33.426286h51.151238v22.186667h-51.151238v34.57219h59.928381v22.186667h-85.430858V651.946667h85.430858v22.186666h-59.904z"
|
||||
fill="#FFFFFF"
|
||||
p-id="7988"
|
||||
/><path
|
||||
d="M329.142857 231.619048m-60.952381 0a60.952381 60.952381 0 1 0 121.904762 0 60.952381 60.952381 0 1 0-121.904762 0Z"
|
||||
fill="#FFFFFF"
|
||||
opacity=".6"
|
||||
p-id="7989"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
@@ -1,27 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses
|
||||
? overrideClasses
|
||||
: `w-5 h-5 text-gray-400 hover:text-gray-600`;
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M6 12L3.269 3.126A59.768 59.768 0 0121.485 12 59.77 59.77 0 013.27 20.876L5.999 12zm0 0h7.5"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,20 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1710237051171"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="4455"
|
||||
height="1.2em"
|
||||
fill="currentColor"
|
||||
><path
|
||||
d="M713.472 386.88 896 576l-192 0L704 386.88 713.472 386.88zM832 220.032l0 98.88-56 0L704 320 256 320l0 640L156.032 960C140.608 960 128 947.392 128 931.968L128 220.032C128 204.608 140.608 192 156.032 192l10.496 0 88.384 0L256 192l128 0L384 120C384 89.216 409.216 64 440 64L512 64c30.848 0 56 25.216 56 56L568 192 704 192l99.968 0C819.392 192 832 204.608 832 220.032zM512.128 120.128C512 120.064 512 120 512 120L440.128 120C440.064 120.064 440 120.128 440 120.128L440 192 512 192l0.128 0L512.128 120.128zM640 386.88 351.168 386.88C332.608 386.88 320 399.488 320 414.848l0 580.864c0 15.36 12.608 28.032 28.032 28.032l520 0c15.36 0 28.032-12.608 28.032-28.032l0-352.896-256 0L640.064 386.88zM713.472 386.88 896 576l-192 0L704 386.88 713.472 386.88z"
|
||||
fill="currentColor"
|
||||
p-id="4456"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses ? overrideClasses : `w-6 h-6`;
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M16.862 4.487l1.687-1.688a1.875 1.875 0 112.652 2.652L10.582 16.07a4.5 4.5 0 01-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 011.13-1.897l8.932-8.931zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0115.75 21H5.25A2.25 2.25 0 013 18.75V8.25A2.25 2.25 0 015.25 6H10"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,27 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses
|
||||
? overrideClasses
|
||||
: 'w-6 h-6 text-gray-500';
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M12 4.5v15m7.5-7.5h-15"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,20 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1689304948638"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="6750"
|
||||
width="20"
|
||||
height="20"
|
||||
><path
|
||||
d="M510.59375 62.703125c124.453125 0 225 99.140625 225 221.484375s-100.546875 221.484375-225 221.484375-225-99.140625-225-221.484375S386.84375 62.703125 510.59375 62.703125zM412.859375 566.140625H610.4375c169.453125 0 306.5625 111.796875 306.5625 278.4375v19.6875c0 65.390625-137.109375 97.03125-306.5625 97.03125H412.859375c-169.453125 0-306.5625-29.53125-306.5625-97.03125v-19.6875c0-166.640625 137.8125-278.4375 306.5625-278.4375z"
|
||||
p-id="6751"
|
||||
fill="#ffffff"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 726 B |
@@ -1,32 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1699516160889"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1937"
|
||||
width="14"
|
||||
height="14"
|
||||
><path
|
||||
d="M226.94 618.816L191.296 751.88l-130.278 2.756C22.084 682.422 0 599.8 0 512c0-84.902 20.648-164.966 57.248-235.464h0.028L173.26 297.8l50.808 115.288c-10.634 31.002-16.43 64.282-16.43 98.912 0.004 37.584 6.812 73.594 19.302 106.816z"
|
||||
fill="#8a8a8a"
|
||||
p-id="1938"
|
||||
/><path
|
||||
d="M1015.054 416.352C1020.934 447.324 1024 479.31 1024 512c0 36.656-3.854 72.412-11.196 106.902-24.924 117.366-90.05 219.85-180.268 292.374l-0.028-0.028-146.088-7.454-20.676-129.07c59.864-35.108 106.648-90.05 131.292-155.822h-273.78V416.352h491.798z"
|
||||
fill="#8a8a8a"
|
||||
p-id="1939"
|
||||
/><path
|
||||
d="M832.506 911.248l0.028 0.028C744.792 981.802 633.332 1024 512 1024c-194.982 0-364.504-108.982-450.982-269.362l165.922-135.82c43.238 115.396 154.556 197.542 285.06 197.542 56.094 0 108.646-15.164 153.74-41.636l166.766 136.524z"
|
||||
fill="#8a8a8a"
|
||||
p-id="1940"
|
||||
/><path
|
||||
d="M838.808 117.872l-165.866 135.792C626.272 224.492 571.104 207.64 512 207.64c-133.458 0-246.858 85.914-287.93 205.448l-166.794-136.552h-0.028C142.46 112.246 314.12 0 512 0c124.23 0 238.136 44.252 326.808 117.872z"
|
||||
fill="#8a8a8a"
|
||||
p-id="1941"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let overrideClasses = '';
|
||||
|
||||
const classes = overrideClasses ? overrideClasses : `w-6 h-6`;
|
||||
</script>
|
||||
|
||||
<svg
|
||||
class={classes}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"
|
||||
/>
|
||||
</svg>
|
||||
@@ -1,14 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
height="1em"
|
||||
viewBox="0 0 512 512"
|
||||
fill="currentColor"
|
||||
><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path
|
||||
d="M288 109.3V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3l-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352H192c0 35.3 28.7 64 64 64s64-28.7 64-64H448c35.3 0 64 28.7 64 64v32c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V416c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 782 B |
@@ -1,14 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
viewBox="0 0 384 512"
|
||||
><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path
|
||||
d="M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM216 408c0 13.3-10.7 24-24 24s-24-10.7-24-24V305.9l-31 31c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l72-72c9.4-9.4 24.6-9.4 33.9 0l72 72c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-31-31V408z"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 700 B |
@@ -1,6 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg t="1710301531249" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12383" width="64" height="64"><path d="M643.136 284.48v-199.04h-367.36c-55.936-2.368-102.912 48.448-105.088 113.728v625.664c2.176 65.28 49.152 116.096 105.088 113.728h472.448c55.936 2.368 102.912-48.448 105.088-113.728V312.96h-183.68a23.36 23.36 0 0 1-18.368-7.808 31.936 31.936 0 0 1-8.128-20.672zM661.312 640a21.312 21.312 0 1 1 0 42.688H362.688a21.312 21.312 0 0 1 0-42.688h298.624zM512 341.312l128 128H554.752l-0.064 128H469.312v-128H384l128-128z m183.68-255.872L853.12 256h-157.44V85.44z" fill="#0597ff" p-id="12384"></path></svg>
|
||||
|
Before Width: | Height: | Size: 738 B |
@@ -1,22 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1711580008180"
|
||||
class="mx-auto mb-4 text-gray-400 w-12 h-12 dark:text-gray-200"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="12731"
|
||||
><path
|
||||
d="M510.032 93.09c-229.9 0-416.94 187.924-416.94 418.91 0 230.986 187.92 418.91 418.908 418.91 230.986 0 418.91-187.924 418.91-418.91 0-230.986-188.804-418.91-420.88-418.91z"
|
||||
fill="#FE544A"
|
||||
p-id="12732"
|
||||
/><path
|
||||
d="M558.546 723.78h-93.092v-93.09h93.092zM558.546 539.928h-93.092V302.546h93.092z"
|
||||
fill="#FFFFFF"
|
||||
p-id="12733"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 620 B |
@@ -1,20 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<svg
|
||||
t="1710317007394"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="4273"
|
||||
width="32"
|
||||
height="32"
|
||||
><path
|
||||
d="M900.646 275.188H289.863a59.208 59.208 0 0 0-43.192 18.711L80.163 471.508c-21.348 22.772-21.348 58.213 0 80.985l166.508 177.609a59.208 59.208 0 0 0 43.192 18.711h610.783c32.561 0 59.203-26.642 59.203-59.203V334.391c0-32.561-26.642-59.203-59.203-59.203zM728.706 619.37c12.176 12.17 12.176 31.91 0 44.077-6.081 6.092-14.065 9.135-22.04 9.135-7.977 0-15.959-3.042-22.04-9.135l-93.683-93.683-93.683 93.683c-6.081 6.092-14.064 9.135-22.04 9.135-7.975 0-15.959-3.042-22.04-9.135-12.176-12.167-12.176-31.907 0-44.077l93.684-93.683-93.684-93.683c-12.176-12.17-12.176-31.91 0-44.081 12.163-12.174 31.918-12.174 44.081 0l93.683 93.686 93.683-93.686c12.163-12.174 31.918-12.174 44.081 0 12.176 12.17 12.176 31.911 0 44.081l-93.684 93.683 93.682 93.683z"
|
||||
p-id="4274"
|
||||
fill="#cdcdcd"
|
||||
/></svg
|
||||
>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB |
15
AgentQnA/ui/svelte/src/lib/common/sse.d.ts
vendored
@@ -1,15 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
declare module "sse.js" {
|
||||
export type SSEOptions = EventSourceInit & {
|
||||
headers?: Record<string, string>;
|
||||
payload?: string;
|
||||
method?: string;
|
||||
};
|
||||
|
||||
export class SSE extends EventSource {
|
||||
constructor(url: string | URL, sseOptions?: SSEOptions);
|
||||
stream(): void;
|
||||
}
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
export default function timeDifference(current: number, previous: number) {
|
||||
const msPerMinute = 60 * 1000;
|
||||
const msPerHour = msPerMinute * 60;
|
||||
const msPerDay = msPerHour * 24;
|
||||
const msPerMonth = msPerDay * 30;
|
||||
const msPerYear = msPerDay * 365;
|
||||
|
||||
const elapsed = current - previous;
|
||||
|
||||
if (elapsed < msPerMinute) {
|
||||
return Math.round(elapsed / 1000) + " seconds ago";
|
||||
} else if (elapsed < msPerHour) {
|
||||
return Math.round(elapsed / msPerMinute) + " minutes ago";
|
||||
} else if (elapsed < msPerDay) {
|
||||
return Math.round(elapsed / msPerHour) + " hours ago";
|
||||
} else if (elapsed < msPerMonth) {
|
||||
return "approximately " + Math.round(elapsed / msPerDay) + " days ago";
|
||||
} else if (elapsed < msPerYear) {
|
||||
return "approximately " + Math.round(elapsed / msPerMonth) + " months ago";
|
||||
} else {
|
||||
return "approximately " + Math.round(elapsed / msPerYear) + " years ago";
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<div class="mb-4 flex items-start justify-start gap-3">
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-red-500" />
|
||||
</div>
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-[#eab308]" />
|
||||
</div>
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-[#22c55e]" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,239 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let chatId = "";
|
||||
export let selectedContent = "";
|
||||
|
||||
import { onMount } from "svelte";
|
||||
|
||||
// tool
|
||||
import type { Message, Chat } from "$lib/components/shared/shared.type";
|
||||
import {
|
||||
chats$,
|
||||
netError,
|
||||
} from "$lib/components/shared/shared.store";
|
||||
import {
|
||||
upsertChat,
|
||||
scrollToBottom,
|
||||
} from "$lib/components/shared/shared-utils";
|
||||
import HOME from "$lib/components/home.svelte"; // Adjust the import path as necessary
|
||||
import CreateGoal from "$lib/components/create.svelte"; // Adjust the import path as necessary
|
||||
import LoadingAnimation from "./loadingAnimation.svelte";
|
||||
import TimeLine from "$lib/components/timeline.svelte";
|
||||
import GenerateGoal from "$lib/components/generateGoal.svelte";
|
||||
import { getNotificationsContext } from "svelte-notifications";
|
||||
import { fetchAgentExecute } from "$lib/modules/network";
|
||||
import LoadingStatic from "../agent/loadingStatic.svelte";
|
||||
import Summary from "$lib/assets/Agent/summary.svelte";
|
||||
|
||||
const { addNotification } = getNotificationsContext();
|
||||
|
||||
let query: string = "";
|
||||
let answer: string = "";
|
||||
let loading: boolean = false;
|
||||
let scrollToDiv: HTMLDivElement;
|
||||
|
||||
const chat = chatId && $chats$?.[chatId];
|
||||
let chatMessages: Message[] = (chat as Chat)?.messages?.filter(Boolean) || [];
|
||||
console.log('chatMessages', chatMessages);
|
||||
|
||||
let tool: string;
|
||||
let content: any[] = [];
|
||||
let name: string;
|
||||
let summaryList: any[] = [];
|
||||
let selectedGoalIndex: number | null = null; // Stores the selected goal index
|
||||
|
||||
let summary = (chat as Chat)?.summary || "";
|
||||
let agentName = (chat as Chat)?.agentName || "";
|
||||
let agentDescripe = (chat as Chat)?.agentDescripe || "";
|
||||
let source: any[] = [];
|
||||
let goals: any[] = [];
|
||||
let showAgent: boolean = false;
|
||||
let currentGoalIdx = 0;
|
||||
let currentTool: string = "";
|
||||
let currentGoal: string = "";
|
||||
let currentSearch: string = "";
|
||||
let currentContent: any;
|
||||
let isDrawerOpen = false;
|
||||
|
||||
onMount(async () => {
|
||||
scrollToDiv = document?.querySelector(".chat-scrollbar")!;
|
||||
console.log("scrollToDiv", scrollToDiv);
|
||||
});
|
||||
|
||||
function insertChat() {
|
||||
let title =
|
||||
chatMessages.length > 0
|
||||
? agentName !== ""
|
||||
? agentName
|
||||
: "New Agent"
|
||||
: "New Agent";
|
||||
chatId = upsertChat(
|
||||
chatId,
|
||||
chatMessages,
|
||||
title,
|
||||
agentName,
|
||||
agentDescripe,
|
||||
);
|
||||
}
|
||||
|
||||
function handleError<T>(err: T) {
|
||||
console.log("coming");
|
||||
netError.set(true);
|
||||
|
||||
loading = false;
|
||||
query = "";
|
||||
answer = "";
|
||||
}
|
||||
|
||||
function filterBase64Images(summaryList: string[]): string[] {
|
||||
const base64ImagePrefix = "iVBOR";
|
||||
|
||||
return summaryList.filter((item) => !item.startsWith(base64ImagePrefix));
|
||||
}
|
||||
|
||||
async function handleCreate(event: CustomEvent) {
|
||||
showAgent = true;
|
||||
query = event.detail;
|
||||
|
||||
agentDescripe = event.detail;
|
||||
loading = true;
|
||||
|
||||
await fetchGoals(event.detail);
|
||||
}
|
||||
|
||||
async function fetchGoals(query: string): Promise<void> {
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
fetchAgentExecute(query)
|
||||
.then((eventSource) => {
|
||||
eventSource.addEventListener("error", (e: any) => {
|
||||
console.error("Stream error:", e);
|
||||
reject(e);
|
||||
});
|
||||
|
||||
eventSource.addEventListener("message", (e: any) => {
|
||||
const msg = e.data;
|
||||
currentTool = "start";
|
||||
|
||||
if (msg === "[DONE]") {
|
||||
console.log("Done", content[content.length - 1]);
|
||||
summaryList.push(content[content.length - 1]);
|
||||
|
||||
chatMessages = [
|
||||
...chatMessages,
|
||||
{ tool, content, goal: query, source },
|
||||
];
|
||||
scrollToBottom(scrollToDiv);
|
||||
|
||||
console.log("chatMessages", chatMessages);
|
||||
currentSearch = "end";
|
||||
currentTool = "";
|
||||
currentContent = "";
|
||||
source = [];
|
||||
loading = false;
|
||||
insertChat();
|
||||
|
||||
resolve(); // Resolve when parsing is complete
|
||||
} else {
|
||||
try {
|
||||
// Try parsing JSON
|
||||
const currentMsg = JSON.parse(msg);
|
||||
console.log("currentMsg", currentMsg);
|
||||
|
||||
if (currentMsg.tool) {
|
||||
currentTool = currentMsg.tool;
|
||||
console.log("currentTool", currentTool);
|
||||
tool = currentMsg.tool;
|
||||
currentSearch = "start";
|
||||
}
|
||||
|
||||
if (currentMsg.source) {
|
||||
currentSearch = "finish";
|
||||
source = currentMsg.source;
|
||||
}
|
||||
|
||||
if (currentMsg.content) {
|
||||
content = [...content, ...currentMsg.content];
|
||||
scrollToBottom(scrollToDiv);
|
||||
currentContent = currentMsg.content;
|
||||
}
|
||||
|
||||
console.log("currentMsg.content", currentMsg.content);
|
||||
} catch (error) {
|
||||
// Handle non-JSON data as image content
|
||||
console.log("Non-JSON format, possibly image content:", msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
eventSource.stream();
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error("Error:", error);
|
||||
reject(error); // Reject on fetch error
|
||||
});
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<title>AI Agent</title>
|
||||
<meta name="description" content="AI Agent" />
|
||||
</svelte:head>
|
||||
|
||||
<!-- <button on:click={scrollToBottom}>scrollToBottom</button> -->
|
||||
<div class="flex h-full w-full flex-col">
|
||||
{#if chatMessages.length === 0 && query === ""}
|
||||
<HOME on:submit={handleCreate} />
|
||||
{:else if showAgent || chatMessages.length > 0}
|
||||
<div class="h-full rounded-2xl bg-white">
|
||||
<main class="mx-auto flex h-full flex-col">
|
||||
<div
|
||||
class="h-1/8 flex flex-shrink-0 items-center gap-3 border-b border-gray-200 px-4 pb-6 pt-10"
|
||||
>
|
||||
<Summary />
|
||||
<div>
|
||||
<h1 class="text-4xl font-bold tracking-tight text-gray-900">
|
||||
{agentName}
|
||||
</h1>
|
||||
|
||||
<p class="mt-1 max-w-2xl text-sm/6 text-gray-500">
|
||||
{agentDescripe}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class={`flex w-full flex-grow overflow-hidden transition-all duration-300 ${
|
||||
isDrawerOpen ? "h-auto" : "h-0"
|
||||
}`}
|
||||
>
|
||||
<div class="chat-scrollbar relative overflow-auto bg-white p-0 px-10">
|
||||
<div class="p-2">
|
||||
{#if loading}
|
||||
<div class="flex gap-5">
|
||||
<LoadingAnimation />
|
||||
</div>
|
||||
{:else}
|
||||
<LoadingStatic />
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
<!-- current loading status -->
|
||||
|
||||
<GenerateGoal
|
||||
{selectedGoalIndex}
|
||||
{chatMessages}
|
||||
{currentTool}
|
||||
{currentSearch}
|
||||
{currentContent}
|
||||
{scrollToDiv}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
@@ -1,166 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { nanoid } from "nanoid";
|
||||
import Fuse from "fuse.js";
|
||||
import PlusIcon from "$lib/assets/icons/plus-icon.svelte";
|
||||
import {
|
||||
banners$,
|
||||
chatList$,
|
||||
chats$,
|
||||
} from "$lib/components/shared/shared.store";
|
||||
import {
|
||||
createNewChat,
|
||||
createNewChatListItem,
|
||||
} from "$lib/components/shared/shared-utils";
|
||||
import {
|
||||
BANNER_TYPE,
|
||||
ERROR,
|
||||
LOCAL_STORAGE_KEY,
|
||||
} from "$lib/components/shared/shared.type";
|
||||
import SidebarChatItem from "$lib/modules/chat/sidebar-chat-item.svelte";
|
||||
import SearchDelete from "$lib/assets/Agent/searchDelete.svelte";
|
||||
import Search from "$lib/assets/Agent/search.svelte";
|
||||
|
||||
export let currentChatID: string;
|
||||
|
||||
const chatListFuseOptions = {
|
||||
// Lower threshold = closer match
|
||||
threshold: 0.3,
|
||||
keys: ["title"],
|
||||
};
|
||||
|
||||
const chatsFuseOptions = {
|
||||
// Lower threshold = closer match
|
||||
threshold: 0.5,
|
||||
keys: ["messages.content"],
|
||||
};
|
||||
|
||||
let searchInput;
|
||||
let isSearchInputFocused = false;
|
||||
let searchQuery = "";
|
||||
|
||||
$: chatListFuse = new Fuse($chatList$, chatListFuseOptions);
|
||||
$: chatsFuse = new Fuse(Object.values($chats$), chatsFuseOptions);
|
||||
|
||||
$: searchedChats = chatsFuse.search(searchQuery).map((result) => result.item);
|
||||
$: searchedChatList = chatListFuse
|
||||
.search(searchQuery)
|
||||
.map((result) => result.item);
|
||||
|
||||
$: matchedChatIds = [
|
||||
...new Set([
|
||||
...searchedChats.map((chat) => chat.chatId),
|
||||
...searchedChatList.map((chat) => chat.chatId),
|
||||
]),
|
||||
];
|
||||
|
||||
$: chatList = searchQuery
|
||||
? $chatList$.filter((chat) => matchedChatIds.includes(chat.chatId))
|
||||
: $chatList$;
|
||||
|
||||
const handleSearchFocus = () => {
|
||||
isSearchInputFocused = true;
|
||||
};
|
||||
|
||||
const handleSearchBlur = () => {
|
||||
isSearchInputFocused = false;
|
||||
};
|
||||
|
||||
/**
|
||||
* Create a new chat
|
||||
* newChatId
|
||||
* chatList -> createNewChatListItem - shared.type
|
||||
* chats -> createNewChat - shared.type -> DEFAULT_SYSTEM_MESSAGE
|
||||
* localStorage -> LOCAL_STORAGE_KEY.CHAT_LIST、newChatId
|
||||
*/
|
||||
const handleCreateNewChat = () => {
|
||||
const newChatId = nanoid(5);
|
||||
|
||||
chatList$.update((chatList) => {
|
||||
chatList.unshift(createNewChatListItem(newChatId, "New Agent"));
|
||||
return chatList;
|
||||
});
|
||||
chats$.update((chats) => {
|
||||
chats[newChatId] = createNewChat(newChatId, [], "", "", [], "");
|
||||
return chats;
|
||||
});
|
||||
|
||||
try {
|
||||
localStorage.setItem(
|
||||
LOCAL_STORAGE_KEY.CHAT_LIST,
|
||||
JSON.stringify($chatList$)
|
||||
);
|
||||
localStorage.setItem(newChatId, JSON.stringify($chats$[newChatId]));
|
||||
} catch (e: any) {
|
||||
banners$.update((banners) => {
|
||||
banners.push({
|
||||
id: ERROR.LOCAL_STORAGE_SET_ITEM,
|
||||
bannerType: BANNER_TYPE.ERROR,
|
||||
title: "Failed to access browser storage",
|
||||
description: e?.message || e?.name || "",
|
||||
});
|
||||
return banners;
|
||||
});
|
||||
}
|
||||
currentChatID = newChatId;
|
||||
};
|
||||
</script>
|
||||
|
||||
<nav class="h-full w-full flex-1 space-y-1 px-1 pb-4">
|
||||
<!-- Search -->
|
||||
<div class="group relative mb-2 flex h-full h-full w-full items-center">
|
||||
<div
|
||||
class="absolute block flex h-10 w-auto cursor-pointer items-center justify-center p-3 pr-2 text-sm uppercase text-gray-500 sm:hidden"
|
||||
>
|
||||
<SearchDelete />
|
||||
</div>
|
||||
<Search />
|
||||
|
||||
<input
|
||||
bind:value={searchQuery}
|
||||
bind:this={searchInput}
|
||||
on:focus={handleSearchFocus}
|
||||
on:blur={handleSearchBlur}
|
||||
placeholder="Search"
|
||||
type="text"
|
||||
name="search"
|
||||
class="my-4 block w-full rounded-2xl bg-gray-100 py-2 pl-10 pr-4 leading-normal text-gray-400 ring-opacity-90 focus:border-transparent focus:outline-none focus:ring-2 focus:ring-blue-500"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<!-- New chat -->
|
||||
<button
|
||||
on:click={handleCreateNewChat}
|
||||
class={`text-[#A6ADBB] h-15 mb-2 flex w-full items-center rounded-md px-2 py-4 text-sm font-medium shadow-sm ring-1 ring-inset ring-gray-300 hover:bg-[#ebf1f9] hover:text-black `}
|
||||
>
|
||||
<PlusIcon
|
||||
overrideClasses={"hover:text-gray-500 mr-3 flex-shrink-0 h-5 w-5"}
|
||||
/>
|
||||
Create Agent
|
||||
</button>
|
||||
|
||||
<!-- Empty state -->
|
||||
{#if !chatList.length || chatList.length === 0}
|
||||
<!-- <div class="flex flex-col items-center justify-center py-6">
|
||||
<div class="text-sm">No chats found</div>
|
||||
<button
|
||||
on:click={handleCreateNewChat}
|
||||
class="mt-2 rounded-md border border-gray-400 px-2 py-1 text-sm hover:text-gray-500"
|
||||
>
|
||||
Create new chat
|
||||
</button>
|
||||
</div> -->
|
||||
{/if}
|
||||
|
||||
<div
|
||||
class="carousel carousel-vertical mt-6 gap-2 overflow-auto sm:h-[5rem] md:h-[10rem] lg:h-[20rem] xl:h-[40rem]"
|
||||
>
|
||||
{#each chatList as { chatId: cId, title }}
|
||||
<SidebarChatItem chatId={cId} {title} bind:currentChatID />
|
||||
{/each}
|
||||
</div>
|
||||
</nav>
|
||||
@@ -1,37 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<div
|
||||
class="mb-6 flex items-center justify-center self-center bg-black text-sm text-gray-500"
|
||||
/>
|
||||
<div class="flex items-center justify-center gap-3">
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-red-500" />
|
||||
<div
|
||||
class="absolute left-0 top-0 h-3 w-3 animate-[ping_1s_infinite_100ms] rounded-full bg-red-500"
|
||||
/>
|
||||
<div
|
||||
class="duration-800 absolute left-0 top-0 h-3 w-3 animate-pulse rounded-full bg-red-500"
|
||||
/>
|
||||
</div>
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-[#eab308]" />
|
||||
<div
|
||||
class="absolute left-0 top-0 h-3 w-3 animate-[ping_1s_infinite_300ms] rounded-full bg-[#eab308]"
|
||||
/>
|
||||
<div
|
||||
class="absolute left-0 top-0 h-3 w-3 animate-pulse rounded-full bg-[#eab308]"
|
||||
/>
|
||||
</div>
|
||||
<div class="relative inline-flex">
|
||||
<div class="h-3 w-3 rounded-full bg-[#22c55e]" />
|
||||
<div
|
||||
class="absolute left-0 top-0 h-3 w-3 animate-[ping_1s_infinite_500ms] rounded-full bg-[#22c55e]"
|
||||
/>
|
||||
<div
|
||||
class="absolute left-0 top-0 h-3 w-3 animate-pulse rounded-full bg-[#22c55e]"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,33 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import Chat from "$lib/components/chat/chat.svelte";
|
||||
import History from "$lib/components/chat/history.svelte";
|
||||
|
||||
let selectedContent = "";
|
||||
let currentChatID = ''
|
||||
|
||||
</script>
|
||||
|
||||
<div class="flex h-full w-full">
|
||||
<div
|
||||
class="carousel carousel-vertical w-0 overflow-auto sm:w-0 xl:mr-4 sm:w-1/6 border-r border-gray-500"
|
||||
>
|
||||
<div class="h-full rounded-2xl my-4">
|
||||
<div class="flex items-center justify-between px-4">
|
||||
<History bind:currentChatID />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div
|
||||
class="mx-auto h-full w-full rounded-lg xl:px-6 sm:px-0 md:w-5/6"
|
||||
>
|
||||
{#key currentChatID}
|
||||
<Chat bind:chatId={currentChatID} bind:selectedContent={selectedContent} />
|
||||
{/key}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,238 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { createEventDispatcher } from "svelte";
|
||||
import LoadingAnimation from "./chat/loadingAnimation.svelte";
|
||||
import NewAI from "$lib/assets/Agent/newAI.svelte";
|
||||
import { getNotificationsContext } from "svelte-notifications";
|
||||
import CreateSub from "$lib/assets/Agent/createSub.svelte";
|
||||
import { Badge } from "flowbite-svelte";
|
||||
|
||||
// Input properties
|
||||
export let goals: string[] = [];
|
||||
export let agentDescripe: string;
|
||||
|
||||
let editIndex: number | null = null; // Index of the goal being edited
|
||||
let newContent = ""; // Temporary storage for new goal input
|
||||
export let agentName = "New AI Agent";
|
||||
let editContent = ""; // Temporary storage for edited content
|
||||
|
||||
const dispatch = createEventDispatcher();
|
||||
|
||||
const { addNotification } = getNotificationsContext();
|
||||
|
||||
// Start editing a specific goal
|
||||
function startEdit(index) {
|
||||
editIndex = index;
|
||||
editContent = goals[index];
|
||||
}
|
||||
|
||||
// Save the edited content
|
||||
function saveEdit(index) {
|
||||
goals[index] = editContent;
|
||||
editIndex = null;
|
||||
}
|
||||
|
||||
// Delete a goal by index
|
||||
function deleteGoal(index) {
|
||||
goals.splice(index, 1);
|
||||
goals = [...goals]; // Trigger reactivity
|
||||
editIndex = null;
|
||||
}
|
||||
|
||||
// Cancel editing
|
||||
function cancelEdit() {
|
||||
editIndex = null;
|
||||
dispatch("cancelCreate");
|
||||
}
|
||||
|
||||
// Show notification
|
||||
function showNotification(text: string, type: string) {
|
||||
addNotification({
|
||||
text: text,
|
||||
position: "top-right",
|
||||
type: type,
|
||||
removeAfter: 3000,
|
||||
});
|
||||
}
|
||||
|
||||
// Add a new goal
|
||||
function addGoal() {
|
||||
if (newContent.trim() && goals.length < 5) {
|
||||
goals = [...goals, newContent];
|
||||
newContent = "";
|
||||
} else {
|
||||
showNotification("Exceeded maximum number of tasks", "error");
|
||||
}
|
||||
}
|
||||
|
||||
// Save and send data to parent component
|
||||
function save() {
|
||||
dispatch("execute", { goals, agentName, agentDescripe });
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="relative h-full space-y-2 rounded-2xl bg-white p-6">
|
||||
<h2
|
||||
class="flex gap-4 border-b border-gray-900/10 py-6 text-4xl font-semibold text-gray-900"
|
||||
>
|
||||
<NewAI />
|
||||
Create Agent
|
||||
</h2>
|
||||
|
||||
<div class="border-b border-gray-900/10 pb-4">
|
||||
<div class="grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
|
||||
<div class="sm:col-span-4">
|
||||
<label for="username" class="block text-sm text-gray-900">Name</label>
|
||||
<div class="mt-1">
|
||||
<div
|
||||
class="flex rounded-md shadow-sm ring-1 ring-inset ring-gray-300 focus-within:ring-2 focus-within:ring-inset focus-within:ring-indigo-600 sm:max-w-md"
|
||||
>
|
||||
<input
|
||||
bind:value={agentName}
|
||||
type="text"
|
||||
name="username"
|
||||
id="username"
|
||||
autocomplete="username"
|
||||
class="block flex-1 border-0 bg-transparent px-2 px-4 py-1.5 pl-1 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm/6"
|
||||
placeholder="A new AI project..."
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-span-full">
|
||||
<label for="about" class="block text-sm text-gray-900">Description</label>
|
||||
<div class="mt-1">
|
||||
<textarea
|
||||
bind:value={agentDescripe}
|
||||
id="about"
|
||||
name="about"
|
||||
rows="3"
|
||||
class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm/6"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="h-[28rem] w-full overflow-auto border-b border-gray-900/10">
|
||||
<h2
|
||||
class="my-2 mb-2 ml-1 flex items-center gap-3 text-base/7 font-semibold text-gray-900"
|
||||
>
|
||||
<CreateSub />
|
||||
Enter up to 5 subtasks
|
||||
</h2>
|
||||
|
||||
<div class="mb-3 flex w-full gap-3">
|
||||
<div class="formkit-fields mb-3 flex w-full items-center">
|
||||
<div class="formkit-field relative mr-3 flex-grow">
|
||||
<input
|
||||
bind:value={newContent}
|
||||
class="formkit-input block w-full rounded-lg border border-gray-300 bg-gray-50 p-2.5 text-sm text-gray-900 focus:border-blue-500 focus:ring-blue-500"
|
||||
placeholder="Enter a goal..."
|
||||
required
|
||||
type="text"
|
||||
/>
|
||||
</div>
|
||||
<button type="button" on:click={addGoal} class="formkit-submit">
|
||||
<span
|
||||
class="cursor-pointer rounded-lg bg-blue-700 px-5 py-3 text-center text-sm font-medium text-white hover:bg-blue-800"
|
||||
>
|
||||
Add
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="relative overflow-x-auto shadow-md sm:rounded-lg">
|
||||
{#if goals.length === 0}
|
||||
<div class="flex items-center justify-center py-4">
|
||||
<Badge border>
|
||||
<LoadingAnimation />
|
||||
<span class="ml-4"> Creating subtasks... </span>
|
||||
</Badge>
|
||||
</div>
|
||||
{:else}
|
||||
<table
|
||||
id="dynamicTable"
|
||||
class="w-full text-left text-sm text-gray-500 rtl:text-right dark:text-gray-400"
|
||||
>
|
||||
<thead
|
||||
class="bg-gray-50 text-xs uppercase text-gray-700 dark:bg-gray-700 dark:text-gray-400"
|
||||
>
|
||||
<tr>
|
||||
<th scope="col" class="px-6 py-3">ID</th>
|
||||
<th scope="col" class="px-6 py-3">Content</th>
|
||||
<th scope="col" class="px-6 py-3"
|
||||
><span class="sr-only">Edit</span></th
|
||||
>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{#each goals as data, index}
|
||||
<tr>
|
||||
<td class="px-6 py-4">{index + 1}</td>
|
||||
<td class="px-6 py-4">
|
||||
{#if editIndex === index}
|
||||
<input
|
||||
type="text"
|
||||
bind:value={editContent}
|
||||
class="rounded border border-gray-300 p-2 text-xs"
|
||||
/>
|
||||
{:else}
|
||||
{data}
|
||||
{/if}
|
||||
</td>
|
||||
<td class="gap-4 px-6 py-4">
|
||||
{#if editIndex === index}
|
||||
<button
|
||||
on:click={() => saveEdit(index)}
|
||||
class="mx-2 rounded bg-gray-100 px-4 py-1 text-green-500 hover:text-green-700"
|
||||
>Save</button
|
||||
>
|
||||
|
||||
<button
|
||||
on:click={cancelEdit}
|
||||
class="mx-2 rounded bg-gray-100 px-4 py-1 text-blue-500 hover:text-blue-700"
|
||||
>Cancel</button
|
||||
>
|
||||
{:else}
|
||||
<button
|
||||
on:click={() => startEdit(index)}
|
||||
class="mx-2 px-4 py-1 text-blue-500 hover:text-blue-700"
|
||||
>Edit</button
|
||||
>
|
||||
<button
|
||||
on:click={() => deleteGoal(index)}
|
||||
class="mx-2 ml-4 rounded bg-gray-100 px-4 py-1 text-red-500 hover:text-red-700"
|
||||
>Delete</button
|
||||
>
|
||||
{/if}
|
||||
</td>
|
||||
</tr>
|
||||
{/each}
|
||||
</tbody>
|
||||
</table>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="absolute bottom-2 right-7 gap-x-6">
|
||||
<button
|
||||
type="button"
|
||||
class="mr-4 px-2 text-sm/6 font-semibold text-gray-900"
|
||||
on:click={() => {
|
||||
dispatch("returnToPrev");
|
||||
}}>Cancel</button
|
||||
>
|
||||
<button
|
||||
type="button"
|
||||
class="rounded-md bg-blue-700 px-3 px-8 py-2 text-sm font-semibold text-white shadow-sm hover:bg-blue-800 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600"
|
||||
on:click={() => save()}>Create</button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,279 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import Resource from "$lib/assets/Agent/resource.svelte";
|
||||
import { onMount, afterUpdate } from "svelte";
|
||||
import { Badge, P, Spinner } from "flowbite-svelte";
|
||||
import Task from "$lib/assets/Agent/taskIcon.svelte";
|
||||
import ToolIcon from "$lib/assets/Agent/toolIcon.svelte";
|
||||
import SearchResult from "$lib/assets/Agent/searchResult.svelte";
|
||||
import TaskResult from "$lib/assets/Agent/taskResult.svelte";
|
||||
|
||||
let openIndex: number = 0;
|
||||
|
||||
export let selectedGoalIndex: number | null;
|
||||
export let chatMessages;
|
||||
export let currentSearch: string;
|
||||
export let currentTool: string;
|
||||
export let currentContent;
|
||||
export let scrollToDiv: HTMLDivElement;
|
||||
|
||||
$: if (scrollToDiv) {
|
||||
console.log("coming", chatMessages, scrollToDiv);
|
||||
scrollToBottom(scrollToDiv);
|
||||
}
|
||||
|
||||
console.log("chatMessages", chatMessages);
|
||||
|
||||
export let chatContainer: HTMLElement | null = null;
|
||||
function scroll() {
|
||||
scrollToDiv = document?.querySelector(".chat-scrollbar")!;
|
||||
scrollToBottom(scrollToDiv);
|
||||
}
|
||||
|
||||
// Watch for changes in chatMessages and trigger scrolling
|
||||
$: chatMessages ||
|
||||
currentSearch ||
|
||||
currentTool ||
|
||||
currentContent
|
||||
? scroll()
|
||||
: "";
|
||||
|
||||
// Extract necessary data and generate download content
|
||||
function generateTxt() {
|
||||
let txtContent = chatMessages
|
||||
.map((task, index) => {
|
||||
// Extract data
|
||||
const taskNumber = `Task ${index + 1}:`;
|
||||
const goal = `Goal: ${task.goal}`;
|
||||
const tool = `Tool: ${task.tool}`;
|
||||
|
||||
const contentIntro = "Search Results:";
|
||||
const content = task.content.slice(0, -1).join("\n"); // All content except the last item
|
||||
const currentResult = `Current Task Result: ${
|
||||
task.content[task.content.length - 1]
|
||||
}`;
|
||||
|
||||
const sourcesIntro = "Resources:";
|
||||
const sources = task.source
|
||||
.map(([name, link]) => `- ${name}: ${link}`)
|
||||
.join("\n");
|
||||
|
||||
// Format the output
|
||||
return `${taskNumber}\n${goal}\n${tool}\n${contentIntro}\n${content}\n${currentResult}\n${sourcesIntro}\n${sources}\n`;
|
||||
})
|
||||
.join("\n");
|
||||
|
||||
// Create Blob and URL
|
||||
const blob = new Blob([txtContent], { type: "text/plain" });
|
||||
const url = URL.createObjectURL(blob);
|
||||
|
||||
// Download the file
|
||||
const link = document.createElement("a");
|
||||
link.href = url;
|
||||
link.download = "tasks.txt";
|
||||
link.click();
|
||||
|
||||
// Release the URL
|
||||
URL.revokeObjectURL(url);
|
||||
}
|
||||
|
||||
import { marked } from "marked";
|
||||
import Download from "$lib/assets/Agent/download.svelte";
|
||||
import { scrollToBottom } from "./shared/shared-utils";
|
||||
|
||||
const renderMarkdown = (content: string) => marked(content);
|
||||
|
||||
// Watch for changes in selectedGoalIndex to update openIndex
|
||||
$: if (selectedGoalIndex !== null && selectedGoalIndex !== 100) {
|
||||
openIndex = selectedGoalIndex;
|
||||
}
|
||||
|
||||
// Toggle the visibility of chat details for each goal
|
||||
const toggleOpenIndex = (index: number) => {
|
||||
openIndex = openIndex === index ? null : index;
|
||||
};
|
||||
|
||||
// Scroll to the selected goal when mounted or updated
|
||||
const scrollToSelectedGoal = () => {
|
||||
if (selectedGoalIndex !== null) {
|
||||
const goalElement = document.getElementById(`goal-${selectedGoalIndex}`);
|
||||
if (goalElement) {
|
||||
goalElement.scrollIntoView({ behavior: "smooth", block: "start" });
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
onMount(scrollToSelectedGoal);
|
||||
afterUpdate(scrollToSelectedGoal);
|
||||
</script>
|
||||
|
||||
<div
|
||||
class="chatContainer mx-auto w-full gap-4 overflow-auto p-4 pt-0"
|
||||
id="generatePDF"
|
||||
>
|
||||
{#each chatMessages as goal, index}
|
||||
<div class="w-full border-b py-2" id={`goal-${index}`}>
|
||||
<div class="flex w-full">
|
||||
<div class="w-full">
|
||||
<h2 class="flex items-center text-sm font-semibold leading-6">
|
||||
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
||||
<span
|
||||
class="flex cursor-pointer items-center gap-1 rounded bg-gray-100 px-3 py-1 text-slate-900 hover:bg-gray-100 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600 {openIndex ===
|
||||
index
|
||||
? 'highlight'
|
||||
: ''}"
|
||||
on:click={() => toggleOpenIndex(index)}
|
||||
>
|
||||
<Task />
|
||||
<span
|
||||
class="max-w-[25rem] overflow-hidden text-ellipsis whitespace-nowrap"
|
||||
>{goal.goal}</span
|
||||
>
|
||||
<span class="ml-2 text-xs">{openIndex === index ? "▲" : "▼"}</span
|
||||
>
|
||||
</span>
|
||||
|
||||
<span class="ml-2 h-4 w-px bg-slate-300" />
|
||||
{#if goal.tool}
|
||||
<span
|
||||
class="me-2 ms-3 flex items-center gap-2 rounded bg-blue-100 px-2.5 py-0.5 text-sm font-medium text-blue-800 dark:bg-blue-900 dark:text-blue-300"
|
||||
>
|
||||
<ToolIcon />
|
||||
|
||||
{goal.tool}
|
||||
</span>
|
||||
{/if}
|
||||
</h2>
|
||||
|
||||
{#if openIndex === index}
|
||||
{#each goal.content.slice(0, -1) as msg}
|
||||
<div
|
||||
class="collapsible mt-2 max-h-[10rem] w-full overflow-auto rounded-lg border border-b bg-gray-100 p-4 text-sm dark:bg-gray-800"
|
||||
>
|
||||
<p
|
||||
class="flex items-center gap-2 border-b border-gray-900/10 pb-2 font-bold text-blue-600"
|
||||
>
|
||||
<SearchResult /> Result
|
||||
</p>
|
||||
<p>{@html renderMarkdown(msg)}</p>
|
||||
</div>
|
||||
{/each}
|
||||
{/if}
|
||||
|
||||
<p
|
||||
class="my-2 mt-2 rounded-xl border border-green-600 p-2 py-2 text-sm leading-5 text-slate-600"
|
||||
>
|
||||
<!-- Display the title only when content is not an image -->
|
||||
<span class="flex items-center gap-1 py-2 font-bold text-blue-600">
|
||||
<TaskResult />
|
||||
Current Result
|
||||
</span>
|
||||
{#if goal.content[goal.content.length - 1] && goal.content[goal.content.length - 1].startsWith("iVBORw0KGgoAAAANSUhEUgAA")}
|
||||
<!-- If the last content is a base64 image string, display it as an image -->
|
||||
<img
|
||||
src="data:image/png;base64,{goal.content[
|
||||
goal.content.length - 1
|
||||
]}"
|
||||
alt="Base64 Image"
|
||||
class="h-32 w-32 cursor-pointer transition-transform duration-300 hover:scale-125"
|
||||
/>
|
||||
{:else}
|
||||
<!-- Render the content as markdown -->
|
||||
{@html renderMarkdown(goal.content[goal.content.length - 1])}
|
||||
{/if}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{#if goal.source}
|
||||
<div
|
||||
class="mb-3 mt-1 grid grid-cols-2 gap-4 md:grid-cols-3 xl:grid-cols-4"
|
||||
>
|
||||
{#each goal.source as source, idx}
|
||||
<div
|
||||
class="truncate text-ellipsis rounded-lg border border-gray-200 px-4 py-2"
|
||||
>
|
||||
<a
|
||||
href={source[1]}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
class="flex w-full items-center overflow-hidden bg-white text-sm font-medium text-gray-900 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:text-blue-700 focus:outline-none focus:ring-4 focus:ring-gray-100 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white dark:focus:ring-gray-700"
|
||||
>
|
||||
<Resource />
|
||||
<span
|
||||
class="ml-2 overflow-hidden text-ellipsis whitespace-nowrap"
|
||||
>{source[0]}</span
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/each}
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
{/each}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="mb-4 inline-flex flex-col space-y-2 px-3">
|
||||
<!-- Container with flex column layout -->
|
||||
{#if currentTool === "start" && currentSearch !== "start" && currentSearch !== "finish"}
|
||||
<Badge color="pink" border>
|
||||
<Spinner class="me-1.5 h-4 w-4" color="white" />
|
||||
Searching for the appropriate tool...
|
||||
</Badge>
|
||||
{/if}
|
||||
|
||||
{#if currentTool !== "" && currentTool !== "start" && currentSearch !== "start"}
|
||||
<Badge color="yellow" border>
|
||||
{#if currentSearch !== "finish"}
|
||||
<Spinner class="me-1.5 h-4 w-4" color="white" />
|
||||
{/if}
|
||||
Currently using the tool
|
||||
<strong> {currentTool} </strong>
|
||||
</Badge>
|
||||
{/if}
|
||||
|
||||
{#if currentSearch === "start"}
|
||||
{#if (currentTool) === "Image Generation"}
|
||||
<Badge color="purple" border>
|
||||
<Spinner class="me-1.5 h-4 w-4" color="white" />
|
||||
Generating an image using the
|
||||
<strong> {currentTool} </strong> tool...
|
||||
</Badge>
|
||||
{:else}
|
||||
<Badge color="purple" border>
|
||||
<Spinner class="me-1.5 h-4 w-4" color="white" />
|
||||
Searching using the
|
||||
<strong> {currentTool} </strong> tool...
|
||||
</Badge>
|
||||
{/if}
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{#if currentContent && currentContent !== ""}
|
||||
<div
|
||||
class="mt-2 max-h-[10rem] w-full overflow-auto rounded-lg border border-b bg-gray-100 p-4 text-sm dark:bg-gray-800"
|
||||
>
|
||||
<p class="font-bold text-blue-600">-- Web Search Results --</p>
|
||||
<p>{currentContent}</p>
|
||||
</div>
|
||||
{/if}
|
||||
<div class="m-2 inline-flex flex-col space-y-2">
|
||||
{#if currentSearch === "finish"}
|
||||
<Badge color="green" border>
|
||||
<Spinner class="me-1.5 h-4 w-4" color="white" />
|
||||
Search completed, summarizing the current task content...
|
||||
</Badge>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.highlight {
|
||||
background-color: #e0f7fa;
|
||||
border-left: 4px solid #00796b;
|
||||
}
|
||||
</style>
|
||||
@@ -1,154 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import PaperAirplane from "$lib/assets/icons/paper-airplane.svelte";
|
||||
import {
|
||||
ArrowPathIcon,
|
||||
CloudArrowUpIcon,
|
||||
FingerPrintIcon,
|
||||
LockClosedIcon,
|
||||
} from "@heroicons/vue/24/outline";
|
||||
import Star from "$lib/assets/Agent/star.svelte";
|
||||
import { getNotificationsContext } from "svelte-notifications";
|
||||
import { netError } from "$lib/components/shared/shared.store";
|
||||
|
||||
const { addNotification } = getNotificationsContext();
|
||||
|
||||
export let query: string = "";
|
||||
import { createEventDispatcher } from "svelte";
|
||||
|
||||
const dispatch = createEventDispatcher();
|
||||
|
||||
function showNotification(text: string, type: string) {
|
||||
addNotification({
|
||||
text: text,
|
||||
position: "top-right",
|
||||
type: type,
|
||||
removeAfter: 3000,
|
||||
});
|
||||
}
|
||||
|
||||
const features = [
|
||||
{
|
||||
name: "Chengdu Travel Plan",
|
||||
description: "Create a travel plan for visiting Chengdu",
|
||||
icon: CloudArrowUpIcon,
|
||||
goals: [
|
||||
"Best time to travel to Chengdu",
|
||||
"Must-visit attractions in Chengdu",
|
||||
// "Transportation guide for Chengdu",
|
||||
"Accommodation recommendations in Chengdu",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Intel Corporation",
|
||||
description: "Introduce Intel Corporation",
|
||||
icon: LockClosedIcon,
|
||||
goals: [
|
||||
"Overview of Intel Corporation",
|
||||
"History of Intel Corporation",
|
||||
"Key products of Intel Corporation",
|
||||
"Latest technological advancements by Intel Corporation",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Paper Contribution Summary",
|
||||
description: "Summarize the contributions of the Qwen technical paper",
|
||||
icon: ArrowPathIcon,
|
||||
goals: [
|
||||
"List the contributions of this paper, https://qianwen-res.oss-cn-beijing.aliyuncs.com/QWEN_TECHNICAL_REPORT.pdf",
|
||||
"Further introduce the Qwen model's related technologies",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Chengdu Panda Base Introduction",
|
||||
description: "Introduce Chengdu Panda Base and draw a picture",
|
||||
icon: FingerPrintIcon,
|
||||
goals: [
|
||||
"Overview of Chengdu Panda Base",
|
||||
"Draw a picture of a panda in Chengdu Panda Base",
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
function handleCreate(feature: any) {
|
||||
if (query == "" && feature == "") {
|
||||
netError.set(true);
|
||||
setTimeout(() => {
|
||||
netError.set(false);
|
||||
}, 3000);
|
||||
|
||||
showNotification("Please enter project details first", "error");
|
||||
} else {
|
||||
if (feature !== "") {
|
||||
query = feature;
|
||||
}
|
||||
dispatch("submit", query);
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<div class="mx-auto w-full max-w-7xl px-6 py-24 sm:py-32 lg:px-8">
|
||||
<div class="mx-auto max-w-2xl lg:text-center">
|
||||
<h1
|
||||
class="bg-gradient-to-r from-purple-300 to-blue-300 bg-clip-text text-7xl font-bold uppercase text-transparent"
|
||||
>
|
||||
AI AGENT
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
<dl
|
||||
class="mx-auto ml-40 mt-16 grid max-w-xl grid-cols-1 gap-6 gap-x-8 lg:max-w-4xl lg:grid-cols-2"
|
||||
>
|
||||
{#each features as feature (feature.name)}
|
||||
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
||||
<div
|
||||
class="relative rounded-xl bg-white p-2 py-8 pl-16"
|
||||
on:click={() => handleCreate(feature.description)}
|
||||
>
|
||||
<dt class="text-base font-semibold text-gray-900">
|
||||
<div
|
||||
class="absolute left-0 top-0 flex h-10 w-10 items-center justify-center rounded-lg bg-indigo-600"
|
||||
>
|
||||
<feature.icon />
|
||||
</div>
|
||||
{feature.name}
|
||||
</dt>
|
||||
<dd class="mt-2 text-base text-gray-600">{feature.description}</dd>
|
||||
</div>
|
||||
{/each}
|
||||
</dl>
|
||||
|
||||
<div class="relative mt-10 flex items-start justify-center space-x-2">
|
||||
<button
|
||||
on:click={() => handleCreate(query)}
|
||||
class="flex cursor-pointer items-center gap-3 whitespace-nowrap rounded-lg bg-blue-700 px-5 py-3 text-center text-sm font-medium text-white hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800"
|
||||
>
|
||||
<Star />
|
||||
Start Creating</button
|
||||
>
|
||||
<textarea
|
||||
class="textarea-bordered h-28 w-full rounded-2xl border-b-2 border-gray-200 border-b-[#00469f]"
|
||||
placeholder="Enter the details of the project to create"
|
||||
maxlength="1200"
|
||||
bind:value={query}
|
||||
on:keydown={(event) => {
|
||||
if (event.key === "Enter" && !event.shiftKey && query) {
|
||||
event.preventDefault();
|
||||
handleCreate(query);
|
||||
}
|
||||
}}
|
||||
/>
|
||||
<button
|
||||
on:click={() => query && handleCreate(query)}
|
||||
type="submit"
|
||||
class="absolute right-0 py-2 pr-3"
|
||||
>
|
||||
<PaperAirplane />
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,45 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script>
|
||||
import { onMount } from 'svelte';
|
||||
import { page } from '$app/stores';
|
||||
import { browser } from '$app/environment';
|
||||
import { open } from '$lib/components/shared/store';
|
||||
import Overlay from '$lib/components/shared/overlay.svelte';
|
||||
import Notifications from "svelte-notifications";
|
||||
|
||||
const style = {
|
||||
container: `bg-gray-100 h-screen overflow-hidden relative`,
|
||||
main: `h-screen overflow-auto p-4 md:pb-8 lg:px-4`,
|
||||
mainContainer: `flex flex-col h-screen pl-0 w-full bg-[#25252D]`
|
||||
};
|
||||
|
||||
onMount(() => {
|
||||
document.getElementsByTagName('body').item(0).removeAttribute('tabindex');
|
||||
});
|
||||
|
||||
if (browser) {
|
||||
page.subscribe(() => {
|
||||
// close side navigation when route changes
|
||||
$open = false;
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<Notifications>
|
||||
<div class={style.container}>
|
||||
<div class="flex items-start">
|
||||
<Overlay />
|
||||
<div class={style.mainContainer}>
|
||||
<main class={style.main}>
|
||||
<slot />
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</Notifications>
|
||||
@@ -1,18 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
export function clickOutside(node: HTMLElement): { destroy(): void } {
|
||||
const handleClick = (event: MouseEvent) => {
|
||||
if (node && !node.contains(event.target as Node) && !event.defaultPrevented) {
|
||||
node.dispatchEvent(new CustomEvent("click_outside", { detail: node }));
|
||||
}
|
||||
};
|
||||
|
||||
document.addEventListener("click", handleClick, true);
|
||||
|
||||
return {
|
||||
destroy() {
|
||||
document.removeEventListener("click", handleClick, true);
|
||||
},
|
||||
};
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script>
|
||||
import { open } from './store';
|
||||
</script>
|
||||
|
||||
<!-- The overlay will only be visible on small screens to emphasize the focus on the side navigation when it is open.-->
|
||||
<div
|
||||
class={$open
|
||||
? 'bg-[#161730] fixed h-screen left-0 opacity-40 top-0 w-screen z-30 lg:bg-transparent'
|
||||
: ''}
|
||||
/>
|
||||
@@ -1,167 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { chatList$, chats$ } from "./shared.store";
|
||||
import { nanoid } from "nanoid";
|
||||
import {
|
||||
LOCAL_STORAGE_KEY,
|
||||
type Chat,
|
||||
type ChatListItem,
|
||||
type ModelOptionType,
|
||||
type SelectedType,
|
||||
type Message,
|
||||
} from "./shared.type";
|
||||
|
||||
export function defineType(optionType: string, selected: SelectedType, MODEL_OPTION: ModelOptionType) {
|
||||
let type: any = {};
|
||||
let modeltype: any = {};
|
||||
|
||||
if (optionType == "Model") {
|
||||
type = {
|
||||
model: selected["Model"],
|
||||
temperature: MODEL_OPTION.options.find((option) => option.label === "Temperature")?.value,
|
||||
max_new_tokens: MODEL_OPTION.options.find((option) => option.label === "Max Tokens")?.value,
|
||||
topk: MODEL_OPTION.options.find((option) => option.label === "Top K")?.value,
|
||||
};
|
||||
} else if (optionType == "knowledge base") {
|
||||
const knowledge_map: { [key: string]: string } = {
|
||||
Wikipedia: "WIKI",
|
||||
"INC Document": "INC",
|
||||
ASK_GM: "ASK_GM",
|
||||
Young_Pat: "Young_Pat",
|
||||
Customized: "Customized",
|
||||
};
|
||||
type = {
|
||||
model: "knowledge",
|
||||
knowledge: knowledge_map[selected["knowledge base"]],
|
||||
};
|
||||
if (selected["advance option"]) {
|
||||
type.advanceOption = selected["advance option"];
|
||||
}
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
let chat: Record<string, Chat>;
|
||||
let chatlist: ChatListItem[];
|
||||
|
||||
export const createNewChatListItem = (chatId: string, title: string): ChatListItem => {
|
||||
return {
|
||||
chatId,
|
||||
title: title,
|
||||
};
|
||||
};
|
||||
|
||||
export const createNewChat = (chatId: string, messages: Message[], agentName: string, agentDescripe: string): Chat => {
|
||||
return {
|
||||
chatId,
|
||||
messages,
|
||||
agentName,
|
||||
agentDescripe,
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Insert new chat (For the root route)
|
||||
*/
|
||||
export const insertNewChat = (msgs: Message[], title: string, agentName: string, agentDescripe: string) => {
|
||||
const newChatId = nanoid(8);
|
||||
|
||||
chatList$.update((chatList) => {
|
||||
chatList.unshift(createNewChatListItem(newChatId, title));
|
||||
return chatList;
|
||||
});
|
||||
chats$.update((chats) => {
|
||||
chats[newChatId] = createNewChat(newChatId, msgs, agentName, agentDescripe);
|
||||
return chats;
|
||||
});
|
||||
|
||||
try {
|
||||
const unsubscribe_chatlist = chatList$.subscribe((value: ChatListItem[]) => {
|
||||
chatlist = value;
|
||||
});
|
||||
const unsubscribe_chats = chats$.subscribe((value: Record<string, Chat>) => {
|
||||
chat = value;
|
||||
});
|
||||
localStorage.setItem(LOCAL_STORAGE_KEY.CHAT_LIST, JSON.stringify(chatlist));
|
||||
localStorage.setItem(newChatId, JSON.stringify(chat[newChatId]));
|
||||
|
||||
unsubscribe_chatlist();
|
||||
unsubscribe_chats();
|
||||
} catch (e: any) {}
|
||||
|
||||
return newChatId;
|
||||
};
|
||||
/**
|
||||
* Update chat
|
||||
*/
|
||||
|
||||
export const updateChat = (id: string, msgs: Message[], title: string, agentName: string, agentDescripe: string) => {
|
||||
chats$.update((chats) => {
|
||||
chats[id].messages = msgs;
|
||||
chats[id].agentName = agentName;
|
||||
chats[id].agentDescripe = agentDescripe;
|
||||
|
||||
return chats;
|
||||
});
|
||||
|
||||
chatList$.update((chatList) => {
|
||||
chatList = chatList.map((chat) => {
|
||||
if (chat.chatId === id) {
|
||||
chat.title = title;
|
||||
}
|
||||
return chat;
|
||||
});
|
||||
return chatList;
|
||||
});
|
||||
// Problem
|
||||
try {
|
||||
const unsubscribe_chatlist = chatList$.subscribe((value: ChatListItem[]) => {
|
||||
chatlist = value;
|
||||
});
|
||||
const unsubscribe_chats = chats$.subscribe((value: Record<string, Chat>) => {
|
||||
chat = value;
|
||||
});
|
||||
localStorage.setItem(LOCAL_STORAGE_KEY.CHAT_LIST, JSON.stringify(chatlist));
|
||||
localStorage.setItem(id, JSON.stringify(chat[id]));
|
||||
unsubscribe_chatlist();
|
||||
unsubscribe_chats();
|
||||
} catch (e: any) {
|
||||
console.log("update chat error", e);
|
||||
}
|
||||
};
|
||||
|
||||
export const upsertChat = (
|
||||
chatId: string,
|
||||
msgs: Message[],
|
||||
title: string,
|
||||
agentName: string,
|
||||
agentDescripe: string,
|
||||
) => {
|
||||
if (!chatId) {
|
||||
chatId = insertNewChat(msgs, title, agentName, agentDescripe);
|
||||
} else {
|
||||
updateChat(chatId, msgs, title, agentName, agentDescripe);
|
||||
}
|
||||
|
||||
return chatId;
|
||||
};
|
||||
|
||||
export function scrollToBottom(scrollToDiv: HTMLElement) {
|
||||
if (scrollToDiv) {
|
||||
setTimeout(
|
||||
() =>
|
||||
scrollToDiv.scroll({
|
||||
behavior: "auto",
|
||||
top: scrollToDiv.scrollHeight,
|
||||
}),
|
||||
100,
|
||||
);
|
||||
}
|
||||
}
|
||||
export const truncateString = (str = "", cutLength = 18) => {
|
||||
const truncated = str?.substring?.(0, cutLength);
|
||||
|
||||
return truncated?.length < str?.length ? `${truncated}...` : truncated;
|
||||
};
|
||||
@@ -1,34 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { derived, writable } from "svelte/store";
|
||||
|
||||
import type { Chat, ChatListItem } from "./shared.type";
|
||||
|
||||
/**
|
||||
* Banners
|
||||
*/
|
||||
export const banners$ = writable([] as any);
|
||||
|
||||
export const hasBanners$ = derived(banners$, (banners) => {
|
||||
return banners.length > 0;
|
||||
});
|
||||
|
||||
/**
|
||||
* localStorage
|
||||
*/
|
||||
export const chatList$ = writable([] as ChatListItem[]);
|
||||
export const chats$ = writable({} as Record<string, Chat>);
|
||||
export const knowledge_base_id = writable("" as string);
|
||||
export const storageFiles = writable([]);
|
||||
export const admin$ = writable("" as string);
|
||||
|
||||
export const parentPath = writable("" as string);
|
||||
export const parentIdx = writable(-1 as number);
|
||||
|
||||
export const hintStart = writable(false as boolean);
|
||||
export const hintEnd = writable({ status: false, hintContent: "" });
|
||||
export const netError = writable(false as boolean);
|
||||
|
||||
export const needRecreate = writable(false as boolean);
|
||||
export const displayHintRecreate = writable(false as boolean);
|
||||
@@ -1,83 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
export interface ModelOptionType {
|
||||
names: string[];
|
||||
options: {
|
||||
label: string;
|
||||
value: number;
|
||||
minRange: number;
|
||||
maxRange: number;
|
||||
step: number;
|
||||
type: string;
|
||||
}[];
|
||||
}
|
||||
|
||||
export interface SelectedType {
|
||||
[key: string]: string;
|
||||
Model: string;
|
||||
"knowledge base": string;
|
||||
"advance option": string;
|
||||
}
|
||||
|
||||
export enum LOCAL_STORAGE_KEY {
|
||||
OPEN_AI_API_KEY = "openAiApiKey",
|
||||
CHAT_LIST = "bChatList",
|
||||
GPT_MODEL = "bGptModel",
|
||||
}
|
||||
|
||||
export enum MESSAGE_ROLE {
|
||||
SYSTEM = "system",
|
||||
ASSISTANT = "assistant",
|
||||
USER = "user",
|
||||
HUMAN = "Human",
|
||||
}
|
||||
|
||||
export enum BANNER_TYPE {
|
||||
ERROR = "error",
|
||||
INFO = "info",
|
||||
WARNING = "warning",
|
||||
SUCCESS = "success",
|
||||
}
|
||||
|
||||
export enum ERROR {
|
||||
LOCAL_STORAGE_SET_ITEM = "LOCAL_STORAGE_SET_ITEM",
|
||||
OPENAI_CHAT_COMPLETION = "OPENAI_CHAT_COMPLETION",
|
||||
REGISTRATION = "REGISTRATION",
|
||||
LOGIN = "LOGIN",
|
||||
PASSWORD_RESET = "PASSWORD_RESET",
|
||||
USER_DATA_FETCH = "USER_DATA_FETCH",
|
||||
PASSWORD_CHANGE = "PASSWORD_CHANGE",
|
||||
CHECKOUT_SESSION_CREATE = "CHECKOUT_SESSION_CREATE",
|
||||
DATA_SYNC_SAVE = "CHAT_SYNC_SAVE",
|
||||
DATA_SYNC_SAVE_LIMIT = "CHAT_SYNC_SAVE_LIMIT",
|
||||
DATA_SYNC_IMPORT = "CHAT_SYNC_IMPORT",
|
||||
DATA_SYNC_DELETE_SAVED_CHAT = "CHAT_SYNC_DELETE_SAVED_CHAT",
|
||||
}
|
||||
|
||||
export type Message = {
|
||||
tool: string;
|
||||
content: [];
|
||||
goal: string;
|
||||
source: [];
|
||||
};
|
||||
|
||||
export type ChatListItem = {
|
||||
chatId: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
export type Chat = {
|
||||
chatId: string;
|
||||
messages: Message[];
|
||||
agentName: string;
|
||||
agentDescripe: string;
|
||||
};
|
||||
|
||||
// In-memory only
|
||||
export type Banner = {
|
||||
bannerId: string;
|
||||
bannerType: BANNER_TYPE;
|
||||
title: string;
|
||||
description: string;
|
||||
};
|
||||
@@ -1,11 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { writable } from "svelte/store";
|
||||
|
||||
let open = writable(false);
|
||||
|
||||
export { open };
|
||||
|
||||
export const displayedGoals = writable<string[]>([]);
|
||||
export const currentMsgs = writable<{ [key: string]: string[] }>({});
|
||||
@@ -1,68 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import Time from "$lib/assets/Agent/time.svelte";
|
||||
import { createEventDispatcher } from "svelte";
|
||||
|
||||
export let selectedGoals;
|
||||
let selectedIndex: number | null = null;
|
||||
console.log("selectedGoals", selectedGoals);
|
||||
|
||||
const dispatch = createEventDispatcher();
|
||||
|
||||
function scrollToTop() {
|
||||
window.scrollTo({ top: 0, behavior: "smooth" });
|
||||
}
|
||||
|
||||
|
||||
function handleGoalClick(index: number) {
|
||||
selectedIndex = index;
|
||||
dispatch("goalClick", index);
|
||||
scrollToTop(); // Scroll to the top of the page
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="relative mt-4 h-full overflow-auto hiddenScroll p-4">
|
||||
<div
|
||||
class="absolute left-[2rem] top-0 h-full border-l border-gray-200 dark:border-gray-700"
|
||||
/>
|
||||
<ol class="relative">
|
||||
{#each selectedGoals as goal, index}
|
||||
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
||||
<li
|
||||
class="mb-10 flex cursor-pointer items-start rounded-lg p-4 transition-colors duration-200 {selectedIndex ===
|
||||
index
|
||||
? 'bg-white shadow-lg'
|
||||
: 'bg-transparent'}"
|
||||
on:click={() => handleGoalClick(index)}
|
||||
>
|
||||
<span
|
||||
class="flex h-8 w-8 flex-shrink-0 -translate-x-1/2 items-center justify-center rounded-full bg-blue-100 ring-8 ring-white dark:bg-blue-900 dark:ring-gray-900"
|
||||
>
|
||||
<Time />
|
||||
</span>
|
||||
<div class="ml-4">
|
||||
<p
|
||||
class="mb-0 text-base font-normal text-gray-500 dark:text-gray-400 max-w-[6rem] overflow-hidden text-ellipsis whitespace-nowrap "
|
||||
>
|
||||
{goal}
|
||||
</p>
|
||||
</div>
|
||||
</li>
|
||||
{/each}
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.hiddenScroll::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.hiddenScroll {
|
||||
-ms-overflow-style: none; /* IE and Edge */
|
||||
scrollbar-width: none; /* Firefox */
|
||||
}
|
||||
</style>
|
||||
@@ -1,169 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import ChatBubbleLeftIcon from '$lib/assets/icons/chat-bubble-left-icon.svelte';
|
||||
import { truncateString } from '$lib/components/shared/shared-utils';
|
||||
import { banners$, chatList$, chats$ } from '$lib/components/shared/shared.store';
|
||||
import { BANNER_TYPE, ERROR, LOCAL_STORAGE_KEY } from '$lib/components/shared/shared.type';
|
||||
import PencilSquareIcon from '$lib/assets/icons/pencil-square-icon.svelte';
|
||||
import TrashIcon from '$lib/assets/icons/trash-icon.svelte';
|
||||
import CheckIcon from '$lib/assets/icons/check-icon.svelte';
|
||||
import XMarkIcon from '$lib/assets/icons/x-mark-icon.svelte';
|
||||
|
||||
export let chatId: string;
|
||||
export let title: string;
|
||||
export let currentChatID: string;
|
||||
|
||||
let isEditing = false;
|
||||
let isHovering = false;
|
||||
let titleInput = title;
|
||||
|
||||
/**
|
||||
* Hover
|
||||
*/
|
||||
const handleMouseEnter = () => {
|
||||
isHovering = true;
|
||||
};
|
||||
|
||||
const handleMouseLeave = () => {
|
||||
isHovering = false;
|
||||
};
|
||||
|
||||
/**
|
||||
* Title edits
|
||||
*/
|
||||
const handleTitleEditClick = () => {
|
||||
isEditing = true;
|
||||
};
|
||||
|
||||
const handleCancelTitleEditClick = () => {
|
||||
isEditing = false;
|
||||
};
|
||||
const handleSaveTitleEditClick = () => {
|
||||
chatList$.update((chatList) => {
|
||||
chatList = chatList.map((chat) => {
|
||||
if (chat.chatId === chatId) {
|
||||
chat.title = titleInput;
|
||||
}
|
||||
return chat;
|
||||
});
|
||||
return chatList;
|
||||
});
|
||||
try {
|
||||
localStorage.setItem(LOCAL_STORAGE_KEY.CHAT_LIST, JSON.stringify($chatList$));
|
||||
} catch (e: any) {
|
||||
banners$.update((banners) => {
|
||||
banners.push({
|
||||
id: ERROR.LOCAL_STORAGE_SET_ITEM,
|
||||
bannerType: BANNER_TYPE.ERROR,
|
||||
title: 'Access to browser storage failed',
|
||||
description: e?.message || e?.name || ''
|
||||
});
|
||||
return banners;
|
||||
});
|
||||
}
|
||||
isEditing = false;
|
||||
};
|
||||
|
||||
/**
|
||||
* Delete chat
|
||||
*/
|
||||
const handleDeleteChat = (chatId: string) => {
|
||||
chatList$.update((chatList) => {
|
||||
chatList = chatList.filter((chat) => chat.chatId !== chatId);
|
||||
return chatList;
|
||||
});
|
||||
chats$.update((chats) => {
|
||||
delete chats[chatId];
|
||||
return chats;
|
||||
});
|
||||
|
||||
try {
|
||||
localStorage.setItem(LOCAL_STORAGE_KEY.CHAT_LIST, JSON.stringify($chatList$));
|
||||
localStorage.removeItem(chatId);
|
||||
} catch (e: any) {
|
||||
banners$.update((banners) => {
|
||||
banners.push({
|
||||
id: ERROR.LOCAL_STORAGE_SET_ITEM,
|
||||
bannerType: BANNER_TYPE.ERROR,
|
||||
title: 'Access to browser storage failed',
|
||||
description: e?.message || e?.name || ''
|
||||
});
|
||||
return banners;
|
||||
});
|
||||
}
|
||||
|
||||
if (currentChatID === chatId) {
|
||||
currentChatID = ''
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Select chat
|
||||
*/
|
||||
const handleSelectChat = () => {
|
||||
if (isEditing) {
|
||||
return;
|
||||
}
|
||||
currentChatID = chatId
|
||||
}
|
||||
</script>
|
||||
|
||||
<button
|
||||
on:click={handleSelectChat}
|
||||
on:mouseenter={handleMouseEnter}
|
||||
on:mouseleave={handleMouseLeave}
|
||||
type="button"
|
||||
class={`text-[#A6ADBB] relative w-full hover:bg-[#ebf1f9] hover:text-black group flex items-center px-2 py-4 text-sm font-medium rounded-md ${
|
||||
chatId === currentChatID ? `bg-[#1d4dd5] text-white` : ''
|
||||
}`}
|
||||
>
|
||||
<!-- Title -->
|
||||
<div class="flex flex-1 justify-start items-center flex-nowrap">
|
||||
<ChatBubbleLeftIcon
|
||||
overrideClasses={`mr-3 flex-shrink-0 h-5 w-5`}
|
||||
/>
|
||||
{#if isEditing}
|
||||
<input
|
||||
bind:value={titleInput}
|
||||
on:click={(e) => e.stopPropagation()}
|
||||
type="text"
|
||||
name="title"
|
||||
class="block bg-gray-100 text-black w-full h-5 ring mr-3 rounded-md py-1.5 shadow-sm outline-0 sm:text-sm sm:leading-6"
|
||||
/>
|
||||
{:else}
|
||||
<span
|
||||
class="md:w-16 xl:w-28 text-left overflow-hidden whitespace-nowrap truncate "
|
||||
{title}
|
||||
>
|
||||
{truncateString(title)}
|
||||
</span>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
<!-- Actions -->
|
||||
{#if isEditing}
|
||||
<div class="flex gap-2">
|
||||
<button on:click={() => handleSaveTitleEditClick()}>
|
||||
<CheckIcon overrideClasses={`h-3.5 w-3.5`} />
|
||||
</button>
|
||||
<button on:click={() => handleCancelTitleEditClick()}>
|
||||
<XMarkIcon overrideClasses={`h-3.5 w-3.5`} />
|
||||
</button>
|
||||
</div>
|
||||
{:else if isHovering}
|
||||
<div class="flex gap-2">
|
||||
<button on:click={() => handleTitleEditClick()}>
|
||||
<PencilSquareIcon
|
||||
overrideClasses={`h-3.5 w-3.5`}
|
||||
/>
|
||||
</button>
|
||||
<button on:click={() => handleDeleteChat(chatId)}>
|
||||
<TrashIcon overrideClasses={`h-3.5 w-3.5`} />
|
||||
</button>
|
||||
</div>
|
||||
{/if}
|
||||
</button>
|
||||
@@ -1,33 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
export let knowledge_question:string
|
||||
|
||||
let showSearch = false
|
||||
let showGenerate = false
|
||||
|
||||
setTimeout(() => showSearch= true , 3000);
|
||||
setTimeout(() => showGenerate= true , 10000);
|
||||
|
||||
</script>
|
||||
|
||||
{#if showSearch}
|
||||
<div class="flex items-center gap-2 my-2">
|
||||
<svg class="w-6 h-6" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474c-6.1-7.7-15.3-12.2-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1 0.4-12.8-6.3-12.8z" fill="#59bd59"></path>
|
||||
</svg>
|
||||
<p>Searching for: <span class="font-bold">{knowledge_question}</p>
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
{#if showGenerate}
|
||||
<div class="flex items-center gap-2 my-2">
|
||||
<svg class="w-6 h-6" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474c-6.1-7.7-15.3-12.2-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1 0.4-12.8-6.3-12.8z" fill="#59bd59"></path>
|
||||
</svg>
|
||||
<p>Generating answers for you...</p>
|
||||
</div>
|
||||
{/if}
|
||||
@@ -1,24 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { env } from "$env/dynamic/public";
|
||||
import { SSE } from "sse.js";
|
||||
|
||||
const AGENT_URL = env.AGENT_URL;
|
||||
|
||||
export async function fetchAgentExecute(query: string) {
|
||||
let payload = {};
|
||||
let url = "";
|
||||
|
||||
payload = {
|
||||
messages: query,
|
||||
stream: true,
|
||||
};
|
||||
|
||||
url = AGENT_URL;
|
||||
|
||||
return new SSE(url, {
|
||||
headers: { "Content-Type": "application/json" },
|
||||
payload: JSON.stringify(payload),
|
||||
});
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script>
|
||||
import 'tailwindcss/tailwind.css';
|
||||
import Layout from '$lib/components/layout.svelte';
|
||||
</script>
|
||||
|
||||
<Layout>
|
||||
<slot />
|
||||
</Layout>
|
||||
@@ -1,15 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2025 Intel Corporation
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<script>
|
||||
import Content from '$lib/components/content.svelte';
|
||||
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<title>AgentGPT</title>
|
||||
</svelte:head>
|
||||
|
||||
<Content />
|
||||
@@ -1,36 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { browser } from "$app/environment";
|
||||
import { chats$, chatList$ } from "$lib/components/shared/shared.store";
|
||||
import { LOCAL_STORAGE_KEY } from "$lib/components/shared/shared.type";
|
||||
|
||||
export const load = async () => {
|
||||
if (browser) {
|
||||
const chatList = localStorage.getItem(LOCAL_STORAGE_KEY.CHAT_LIST);
|
||||
|
||||
// Chat list
|
||||
if (chatList) {
|
||||
const parsedChatList = JSON.parse(chatList);
|
||||
chatList$.set(parsedChatList);
|
||||
|
||||
// Chats
|
||||
if (parsedChatList.length > 0) {
|
||||
parsedChatList.forEach((listItem: any) => {
|
||||
const chatId = listItem.chatId;
|
||||
// chats$ messages should already be present in localStorage, else ¯\_(ツ)_/¯
|
||||
const chat = localStorage.getItem(chatId);
|
||||
|
||||
if (chat) {
|
||||
chats$.update((chats) => {
|
||||
return {
|
||||
...chats,
|
||||
[chatId]: JSON.parse(chat),
|
||||
};
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
Before Width: | Height: | Size: 69 KiB |
@@ -1,27 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import adapter from "@sveltejs/adapter-auto";
|
||||
import preprocess from "svelte-preprocess";
|
||||
import postcssPresetEnv from "postcss-preset-env";
|
||||
|
||||
/** @type {import('@sveltejs/kit').Config} */
|
||||
const config = {
|
||||
// Consult https://github.com/sveltejs/svelte-preprocess
|
||||
// for more information about preprocessors
|
||||
preprocess: preprocess({
|
||||
sourceMap: true,
|
||||
postcss: {
|
||||
plugins: [postcssPresetEnv({ features: { "nesting-rules": true } })],
|
||||
},
|
||||
}),
|
||||
|
||||
kit: {
|
||||
adapter: adapter(),
|
||||
env: {
|
||||
publicPrefix: "",
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
export default config;
|
||||
@@ -1,11 +0,0 @@
|
||||
const config = {
|
||||
content: ["./src/**/*.{html,js,svelte,ts}", "./node_modules/flowbite-svelte/**/*.{html,js,svelte,ts}"],
|
||||
|
||||
theme: {
|
||||
extend: {},
|
||||
},
|
||||
|
||||
plugins: [require("daisyui"), require("@tailwindcss/typography"), require("flowbite/plugin")],
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"extends": "./.svelte-kit/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"allowJs": true,
|
||||
"checkJs": true,
|
||||
"esModuleInterop": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"resolveJsonModule": true,
|
||||
"skipLibCheck": true,
|
||||
"sourceMap": true,
|
||||
"strict": true
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
// Copyright (C) 2025 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { sveltekit } from "@sveltejs/kit/vite";
|
||||
import type { UserConfig } from "vite";
|
||||
|
||||
const config: UserConfig = {
|
||||
plugins: [sveltekit()],
|
||||
server: {
|
||||
allowedHosts: true,
|
||||
},
|
||||
};
|
||||
|
||||
export default config;
|
||||