diff --git a/VERSION b/VERSION
index ff12df2fbb..301092317f 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.45.1
+0.46.0
diff --git a/WORKSPACE b/WORKSPACE
index 97f5b0bc40..e0bcc71513 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -10,9 +10,9 @@ load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
git_repository(
name = "com_github_airyhq_bazel_tools",
- commit = "3da34dbb12d47ac9b1759fd6b5bafce754dac679",
+ commit = "e0dacc284148983bac428012adef1f7e25cabe45",
remote = "https://github.com/airyhq/bazel-tools.git",
- shallow_since = "1653559887 +0200",
+ shallow_since = "1655129212 +0200",
)
load("@com_github_airyhq_bazel_tools//:repositories.bzl", "airy_bazel_tools_dependencies", "airy_jvm_deps")
diff --git a/cli/pkg/cmd/create/BUILD b/cli/pkg/cmd/create/BUILD
index a5378df365..62bf4ec658 100644
--- a/cli/pkg/cmd/create/BUILD
+++ b/cli/pkg/cmd/create/BUILD
@@ -10,7 +10,6 @@ go_library(
"version": "{STABLE_VERSION}",
},
deps = [
- "//cli/pkg/cmd/config",
"//cli/pkg/console",
"//cli/pkg/helm",
"//cli/pkg/providers",
diff --git a/cli/pkg/providers/minikube/BUILD b/cli/pkg/providers/minikube/BUILD
index 5c4a40a40f..79fd961ece 100644
--- a/cli/pkg/providers/minikube/BUILD
+++ b/cli/pkg/providers/minikube/BUILD
@@ -2,10 +2,7 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library(
name = "minikube",
- srcs = [
- "hostsfile.go",
- "minikube.go",
- ],
+ srcs = ["minikube.go"],
importpath = "cli/pkg/providers/minikube",
visibility = ["//visibility:public"],
deps = [
@@ -13,7 +10,6 @@ go_library(
"//cli/pkg/kube",
"//cli/pkg/workspace",
"//cli/pkg/workspace/template",
- "@com_github_txn2_txeh//:txeh",
"@in_gopkg_segmentio_analytics_go_v3//:analytics-go_v3",
"@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library",
"@io_k8s_client_go//util/homedir:go_default_library",
diff --git a/cli/pkg/providers/minikube/hostsfile.go b/cli/pkg/providers/minikube/hostsfile.go
deleted file mode 100644
index 804cafc2b3..0000000000
--- a/cli/pkg/providers/minikube/hostsfile.go
+++ /dev/null
@@ -1,50 +0,0 @@
-package minikube
-
-import (
- "fmt"
- "github.com/txn2/txeh"
- "io/ioutil"
- "os"
- "os/exec"
- "runtime"
-)
-
-func AddHostRecord() error {
- minikubeIp, err := runGetOutput("ip")
- if err != nil {
- return err
- }
-
- if runtime.GOOS == "windows" {
- fmt.Println("Automatically adding configuring the local host alias is not yet supported on Windows.")
- fmt.Println("Please add the following line to c:\\windows\\system32\\drivers\\etc\\hosts")
- fmt.Printf("%s \t %s", minikubeIp, hostAlias)
- return nil
- }
-
- hosts, err := txeh.NewHostsDefault()
- if err != nil {
- return err
- }
-
- hosts.AddHost(minikubeIp, hostAlias)
- fmt.Printf("🚨 Adding an entry to your hosts file so that you can access Airy Core at http://%s", hostAlias)
- fmt.Println()
- fmt.Println("You will be asked for your password")
-
- content := hosts.RenderHostsFile()
- // The built-in .Save() command from github.com/txn2/txeh crashes if we lack permission
- // Therefore we write the rendered hostfile to a tmp file and overwrite the
- // existing host file with a sudo command that has access to the process stdin
- err = ioutil.WriteFile("/tmp/airy-core.host", []byte(content), 0644)
- if err != nil {
- return err
- }
-
- cmd := exec.Command("sudo", "bash", "-c", "cat /tmp/airy-core.host > "+hosts.WriteFilePath)
- cmd.Stderr = os.Stderr
- cmd.Stdin = os.Stdin
- cmd.Stdout = os.Stdout
-
- return cmd.Run()
-}
diff --git a/cli/pkg/providers/minikube/minikube.go b/cli/pkg/providers/minikube/minikube.go
index c56e335b7d..322074e4cf 100644
--- a/cli/pkg/providers/minikube/minikube.go
+++ b/cli/pkg/providers/minikube/minikube.go
@@ -19,9 +19,10 @@ import (
)
const (
- minikube = "minikube"
- profile = "airy-core"
- hostAlias = "airy.core"
+ minikube = "minikube"
+ profile = "airy-core"
+ hostAlias = "airy.core"
+ dockerRuntime = " --container-runtime=containerd"
)
type provider struct {
@@ -40,7 +41,7 @@ func New(w io.Writer, analytics *console.AiryAnalytics) *provider {
func (p *provider) GetOverrides() template.Variables {
return template.Variables{
NgrokEnabled: true,
- Host: "airy.core",
+ Host: "localhost",
}
}
@@ -49,7 +50,7 @@ func (p *provider) Provision(providerConfig map[string]string, dir workspace.Con
return kube.KubeCtx{}, err
}
- if err := p.startCluster(); err != nil {
+ if err := p.startCluster(providerConfig); err != nil {
return kube.KubeCtx{}, err
}
@@ -68,8 +69,18 @@ func checkInstallation() error {
return err
}
-func (p *provider) startCluster() error {
- args := []string{"start", "--driver=virtualbox", "--cpus=4", "--memory=7168", "--extra-config=apiserver.service-node-port-range=1-65535", "--driver=virtualbox"}
+func (p *provider) startCluster(providerConfig map[string]string) error {
+ minikubeDriver := getArg(providerConfig, "driver", "docker")
+ minikubeCpus := getArg(providerConfig, "cpus", "4")
+ minikubeMemory := getArg(providerConfig, "memory", "7168")
+ driverArg := "--driver=" + minikubeDriver
+ runtimeArg := ""
+ if minikubeDriver == "docker" {
+ runtimeArg = dockerRuntime
+ }
+ cpusArg := "--cpus=" + minikubeCpus
+ memoryArg := "--memory=" + minikubeMemory
+ args := []string{"start", "--extra-config=apiserver.service-node-port-range=1-65535", "--ports=80:80", driverArg, runtimeArg, cpusArg, memoryArg}
// Prevent minikube download progress bar from polluting the output
_, err := runGetOutput(append(args, "--download-only")...)
if err != nil {
@@ -138,5 +149,13 @@ func (p *provider) PostInstallation(providerConfig map[string]string, namespace
return err
}
- return AddHostRecord()
+ return nil
+}
+
+func getArg(providerConfig map[string]string, key string, fallback string) string {
+ value := providerConfig[key]
+ if value == "" {
+ return fallback
+ }
+ return value
}
diff --git a/docs/docs/api/endpoints/attachments.md b/docs/docs/api/endpoints/attachments.md
index 4f3f2179ed..7fb67093d3 100644
--- a/docs/docs/api/endpoints/attachments.md
+++ b/docs/docs/api/endpoints/attachments.md
@@ -15,7 +15,7 @@ Expects a multi-part form upload including the original filename
**Sample curl**
```shell script
-curl http://airy.core/media.upload \
+curl http://localhost/media.upload \
-X POST \
-H "Content-Type: multipart/form-data" \
--form file=@test_image.jpg
diff --git a/docs/docs/api/endpoints/client-config.md b/docs/docs/api/endpoints/client-config.md
index 377b9d7a21..0cca9ac782 100644
--- a/docs/docs/api/endpoints/client-config.md
+++ b/docs/docs/api/endpoints/client-config.md
@@ -60,11 +60,6 @@ The `tag_config` property in the response represents the configuration for [tags
"healthy": false,
"component": "sources-google"
},
- "sources-viber-events-router": {
- "enabled": false,
- "healthy": false,
- "component": "sources-viber"
- },
"api-communication": {
"enabled": true,
"healthy": true,
diff --git a/docs/docs/api/httpClient.md b/docs/docs/api/httpClient.md
index 2de33033f6..267c5c0d5f 100644
--- a/docs/docs/api/httpClient.md
+++ b/docs/docs/api/httpClient.md
@@ -34,7 +34,7 @@ The library exports an `HttpClient` class with public methods that make requests
To get started, instantiate the `HttpClient` class with your API host URL:
```
-const client = new HttpClient("http://airy.core");
+const client = new HttpClient("http://localhost");
```
## Call a method
diff --git a/docs/docs/changelog.md b/docs/docs/changelog.md
index 1cbb70fb47..79a98626be 100644
--- a/docs/docs/changelog.md
+++ b/docs/docs/changelog.md
@@ -1,86 +1,146 @@
----
-title: Changelog
-sidebar_label: 📝 Changelog
----
+---
+title: Changelog
+sidebar_label: 📝 Changelog
+---
+
+## 0.46.0
+
+#### Changes
+
+- [[#3270](https://github.com/airyhq/airy/issues/3270)] Cypress test for contacts page in inbox [[#3290](https://github.com/airyhq/airy/pull/3290)]
+- [[#3178](https://github.com/airyhq/airy/issues/3178)] Rename enabled annotation [[#3284](https://github.com/airyhq/airy/pull/3284)]
+
+#### 🚀 Features
+
+- [[#3332](https://github.com/airyhq/airy/issues/3332)] Authenticate AWS using profile [[#3335](https://github.com/airyhq/airy/pull/3335)]
+- [[#3336](https://github.com/airyhq/airy/issues/3336)] UI Improvements for Control Center and DarkMode [[#3337](https://github.com/airyhq/airy/pull/3337)]
+- [[#3095](https://github.com/airyhq/airy/issues/3095)] Enable disable toggle control center [[#3302](https://github.com/airyhq/airy/pull/3302)]
+- [[#3169](https://github.com/airyhq/airy/issues/3169)] Redesign chatplugin customization [[#3299](https://github.com/airyhq/airy/pull/3299)]
+- [[#3178](https://github.com/airyhq/airy/issues/3178)] Enable disable components from control center [[#3245](https://github.com/airyhq/airy/pull/3245)]
+
+#### 🐛 Bug Fixes
+
+- [[#3333](https://github.com/airyhq/airy/issues/3333)] Update kubeconfig api version [[#3338](https://github.com/airyhq/airy/pull/3338)]
+- [[#2886](https://github.com/airyhq/airy/issues/2886)] Minikube on Docker, with custom cpu and memory [[#3086](https://github.com/airyhq/airy/pull/3086)]
+- [[#3308](https://github.com/airyhq/airy/issues/3308)] Terrraform installation bugs fix [[#3309](https://github.com/airyhq/airy/pull/3309)]
+- [[#3283](https://github.com/airyhq/airy/issues/3283)] Google survey response fix [[#3304](https://github.com/airyhq/airy/pull/3304)]
+- [[#3178](https://github.com/airyhq/airy/issues/3178)] Fix scald-down logic for components [[#3297](https://github.com/airyhq/airy/pull/3297)]
+- [[#3292](https://github.com/airyhq/airy/issues/3292)] French translations UI fix [[#3298](https://github.com/airyhq/airy/pull/3298)]
+- [[#3285](https://github.com/airyhq/airy/issues/3285)] Disable contacts in Inbox UI [[#3291](https://github.com/airyhq/airy/pull/3291)]
+- [[#3246](https://github.com/airyhq/airy/issues/3246)] Fix contacts details view on third column [[#3280](https://github.com/airyhq/airy/pull/3280)]
+- [[#3248](https://github.com/airyhq/airy/issues/3248)] Contacts third column conversation error [[#3266](https://github.com/airyhq/airy/pull/3266)]
-## 0.45.1
+#### 📚 Documentation
+
+- [[#3296](https://github.com/airyhq/airy/issues/3296)] Update Concepts Architecture Docs [[#3320](https://github.com/airyhq/airy/pull/3320)]
+- [[#3279](https://github.com/airyhq/airy/issues/3279)] Clarifications to minikube install [[#3341](https://github.com/airyhq/airy/pull/3341)]
+- [[#3339](https://github.com/airyhq/airy/issues/3339)] Improve commit message [[#3340](https://github.com/airyhq/airy/pull/3340)]
-#### 🐛 Hotfix
+#### 🧰 Maintenance
-- [[#3267](https://github.com/airyhq/airy/issues/3267)] Putting components.* endpoints behind auth (#3268)
+- Bump core-js from 3.22.7 to 3.23.2 [[#3325](https://github.com/airyhq/airy/pull/3325)]
+- Bump @types/jest from 28.1.1 to 28.1.2 [[#3327](https://github.com/airyhq/airy/pull/3327)]
+- Bump i18next from 21.8.9 to 21.8.10 [[#3310](https://github.com/airyhq/airy/pull/3310)]
+- Bump react-i18next from 11.17.0 to 11.17.2 [[#3312](https://github.com/airyhq/airy/pull/3312)]
+- Bump @types/node from 17.0.42 to 18.0.0 [[#3311](https://github.com/airyhq/airy/pull/3311)]
+- Bump prettier from 2.6.2 to 2.7.1 [[#3313](https://github.com/airyhq/airy/pull/3313)]
+- Bump @types/react from 18.0.9 to 18.0.12 [[#3278](https://github.com/airyhq/airy/pull/3278)]
+- Bump ts-jest from 28.0.3 to 28.0.5 [[#3287](https://github.com/airyhq/airy/pull/3287)]
+- Bump i18next from 21.8.5 to 21.8.9 [[#3288](https://github.com/airyhq/airy/pull/3288)]
+- Bump ts-node from 10.8.0 to 10.8.1 [[#3281](https://github.com/airyhq/airy/pull/3281)]
+- Bump @types/node from 17.0.36 to 17.0.42 [[#3282](https://github.com/airyhq/airy/pull/3282)]
+- Bump preact from 10.7.2 to 10.7.3 [[#3276](https://github.com/airyhq/airy/pull/3276)]
+- Bump @bazel/typescript from 5.4.0 to 5.5.0 [[#3183](https://github.com/airyhq/airy/pull/3183)]
+- Bump webpack from 5.72.1 to 5.73.0 [[#3277](https://github.com/airyhq/airy/pull/3277)]
+- Bump jest and @types/jest [[#3272](https://github.com/airyhq/airy/pull/3272)]
+- Bump jest-environment-jsdom from 28.1.0 to 28.1.1 [[#3271](https://github.com/airyhq/airy/pull/3271)]
+- Bump babel-jest from 28.1.0 to 28.1.1 [[#3273](https://github.com/airyhq/airy/pull/3273)]
#### Airy CLI
You can download the Airy CLI for your operating system from the following links:
-[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.45.1/darwin/amd64/airy)
-[Linux](https://airy-core-binaries.s3.amazonaws.com/0.45.1/linux/amd64/airy)
-[Windows](https://airy-core-binaries.s3.amazonaws.com/0.45.1/windows/amd64/airy.exe)
+[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.46.0/darwin/amd64/airy)
+[Linux](https://airy-core-binaries.s3.amazonaws.com/0.46.0/linux/amd64/airy)
+[Windows](https://airy-core-binaries.s3.amazonaws.com/0.46.0/windows/amd64/airy.exe)
+
+## 0.45.1
+
+#### Hotfix
+* [[#3267](https://github.com/airyhq/airy/issues/3267)] Putting components.* endpoints behind auth
+
+#### Airy CLI
-## 0.45.0
+You can download the Airy CLI for your operating system from the following links:
+[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.45.1/darwin/amd64/airy)
+[Linux](https://airy-core-binaries.s3.amazonaws.com/0.45.1/linux/amd64/airy)
+[Windows](https://airy-core-binaries.s3.amazonaws.com/0.45.1/windows/amd64/airy.exe)
+
+## 0.45.0
+
#### Changes
-- [[#3187](https://github.com/airyhq/airy/issues/3187)] Upgrade to react 18 (#3222)
-- [[#3167](https://github.com/airyhq/airy/issues/3167)] Unit test components research (#3186)
-- [[#3185](https://github.com/airyhq/airy/issues/3185)] Update cypress tests (#3191)
+- [[#3187](https://github.com/airyhq/airy/issues/3187)] Upgrade to react 18 [[#3222](https://github.com/airyhq/airy/pull/3222)]
+- [[#3167](https://github.com/airyhq/airy/issues/3167)] Unit test components research [[#3186](https://github.com/airyhq/airy/pull/3186)]
+- [[#3185](https://github.com/airyhq/airy/issues/3185)] Update cypress tests [[#3191](https://github.com/airyhq/airy/pull/3191)]
#### 🚀 Features
-- [[#3030](https://github.com/airyhq/airy/issues/3030)] Added enabled service component check (#3237)
-- [[#3234](https://github.com/airyhq/airy/issues/3234)] Sort contacts alphabetically (#3235)
-- [[#3101](https://github.com/airyhq/airy/issues/3101)] Added contacts to Inbox (#3233)
-- [[#2756](https://github.com/airyhq/airy/issues/2756)] Apply config through the airy controller (#3176)
-- [[#3156](https://github.com/airyhq/airy/issues/3156)] Added translations (#3181)
-- [[#3066](https://github.com/airyhq/airy/issues/3066)] New design sidebar inbox (#3182)
-- [[#3130](https://github.com/airyhq/airy/issues/3130)] Feature/endpoint for retrieving the current configuration (#3177)
+- [[#3030](https://github.com/airyhq/airy/issues/3030)] Added enabled service component check [[#3237](https://github.com/airyhq/airy/pull/3237)]
+- [[#3234](https://github.com/airyhq/airy/issues/3234)] Sort contacts alphabetically [[#3235](https://github.com/airyhq/airy/pull/3235)]
+- [[#3101](https://github.com/airyhq/airy/issues/3101)] Added contacts to Inbox [[#3233](https://github.com/airyhq/airy/pull/3233)]
+- [[#2756](https://github.com/airyhq/airy/issues/2756)] Apply config through the airy controller [[#3176](https://github.com/airyhq/airy/pull/3176)]
+- [[#3156](https://github.com/airyhq/airy/issues/3156)] Added translations [[#3181](https://github.com/airyhq/airy/pull/3181)]
+- [[#3066](https://github.com/airyhq/airy/issues/3066)] New design sidebar inbox [[#3182](https://github.com/airyhq/airy/pull/3182)]
+- [[#3130](https://github.com/airyhq/airy/issues/3130)] Feature/endpoint for retrieving the current configuration [[#3177](https://github.com/airyhq/airy/pull/3177)]
#### 🐛 Bug Fixes
-- [[#3249](https://github.com/airyhq/airy/issues/3249)] Fixed bug contacts (#3259)
-- [[#3247](https://github.com/airyhq/airy/issues/3247)] Fixed catalog view card (#3251)
-- [[#3228](https://github.com/airyhq/airy/issues/3228)] Control center fix status view (#3232)
-- [[#3227](https://github.com/airyhq/airy/issues/3227)] Darkmode fix on safari (#3250)
-- [[#3241](https://github.com/airyhq/airy/issues/3241)] Fixed staging crashing (#3242)
-- [[#2756](https://github.com/airyhq/airy/issues/2756)] Fix api-admin deployment env (#3240)
-- [[#2756](https://github.com/airyhq/airy/issues/2756)] Fix values inside api-admin configMap (#3230)
-- [[#3171](https://github.com/airyhq/airy/issues/3171)] Admin api unhealthy on minikube (#3219)
-- [[#3192](https://github.com/airyhq/airy/issues/3192)] Update contacts update (#3203)
-- [[#3179](https://github.com/airyhq/airy/issues/3179)] Hotfix update release changelog docs (#3180)
+- [[#3249](https://github.com/airyhq/airy/issues/3249)] Fixed bug contacts [[#3259](https://github.com/airyhq/airy/pull/3259)]
+- [[#3247](https://github.com/airyhq/airy/issues/3247)] Fixed catalog view card [[#3251](https://github.com/airyhq/airy/pull/3251)]
+- [[#3228](https://github.com/airyhq/airy/issues/3228)] Control center fix status view [[#3232](https://github.com/airyhq/airy/pull/3232)]
+- [[#3227](https://github.com/airyhq/airy/issues/3227)] Darkmode fix on safari [[#3250](https://github.com/airyhq/airy/pull/3250)]
+- [[#3241](https://github.com/airyhq/airy/issues/3241)] Fixed staging crashing [[#3242](https://github.com/airyhq/airy/pull/3242)]
+- [[#2756](https://github.com/airyhq/airy/issues/2756)] Fix api-admin deployment env [[#3240](https://github.com/airyhq/airy/pull/3240)]
+- [[#2756](https://github.com/airyhq/airy/issues/2756)] Fix values inside api-admin configMap [[#3230](https://github.com/airyhq/airy/pull/3230)]
+- [[#3171](https://github.com/airyhq/airy/issues/3171)] Admin api unhealthy on minikube [[#3219](https://github.com/airyhq/airy/pull/3219)]
+- [[#3192](https://github.com/airyhq/airy/issues/3192)] Update contacts update [[#3203](https://github.com/airyhq/airy/pull/3203)]
+- [[#3179](https://github.com/airyhq/airy/issues/3179)] Hotfix update release changelog docs [[#3180](https://github.com/airyhq/airy/pull/3180)]
#### 📚 Documentation
-- [[#3184](https://github.com/airyhq/airy/issues/3184)] Update release notes with testing (#3190)
+- [[#3184](https://github.com/airyhq/airy/issues/3184)] Update release notes with testing [[#3190](https://github.com/airyhq/airy/pull/3190)]
#### 🧰 Maintenance
-- Bump terser-webpack-plugin from 5.3.1 to 5.3.3 (#3254)
-- Chore/upgrade go to 1.18.2 (#3244)
-- Bump eventsource from 1.0.7 to 1.1.1 in /docs (#3239)
-- Bump copy-webpack-plugin from 10.2.4 to 11.0.0 (#3202)
-- Bump @types/node from 17.0.35 to 17.0.36 (#3223)
-- Bump i18next from 21.8.4 to 21.8.5 (#3224)
-- Bump sass-loader from 12.6.0 to 13.0.0 (#3220)
-- Bump @types/node from 17.0.26 to 17.0.35 (#3218)
-- Bump @babel/core from 7.18.0 to 7.18.2 (#3216)
-- Bump react-redux from 8.0.1 to 8.0.2 (#3217)
-- Bump babel-loader from 8.2.4 to 8.2.5 (#3205)
-- Bump @reduxjs/toolkit from 1.8.1 to 1.8.2 (#3204)
-- Bump core-js from 3.22.5 to 3.22.7 (#3200)
-- Bump react-markdown from 8.0.2 to 8.0.3 (#3201)
-- Bump typescript from 4.6.3 to 4.6.4 (#3197)
-- Bump @babel/core from 7.17.9 to 7.18.0 (#3195)
-- Bump @babel/preset-env from 7.16.11 to 7.18.0 (#3194)
-- Bump sass from 1.50.0 to 1.52.1 (#3196)
-- Bump webpack-dev-server from 4.8.1 to 4.9.0 (#3152)
-- Bump react-modal from 3.14.4 to 3.15.1 (#3119)
-- Bump @babel/preset-typescript from 7.16.7 to 7.17.12 (#3189)
-- Bump redux from 4.1.2 to 4.2.0 (#3188)
-- Bump webpack from 5.72.0 to 5.72.1 (#3173)
-- Bump preact from 10.7.1 to 10.7.2 (#3172)
-- Bump core-js from 3.22.0 to 3.22.5 (#3151)
-- Bump @types/react-redux from 7.1.23 to 7.1.24 (#3062)
+- Bump terser-webpack-plugin from 5.3.1 to 5.3.3 [[#3254](https://github.com/airyhq/airy/pull/3254)]
+- Chore/upgrade go to 1.18.2 [[#3244](https://github.com/airyhq/airy/pull/3244)]
+- Bump eventsource from 1.0.7 to 1.1.1 in /docs [[#3239](https://github.com/airyhq/airy/pull/3239)]
+- Bump copy-webpack-plugin from 10.2.4 to 11.0.0 [[#3202](https://github.com/airyhq/airy/pull/3202)]
+- Bump @types/node from 17.0.35 to 17.0.36 [[#3223](https://github.com/airyhq/airy/pull/3223)]
+- Bump i18next from 21.8.4 to 21.8.5 [[#3224](https://github.com/airyhq/airy/pull/3224)]
+- Bump sass-loader from 12.6.0 to 13.0.0 [[#3220](https://github.com/airyhq/airy/pull/3220)]
+- Bump @types/node from 17.0.26 to 17.0.35 [[#3218](https://github.com/airyhq/airy/pull/3218)]
+- Bump @babel/core from 7.18.0 to 7.18.2 [[#3216](https://github.com/airyhq/airy/pull/3216)]
+- Bump react-redux from 8.0.1 to 8.0.2 [[#3217](https://github.com/airyhq/airy/pull/3217)]
+- Bump babel-loader from 8.2.4 to 8.2.5 [[#3205](https://github.com/airyhq/airy/pull/3205)]
+- Bump @reduxjs/toolkit from 1.8.1 to 1.8.2 [[#3204](https://github.com/airyhq/airy/pull/3204)]
+- Bump core-js from 3.22.5 to 3.22.7 [[#3200](https://github.com/airyhq/airy/pull/3200)]
+- Bump react-markdown from 8.0.2 to 8.0.3 [[#3201](https://github.com/airyhq/airy/pull/3201)]
+- Bump typescript from 4.6.3 to 4.6.4 [[#3197](https://github.com/airyhq/airy/pull/3197)]
+- Bump @babel/core from 7.17.9 to 7.18.0 [[#3195](https://github.com/airyhq/airy/pull/3195)]
+- Bump @babel/preset-env from 7.16.11 to 7.18.0 [[#3194](https://github.com/airyhq/airy/pull/3194)]
+- Bump sass from 1.50.0 to 1.52.1 [[#3196](https://github.com/airyhq/airy/pull/3196)]
+- Bump webpack-dev-server from 4.8.1 to 4.9.0 [[#3152](https://github.com/airyhq/airy/pull/3152)]
+- Bump react-modal from 3.14.4 to 3.15.1 [[#3119](https://github.com/airyhq/airy/pull/3119)]
+- Bump @babel/preset-typescript from 7.16.7 to 7.17.12 [[#3189](https://github.com/airyhq/airy/pull/3189)]
+- Bump redux from 4.1.2 to 4.2.0 [[#3188](https://github.com/airyhq/airy/pull/3188)]
+- Bump webpack from 5.72.0 to 5.72.1 [[#3173](https://github.com/airyhq/airy/pull/3173)]
+- Bump preact from 10.7.1 to 10.7.2 [[#3172](https://github.com/airyhq/airy/pull/3172)]
+- Bump core-js from 3.22.0 to 3.22.5 [[#3151](https://github.com/airyhq/airy/pull/3151)]
+- Bump @types/react-redux from 7.1.23 to 7.1.24 [[#3062](https://github.com/airyhq/airy/pull/3062)]
#### Airy CLI
@@ -89,46 +149,48 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.45.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.45.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.45.0/windows/amd64/airy.exe)
-
-
-## 0.44.0
+
+## 0.44.0
+
+#### Changes
#### 🚀 Features
-- [[#2755](https://github.com/airyhq/airy/issues/2755)] Authenticate controller (#3147)
-- [[#3158](https://github.com/airyhq/airy/issues/#3158)] Added animations control center (#3162)
-- [[#3115](https://github.com/airyhq/airy/issues/#3115)] Dark mode for UI (#3153)
-- [[#3116](https://github.com/airyhq/airy/issues/#3116)] Redesign connectors \& prepared Inbox (Control-Center) (#3155)
-- [[#3144](https://github.com/airyhq/airy/issues/3144)] Show just enabled components (#3150)
-- [[#3004](https://github.com/airyhq/airy/issues/3004)] Add service to every connector (#3149)
-- [[#3050](https://github.com/airyhq/airy/issues/3050)] Show Webhook on Control Center UI (#3132)
-- [[#3091](https://github.com/airyhq/airy/issues/3091)] Empty "Connectors" view state (#3138)
-- [[#3073](https://github.com/airyhq/airy/issues/3073)] Show available conversation for same contact (#3107)
-- [[#3092](https://github.com/airyhq/airy/issues/3092)] Adding name to webhooks (#3094)
+- [[#2755](https://github.com/airyhq/airy/issues/2755)] Authenticate controller [[#3147](https://github.com/airyhq/airy/pull/3147)]
+- [[#3158](https://github.com/airyhq/airy/issues/3158)] Added animations control center [[#3162](https://github.com/airyhq/airy/pull/3162)]
+- [[#3115](https://github.com/airyhq/airy/issues/3115)] Dark mode for UI [[#3153](https://github.com/airyhq/airy/pull/3153)]
+- [[#3016](https://github.com/airyhq/airy/issues/3016)] Redesign connectors \& prepared Inbox (Control-Center) [[#3155](https://github.com/airyhq/airy/pull/3155)]
+- [[#3144](https://github.com/airyhq/airy/issues/3144)] Show just enabled components [[#3150](https://github.com/airyhq/airy/pull/3150)]
+- [[#3004](https://github.com/airyhq/airy/issues/3004)] Add service to every connector [[#3149](https://github.com/airyhq/airy/pull/3149)]
+- [[#3050](https://github.com/airyhq/airy/issues/3050)] Show Webhook on Control Center UI [[#3132](https://github.com/airyhq/airy/pull/3132)]
+- [[#3091](https://github.com/airyhq/airy/issues/3091)] Empty "Connectors" view state [[#3138](https://github.com/airyhq/airy/pull/3138)]
+- [[#3073](https://github.com/airyhq/airy/issues/3073)] Show available conversation for same contact [[#3107](https://github.com/airyhq/airy/pull/3107)]
+- [[#3092](https://github.com/airyhq/airy/issues/3092)] Adding name to webhooks [[#3094](https://github.com/airyhq/airy/pull/3094)]
#### 🐛 Bug Fixes
-- [[#3163](https://github.com/airyhq/airy/issues/3163)] Darkmode follow-up (#3164)
-- [[#3141](https://github.com/airyhq/airy/issues/3141)] Conversations for contacts fix (#3142)
-- [[#3128](https://github.com/airyhq/airy/issues/3128)] Fix npm deployment (#3129)
-- [[#3085](https://github.com/airyhq/airy/issues/3085)] Navbar wrong view selection (#3105)
-- [[#3109](https://github.com/airyhq/airy/issues/3109)] Make name optional webhook (#3117)
+- [[#3163](https://github.com/airyhq/airy/issues/3163)] Darkmode follow-up [[#3164](https://github.com/airyhq/airy/pull/3164)]
+- [[#3141](https://github.com/airyhq/airy/issues/3141)] Conversations for contacts fix [[#3142](https://github.com/airyhq/airy/pull/3142)]
+- [[#3128](https://github.com/airyhq/airy/issues/3128)] Fix npm deployment [[#3129](https://github.com/airyhq/airy/pull/3129)]
+- [[#3085](https://github.com/airyhq/airy/issues/3085)] Navbar wrong view selection [[#3105](https://github.com/airyhq/airy/pull/3105)]
+- [[#3109](https://github.com/airyhq/airy/issues/3109)] Make name optional webhook [[#3117](https://github.com/airyhq/airy/pull/3117)]
+
#### 📚 Documentation
-- [[#3148](https://github.com/airyhq/airy/issues/3148)] Docs for mandatory API security attributes (#3166)
-- [[#3126](https://github.com/airyhq/airy/issues/3126)] Added Webhooks to docs (#3143)
-- [[#3121](https://github.com/airyhq/airy/issues/3121)] Fix InfoCard and update connectors docs (#3136)
-- [[#3123](https://github.com/airyhq/airy/issues/3123)] Update docs for webhooks (#3124)
-- [[#3108](https://github.com/airyhq/airy/issues/3108)] Control center update (#3114)
+- [[#3148](https://github.com/airyhq/airy/issues/3148)] Docs for mandatory API security attributes [[#3166](https://github.com/airyhq/airy/pull/3166)]
+- [[#3126](https://github.com/airyhq/airy/issues/3126)] Added Webhooks to docs [[#3143](https://github.com/airyhq/airy/pull/3143)]
+- [[#3121](https://github.com/airyhq/airy/issues/3121)] Fix InfoCard and update connectors docs [[#3136](https://github.com/airyhq/airy/pull/3136)]
+- [[#3123](https://github.com/airyhq/airy/issues/3123)] Update docs for webhooks [[#3124](https://github.com/airyhq/airy/pull/3124)]
+- [[#3108](https://github.com/airyhq/airy/issues/3108)] Control center update [[#3114](https://github.com/airyhq/airy/pull/3114)]
#### 🧰 Maintenance
-- Bump react-redux from 7.2.8 to 8.0.1 (#3060)
-- chore/add mockito inline to deps (#3137)
-- chore/update test libraries (#3135)
-- Bump cross-fetch from 3.0.6 to 3.1.5 in /docs (#3113)
-- Bump react-i18next from 11.16.6 to 11.16.7 (#3097)
-- House clean/move contacts dto to library (#3112)
+- Bump react-redux from 7.2.8 to 8.0.1 [[#3060](https://github.com/airyhq/airy/pull/3060)]
+- chore/add mockito inline to deps [[#3137](https://github.com/airyhq/airy/pull/3137)]
+- chore/update test libraries [[#3135](https://github.com/airyhq/airy/pull/3135)]
+- Bump cross-fetch from 3.0.6 to 3.1.5 in /docs [[#3113](https://github.com/airyhq/airy/pull/3113)]
+- Bump react-i18next from 11.16.6 to 11.16.7 [[#3097](https://github.com/airyhq/airy/pull/3097)]
+- House clean/move contacts dto to library [[#3112](https://github.com/airyhq/airy/pull/3112)]
#### Airy CLI
@@ -137,10 +199,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.44.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.44.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.44.0/windows/amd64/airy.exe)
-
-
-## 0.43.0
-
+
+## 0.43.0
+
#### 🚀 Features
- [[#1279](https://github.com/airyhq/airy/issues/1279)] Helm template on local chart with bazel [[#2922](https://github.com/airyhq/airy/pull/2922)]
@@ -193,9 +254,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.43.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.43.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.43.0/windows/amd64/airy.exe)
-
-## 0.42.0
-
+
+## 0.42.0
+
#### Changes
- [[#2960](https://github.com/airyhq/airy/issues/2960)] Add prerequisite property overrides [[#2960](https://github.com/airyhq/airy/pull/2960)]
@@ -260,9 +321,9 @@ You can download the Airy CLI for your operating system from the following links
#### Upgrade notes
-This version introduces a new topology in the `api-communication` component. After the upgrade, the component needs to be reset. For more information how do do this refer to the [docs for resetting a Kafka streaming app](https://develop.docs.airy.co/guides/component-reset).
-## 0.41.0
-
+This version introduces a new topology in the `api-communication` component. After the upgrade, the component needs to be reset. For more information how do do this refer to the [docs for resetting a Kafka streaming app](https://develop.docs.airy.co/guides/component-reset).
+## 0.41.0
+
#### 🚀 Features
- [[[#2892](https://github.com/airyhq/airy/issues/2892)](https://github.com/airyhq/airy/issues/2892)] Failed message indicator [[[#2923](https://github.com/airyhq/airy/issues/2923)](https://github.com/airyhq/airy/pull/2923)]
@@ -327,9 +388,9 @@ You can download the Airy CLI for your operating system from the following links
#### Upgrade notes
This release introduces a change in the structure of the `airy.yaml` file. The `host` setting is no longer present in the `ingress-controller` section and is moved to the `global` section. For more information refer to the [configuration page](https://airy.co/docs/core/getting-started/installation/configuration).
-
-## 0.40.0
-
+
+## 0.40.0
+
#### 🚀 Features
- [[#2742](https://github.com/airyhq/airy/issues/2742)] List objects in s3 bucket [[#2785](https://github.com/airyhq/airy/pull/2785)]
@@ -397,9 +458,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.40.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.40.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.40.0/windows/amd64/airy.exe)
-
-## 0.39.0
-
+
+## 0.39.0
+
#### Changes
#### 🚀 Features
@@ -449,9 +510,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.39.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.39.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.39.0/windows/amd64/airy.exe)
-
-## 0.38.1
-
+
+## 0.38.1
+
#### 🐛 Bug Fixes
- [[#2736](https://github.com/airyhq/airy/issues/2736)] Hotfix for re-provisioning topics on upgrade [[#2740](https://github.com/airyhq/airy/pull/2740)]
@@ -463,9 +524,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.38.1/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.38.1/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.38.1/windows/amd64/airy.exe)
-
-## 0.38.0
-
+
+## 0.38.0
+
#### Changes
- [[#2697](https://github.com/airyhq/airy/issues/2697)] Fix Chatplugin Cutting in Web Browser [[#2709](https://github.com/airyhq/airy/pull/2709)]
@@ -507,9 +568,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.38.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.38.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.38.0/windows/amd64/airy.exe)
-
-## 0.37.0
-
+
+## 0.37.0
+
#### Changes
- [[#2653](https://github.com/airyhq/airy/issues/2653)] upgrade slf4j and underlying log4j libraries [[#2654](https://github.com/airyhq/airy/pull/2654)]
@@ -551,9 +612,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.37.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.37.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.37.0/windows/amd64/airy.exe)
-
-## 0.36.1
-
+
+## 0.36.1
+
#### Changes
#### 🐛 Bug Fixes
@@ -571,9 +632,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.36.1/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.36.1/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.36.1/windows/amd64/airy.exe)
-
-## 0.36.0
-
+
+## 0.36.0
+
#### 🚀 Features
- [[#2604](https://github.com/airyhq/airy/issues/2604)] Added attachment toggle for chatplugin [[#2609](https://github.com/airyhq/airy/pull/2609)]
@@ -594,9 +655,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.36.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.36.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.36.0/windows/amd64/airy.exe)
-
-## 0.35.1
-
+
+## 0.35.1
+
#### 🚀 Features
- [[#2586](https://github.com/airyhq/airy/issues/2586)] Terraform core module has wrong Helm link [[#2587](https://github.com/airyhq/airy/pull/2587)]
@@ -626,9 +687,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.35.1/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.35.1/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.35.1/windows/amd64/airy.exe)
-
-## 0.35.0
-
+
+## 0.35.0
+
#### 🚀 Features
- [[#2455](https://github.com/airyhq/airy/issues/2455)] Custom message colors chatplugin [[#2585](https://github.com/airyhq/airy/pull/2585)]
@@ -672,9 +733,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.35.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.35.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.35.0/windows/amd64/airy.exe)
-
-## 0.34.0
-
+
+## 0.34.0
+
#### Changes
#### 🚀 Features
@@ -707,9 +768,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.34.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.34.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.34.0/windows/amd64/airy.exe)
-
-## 0.33.0
-
+
+## 0.33.0
+
#### 🚀 Features
- [[#2294](https://github.com/airyhq/airy/issues/2294)] Allow creating conversations with Twilio [[#2500](https://github.com/airyhq/airy/pull/2500)]
@@ -778,9 +839,9 @@ This release has breaking changes in the structure of the airy.yaml file. When u
from the version of the CLI and the - namespace is used from the workspace
file cli.yaml
- Rename the `ingress:` section to `ingress-controller:`
-
-## 0.32.0
-
+
+## 0.32.0
+
#### Changes
#### 🚀 Features
@@ -806,9 +867,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.32.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.32.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.32.0/windows/amd64/airy.exe)
-
-## 0.31.1
-
+
+## 0.31.1
+
#### 🚀 Features
- [[#2432](https://github.com/airyhq/airy/issues/2432)] Added more options to the UI [[#2433](https://github.com/airyhq/airy/pull/2433)]
@@ -830,9 +891,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.31.1/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.31.1/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.31.1/windows/amd64/airy.exe)
-
-## 0.31.0
-
+
+## 0.31.0
+
#### 🚀 Features
- [[#628](https://github.com/airyhq/airy/issues/628)] Make library compatible with node.js [[#2426](https://github.com/airyhq/airy/pull/2426)]
@@ -872,9 +933,9 @@ You can download the Airy CLI for your operating system from the following links
#### Upgrade notes
In the `airy.yaml` file, `host` is moved from the `kubernetes` section, into the `ingress` section.
-
-## 0.30.0
-
+
+## 0.30.0
+
#### 🚀 Features
- [[#2274](https://github.com/airyhq/airy/issues/2274)] Introduce the source API [[#2327](https://github.com/airyhq/airy/pull/2327)]
@@ -923,9 +984,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.30.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.30.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.30.0/windows/amd64/airy.exe)
-
-## 0.29.0
-
+
+## 0.29.0
+
#### Changes
- [[#2304](https://github.com/airyhq/airy/issues/2304)] Fixed broken link from Messages Send Section to Sources. [[#2307](https://github.com/airyhq/airy/pull/2307)]
@@ -973,9 +1034,9 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.29.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.29.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.29.0/windows/amd64/airy.exe)
-
-## 0.28.0
-
+
+## 0.28.0
+
#### 🚀 Features
- [[#1911](https://github.com/airyhq/airy/issues/1911)] Reorganize the helm charts [[#2241](https://github.com/airyhq/airy/pull/2241)]
@@ -1013,12 +1074,12 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.28.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.28.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.28.0/windows/amd64/airy.exe)
-
-## Hotfix 0.27.1
-
-[[#2219](https://github.com/airyhq/airy/issues/2219)] fixed inbox ui overflow bug [[#2220](https://github.com/airyhq/airy/pull/2220)]
-## 0.27.0
-
+
+## Hotfix 0.27.1
+
+[[#2219](https://github.com/airyhq/airy/issues/2219)] fixed inbox ui overflow bug [[#2220](https://github.com/airyhq/airy/pull/2220)]
+## 0.27.0
+
#### Changes
#### 🚀 Features
@@ -1061,18 +1122,18 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.27.0/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.27.0/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.27.0/windows/amd64/airy.exe)
-
-## Hotfix 0.26.3
-
-[[#2192](https://github.com/airyhq/airy/issues/2192)] Inbox crashing when selecting conversations in filtered view [[#2193](https://github.com/airyhq/airy/pull/2193)]
-## Hotfix 0.26.2
-
-[[#2187](https://github.com/airyhq/airy/issues/2187)] Hotfix chat plugin async bundle loading failed on installed websites
-## Hotfix 0.26.1
-
-[[#2181](https://github.com/airyhq/airy/issues/2181)] Fixes chat plugin integration crashing with empty config
-## 0.26.0
-
+
+## Hotfix 0.26.3
+
+[[#2192](https://github.com/airyhq/airy/issues/2192)] Inbox crashing when selecting conversations in filtered view [[#2193](https://github.com/airyhq/airy/pull/2193)]
+## Hotfix 0.26.2
+
+[[#2187](https://github.com/airyhq/airy/issues/2187)] Hotfix chat plugin async bundle loading failed on installed websites
+## Hotfix 0.26.1
+
+[[#2181](https://github.com/airyhq/airy/issues/2181)] Fixes chat plugin integration crashing with empty config
+## 0.26.0
+
#### Changes
- Change endpoint for webhook to /twilio [[#2123](https://github.com/airyhq/airy/pull/2123)]
@@ -1140,181 +1201,4 @@ You can download the Airy CLI for your operating system from the following links
[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.25.1/darwin/amd64/airy)
[Linux](https://airy-core-binaries.s3.amazonaws.com/0.25.1/linux/amd64/airy)
[Windows](https://airy-core-binaries.s3.amazonaws.com/0.25.1/windows/amd64/airy.exe)
-
-## 0.25.0
-
-#### 🚀 Features
-
-- [[#1752](https://github.com/airyhq/airy/issues/1752)] Add connect cluster chart [[#1961](https://github.com/airyhq/airy/pull/1961)]
-
-#### 🐛 Bug Fixes
-
-- [[#2009](https://github.com/airyhq/airy/issues/2009)] Fixed unnecessary recalls and rerenders [[#2054](https://github.com/airyhq/airy/pull/2054)]
-- [[#2018](https://github.com/airyhq/airy/issues/2018)] Unknown Message Type from Facebook chat plugin [[#2055](https://github.com/airyhq/airy/pull/2055)]
-- [[#2038](https://github.com/airyhq/airy/issues/2038)] Fix broken download links on release page [[#2039](https://github.com/airyhq/airy/pull/2039)]
-- [[#1991](https://github.com/airyhq/airy/issues/1991)] re-organizing infinite scroll for conversationlist and messagelist [[#2006](https://github.com/airyhq/airy/pull/2006)]
-- [[#1985](https://github.com/airyhq/airy/issues/1985)] Bug: Template Title not Rendering [[#1995](https://github.com/airyhq/airy/pull/1995)]
-- [[#1939](https://github.com/airyhq/airy/issues/1939)] Redirect / to /ui [[#2001](https://github.com/airyhq/airy/pull/2001)]
-
-#### 🧰 Maintenance
-
-- Bump prismjs from 1.23.0 to 1.24.0 in /docs [[#2058](https://github.com/airyhq/airy/pull/2058)]
-- Bump @bazel/typescript from 3.5.1 to 3.6.0 [[#1975](https://github.com/airyhq/airy/pull/1975)]
-- Bump webpack from 5.39.1 to 5.40.0 [[#2022](https://github.com/airyhq/airy/pull/2022)]
-- Bump @typescript-eslint/eslint-plugin from 4.27.0 to 4.28.0 [[#2026](https://github.com/airyhq/airy/pull/2026)]
-- Bump html-webpack-plugin from 5.3.1 to 5.3.2 [[#2032](https://github.com/airyhq/airy/pull/2032)]
-- Bump cypress from 7.5.0 to 7.6.0 [[#2031](https://github.com/airyhq/airy/pull/2031)]
-- [[#2030](https://github.com/airyhq/airy/issues/2030)] Expose all jvm dependencies [[#2033](https://github.com/airyhq/airy/pull/2033)]
-- Bump @babel/preset-env from 7.14.5 to 7.14.7 [[#2024](https://github.com/airyhq/airy/pull/2024)]
-- Bump @typescript-eslint/parser from 4.27.0 to 4.28.0 [[#2025](https://github.com/airyhq/airy/pull/2025)]
-- Bump eslint from 7.28.0 to 7.29.0 [[#2016](https://github.com/airyhq/airy/pull/2016)]
-- Bump webpack from 5.39.0 to 5.39.1 [[#2012](https://github.com/airyhq/airy/pull/2012)]
-- Bump @types/react-dom from 17.0.7 to 17.0.8 [[#2011](https://github.com/airyhq/airy/pull/2011)]
-- Bump core-js from 3.14.0 to 3.15.0 [[#2015](https://github.com/airyhq/airy/pull/2015)]
-- [[#1974](https://github.com/airyhq/airy/issues/1974)] Upgrade to Facebook API graph version 11 [[#2007](https://github.com/airyhq/airy/pull/2007)]
-- Bump @babel/preset-env from 7.14.4 to 7.14.5 [[#1982](https://github.com/airyhq/airy/pull/1982)]
-- Bump @typescript-eslint/eslint-plugin from 4.26.1 to 4.27.0 [[#1993](https://github.com/airyhq/airy/pull/1993)]
-- Bump sass from 1.34.1 to 1.35.1 [[#1999](https://github.com/airyhq/airy/pull/1999)]
-- Bump react-modal from 3.14.2 to 3.14.3 [[#2000](https://github.com/airyhq/airy/pull/2000)]
-
-#### Airy CLI
-
-You can download the Airy CLI for your operating system from the following links:
-
-[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.24.1/darwin/amd64/airy)
-[Linux](https://airy-core-binaries.s3.amazonaws.com/0.24.1/linux/amd64/airy)
-[Windows](https://airy-core-binaries.s3.amazonaws.com/0.24.1/windows/amd64/airy.exe)
-
-## 0.24.0
-
-#### Changes
-
-- [[#1956](https://github.com/airyhq/airy/issues/1956)] Fix link to installation page [[#1957](https://github.com/airyhq/airy/pull/1957)]
-
-#### 🐛 Bug Fixes
-
-- [[#1952](https://github.com/airyhq/airy/issues/1952)] Fix embedded path for Airy create on Windows [[#1992](https://github.com/airyhq/airy/pull/1992)]
-- [[#1967](https://github.com/airyhq/airy/issues/1967)] Fixed messageInput [[#1983](https://github.com/airyhq/airy/pull/1983)]
-- [[#1932](https://github.com/airyhq/airy/issues/1932)] Added scrollToBotton in messageList [[#1934](https://github.com/airyhq/airy/pull/1934)]
-- [[#1933](https://github.com/airyhq/airy/issues/1933)] Suggested Replies does not fit in messageInput [[#1935](https://github.com/airyhq/airy/pull/1935)]
-- [[#1924](https://github.com/airyhq/airy/issues/1924)] Fixed long message in messageInput [[#1925](https://github.com/airyhq/airy/pull/1925)]
-
-#### 📚 Documentation
-
-- [[#1926](https://github.com/airyhq/airy/issues/1926)] Docs for using a custom public hostname [[#1945](https://github.com/airyhq/airy/pull/1945)]
-- [[#1936](https://github.com/airyhq/airy/issues/1936)] Minor grammar edits- all remaining sections [[#1941](https://github.com/airyhq/airy/pull/1941)]
-- [[#1926](https://github.com/airyhq/airy/issues/1926)] Polishing the docs [[#1937](https://github.com/airyhq/airy/pull/1937)]
-- [[#1936](https://github.com/airyhq/airy/issues/1936)] Minor grammar edits- Getting Started [[#1938](https://github.com/airyhq/airy/pull/1938)]
-
-#### 🧰 Maintenance
-
-- Bump @babel/preset-typescript from 7.13.0 to 7.14.5 [[#1966](https://github.com/airyhq/airy/pull/1966)]
-- Bump webpack from 5.38.1 to 5.39.0 [[#1990](https://github.com/airyhq/airy/pull/1990)]
-- Bump @babel/core from 7.14.5 to 7.14.6 [[#1988](https://github.com/airyhq/airy/pull/1988)]
-- Bump @babel/plugin-transform-spread from 7.13.0 to 7.14.6 [[#1986](https://github.com/airyhq/airy/pull/1986)]
-- Bump @typescript-eslint/parser from 4.26.0 to 4.27.0 [[#1987](https://github.com/airyhq/airy/pull/1987)]
-- Bump @babel/plugin-proposal-class-properties from 7.13.0 to 7.14.5 [[#1979](https://github.com/airyhq/airy/pull/1979)]
-- Bump @babel/core from 7.14.3 to 7.14.5 [[#1977](https://github.com/airyhq/airy/pull/1977)]
-- Bump sass-loader from 12.0.0 to 12.1.0 [[#1978](https://github.com/airyhq/airy/pull/1978)]
-- Bump @babel/preset-react from 7.13.13 to 7.14.5 [[#1976](https://github.com/airyhq/airy/pull/1976)]
-- Bump @typescript-eslint/eslint-plugin from 4.26.0 to 4.26.1 [[#1947](https://github.com/airyhq/airy/pull/1947)]
-- Bump @reduxjs/toolkit from 1.5.1 to 1.6.0 [[#1949](https://github.com/airyhq/airy/pull/1949)]
-- Bump @babel/plugin-proposal-object-rest-spread from 7.14.4 to 7.14.5 [[#1965](https://github.com/airyhq/airy/pull/1965)]
-- Bump ssri from 6.0.1 to 6.0.2 in /docs [[#1964](https://github.com/airyhq/airy/pull/1964)]
-- Bump @types/react-dom from 17.0.6 to 17.0.7 [[#1950](https://github.com/airyhq/airy/pull/1950)]
-- Bump @types/react from 17.0.9 to 17.0.11 [[#1958](https://github.com/airyhq/airy/pull/1958)]
-- Bump prettier from 2.3.0 to 2.3.1 [[#1928](https://github.com/airyhq/airy/pull/1928)]
-- Bump sass from 1.34.0 to 1.34.1 [[#1905](https://github.com/airyhq/airy/pull/1905)]
-- Bump eslint from 7.27.0 to 7.28.0 [[#1930](https://github.com/airyhq/airy/pull/1930)]
-- Bump cypress from 7.4.0 to 7.5.0 [[#1944](https://github.com/airyhq/airy/pull/1944)]
-- Bump @types/node from 15.12.0 to 15.12.2 [[#1943](https://github.com/airyhq/airy/pull/1943)]
-- Bump webpack-cli from 4.7.0 to 4.7.2 [[#1942](https://github.com/airyhq/airy/pull/1942)]
-- Bump core-js from 3.13.1 to 3.14.0 [[#1929](https://github.com/airyhq/airy/pull/1929)]
-- Bump @types/node from 15.6.1 to 15.12.0 [[#1912](https://github.com/airyhq/airy/pull/1912)]
-
-#### Airy CLI
-
-You can download the Airy CLI for your operating system from the following links:
-
-[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.24.0/darwin/amd64/airy)
-[Linux](https://airy-core-binaries.s3.amazonaws.com/0.24.0/linux/amd64/airy)
-[Windows](https://airy-core-binaries.s3.amazonaws.com/0.24.0/windows/amd64/airy.exe)
-
-## 0.23.1 Hotfix
-
-[[#1921](https://github.com/airyhq/airy/issues/1921)] Hotfix: Facebook echo ingestion [[#1922](https://github.com/airyhq/airy/issues/1922)]
-
-## 0.23.0
-
-#### 🚀 Features
-
-- [[#1815](https://github.com/airyhq/airy/issues/1815)] Added emptyState for filtered items [[#1874](https://github.com/airyhq/airy/pull/1874)]
-- [[#1773](https://github.com/airyhq/airy/issues/1773)] Filter conversations by source [[#1864](https://github.com/airyhq/airy/pull/1864)]
-- [[#1850](https://github.com/airyhq/airy/issues/1850)] Added npm chatplugin library [[#1857](https://github.com/airyhq/airy/pull/1857)]
-- [[#1823](https://github.com/airyhq/airy/issues/1823)] Improve login/logout behavior [[#1840](https://github.com/airyhq/airy/pull/1840)]
-- [[#1616](https://github.com/airyhq/airy/issues/1616)] Customize instance type for AWS [[#1833](https://github.com/airyhq/airy/pull/1833)]
-- [[#1107](https://github.com/airyhq/airy/issues/1107)] Add demo gif docs [[#1851](https://github.com/airyhq/airy/pull/1851)]
-- [[#1650](https://github.com/airyhq/airy/issues/1650)] Message pagination [[#1651](https://github.com/airyhq/airy/pull/1651)]
-- [[#1693](https://github.com/airyhq/airy/issues/1693)] Move defaults to airy yaml [[#1700](https://github.com/airyhq/airy/pull/1700)]
-
-#### 🐛 Bug Fixes
-
-- [[#1732](https://github.com/airyhq/airy/issues/1732)] Fix display name search typo [[#1873](https://github.com/airyhq/airy/pull/1873)]
-- [[#1863](https://github.com/airyhq/airy/issues/1863)] Added SourceMessagePreview [[#1867](https://github.com/airyhq/airy/pull/1867)]
-- [[#1733](https://github.com/airyhq/airy/issues/1733)] Fix cypress tests [[#1876](https://github.com/airyhq/airy/pull/1876)]
-- [[#1865](https://github.com/airyhq/airy/issues/1865)] Fix chat plugin website installation url [[#1866](https://github.com/airyhq/airy/pull/1866)]
-- [[#1808](https://github.com/airyhq/airy/issues/1808)] Improved lastMessageSent [[#1821](https://github.com/airyhq/airy/pull/1821)]
-- [[#1837](https://github.com/airyhq/airy/issues/1837)] Improve facebook render library follow-up [[#1839](https://github.com/airyhq/airy/pull/1839)]
-- [[#1820](https://github.com/airyhq/airy/issues/1820)] Sending messages UX improvement: focus on input and send on Enter [[#1855](https://github.com/airyhq/airy/pull/1855)]
-- [[#1838](https://github.com/airyhq/airy/issues/1838)] Add call to pagination when filtering conversations [[#1852](https://github.com/airyhq/airy/pull/1852)]
-- [[#1843](https://github.com/airyhq/airy/issues/1843)] Fix Airy core reachability followup [[#1836](https://github.com/airyhq/airy/pull/1836)]
-- [[#1809](https://github.com/airyhq/airy/issues/1809)] Channels page breaks when there are too many channels [[#1822](https://github.com/airyhq/airy/pull/1822)]
-- [[#1798](https://github.com/airyhq/airy/issues/1798)] Fix not rendered content messages in facebook render library [[#1818](https://github.com/airyhq/airy/pull/1818)]
-- [[#1611](https://github.com/airyhq/airy/issues/1611)] Aligned svg files [[#1810](https://github.com/airyhq/airy/pull/1810)]
-- [[#1843](https://github.com/airyhq/airy/issues/1843)] Fix Airy core reachability [[#1835](https://github.com/airyhq/airy/pull/1835)]
-- [[#1342](https://github.com/airyhq/airy/issues/1342)] Fix dependabot failing PRs [[#1831](https://github.com/airyhq/airy/pull/1831)]
-- [[#1599](https://github.com/airyhq/airy/issues/1599)] Add health status to components endpoint [[#1799](https://github.com/airyhq/airy/pull/1799)]
-
-#### 📚 Documentation
-
-- [[#1853](https://github.com/airyhq/airy/issues/1853)] minor grammar edits sources + UI [[#1858](https://github.com/airyhq/airy/pull/1858)]
-- [[#1848](https://github.com/airyhq/airy/issues/1848)] Fix getting started-introduction [[#1849](https://github.com/airyhq/airy/pull/1849)]
-- [[#1813](https://github.com/airyhq/airy/issues/1813)] Update docs on conersations states [[#1814](https://github.com/airyhq/airy/pull/1814)]
-
-#### 🧰 Maintenance
-
-- Bump @typescript-eslint/eslint-plugin from 4.25.0 to 4.26.0 [[#1881](https://github.com/airyhq/airy/pull/1881)]
-- Bump @typescript-eslint/parser from 4.25.0 to 4.26.0 [[#1882](https://github.com/airyhq/airy/pull/1882)]
-- Bump @babel/preset-env from 7.14.2 to 7.14.4 [[#1869](https://github.com/airyhq/airy/pull/1869)]
-- Bump core-js from 3.13.0 to 3.13.1 [[#1872](https://github.com/airyhq/airy/pull/1872)]
-- Bump eslint-plugin-react from 7.23.2 to 7.24.0 [[#1870](https://github.com/airyhq/airy/pull/1870)]
-- Bump webpack from 5.37.1 to 5.38.1 [[#1862](https://github.com/airyhq/airy/pull/1862)]
-- Bump dns-packet from 1.3.1 to 1.3.4 [[#1860](https://github.com/airyhq/airy/pull/1860)]
-- Bump @bazel/typescript from 3.5.0 to 3.5.1 [[#1846](https://github.com/airyhq/airy/pull/1846)]
-- Bump dns-packet from 1.3.1 to 1.3.4 in /docs [[#1861](https://github.com/airyhq/airy/pull/1861)]
-- Bump @typescript-eslint/eslint-plugin from 4.24.0 to 4.25.0 [[#1841](https://github.com/airyhq/airy/pull/1841)]
-- Bump css-loader from 5.2.5 to 5.2.6 [[#1842](https://github.com/airyhq/airy/pull/1842)]
-- Bump @typescript-eslint/parser from 4.24.0 to 4.25.0 [[#1843](https://github.com/airyhq/airy/pull/1843)]
-- Bump core-js from 3.12.1 to 3.13.0 [[#1847](https://github.com/airyhq/airy/pull/1847)]
-- Bump cypress from 7.3.0 to 7.4.0 [[#1844](https://github.com/airyhq/airy/pull/1844)]
-- Bump @types/react from 17.0.6 to 17.0.8 [[#1845](https://github.com/airyhq/airy/pull/1845)]
-- Bump @bazel/bazelisk from 1.8.1 to 1.9.0 [[#1824](https://github.com/airyhq/airy/pull/1824)]
-- Bump sass from 1.33.0 to 1.34.0 [[#1825](https://github.com/airyhq/airy/pull/1825)]
-- Bump eslint from 7.26.0 to 7.27.0 [[#1826](https://github.com/airyhq/airy/pull/1826)]
-- Bump browserslist from 4.16.3 to 4.16.6 [[#1830](https://github.com/airyhq/airy/pull/1830)]
-- Bump @types/node from 15.3.1 to 15.6.1 [[#1829](https://github.com/airyhq/airy/pull/1829)]
-- Bump webpack from 5.37.0 to 5.37.1 [[#1812](https://github.com/airyhq/airy/pull/1812)]
-- Bump sass from 1.32.13 to 1.33.0 [[#1817](https://github.com/airyhq/airy/pull/1817)]
-- Bump css-loader from 5.2.4 to 5.2.5 [[#1816](https://github.com/airyhq/airy/pull/1816)]
-- Bump @types/react from 17.0.5 to 17.0.6 [[#1807](https://github.com/airyhq/airy/pull/1807)]
-- Bump copy-webpack-plugin from 8.1.1 to 9.0.0 [[#1827](https://github.com/airyhq/airy/pull/1827)]
-- Bump @types/node from 15.3.0 to 15.3.1 [[#1811](https://github.com/airyhq/airy/pull/1811)]
-
-#### Airy CLI
-
-You can download the Airy CLI for your operating system from the following links:
-
-[MacOS](https://airy-core-binaries.s3.amazonaws.com/0.23.0/darwin/amd64/airy)
-[Linux](https://airy-core-binaries.s3.amazonaws.com/0.23.0/linux/amd64/airy)
-[Windows](https://airy-core-binaries.s3.amazonaws.com/0.23.0/windows/amd64/airy.exe)
-
+
diff --git a/docs/docs/concepts/architecture.md b/docs/docs/concepts/architecture.md
index 556a33b70b..6264e9a9b8 100644
--- a/docs/docs/concepts/architecture.md
+++ b/docs/docs/concepts/architecture.md
@@ -9,7 +9,7 @@ Airy Core is a messaging platform that contains a backend and frontend system.
The `backend` system is a streaming platform. Its role is to:
-- Ingest conversational events from different sources (mostly via webhook
+- Ingest conversational events from different connectors (mostly via webhook
integrations), process them, and store them in an Apache Kafka cluster.
- Make the processed events available and accessible through the [Core API](/api/introduction).
- Expose conversational events via a [webhook](/api/webhook) integration.
@@ -35,11 +35,22 @@ All the credentials, keys and secrets which the user can overwrite can be config
- `{component-type}-{component}` ConfigMap - holding the configuration for individual sources and components
- `airy-config-map` ConfigMap - storing a copy of the `airy.yaml` config file, inside the Kubernetes cluster.
-## Sources
+## Apps
-- sources-`SOURCE_NAME`-webhook - Ingest events from the `SOURCE_NAME` source
-- sources-`SOURCE_NAME`-events-router - Process messages from a `SOURCE_NAME` source
-- sources-`SOURCE_NAME`-connector - Send and receive events (mostly messages) to and from a `SOURCE_NAME` source and extract metadata
+An App is a component or a collection of components which are interconnected and can be used to build any kind of application inside the Airy system.
+
+## Components
+
+A Component is a single unit which is used to build an App alone or together with other Components. There are different types of Components:
+
+- `connector` - a connector is a component which is used to ingest events from and to a different source.
+- `ui` - a UI component is a component which is used to display the events in a user interface.
+- `api` - an API component is a component which is used to expose the events to a third party.
+
+## Pods
+
+Since Airy is built on Kubernetes pods are the smallest deployable unit and therefore are used to compose components.
+A Component can have multiple Services / Pods.
## API
diff --git a/docs/docs/getting-started/installation/minikube.md b/docs/docs/getting-started/installation/minikube.md
index 9f94ff837f..6853e8c9b2 100644
--- a/docs/docs/getting-started/installation/minikube.md
+++ b/docs/docs/getting-started/installation/minikube.md
@@ -16,6 +16,13 @@ your local machine using [minikube](https://minikube.sigs.k8s.io/).
## Create a minikube cluster
+:::note
+
+By default the UI and the API will be available at `http://localhost`.
+Make sure you don't have any other process using port 80 on your localhost interface
+
+:::
+
First install minikube using [their documentation](https://kubernetes.io/de/docs/tasks/tools/install-minikube/). Minikube version v1.19.0 or higher is required.
Next you also need to install the [Airy CLI](cli/introduction.md). Now you can run this command, which will create a new
@@ -29,18 +36,36 @@ This will execute the following actions:
1. Create the `my-airy` directory and populate it with the configuration that the CLI will need. All subsequent commands need to either be run from this directory or use the `--workspace` flag.
2. Start a minikube cluster on your system and install Airy Core on it.
-3. Print URLs for accessing the UIs and APIs (see recording).
+3. Prints a URL for the `Airy Core` UI/APIs and another `ngrok` tunnel URL to connect your `Airy Core` instance to different [sources](../../sources/introduction.md) (see recording)
import Script from "@site/src/components/Script";
+::: note
+
+The base URL for the [API](../../api/introduction.md) is the same to access the UI through your browser.
+
+:::
+
+To customize your Minikube instance, you can adjust the `driver`, `cpus` and `memory` attributes in the following manner:
+
+```
+airy create --provider=minikube --provider-config driver=virtualbox,cpus=4,memory=8192 my-airy
+```
+
If you want to customize your `Airy Core` instance please see our [Configuration
Section](configuration.md).
After the installation, you can also interact with the components of `Airy Core` with the [kubectl](https://kubernetes.io/docs/tasks/tools/) command line utility.
`airy create` adds the kubeconfig of your Airy Core instance to the default kubeconfig file `~/.kube/config`, under the context `airy-core`.
+:::note
+
+If the `airy create` command fails and you have installed a hypervisor for the first time, double-check that you have given it all the necessary permissions on your local machine.
+
+:::
+
## Integrate public webhooks
In order to integrate with the webhook of most sources on your local machine, we
diff --git a/docs/docs/getting-started/installation/security.md b/docs/docs/getting-started/installation/security.md
index 04d2c45bc9..35a0c07989 100644
--- a/docs/docs/getting-started/installation/security.md
+++ b/docs/docs/getting-started/installation/security.md
@@ -20,7 +20,7 @@ security:
After you apply this configuration, you can query the API with the appropriate systemToken:
```sh
-curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer my-token-for-the-api" http://airy.core/conversations.list
+curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer my-token-for-the-api" http://localhost/conversations.list
```
diff --git a/docs/docs/getting-started/quickstart.md b/docs/docs/getting-started/quickstart.md
index 61c9624777..e8e07cc0dd 100644
--- a/docs/docs/getting-started/quickstart.md
+++ b/docs/docs/getting-started/quickstart.md
@@ -49,7 +49,7 @@ first integration because it does not require any configuration.
curl -H "Content-Type: application/json" -d \
"{
\"name\": \"chat plugin source\"
-}" http://airy.core/channels.chatplugin.connect
+}" http://localhost/channels.chatplugin.connect
```
@@ -64,7 +64,7 @@ browser. This authenticates the chat plugin and enables you to send messages
immediately:
```
-http://airy.core/chatplugin/ui/example?channel_id=
+http://localhost/chatplugin/ui/example?channel_id=
```
You can now type a message in the text box and send it 🎉
@@ -78,7 +78,7 @@ conversations](/api/endpoints/conversations.md#list) for the channel you have ju
created. It should return the message you have just sent.
```shell script
-curl -XPOST http://airy.core/conversations.list | jq .
+curl -XPOST http://localhost/conversations.list | jq .
```
diff --git a/docs/docs/guides/contributing.md b/docs/docs/guides/contributing.md
index 4828ea12b7..e2223662d7 100644
--- a/docs/docs/guides/contributing.md
+++ b/docs/docs/guides/contributing.md
@@ -163,6 +163,7 @@ Branches must abide to the following format:
- `feature` or `feat` are used for feature branches
- `bug`, `fix`, `hotfix` are used for bug fixes
+- `enhancement` is used for improvements of existing features
- `doc` or `docs` are used for documentation changes
- `chore` is used for maintenance tasks on the repo
@@ -174,6 +175,7 @@ Given these conventions here are a few examples:
feat/42-the-meaning-of-life
bug/24-say-the-vat-is-good
hotfix/4242-til-json-is-not-a-subset-of-js
+enhancement/3333-speed-up-airy-instance-creation
```
### Commits
@@ -182,7 +184,7 @@ To keep a clean track of what is being released, every feature must contain only
one commit when merged. The commit message of the squashed commit is very
important, since it will be used to keep track of the features in a release.
-The conventional format is: `[#issue] - description`. For the example, if your
+The conventional format is: `[#issue] Description` (`Description` must start with a capital letter). For the example, if your
pull request refers to the issue "Introduce meaning of life" with number 42,
the squashed commit message must be:
diff --git a/docs/docs/integrations/rasa-assistant.md b/docs/docs/integrations/rasa-assistant.md
index 6f367378bc..09172f34f6 100644
--- a/docs/docs/integrations/rasa-assistant.md
+++ b/docs/docs/integrations/rasa-assistant.md
@@ -91,7 +91,7 @@ Add the configuration values to your existing Rasa `credentials.yml`:
```yaml
channels.airy.AiryInput:
- api_host: "http://airy.core"
+ api_host: "http://localhost"
system_token: "the system api token for Airy Core"
```
diff --git a/docs/docs/integrations/rasa-suggested-replies.md b/docs/docs/integrations/rasa-suggested-replies.md
index d4dc73f82d..d046f6b39f 100644
--- a/docs/docs/integrations/rasa-suggested-replies.md
+++ b/docs/docs/integrations/rasa-suggested-replies.md
@@ -96,5 +96,5 @@ Now we need to stop the server and retrain the model:
rasa train
```
-Finally, we start the Rasa server, open the Airy Inbox (at `http://airy.core` for local deployments), where we should
+Finally, we start the Rasa server, open the Airy Inbox (at `http://localhost` for local deployments), where we should
see the suggested replies whenever a contact greets us (see gif above).
diff --git a/docs/docs/sources/chatplugin/installation.md b/docs/docs/sources/chatplugin/installation.md
index 150c8f3ae0..4b21d91e83 100644
--- a/docs/docs/sources/chatplugin/installation.md
+++ b/docs/docs/sources/chatplugin/installation.md
@@ -24,14 +24,14 @@ the `` section:
You must replace `CHANNEL_ID` with the channel ID obtained when
[connecting](#connecting-a-channel) the source and `SCRIPT_HOST` with the host
of your Chat Plugin server. When using the local minikube environment
-`SCRIPT_HOST` must be set to `airy.core`.
+`SCRIPT_HOST` must be set to `localhost`.
:::note
-`airy.core` is not publicly accessible. The setup will only work for local web pages.
+`localhost` is not publicly accessible. The setup will only work for local web pages.
:::
To test the setup, replace the `CHANNEL_ID` in the URL
-`http://airy.core/chatplugin/ui/example?channel_id=CHANNEL_ID` and open it in your
+`http://localhost/chatplugin/ui/example?channel_id=CHANNEL_ID` and open it in your
browser.
diff --git a/docs/docs/sources/chatplugin/quickstart.md b/docs/docs/sources/chatplugin/quickstart.md
index 65b822e1b1..901b593fa7 100644
--- a/docs/docs/sources/chatplugin/quickstart.md
+++ b/docs/docs/sources/chatplugin/quickstart.md
@@ -62,7 +62,7 @@ import ConnectChatPlugin from '../../api/endpoints/connect-chatPlugin.mdx'
curl -H "Content-Type: application/json" -d \
"{
\"name\": \"chat plugin source\"
-}" http://airy.core/channels.chatplugin.connect
+}" http://localhost/channels.chatplugin.connect
```
@@ -111,7 +111,7 @@ browser. This authenticates the chat plugin and enables you to send messages
immediately:
```
-http://airy.core/chatplugin/ui/example?channel_id=
+http://localhost/chatplugin/ui/example?channel_id=
```
You can now type a message in the text box and send it 🎉
@@ -129,7 +129,7 @@ created. it should return the message you have just sent.
```sh
-curl -XPOST http://airy.core/conversations.list | jq .
+curl -XPOST http://localhost/conversations.list | jq .
```
The [Inbox UI](/ui/inbox/introduction) lists all your [conversations](/getting-started/glossary/#conversation), across all [sources](/getting-started/glossary/#source).
diff --git a/docs/docs/sources/introduction.md b/docs/docs/sources/introduction.md
index e0e188ac53..d57ebdfe7f 100644
--- a/docs/docs/sources/introduction.md
+++ b/docs/docs/sources/introduction.md
@@ -39,7 +39,7 @@ icon={}
title='Connectors'
iconInvertible={true}
description='With the Control Center UI you can connect your connectors via UI'
-link='http://airy.core/ui/control-center/introduction'
+link='http://localhost/ui/control-center/introduction'
/>
## Sources guides
diff --git a/frontend/chat-plugin/lib/src/AiryChatPlugin.tsx b/frontend/chat-plugin/lib/src/AiryChatPlugin.tsx
index 416bd9643e..13739bab03 100644
--- a/frontend/chat-plugin/lib/src/AiryChatPlugin.tsx
+++ b/frontend/chat-plugin/lib/src/AiryChatPlugin.tsx
@@ -7,6 +7,7 @@ import Chat from './components/chat';
type AiryChatPluginProps = {
config: AiryChatPluginConfiguration;
className?: string;
+ bubbleState?: 'expanded' | 'minimized';
};
const DEFAULT_WIDTH = 380;
@@ -26,23 +27,29 @@ export const AiryChatPlugin = (props: AiryChatPluginProps) => {
window.addEventListener('resize', handleResize);
if (
- (config.config?.useCustomFont === undefined || config.config?.useCustomFont) &&
- config.config.customFont !== 'Arial'
- ) {
- const link = document.createElement('link');
- link.setAttribute('rel', 'stylesheet');
- link.setAttribute('type', 'text/css');
- link.setAttribute(
- 'href',
- `https://fonts.googleapis.com/css?family=${config.config?.customFont || 'Lato'}:300,400,700,900`
- );
- document.getElementsByTagName('head')[0].appendChild(link);
- }
+ props.bubbleState === 'minimized'
+ ? (config.config.bubbleState = 'minimized')
+ : (config.config.bubbleState = 'expanded')
+ )
+ if (
+ (config.config?.useCustomFont === undefined || config.config?.useCustomFont) &&
+ config.config.customFont !== 'Arial'
+ ) {
+ const link = document.createElement('link');
+ link.setAttribute('rel', 'stylesheet');
+ link.setAttribute('type', 'text/css');
+ link.setAttribute(
+ 'href',
+ `https://fonts.googleapis.com/css?family=${config.config?.customFont || 'Lato'}:300,400,700,900`
+ );
+ document.getElementsByTagName('head')[0].appendChild(link);
+ }
const chatpluginStyle = {
background: 'transparent',
- width: windowWidth < 420 ? windowWidth : Math.min(config.config?.width ?? DEFAULT_WIDTH, windowWidth),
- height: windowHeight < 700 ? windowHeight : Math.min(config.config?.height ?? DEFAULT_HEIGHT, windowHeight),
+ width: windowWidth < 420 ? windowWidth : Math.min((config.config?.width as number) ?? DEFAULT_WIDTH, windowWidth),
+ height:
+ windowHeight < 700 ? windowHeight : Math.min((config.config?.height as number) ?? DEFAULT_HEIGHT, windowHeight),
...customStyle(config),
};
@@ -59,6 +66,12 @@ export const AiryChatPlugin = (props: AiryChatPluginProps) => {
const customStyle = (config: AiryChatPluginConfiguration) => {
return {
+ ...(config.config?.headerTextColor && {
+ '--color-text-contrast': config.config?.headerTextColor,
+ }),
+ ...(config.config?.subtitleTextColor && {
+ '--color-text-contrast': config.config?.subtitleTextColor,
+ }),
...(config.config?.primaryColor && {
'--color-airy-blue': config.config?.primaryColor,
'--color-airy-message-outbound': config.config?.primaryColor,
diff --git a/frontend/chat-plugin/lib/src/airyRenderProps/AiryHeaderBar/index.tsx b/frontend/chat-plugin/lib/src/airyRenderProps/AiryHeaderBar/index.tsx
index c520bc5a86..57216e3a64 100644
--- a/frontend/chat-plugin/lib/src/airyRenderProps/AiryHeaderBar/index.tsx
+++ b/frontend/chat-plugin/lib/src/airyRenderProps/AiryHeaderBar/index.tsx
@@ -16,18 +16,12 @@ const AiryHeaderBar = (props: AiryHeaderBarProps) => {
const {config} = props;
const customStyle = {
- ...(config?.accentColor && {
- color: config?.accentColor,
- }),
...(config?.headerTextColor && {
color: config?.headerTextColor,
}),
};
const customStyleSubtitle = {
- ...(config?.accentColor && {
- color: config?.accentColor,
- }),
...(config?.subtitleTextColor && {
color: config?.subtitleTextColor,
}),
diff --git a/frontend/chat-plugin/lib/src/airyRenderProps/AiryInputBar/index.module.scss b/frontend/chat-plugin/lib/src/airyRenderProps/AiryInputBar/index.module.scss
index cda06a433d..fb40a29038 100644
--- a/frontend/chat-plugin/lib/src/airyRenderProps/AiryInputBar/index.module.scss
+++ b/frontend/chat-plugin/lib/src/airyRenderProps/AiryInputBar/index.module.scss
@@ -7,7 +7,7 @@
align-items: center;
padding: 8px 0;
margin: 0 8px;
- border-top: 1px solid var(--color-template-gray);
+ border-top: 1px solid var(--color-very-light-grey);
max-height: 100px;
min-height: 42px;
}
@@ -167,8 +167,8 @@
.actionToolTip {
@include font-s;
position: absolute;
- background-color: var(--color-text-contrast);
- color: white;
+ background-color: var(--color-background-gray);
+ color: var(--color-text-contrast);
border-radius: 4px;
padding: 2px 8px;
display: none;
@@ -197,7 +197,7 @@
}
.iconButton:hover {
- background-color: var(--color-background-blue);
+ background-color: var(--color-button-light-blue);
border-radius: 50%;
svg {
diff --git a/frontend/chat-plugin/lib/src/components/chat/index.tsx b/frontend/chat-plugin/lib/src/components/chat/index.tsx
index ff4a22b9a4..e84f5c30a8 100644
--- a/frontend/chat-plugin/lib/src/components/chat/index.tsx
+++ b/frontend/chat-plugin/lib/src/components/chat/index.tsx
@@ -43,6 +43,15 @@ const defaultWelcomeMessage: Message = {
sender: {id: '12345'},
};
+const defaultWelcomeMessageContact: Message = {
+ id: '3218319-9b47-4e18-9f79-fd1998b931281',
+ content: {text: `Hej! What's your opening hours?`},
+ deliveryState: DeliveryState.delivered,
+ fromContact: true,
+ sentAt: new Date(),
+ sender: {id: '56789'},
+};
+
type Props = AiryChatPluginConfiguration;
const Chat = ({config, ...props}: Props) => {
@@ -67,7 +76,9 @@ const Chat = ({config, ...props}: Props) => {
const [installError, setInstallError] = useState('');
const [animation, setAnimation] = useState('');
const [isChatHidden, setIsChatHidden] = useState(chatHiddenInitialState());
- const [messages, setMessages] = useState([defaultWelcomeMessage]);
+ const [messages, setMessages] = useState(
+ config.showMode ? [defaultWelcomeMessage, defaultWelcomeMessageContact] : [defaultWelcomeMessage]
+ );
const [messageString, setMessageString] = useState('');
const [dragAndDropFile, setDragAndDropFile] = useState(null);
const [connectionState, setConnectionState] = useState(null);
@@ -87,7 +98,7 @@ const Chat = ({config, ...props}: Props) => {
!isChatHidden && setUnreadMessage(false);
- localStorage.setItem('messagesLength', `${messageLengthRef.current}`);
+ messageLengthRef.current && localStorage.setItem('messagesLength', `${messageLengthRef.current}`);
messageLengthRef.current = messages.length;
}, [isChatHidden, messages]);
@@ -116,6 +127,10 @@ const Chat = ({config, ...props}: Props) => {
setNewConversation(true);
}, []);
+ useEffect(() => {
+ (config.bubbleState === 'minimized') != isChatHidden && ctrl.toggleHideChat();
+ }, [config.bubbleState]);
+
const setInitialMessages = (initialMessages: Array) => {
setMessages([...messages, ...initialMessages]);
};
diff --git a/frontend/chat-plugin/lib/src/config.ts b/frontend/chat-plugin/lib/src/config.ts
index 842138fe83..3b4cbda880 100644
--- a/frontend/chat-plugin/lib/src/config.ts
+++ b/frontend/chat-plugin/lib/src/config.ts
@@ -22,8 +22,8 @@ export type Config = {
unreadMessageDotColor?: string;
sendMessageIcon?: string;
showMode?: boolean;
- height?: number;
- width?: number;
+ height?: number | string;
+ width?: number | string;
disableMobile?: boolean;
bubbleState?: 'expanded' | 'minimized';
closeMode?: 'basic' | 'medium' | 'full';
diff --git a/frontend/control-center/src/actions/channel/index.ts b/frontend/control-center/src/actions/channel/index.ts
index bb661e20a4..544fb9a60e 100644
--- a/frontend/control-center/src/actions/channel/index.ts
+++ b/frontend/control-center/src/actions/channel/index.ts
@@ -60,7 +60,7 @@ export const connectInstagramChannel =
export const connectChatPlugin = (requestPayload: ConnectChatPluginRequestPayload) => async (dispatch: Dispatch) =>
HttpClientInstance.connectChatPluginChannel(requestPayload).then((response: Channel) => {
dispatch(addChannelsAction([response]));
- return Promise.resolve(response);
+ return Promise.resolve(response.id);
});
export const connectTwilioSms = (requestPayload: ConnectTwilioSmsRequestPayload) => async (dispatch: Dispatch) =>
diff --git a/frontend/control-center/src/actions/components/index.ts b/frontend/control-center/src/actions/components/index.ts
new file mode 100644
index 0000000000..6d81976cde
--- /dev/null
+++ b/frontend/control-center/src/actions/components/index.ts
@@ -0,0 +1,21 @@
+import {Dispatch} from 'react';
+import {createAction} from 'typesafe-actions';
+import {HttpClientInstance} from '../../httpClient';
+import {EnableDisableComponentRequestPayload} from 'httpclient/src';
+
+const ENABLE_DISABLE_COMPONENT = '@@component/ENABLE_DISABLE';
+
+export const enableDisableComponentAction = createAction(
+ ENABLE_DISABLE_COMPONENT,
+ (components: EnableDisableComponentRequestPayload) => ({
+ components,
+ })
+)<{components: EnableDisableComponentRequestPayload}>();
+
+export const enableDisableComponent =
+ (enableDisableComponentRequestPayload: EnableDisableComponentRequestPayload) => (dispatch: Dispatch) => {
+ return HttpClientInstance.enableDisableComponent(enableDisableComponentRequestPayload).then(() => {
+ dispatch(enableDisableComponentAction(enableDisableComponentRequestPayload));
+ return Promise.resolve(true);
+ });
+ };
diff --git a/frontend/control-center/src/actions/index.ts b/frontend/control-center/src/actions/index.ts
index 1535d11308..c859647eea 100644
--- a/frontend/control-center/src/actions/index.ts
+++ b/frontend/control-center/src/actions/index.ts
@@ -2,3 +2,4 @@ export * from './channel';
export * from './metadata';
export * from './config';
export * from './webhook';
+export * from './components';
diff --git a/frontend/control-center/src/pages/Connectors/ConnectedChannelsList/index.tsx b/frontend/control-center/src/pages/Connectors/ConnectedChannelsList/index.tsx
index 2519a1e15e..694ac519bc 100644
--- a/frontend/control-center/src/pages/Connectors/ConnectedChannelsList/index.tsx
+++ b/frontend/control-center/src/pages/Connectors/ConnectedChannelsList/index.tsx
@@ -74,11 +74,11 @@ const ConnectedChannelsList = () => {
const firstPageIndex = (currentPage - 1) * pageSize;
const lastPageIndex = firstPageIndex + pageSize;
return filteredChannels.slice(firstPageIndex, lastPageIndex);
- }, [currentPage, pageSize]);
+ }, [currentPage, pageSize, channels.length]);
useEffect(() => {
getInfo();
- }, [source, channels]);
+ }, [source]);
const getInfo = () => {
let ROUTE;
diff --git a/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.module.scss b/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.module.scss
index 6d843d3420..771f8c2b49 100644
--- a/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.module.scss
+++ b/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.module.scss
@@ -6,16 +6,48 @@
color: var(--color-text-contrast);
display: block;
border-radius: 10px;
- padding-left: 96px;
- padding-top: 88px;
width: 100%;
- padding: 32px;
- margin: 88px 1.5em 0 191px;
+ margin: 162px 1.5em 0 191px;
height: calc(100vh - 88px);
overflow-y: scroll;
}
-.headline {
+.container {
+ display: flex;
+ width: 100%;
+}
+
+.headlineContainer {
+ display: flex;
+ flex-direction: column;
+ position: absolute;
+ padding-left: 10px;
+ margin: 88px 1.5em 0 191px;
+ h1 {
+ @include font-xl;
+ font-weight: bold;
+ }
+ button {
+ height: 20px;
+ background: transparent;
+ }
+}
+
+.backButtonContainer {
+ display: flex;
+ align-items: center;
+ flex-direction: row;
+}
+
+.infoBox {
+ margin: 0;
+ button {
+ padding-left: 4px;
+ border: none;
+ }
+ svg {
+ color: var(--color-text-gray);
+ }
h1 {
@include font-xl;
font-weight: bold;
@@ -34,41 +66,20 @@
}
.backIcon {
- height: 13px;
- width: 17px;
+ width: 24px;
+ background: transparent;
path {
- fill: var(--color-airy-blue);
+ fill: var(--color-text-gray);
}
margin-right: 8px;
}
-.newPageParagraph {
- margin: 24px 0;
- color: var(--color-text-gray);
-}
-
-.updatePageParagraph {
- margin: 24px 0;
- color: var(--color-text-gray);
-}
-
.formWrapper {
display: flex;
}
-.formRow {
- margin-bottom: 16px;
-}
-
-.settings {
- width: 20rem;
-}
-
-.headline {
- display: flex;
-}
-
.headlineText {
+ color: var(--color-text-contrast);
flex-grow: 1;
}
@@ -110,51 +121,57 @@
border-radius: 100%;
}
-.tabView {
+.channelsLineContainer {
+ width: 100%;
display: flex;
- margin-bottom: 16px;
- list-style-type: none;
-
- li {
- margin-right: 16px;
+ flex-direction: column;
+ span {
+ @include font-base;
}
}
-.tabEntrySelected {
- border-bottom: 2px solid var(--color-airy-blue);
- a {
- color: var(--color-text-contrast);
- font-weight: bold;
- text-decoration: none;
- }
+.channelsLineItems {
+ display: flex;
}
-.tabEntry {
- a {
- color: var(--color-airy-blue);
- text-decoration: none;
+.activeItem {
+ display: flex;
+ justify-content: center;
+ margin-top: 16px;
+ font-weight: 700;
+ background: transparent;
+ height: 42px;
+ width: 150px;
+ color: var(--color-airy-blue);
+ border-bottom: 5px solid var(--color-airy-blue);
+ z-index: 1;
+ &:hover {
+ cursor: pointer;
}
}
-.installHint {
- font-weight: bold;
- margin-bottom: 8px;
- code {
- color: var(--color-red-alert);
- background-color: var(--color-background-gray);
- padding: 2px;
+.inactiveItem {
+ display: flex;
+ justify-content: center;
+ margin-top: 16px;
+ font-weight: 700;
+ background: transparent;
+ height: 32px;
+ width: 150px;
+ border-bottom: 5px solid transparent;
+ color: var(--color-text-gray);
+ z-index: 1;
+ &:hover {
+ cursor: pointer;
}
}
-.codeArea {
- @include font-base;
- width: 40em;
- height: 19.2em;
- background-color: var(--color-background-gray);
- color: var(--color-text-contrast);
- border-radius: 8px;
- border: 1px solid var(--color-dark-elements-gray);
- resize: none;
- padding: 8px;
- margin-bottom: 16px;
+.line {
+ width: 100%;
+ height: 1px;
+ background: rgb(202, 213, 219);
+ display: flex;
+ position: relative;
+ top: -3px;
+ left: 0px;
}
diff --git a/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.tsx b/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.tsx
index 05296dc7d7..011eaac5fe 100644
--- a/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.tsx
+++ b/frontend/control-center/src/pages/Connectors/Providers/Airy/ChatPlugin/ChatPluginConnect.tsx
@@ -1,4 +1,4 @@
-import React from 'react';
+import React, {useState} from 'react';
import {connect, ConnectedProps} from 'react-redux';
import {Link, useNavigate, useParams} from 'react-router-dom';
@@ -7,24 +7,28 @@ import {StateModel} from '../../../../../reducers';
import {allChannels} from '../../../../../selectors/channels';
import {connectChatPlugin, updateChannel, disconnectChannel} from '../../../../../actions';
-import {Button, LinkButton, InfoButton} from 'components';
+import {LinkButton, InfoButton} from 'components';
import {Channel} from 'model';
import {ConnectNewChatPlugin} from './sections/ConnectNewChatPlugin';
-import {EditChatPlugin} from './sections/EditChatPlugin';
import {ReactComponent as AiryAvatarIcon} from 'assets/images/icons/airyAvatar.svg';
-import {ReactComponent as ArrowLeftIcon} from 'assets/images/icons/arrowLeft.svg';
+import {ReactComponent as ArrowLeftIcon} from 'assets/images/icons/leftArrowCircle.svg';
import styles from './ChatPluginConnect.module.scss';
-import {
- CONNECTORS_CHAT_PLUGIN_ROUTE,
- CONNECTORS_CONNECTED_ROUTE,
- CATALOG_CONNECTED_ROUTE,
- CATALOG_CHAT_PLUGIN_ROUTE,
-} from '../../../../../routes/routes';
+import {CONNECTORS_CHAT_PLUGIN_ROUTE, CATALOG_CHAT_PLUGIN_ROUTE} from '../../../../../routes/routes';
import {useTranslation} from 'react-i18next';
+import CreateUpdateSection from './sections/CreateUpdateSection/CreateUpdateSection';
+import {CustomiseSection} from './sections/CustomiseSection/CustomiseSection';
+import {InstallSection} from './sections/InstallSection/InstallSection';
+import {ChatpluginConfig, DefaultConfig} from 'model';
+
+export enum Pages {
+ createUpdate = 'create-update',
+ customization = 'customization',
+ install = 'install',
+}
const mapDispatchToProps = {
connectChatPlugin,
@@ -41,11 +45,13 @@ const connector = connect(mapStateToProps, mapDispatchToProps);
const ChatPluginConnect = (props: ConnectedProps) => {
const {channelId} = useParams();
+ const currentChannel = props.channels.find((channel: Channel) => channel.id === channelId);
+ const [chatpluginConfig, setChatpluginConfig] = useState(DefaultConfig);
+ const [currentPage, setCurrentPage] = useState(Pages.createUpdate);
+ const displayName = currentChannel?.metadata?.name || '';
+ const imageUrl = currentChannel?.metadata?.imageUrl || '';
const navigate = useNavigate();
const {t} = useTranslation();
- const CONNECTED_ROUTE = location.pathname.includes('connectors')
- ? CONNECTORS_CONNECTED_ROUTE
- : CATALOG_CONNECTED_ROUTE;
const CHAT_PLUGIN_ROUTE = location.pathname.includes('connectors')
? CONNECTORS_CHAT_PLUGIN_ROUTE
: CATALOG_CHAT_PLUGIN_ROUTE;
@@ -58,24 +64,56 @@ const ChatPluginConnect = (props: ConnectedProps) => {
imageUrl: imageUrl,
}),
})
- .then(() => {
- navigate(CONNECTED_ROUTE + '/chatplugin', {replace: true});
+ .then((id: string) => {
+ navigate(`${CHAT_PLUGIN_ROUTE}/${id}`);
});
};
- const updateConnection = (displayName: string, imageUrl?: string) => {
- props.updateChannel({channelId: channelId, name: displayName, imageUrl: imageUrl}).then(() => {
- navigate(CONNECTED_ROUTE + '/chatplugin', {replace: true});
- });
- };
-
const disconnectChannel = (channel: Channel) => {
if (window.confirm(t('deleteChannel'))) {
props.disconnectChannel({source: 'chatplugin', channelId: channel.id});
}
};
- const openNewPage = () => navigate(CHAT_PLUGIN_ROUTE + '/new');
+ const showCreateUpdate = (event: React.MouseEvent) => {
+ event.preventDefault();
+ setCurrentPage(Pages.createUpdate);
+ };
+
+ const showCustomization = (event: React.MouseEvent) => {
+ event.preventDefault();
+ setCurrentPage(Pages.customization);
+ };
+
+ const showInstall = (event: React.MouseEvent) => {
+ event.preventDefault();
+ setCurrentPage(Pages.install);
+ };
+
+ const PageContent = () => {
+ switch (currentPage) {
+ case Pages.createUpdate:
+ if (channelId === 'new') {
+ return ;
+ }
+ if (channelId?.length > 0) {
+ return ;
+ }
+ return ;
+ case Pages.customization:
+ return ;
+ case Pages.install:
+ return (
+