Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding inkeep widget #3711

Closed
wants to merge 29 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
13ff92d
updating dependencies
nick-inkeep Jul 3, 2023
6547ecc
stable
nick-inkeep Jul 4, 2023
c045029
updating to mdx files and fixing parser issues
nick-inkeep Jul 4, 2023
9509576
addressing issues with mdx formatting of some existing files
nick-inkeep Jul 4, 2023
d2248a9
moving identifier config to config.js
nick-inkeep Jul 4, 2023
d3cdf8b
Merge branch 'next' of https://github.com/novuhq/novu into adding-ink…
nick-inkeep Jul 4, 2023
d03c226
removing algolia artifacts
nick-inkeep Jul 4, 2023
4e5f5ff
updating acorn libraries
nick-inkeep Jul 4, 2023
01ddc6b
removing algolia scss file
nick-inkeep Jul 4, 2023
34bd179
bumping inkeep widget version for minor dark mode improvements
nick-inkeep Jul 4, 2023
0b2a9da
Merge branch 'main' of https://github.com/novuhq/novu into adding-ink…
nick-inkeep Jul 10, 2023
4b4f060
renaming files to end with mdx
nick-inkeep Jul 10, 2023
60aab30
making inkeep widget render client side only
nick-inkeep Jul 10, 2023
1e0fc35
mergin with novuhq next
nick-inkeep Jul 10, 2023
da85586
merging with latest, making widget render client side only
nick-inkeep Jul 11, 2023
8135e77
use inkeep settings
nick-inkeep Jul 11, 2023
cf9d6f1
feat: Add types for useColorMode functionality
nick-inkeep Jul 14, 2023
51a3946
feat: Add types for useColorMode functionality
nick-inkeep Jul 14, 2023
ba710a4
feat: Add types for useColorMode functionality
nick-inkeep Jul 14, 2023
d7e67b5
feat: removing misc. from package.json in docs
nick-inkeep Jul 14, 2023
409fb14
feat: adding inkeep to cspell.json
nick-inkeep Jul 14, 2023
a5b2aed
feat: Adding Infimia and blyuv to cspell
nick-inkeep Jul 14, 2023
0fefb76
feat: Adding missing dependency of novu/testing which and regeneratin…
nick-inkeep Jul 19, 2023
84ea847
feat: trying new pnpm-lock.yaml
nick-inkeep Jul 19, 2023
14bd197
feat: Updating with next branch from the novuhq repo and adopting the…
nick-inkeep Jul 24, 2023
f8ecfd3
feat: Did a fresh pnpm-lock.yaml file
nick-inkeep Jul 24, 2023
cbf6a53
feat: Made fresh pnpm-lock.yaml file
nick-inkeep Jul 24, 2023
163bfc2
feat: Adding docs build command to root package.json
nick-inkeep Jul 24, 2023
d0b8733
feat: Updating pnpm-lock.yaml for packages/application-generic which …
nick-inkeep Jul 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -488,6 +488,10 @@
"codesandbox",
"GROUPBY",
"stefanprodan",
"inkeep",
"Inkeep",
"Infima",
"blyuv",
"Sendchamp",
"sendchamp"
],
Expand Down Expand Up @@ -568,7 +572,7 @@
".eslintrc.js",
".vscode/settings.json",
"*/**/.vscode/settings.json",
"docs/src/usage-examples.md",
"docs/src/usage-examples.mdx",
"apps/worker/README.md",
".gitignore",
"angular.json",
Expand Down
2 changes: 1 addition & 1 deletion docs/.prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
build
package.json
yarn.lock
*.md
*.mdx
.docusaurus
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Novu will manage the OAuth flow and store the credentials

- SUBSCRIBER_ID is a custom identifier used when identifying your users within the Novu platform. [Read more here](/platform/subscribers). <br/>
- ENVIRONMENT_ID is a context of an environment you can locate your environment id in the setting in the dashboard . <a href="https://web.novu.co/settings" style={{textDecoration: "underline"}}>Settings</a>.
<br/>
<br />
- INTEGRATION_IDENTIFIER optional, is a unique identifier of the integration. You can locate your integration identifier in the <a href="https://web.novu.co/integrations" style={{textDecoration: "underline"}}>Integration Store</a>. When not provided the last created integration will be used.

