Skip to content

Commit

Permalink
Release v1.7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
compose-sdk-release-bot committed Apr 3, 2024
1 parent e19f63a commit a8242d0
Show file tree
Hide file tree
Showing 472 changed files with 16,139 additions and 1,071 deletions.
1 change: 1 addition & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ module.exports = {
'**/__test-helpers__/*.{ts,tsx}',
'**/*.test.{ts,tsx}',
'**/*.config.{ts,js}',
'**/*.workspace.{ts,js}',
'**/test-helpers/*.{ts,tsx}',
],
extends: ['@sisense/eslint-config/typescript/react'],
Expand Down
25 changes: 21 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# Changelog

## [1.7.0] - 2024-04-03

### Added
- Support caching of query execution (alpha)
- Extend the `PivotTable` component (alpha) to support
UI sorting, date and number formatting, and dynamic sizing
- Add generic `useFetch` hook to call any Sisense REST endpoint
- Add Typedoc plugin `@sisense/typedoc-plugin-markdown` (forked from `tgreyuk/typedoc-plugin-markdown` version `4.0.0-next.20`)
- Move the `@sisense/sdk-ui-angular` package from beta to General Availability (GA)

### Changed
- Enable accessibility support in Highcharts
- Extend `appConfig` (in Sisense context) to support the `queryLimit` property
- Fix the issue with Indicator chart not using theme colors
- Fix issues with `PieChart`: highlights and convolution animation
- Make improvements to the AI components and hooks (private beta)

## [1.6.0] - 2024-03-20

### Added
Expand All @@ -12,7 +29,7 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Remove global scrollbar CSS in `PivotTable`
- Simplify the handling of `N/A` values in charts
- Remove redundant info in the tooltip of combo chart
- Improvements for the AI components and hooks (private beta)
- Make improvements to the AI components and hooks (private beta)

## [1.5.0] - 2024-03-05

Expand Down Expand Up @@ -44,9 +61,9 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Support HTML content in component `Table`
- Support theme settings for `IndicatorChart` in ticker mode
- Extend `StyledMeasureColumn` with `seriesStypeOptions` to support different series of different chart types
- Improvements for `Chart` (refactoring and chart labels), `AreaChart` (sticky tracking), `NumberFormatConfig` (optional props),
- Make improvements to `Chart` (refactoring and chart labels), `AreaChart` (sticky tracking), `NumberFormatConfig` (optional props),
testing infrastructure (adoption of `msw` for mocks), and exports of packages (for both CommonJS and ESM imports)
- Improvements for the AI components and hooks (private beta)
- Make improvements to the AI components and hooks (private beta)

## [1.3.0] - 2024-02-07

Expand All @@ -60,7 +77,7 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Extend component `MemberFilterTile` to add indication of inactive members
- Support `onDataPointClick` prop for `AreamapChart`
- Refactor to reuse `WidgetModel` in `DashboardWidget` and `useExecuteQueryByWidgetId`
- Minor improvements for chart navigator, i18n translations, and SSO flow.
- Make minor improvements to chart navigator, i18n translations, and SSO flow.

## [1.2.0] - 2024-01-24

Expand Down
19 changes: 9 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,24 @@

Compose SDK is a Software Development Kit that enables a composable, code-driven way to use Sisense platform capabilities. Build analytics and data-driven experiences into your product with code using Compose SDK, a set of client-side libraries and components for query composition, data visualization, and more.

- **Create Sisense queries, charts, and filters directly from your application code**
No predefined dashboards or widgets required - or render existing widgets by ID. Mix and match approaches to fit your needs.
- **Composable, modular and extensible**
Use our components, customize them, or bring your own. Compose SDK works equally well for building new applications or upgrading existing ones to use Sisense’s powerful analytics platform.
- **Built with developer experience in mind**
The SDK is available via GitHub and NPM, supports Typescript and React, and includes documentation, code samples and CLI tools that help you get things done with ease.
- **Create Sisense queries, charts, and filters directly from your application code.** No predefined dashboards or widgets required - or render existing widgets by ID. Mix and match approaches to fit your needs.
- **Composable, modular and extensible.** Use our components, customize them, or bring your own. Compose SDK works equally well for building new applications or upgrading existing ones to use Sisense’s powerful analytics platform.
- **Built with developer experience in mind.** The SDK is available via GitHub and NPM, supports Typescript and common UI frameworks (React, Angular, Vue), and includes documentation, code samples and CLI tools that help you get things done with ease.