If you are using the `Add to Slack` button you have to provide the `Shareable URL` as the `redirect_uri` parameter like in this example. Make sure that the `Sharaeble URL` is url encoded.
Expand Down Expand Up @@ -62,8 +62,8 @@ If you are using the `Add to Slack` button you have to provide the `Shareable UR
Create a new endpoint on your server that will handle the following steps (you can use Request Bin for an easy HTTPS service for redirects):

1. Listen for redirect requests to your endpoint (REDIRECT_URL) after the user completes step 5 and grants permissions. Make sure to store the 'code' parameter from the request query as it will be needed later.
2. Send a POST request to <https://slack.com/api/oauth.v2.access> with the following request body:
Use the "Client ID" and "Client Secret" from Slack's Developer Dashboard under "Basic Information". The request body should be in the format: { code: string, client_id: string, client_secret: string }.
2. Send a POST request to `https://slack.com/api/oauth.v2.access` with the following request body:
Use the "Client ID" and "Client Secret" from Slack's Developer Dashboard under "Basic Information". The request body should be in the format: `{ code: string, client_id: string, client_secret: string }`.
Store the webhook URL from the response, which can be found under `response.data.incoming_webhook.url`.
(read more on Slack's documentation here)
3. When the `incoming_webhook.url` is obtained you need to save it on the relevant subscriber entity in Novu you can use the Node SDK:
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

---

sidebar_label: APNS
sidebar_position: 3

---

# Apple Push Notification Service
Expand All @@ -12,6 +17,7 @@ Apple provides two authentication methods to make a secure connection to APNs. T
To enable APNS integration, you need to create an [Apple Developer](https://developer.apple.com) account with [Admin role](https://appstoreconnect.apple.com/access/users).

To generate the p8 key for your account:

<br />

1. Head over to **Certificates, Identifiers & Profiles > Keys**.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

---

sidebar_label: Expo Push
sidebar_position: 2

---

# Expo Push
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,12 @@ Make sure your service account json content contains these fields

The overrides field supports apns, android, webpush and fcmOptions overrides

| Override Field | Type / Interface | Link |
| -------------- | ---------------- | ---------------------------------------------------------------------------------------------- |
| android | AndroidConfig | <https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.androidconfig> |
| apns | ApnsConfig | <https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.apnsconfig> |
| webPush | WebpushConfig | <https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.webpushconfig> |
| fcmOptions | FcmOptions | <https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.fcmoptions> |
| Override Field | Type / Interface | Link |
| -------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| android | AndroidConfig | [firebase-admin.messaging.androidconfig](https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.androidconfig) |
| apns | ApnsConfig | [firebase-admin.messaging.apnsconfig](https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.apnsconfig) |
| webPush | WebpushConfig | [firebase-admin.messaging.webpushconfig](https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.webpushconfig) |
| fcmOptions | FcmOptions | [firebase-admin.messaging.fcmoptions](https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.fcmoptions) |

## Set Device Token

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -120,13 +120,13 @@ the community.

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
<https://www.contributor-covenant.org/version/2/0/code_of_conduct.html>.
[https://www.contributor-covenant.org/version/2/0/code_of_conduct.html](https://www.contributor-covenant.org/version/2/0/code_of_conduct.html).

Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/inclusion/blob/master/code-of-conduct-enforcement/consequence-ladder.md).
enforcement ladder](https://github.com/mozilla/inclusion/blob/master/code-of-conduct-enforcement/consequence-ladder.mdx).

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see the FAQ at
<https://www.contributor-covenant.org/faq>. Translations are available at
<https://www.contributor-covenant.org/translations>.
[https://www.contributor-covenant.org/faq](https://www.contributor-covenant.org/faq). Translations are available at
[https://www.contributor-covenant.org/translations](https://www.contributor-covenant.org/translations).
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,7 @@ Now, build the project again using this command
pnpm run setup:project
```

Run novu in your local machine. Read [here](./run-locally.md) to learn on how to run novu in local machine and test this new provider.
Run novu in your local machine. Read [here](./run-locally.mdx) to learn on how to run novu in local machine and test this new provider.

Run below command in the root of project to run providers test

Expand Down
File renamed without changes.
File renamed without changes.
9 changes: 5 additions & 4 deletions docs/docs/home.md → docs/docs/home.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ pagination_next: null
custom_edit_url: null
---

import CardItems from '@site/src/components/CardItems'
import Discover from '@site/src/components/Discover'
import CardItems from '@site/src/components/CardItems';
import Discover from '@site/src/components/Discover';

# Documentation

Expand All @@ -18,8 +18,9 @@ Explore our guides and examples to integrate Novu.
## What is Novu?

Novu is an open-source notification infrastructure built to help engineering teams build rich product notification experiences without constantly re-inventing the wheel.
<CardItems/>

<CardItems />

## Discover Novu

<Discover/>
<Discover />
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ interface IFetchNotifications {
## fetchUserPreferences

Fetches the user preferences.
Read more [here](../../platform/preferences.md)
Read more [here](../../platform/preferences.mdx)

```ts
headlessService.fetchUserPreferences({
Expand Down Expand Up @@ -247,7 +247,7 @@ interface IFetchUserPreferences {
## updateUserPreferences

Updates the user preferences.
Read more [here](../../platform/preferences.md)
Read more [here](../../platform/preferences.mdx)

```ts
headlessService.updateUserPreferences({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ It's responsible for establishing the notification center session, managing web

| Prop | Type | Description |
| ----------------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| backendUrl | string (optional) | The custom backend URL, your own deployed instance of the API. The default is <https://api.novu.co.app>. |
| socketUrl | string (optional) | The custom socket URL, your own deployed instance of the WS app. The default is <https://ws.novu.co>. |
| backendUrl | string (optional) | The custom backend URL, your own deployed instance of the API. The default is `https://api.novu.co.app`. |
| socketUrl | string (optional) | The custom socket URL, your own deployed instance of the WS app. The default is `https://ws.novu.co`. |
| applicationIdentifier | string | The app id taken from the Novu Settings -> API Keys tab. |
| subscriberId | string (optional) | The unique subscriber id from your system. If not provided will be auto generated by Novu. |
| subscriberHash | string (optional) | The HMAC encrypted `subscriberId`, [more info](./react-components.md#enabling-hmac-encryption). |
| subscriberHash | string (optional) | The HMAC encrypted `subscriberId`, [more info](./react-components.mdx#enabling-hmac-encryption). |
| stores | [object[]](./api-reference#store-interface) (optional) | The connection object between feed and notification center tab. |
| i18n | [object](./api-reference#i18nlanguage-interface) (optional) | The prop allowing to configure the UI language. |
| styles | [object](./api-reference#styles-interface) (optional) | The prop allowing to style the notification center. It's based on the `CSSInterpolation` object from the `@emotion/css` package, you can find more details about it [here](https://emotion.sh/docs/@emotion/css#object-styles). |
Expand Down Expand Up @@ -1022,7 +1022,7 @@ interface INovuTheme {
| `unseenBadgeColor` | `stopColor: '#FF512F', stopColorOffset: '#DD2476'` | `{ stopColor: '#FF512F', stopColorOffset: '#DD2476' }` |
| `unseenBadgeBackgroundColor` | `#FFFFFF` | `#1E1E26` |

Note: unseenBadgeColor is of a type : string | {stopColor : string, stopColorOffset : sting}, so if you would like one
Note: unseenBadgeColor is of a type : string | `{stopColor : string, stopColorOffset : sting}`, so if you would like one
color badge you can use a string of the color and not the object in order to create gradient.

## The notification `IMessage` model
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -189,84 +189,23 @@ The `i18n` prop can accept 2 different types of values
i18n = 'en';
```

<FAQ>
<FAQ>
<FAQItem title="Supported languages">

- `af` (Afrikaans)
- `am` (Amharic)
- `ar` (Arabic)
- `as` (Assamese)
- `az` (Azerbaijani)
- `ba` (Bashkir)
- `be` (Belarusian)
- `bg` (Bulgarian)
- `bh` (Bihari)
- `bn` (Bengali)
- `bs` (Bosnian)
- `ca` (Catalan)
- `cs` (Czech)
- `da` (Danish)
- `de` (German)
- `el` (Greek)
- `en` (English)
- `es` (Spanish)
- `eu` (Basque)
- `fa` (Farsi)
- `fi` (Finnish)
- `fr` (French)
- `ga` (Irish)
- `gl` (Galician)
- `gu` (Gujarati)
- `he` (Hebrew)
- `hi` (Hindi)
- `hr` (Croatian)
- `hu` (Hungarian)
- `hy` (Armenian)
- `id` (Indonesian)
- `ig` (Igbo)
- `it` (Italian)
- `ja` (Japanese)
- `ka` (Kannada)
- `kk` (Kazakh)
- `km` (Khmer)
- `ko` (Korean)
- `ku` (Kurdish)
- `lo` (Lao)
- `lt` (Lithuanian)
- `lv` (Latvian)
- `ml` (Malayalam)
- `mr` (Marathi)
- `ms` (Malay)
- `nb` (Norwegian)
- `ne` (Nepali)
- `nl` (Dutch)
- `or` (Odia)
- `pa` (Punjabi)
- `pl` (Polish)
- `pt` (Portuguese)
- `ro` (Romanian)
- `ru` (Russian)
- `sa` (Sanskrit)
- `sd` (Sindhi)
- `si` (Sinhala)
- `sm` (Samoan)
- `sq` (Albanian)
- `sv` (Swedish)
- `sq` (Albanian)
- `ta` (Tamil)
- `te` (Telugu)
- `th` (Thai)
- `tl` (Tagalog)
- `tr` (Turkish)
- `uk` (Ukrainian)
- `ur` (Urdu)
- `uz` (Uzbek)
- `vi` (Vietnamese)
- `zh` (Chinese)
- `zu` (Zulu)

- `af` (Afrikaans) - `am` (Amharic) - `ar` (Arabic) - `as` (Assamese) - `az` (Azerbaijani) -
`ba` (Bashkir) - `be` (Belarusian) - `bg` (Bulgarian) - `bh` (Bihari) - `bn` (Bengali) - `bs`
(Bosnian) - `ca` (Catalan) - `cs` (Czech) - `da` (Danish) - `de` (German) - `el` (Greek) - `en`
(English) - `es` (Spanish) - `eu` (Basque) - `fa` (Farsi) - `fi` (Finnish) - `fr` (French) -
`ga` (Irish) - `gl` (Galician) - `gu` (Gujarati) - `he` (Hebrew) - `hi` (Hindi) - `hr`
(Croatian) - `hu` (Hungarian) - `hy` (Armenian) - `id` (Indonesian) - `ig` (Igbo) - `it`
(Italian) - `ja` (Japanese) - `ka` (Kannada) - `kk` (Kazakh) - `km` (Khmer) - `ko` (Korean) -
`ku` (Kurdish) - `lo` (Lao) - `lt` (Lithuanian) - `lv` (Latvian) - `ml` (Malayalam) - `mr`
(Marathi) - `ms` (Malay) - `nb` (Norwegian) - `ne` (Nepali) - `nl` (Dutch) - `or` (Odia) - `pa`
(Punjabi) - `pl` (Polish) - `pt` (Portuguese) - `ro` (Romanian) - `ru` (Russian) - `sa`
(Sanskrit) - `sd` (Sindhi) - `si` (Sinhala) - `sm` (Samoan) - `sq` (Albanian) - `sv` (Swedish) -
`sq` (Albanian) - `ta` (Tamil) - `te` (Telugu) - `th` (Thai) - `tl` (Tagalog) - `tr` (Turkish) -
`uk` (Ukrainian) - `ur` (Urdu) - `uz` (Uzbek) - `vi` (Vietnamese) - `zh` (Chinese) - `zu` (Zulu)
</FAQItem>
</FAQ>
</FAQ>

- Translation object

Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ After creating your cloud or self-hosted account, the next steps to sending your
- Connect your providers
- Create a workflow
- Send a trigger
- Integrate the [Notification Center](../../notification-center/getting-started.md) within your app _(optional)_
- Integrate the [Notification Center](../../notification-center/getting-started.mdx) within your app _(optional)_

## Connect providers

Expand Down Expand Up @@ -44,19 +44,19 @@ You can specify the content for emails in two ways:

**Custom Code** - You can use the custom code section to specify custom html for the email.

You can specify custom variables using the [{{handlebars}}](https://handlebarsjs.com/guide/) syntax.
You can specify custom variables using the [`{{handlebars}}`](https://handlebarsjs.com/guide/) syntax.

#### SMS

Inside SMS, you can specify custom variables using [{{handlebars}}](https://handlebarsjs.com/guide/) syntax.
Inside SMS, you can specify custom variables using [`{{handlebars}}`](https://handlebarsjs.com/guide/) syntax.

#### In-app

In the notification center preview, you can type the content of the notification, select the content, and use `CMD` + `B` to make the selected text bold.

#### Chat

You can specify custom variables using the [{{handlebars}}](https://handlebarsjs.com/guide/) syntax.
You can specify custom variables using the [`{{handlebars}}`](https://handlebarsjs.com/guide/) syntax.

In addition to the integration, any subscriber needs to set credentials to have proper authorization on the channel.

Expand Down
Loading