## What you need to know

- Compose SDK requires a Sisense license & access to a Sisense instance
- Compose SDK supports Sisense version L2022.11 or newer
- Compose SDK currently supports development using JavaScript/Typescript and React
- Compose SDK supports Sisense version `L2022.10` or newer
- Compose SDK currently supports development using JavaScript/Typescript and React/Angular/Vue
- This repository is a monorepo containing all SDK packages. You can find the individual packages [here](https://www.npmjs.com/search?q=%40sisense%2Fsdk)

## Documentation

You can find documentation for Compose SDK on the [Sisense Developer Portal](https://sisense.dev).

A demo application for Compose SDK + Typescript + React is available at https://csdk-react.sisense.com/. The source code repo is at [compose-sdk-react-demo](https://github.com/sisense/compose-sdk-react-demo).
Demo applications for Compose SDK + Typescript are available at https://csdk-react.sisense.com/ (React), https://csdk-angular.sisense.com/ (Angular), and
https://csdk-vue.sisense.com/ (Vue). The source code repos are at [compose-sdk-react-demo](https://github.com/sisense/compose-sdk-react-demo),
[compose-sdk-angular-demo](https://github.com/sisense/compose-sdk-angular-demo), and [compose-sdk-vue-demo](https://github.com/sisense/compose-sdk-vue-demo).

## Overview of Development Tools

Expand Down Expand Up @@ -57,4 +56,4 @@ yarn storybook

### Set up another app

You can find more information about setting up an app using this SDK in [quickstart.md](./docs-md/sdk/quickstart.md) or [quickstart-angular.md](./docs-md/sdk/quickstart-angular.md).
You can find more information about setting up an app using this SDK in [quickstart.md](./docs-md/sdk/quickstart.md), [quickstart-angular.md](./docs-md/sdk/quickstart-angular.md), or [quickstart-vue.md](./docs-md/sdk/quickstart-vue.md).
12 changes: 7 additions & 5 deletions docs-md/README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
## What is this directory, `docs-md`, for?
This directory contains the source files for the Compose SDK documentation on `sisense.dev`.

This includes the CHANGELOG (`docs-md/sdk/CHANGELOG.md`), Quickstart guide for React (`docs-md/sdk/quickstart.md`), and Angular (`docs-md/sdk/quickstart-angular.md`) as well as the generated API reference (`docs-md/sdk/modules`).
This includes the CHANGELOG (`docs-md/sdk/CHANGELOG.md`), Quickstart guides for React (`docs-md/sdk/quickstart.md`),
Angular (`docs-md/sdk/quickstart-angular.md`), Vue (`docs-md/sdk/quickstart-vue.md`), other guides, tutorials, and the generated API reference (`docs-md/sdk/modules`).

All changes to the Compose SDK documentation should be made here and then moved to the repo
for the `sisense.dev` site.

## How to update the Quickstart guide?
Open `docs-md/sdk/quickstart.md` or `docs-md/sdk/quickstart-angular.md` and make your changes as usual.
## How to update the guides and tutorials?
To update the quickstart guides, open `docs-md/sdk/quickstart.md`, `docs-md/sdk/quickstart-angular.md`, or (`docs-md/sdk/quickstart-vue.md`)
and make your changes as usual.

Other guides and tutorials can be updated in the same way.

## How to generate the API reference?
From the root directory of this monorepo, run

```sh
yarn docs:gen:md
```

The generated files will be placed in `docs-md/sdk/modules`.

DO NOT MANUALLY EDIT FILES IN THIS DIRECTORY.
Expand All @@ -31,7 +34,6 @@ yarn docs:gen:md

The process will copy `./CHANGELOG.md` to `docs-md/sdk/CHANGELOG.md`.


## How to move the changes to the repo for `sisense.dev`?
From the root directory of this monorepo, run
`rm -Rf <path to sisense.dev repo>/docs/guides/sdk/ && cp -Rf docs-md/sdk <path to sisense.dev repo>/docs/guides/`.
Expand Down
25 changes: 21 additions & 4 deletions docs-md/sdk/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# Changelog

## [1.7.0] - 2024-04-03

### Added
- Support caching of query execution (alpha)
- Extend the `PivotTable` component (alpha) to support
UI sorting, date and number formatting, and dynamic sizing
- Add generic `useFetch` hook to call any Sisense REST endpoint
- Add Typedoc plugin `@sisense/typedoc-plugin-markdown` (forked from `tgreyuk/typedoc-plugin-markdown` version `4.0.0-next.20`)
- Move the `@sisense/sdk-ui-angular` package from beta to General Availability (GA)

### Changed
- Enable accessibility support in Highcharts
- Extend `appConfig` (in Sisense context) to support the `queryLimit` property
- Fix the issue with Indicator chart not using theme colors
- Fix issues with `PieChart`: highlights and convolution animation
- Make improvements to the AI components and hooks (private beta)

## [1.6.0] - 2024-03-20

### Added
Expand All @@ -12,7 +29,7 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Remove global scrollbar CSS in `PivotTable`
- Simplify the handling of `N/A` values in charts
- Remove redundant info in the tooltip of combo chart
- Improvements for the AI components and hooks (private beta)
- Make improvements to the AI components and hooks (private beta)

## [1.5.0] - 2024-03-05

Expand Down Expand Up @@ -44,9 +61,9 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Support HTML content in component `Table`
- Support theme settings for `IndicatorChart` in ticker mode
- Extend `StyledMeasureColumn` with `seriesStypeOptions` to support different series of different chart types
- Improvements for `Chart` (refactoring and chart labels), `AreaChart` (sticky tracking), `NumberFormatConfig` (optional props),
- Make improvements to `Chart` (refactoring and chart labels), `AreaChart` (sticky tracking), `NumberFormatConfig` (optional props),
testing infrastructure (adoption of `msw` for mocks), and exports of packages (for both CommonJS and ESM imports)
- Improvements for the AI components and hooks (private beta)
- Make improvements to the AI components and hooks (private beta)

## [1.3.0] - 2024-02-07

Expand All @@ -60,7 +77,7 @@ in hooks `useGetDashboardModel`, `useGetDashboardModels`, `useExecuteQueryByWidg
- Extend component `MemberFilterTile` to add indication of inactive members
- Support `onDataPointClick` prop for `AreamapChart`
- Refactor to reuse `WidgetModel` in `DashboardWidget` and `useExecuteQueryByWidgetId`
- Minor improvements for chart navigator, i18n translations, and SSO flow.
- Make minor improvements to chart navigator, i18n translations, and SSO flow.

## [1.2.0] - 2024-01-24

Expand Down
2 changes: 1 addition & 1 deletion docs-md/sdk/authentication-security.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ You can get an API Token to use in your application in one of the following ways
- Run the following command using the Compose SDK CLI tool:

```sh
npx @sisense/sdk-cli get-api-token --url <your_instance_url> --username <username>
npx @sisense/sdk-cli@latest get-api-token --url <your_instance_url> --username <username>
```

Notes:
Expand Down
48 changes: 48 additions & 0 deletions docs-md/sdk/guides/cli.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# CLI

Use the Compose SDK CLI to work with your Compose SDK project.

The CLI has the following commands:

- [`get-data-model`](#get-data-model): Creates a [TypeScript representation of a data model](./data-model.md)
- [`get-api-token`](#get-api-token): Gets an [API token for authentication](../authentication-security.md#api-token)

## get-data-model

The `get-data-model` command creates a [TypeScript representation of a data model](./data-model.md). Use either a username/password, API token, or WAT token to authenticate when running this command.

### Options

- `dataSource` - (`string`): The name of the data model to create a TypeScript representation of
- `output` - (`string` | `undefined`): The `*.ts` file to write the data model file to
- `password` - (`string` | `undefined`): Password when using username/password authentication (if omitted when using a username/password to authenticate, the CLI will prompt you to enter your password)
- `token` - (`string` | `undefined`): API token when using API token authentication
- `url` - (`string`): URL of the Sisense instance that contains your data model
- `username` - (`string` | `undefined`): Username when using username/password authentication
- `wat` - (`string` | `undefined`): WAT token when using WAT authentication

### Example

This example command creates a data model file for the Sample ECommerce data model using username/password authentication. After running this command, the CLI will prompt you for your password. (Be sure to replace `<username>` and `<your_instance_url>` with your actual username and Sisense instance URL).

```sh
npx @sisense/sdk-cli@latest get-data-model --dataSource "Sample ECommerce" --url <your_instance_url> --output src/sample-ecommerce.ts --username <username>
```

## get-api-token

The `get-api-token` command gets an [API token for authentication](../authentication-security.md#api-token). Use a username/password to authenticate when running this command.

### Options

- `password` - (`string` | `undefined`): Password for authentication (if omitted, the CLI will prompt you to enter your password)
- `url` - (`string`): URL of the Sisense instance that your user exists in
- `username` - (`string`): Username for authentication

### Example

This example gets an API Token using username/password authentication. After running this command, the CLI will prompt you for your password. (Be sure to replace `<username>` and `<your_instance_url>` with your actual username and Sisense instance URL).

```sh
npx @sisense/sdk-cli@latest get-api-token --username <username> --url <your_instance_url>
```
4 changes: 2 additions & 2 deletions docs-md/sdk/guides/data-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The command takes the following parameters:
For example, you can create a TypeScript representation of the Sample ECommerce data model like this:

```sh
npx @sisense/sdk-cli get-data-model --username [email protected] --output src/sample-ecommerce.ts --dataSource "Sample ECommerce" --url https://myinstanceurl.com
npx @sisense/sdk-cli@latest get-data-model --username [email protected] --output src/sample-ecommerce.ts --dataSource "Sample ECommerce" --url https://myinstanceurl.com
```

If prompted, enter your password to authenticate and generate the data model representation.
Expand Down Expand Up @@ -115,4 +115,4 @@ const { data, isLoading, isError } = useExecuteQuery({
dimensions: [DM.Commerce.AgeRange.sort(Sort.Descending)],
measures: [measureFactory.sum(DM.Commerce.Revenue)],
});
```
```
3 changes: 3 additions & 0 deletions docs-md/sdk/guides/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ indexTopics:
- title: Data Model
description: Learn about Compose SDK data models
link: ./data-model
- title: CLI
description: Learn about the Compose SDK CLI
link: ./cli
- title: Generative AI
description: Learn how to deliver conversational analytics using large language models (Private Beta)
link: ./ai-features
Expand Down
15 changes: 9 additions & 6 deletions docs-md/sdk/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ indexTopics:
- title: Compose SDK GitHub
description: Visit the Compose SDK GitHub Monorepo
link: https://github.com/sisense/compose-sdk-monorepo
external: true
- title: Troubleshooting
description: Find solutions to common issues
link: ./troubleshooting
Expand All @@ -28,17 +29,19 @@ indexTopics:

Compose SDK is a software development kit that enables a composable, code-driven way to use Sisense platform capabilities. Build analytics and data-driven experiences into your product with code using Compose SDK, a set of client-side libraries and components for query composition, data visualization, and more.

- **Create Sisense queries, charts, and filters directly from your application code**
- **Create Sisense queries, charts, and filters directly from your application code.**
No predefined dashboards or widgets required - or render existing widgets by ID. Mix and match approaches to fit your needs.
- **Composable, modular and extensible**
- **Composable, modular and extensible.**
Use our components, customize them, or bring your own. Compose SDK works equally well for building new applications or upgrading existing ones to use Sisense’s powerful analytics platform.
- **Built with developer experience in mind**
The SDK is available via GitHub and NPM, supports TypeScript and React, and includes documentation, code samples and CLI tools that help you get things done with ease.
- **Built with developer experience in mind.**
The SDK is available via GitHub and NPM, supports TypeScript and and common UI frameworks (React, Angular, Vue),
and includes documentation, code samples and CLI tools that help you get things done with ease.

<SectionIndex />

::: tip Demo Application
Check out our demo applications for Compose SDK + [React](https://csdk-react.sisense.com) or [Angular](https://csdk-angular.sisense.com).
Check out our demo applications for Compose SDK + [React](https://csdk-react.sisense.com), [Angular](https://csdk-angular.sisense.com),
or [Vue](https://csdk-vue.sisense.com).
:::

### What can I do with Compose SDK?
Expand All @@ -54,6 +57,6 @@ Compose SDK is available to all Sisense Customers.

To use Compose SDK, you will need:

- Access to a Sisense instance with Sisense Linux version L2022.11 or later
- Access to a Sisense instance with Sisense Linux version `L2022.10` or later
- An application built using [React](./quickstart.md), [Angular](./quickstart-angular.md), or [Vue](./quickstart-vue.md) and TypeScript
- A NodeJS package manager (`npm` or `yarn`)
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Each unique dimension or measure included in the `formula` must be defined using
You can nest custom formulas by placing one inside the `formula` parameter of another.

Note: [Shared formulas](https://docs.sisense.com/main/SisenseLinux/shared-formulas.htm) must be
fetched prior to use (see [useGetSharedFormula](../../../../sdk-ui/fusion-assets/function.useGetSharedFormula.md)).
fetched prior to use (see [useGetSharedFormula](../../../../sdk-ui/fusion-embed/function.useGetSharedFormula.md)).

## Parameters

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ Wrapped measure with additional options for pivot table

### totalsCalculation

> **totalsCalculation**: [`TotalsCalculation`](../type-aliases/type-alias.TotalsCalculation.md)
> **totalsCalculation**?: [`TotalsCalculation`](../type-aliases/type-alias.TotalsCalculation.md)
11 changes: 0 additions & 11 deletions docs-md/sdk/modules/sdk-ui-angular/fusion-assets/index.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: DashboardService
---

# Class DashboardService
# Class DashboardService <Badge type="fusionEmbed" text="Fusion Embed" />

Service for working with Sisense Fusion dashboards.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: DashboardWidgetComponent
---

# Class DashboardWidgetComponent
# Class DashboardWidgetComponent <Badge type="fusionEmbed" text="Fusion Embed" />

The Dashboard Widget component, which is a thin wrapper on [ChartWidgetComponent](../chart-utilities/class.ChartWidgetComponent.md),
is used to render a widget created in a Sisense Fusion instance.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: WidgetModel
---

# Class WidgetModel
# Class WidgetModel <Badge type="fusionEmbed" text="Fusion Embed" />

Model of Sisense widget defined in the abstractions of Compose SDK.

Expand Down
11 changes: 11 additions & 0 deletions docs-md/sdk/modules/sdk-ui-angular/fusion-embed/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
title: Fusion Embed
---

# Fusion Embed

Fusion Dashboards, Widgets, Queries, and Formulas

- [DashboardService](class.DashboardService.md) <Badge type="fusionEmbed" text="Fusion Embed" />
- [DashboardWidgetComponent](class.DashboardWidgetComponent.md) <Badge type="fusionEmbed" text="Fusion Embed" />
- [WidgetModel](class.WidgetModel.md) <Badge type="fusionEmbed" text="Fusion Embed" />
Loading

0 comments on commit a8242d0

Please sign in to comment.