@atlaskit/teams-app-internal-analytics 1.10.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/analytics.spec.yaml +88 -0
- package/dist/cjs/common/utils/constants.js +2 -0
- package/dist/cjs/ui/analytics-context/index.js +1 -1
- package/dist/es2019/common/utils/constants.js +2 -0
- package/dist/es2019/ui/analytics-context/index.js +1 -1
- package/dist/esm/common/utils/constants.js +2 -0
- package/dist/esm/ui/analytics-context/index.js +1 -1
- package/dist/types/common/utils/constants.d.ts +3 -1
- package/dist/types/common/utils/generated/analytics.types.d.ts +66 -1
- package/dist/types-ts4.5/common/utils/constants.d.ts +3 -1
- package/dist/types-ts4.5/common/utils/generated/analytics.types.d.ts +66 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @atlaskit/teams-app-internal-analytics
|
|
2
2
|
|
|
3
|
+
## 1.12.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`c18d37500ac2b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/c18d37500ac2b) -
|
|
8
|
+
Migrated standalone-directory analytics to teams-app-internal-analytics
|
|
9
|
+
|
|
10
|
+
## 1.11.0
|
|
11
|
+
|
|
12
|
+
### Minor Changes
|
|
13
|
+
|
|
14
|
+
- [`f6d9289607739`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f6d9289607739) -
|
|
15
|
+
Migrated reporting-lines analytics to teams-app-internal-analytics
|
|
16
|
+
|
|
3
17
|
## 1.10.0
|
|
4
18
|
|
|
5
19
|
### Minor Changes
|
package/analytics.spec.yaml
CHANGED
|
@@ -2159,3 +2159,91 @@ events:
|
|
|
2159
2159
|
tabName:
|
|
2160
2160
|
type: ['given', 'received']
|
|
2161
2161
|
description: the name of the tab
|
|
2162
|
+
- ReportingLinesChart collapsed:
|
|
2163
|
+
type: ui
|
|
2164
|
+
description: fired when the reporting lines chart is collapsed
|
|
2165
|
+
attributes:
|
|
2166
|
+
product:
|
|
2167
|
+
type: string
|
|
2168
|
+
description: the product
|
|
2169
|
+
workspaceUuid:
|
|
2170
|
+
type: string
|
|
2171
|
+
required: false
|
|
2172
|
+
description: the workspace uuid
|
|
2173
|
+
- ReportingLinesChart expanded:
|
|
2174
|
+
type: ui
|
|
2175
|
+
description: fired when the reporting lines chart is expanded
|
|
2176
|
+
attributes:
|
|
2177
|
+
product:
|
|
2178
|
+
type: string
|
|
2179
|
+
description: the product
|
|
2180
|
+
workspaceUuid:
|
|
2181
|
+
type: string
|
|
2182
|
+
required: false
|
|
2183
|
+
description: the workspace uuid
|
|
2184
|
+
- ReportingLinesChart viewed:
|
|
2185
|
+
type: ui
|
|
2186
|
+
description: fired when the reporting lines chart is viewed
|
|
2187
|
+
attributes:
|
|
2188
|
+
product:
|
|
2189
|
+
type: string
|
|
2190
|
+
description: the product
|
|
2191
|
+
workspaceUuid:
|
|
2192
|
+
type: string
|
|
2193
|
+
required: false
|
|
2194
|
+
description: the workspace uuid
|
|
2195
|
+
- ui viewed:
|
|
2196
|
+
type: ui
|
|
2197
|
+
description: fired when the reporting lines chart is viewed - used for Atlas MAU
|
|
2198
|
+
attributes:
|
|
2199
|
+
product:
|
|
2200
|
+
type: string
|
|
2201
|
+
description: the product
|
|
2202
|
+
workspaceUuid:
|
|
2203
|
+
type: string
|
|
2204
|
+
description: the workspace uuid
|
|
2205
|
+
required: false
|
|
2206
|
+
- ReportingLinesUserCard clicked:
|
|
2207
|
+
type: ui
|
|
2208
|
+
description: fired when the reporting lines user card is clicked
|
|
2209
|
+
attributes:
|
|
2210
|
+
product:
|
|
2211
|
+
type: string
|
|
2212
|
+
description: the product
|
|
2213
|
+
workspaceUuid:
|
|
2214
|
+
type: string
|
|
2215
|
+
description: the workspace uuid
|
|
2216
|
+
required: false
|
|
2217
|
+
- ReportingLinesEmptyState viewed:
|
|
2218
|
+
type: ui
|
|
2219
|
+
description: fired when the reporting lines empty state is viewed
|
|
2220
|
+
attributes:
|
|
2221
|
+
product:
|
|
2222
|
+
type: string
|
|
2223
|
+
description: the product
|
|
2224
|
+
workspaceUuid:
|
|
2225
|
+
type: string
|
|
2226
|
+
description: the workspace uuid
|
|
2227
|
+
required: false
|
|
2228
|
+
isAdmin:
|
|
2229
|
+
type: boolean
|
|
2230
|
+
description: whether the user is a site admin
|
|
2231
|
+
- button clicked (addPeopleButton):
|
|
2232
|
+
type: ui
|
|
2233
|
+
description: fired when the add people button is clicked
|
|
2234
|
+
attributes:
|
|
2235
|
+
isPrimary:
|
|
2236
|
+
type: boolean
|
|
2237
|
+
description: whether the button is primary
|
|
2238
|
+
- userMenuItem clicked (linkProfile):
|
|
2239
|
+
type: ui
|
|
2240
|
+
description: fired when the link profile button is clicked
|
|
2241
|
+
- userMenuItem clicked (linkManageAccount):
|
|
2242
|
+
type: ui
|
|
2243
|
+
description: fired when the link manage account button is clicked
|
|
2244
|
+
- userMenuItem clicked (linkLogout):
|
|
2245
|
+
type: ui
|
|
2246
|
+
description: fired when the link logout button is clicked
|
|
2247
|
+
- userMenu opened:
|
|
2248
|
+
type: track
|
|
2249
|
+
description: fired when the user menu is opened
|
|
@@ -9,5 +9,7 @@ var AnalyticsEventSource = exports.AnalyticsEventSource = /*#__PURE__*/function
|
|
|
9
9
|
AnalyticsEventSource["USER_PROFILE_SCREEN"] = "userProfileScreen";
|
|
10
10
|
AnalyticsEventSource["TEAM_PROFILE_ABOUT"] = "teamProfileAbout";
|
|
11
11
|
AnalyticsEventSource["TEAM_PROFILE_SCREEN"] = "teamProfileScreen";
|
|
12
|
+
AnalyticsEventSource["USER_MENU"] = "userMenu";
|
|
13
|
+
AnalyticsEventSource["PEOPLE_HOME"] = "peopleHome";
|
|
12
14
|
return AnalyticsEventSource;
|
|
13
15
|
}({});
|
|
@@ -16,7 +16,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
16
16
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
17
|
var defaultAnalyticsContextData = exports.defaultAnalyticsContextData = {
|
|
18
18
|
packageName: "@atlaskit/teams-app-internal-analytics",
|
|
19
|
-
packageVersion: "
|
|
19
|
+
packageVersion: "0.0.0-development"
|
|
20
20
|
};
|
|
21
21
|
function TeamsAppAnalyticsContext(_ref) {
|
|
22
22
|
var data = _ref.data,
|
|
@@ -3,5 +3,7 @@ export let AnalyticsEventSource = /*#__PURE__*/function (AnalyticsEventSource) {
|
|
|
3
3
|
AnalyticsEventSource["USER_PROFILE_SCREEN"] = "userProfileScreen";
|
|
4
4
|
AnalyticsEventSource["TEAM_PROFILE_ABOUT"] = "teamProfileAbout";
|
|
5
5
|
AnalyticsEventSource["TEAM_PROFILE_SCREEN"] = "teamProfileScreen";
|
|
6
|
+
AnalyticsEventSource["USER_MENU"] = "userMenu";
|
|
7
|
+
AnalyticsEventSource["PEOPLE_HOME"] = "peopleHome";
|
|
6
8
|
return AnalyticsEventSource;
|
|
7
9
|
}({});
|
|
@@ -2,7 +2,7 @@ import React, { useMemo } from 'react';
|
|
|
2
2
|
import { PeopleTeamsAnalyticsContext } from '@atlaskit/analytics-namespaced-context';
|
|
3
3
|
export const defaultAnalyticsContextData = {
|
|
4
4
|
packageName: "@atlaskit/teams-app-internal-analytics",
|
|
5
|
-
packageVersion: "
|
|
5
|
+
packageVersion: "0.0.0-development"
|
|
6
6
|
};
|
|
7
7
|
export function TeamsAppAnalyticsContext({
|
|
8
8
|
data,
|
|
@@ -3,5 +3,7 @@ export var AnalyticsEventSource = /*#__PURE__*/function (AnalyticsEventSource) {
|
|
|
3
3
|
AnalyticsEventSource["USER_PROFILE_SCREEN"] = "userProfileScreen";
|
|
4
4
|
AnalyticsEventSource["TEAM_PROFILE_ABOUT"] = "teamProfileAbout";
|
|
5
5
|
AnalyticsEventSource["TEAM_PROFILE_SCREEN"] = "teamProfileScreen";
|
|
6
|
+
AnalyticsEventSource["USER_MENU"] = "userMenu";
|
|
7
|
+
AnalyticsEventSource["PEOPLE_HOME"] = "peopleHome";
|
|
6
8
|
return AnalyticsEventSource;
|
|
7
9
|
}({});
|
|
@@ -6,7 +6,7 @@ import React, { useMemo } from 'react';
|
|
|
6
6
|
import { PeopleTeamsAnalyticsContext } from '@atlaskit/analytics-namespaced-context';
|
|
7
7
|
export var defaultAnalyticsContextData = {
|
|
8
8
|
packageName: "@atlaskit/teams-app-internal-analytics",
|
|
9
|
-
packageVersion: "
|
|
9
|
+
packageVersion: "0.0.0-development"
|
|
10
10
|
};
|
|
11
11
|
export function TeamsAppAnalyticsContext(_ref) {
|
|
12
12
|
var data = _ref.data,
|
|
@@ -2,5 +2,7 @@ export declare const EVENT_CHANNEL = "peopleTeams";
|
|
|
2
2
|
export declare enum AnalyticsEventSource {
|
|
3
3
|
USER_PROFILE_SCREEN = "userProfileScreen",
|
|
4
4
|
TEAM_PROFILE_ABOUT = "teamProfileAbout",
|
|
5
|
-
TEAM_PROFILE_SCREEN = "teamProfileScreen"
|
|
5
|
+
TEAM_PROFILE_SCREEN = "teamProfileScreen",
|
|
6
|
+
USER_MENU = "userMenu",
|
|
7
|
+
PEOPLE_HOME = "peopleHome"
|
|
6
8
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generates Typescript types for analytics events from analytics.spec.yaml
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::a4ebc6f4ba7d2252cc99ca62b6aa2a46>>
|
|
7
7
|
* @codegenCommand yarn workspace @atlassian/analytics-tooling run analytics:codegen teams-app-internal-analytics
|
|
8
8
|
*/
|
|
9
9
|
export type PackageMetaDataType = {
|
|
@@ -1037,6 +1037,38 @@ export type ProfileKudosClickedAttributesType = {
|
|
|
1037
1037
|
kudosId: string;
|
|
1038
1038
|
tabName: 'given' | 'received';
|
|
1039
1039
|
};
|
|
1040
|
+
export type ReportingLinesChartCollapsedAttributesType = {
|
|
1041
|
+
product: string;
|
|
1042
|
+
workspaceUuid: string | null;
|
|
1043
|
+
};
|
|
1044
|
+
export type ReportingLinesChartExpandedAttributesType = {
|
|
1045
|
+
product: string;
|
|
1046
|
+
workspaceUuid: string | null;
|
|
1047
|
+
};
|
|
1048
|
+
export type ReportingLinesChartViewedAttributesType = {
|
|
1049
|
+
product: string;
|
|
1050
|
+
workspaceUuid: string | null;
|
|
1051
|
+
};
|
|
1052
|
+
export type UiViewedAttributesType = {
|
|
1053
|
+
product: string;
|
|
1054
|
+
workspaceUuid: string | null;
|
|
1055
|
+
};
|
|
1056
|
+
export type ReportingLinesUserCardClickedAttributesType = {
|
|
1057
|
+
product: string;
|
|
1058
|
+
workspaceUuid: string | null;
|
|
1059
|
+
};
|
|
1060
|
+
export type ReportingLinesEmptyStateViewedAttributesType = {
|
|
1061
|
+
product: string;
|
|
1062
|
+
workspaceUuid: string | null;
|
|
1063
|
+
isAdmin: boolean;
|
|
1064
|
+
};
|
|
1065
|
+
export type ButtonClickedAddPeopleButtonAttributesType = {
|
|
1066
|
+
isPrimary: boolean;
|
|
1067
|
+
};
|
|
1068
|
+
export type UserMenuItemClickedLinkProfileAttributesType = undefined;
|
|
1069
|
+
export type UserMenuItemClickedLinkManageAccountAttributesType = undefined;
|
|
1070
|
+
export type UserMenuItemClickedLinkLogoutAttributesType = undefined;
|
|
1071
|
+
export type UserMenuOpenedAttributesType = undefined;
|
|
1040
1072
|
export type AnalyticsEventAttributes = {
|
|
1041
1073
|
/**
|
|
1042
1074
|
* fired when the teams-app-internal-analytics example button is clicked */
|
|
@@ -1724,5 +1756,38 @@ export type AnalyticsEventAttributes = {
|
|
|
1724
1756
|
/**
|
|
1725
1757
|
* fired when a kudos item is clicked */
|
|
1726
1758
|
'ui.ProfileKudos.clicked': ProfileKudosClickedAttributesType;
|
|
1759
|
+
/**
|
|
1760
|
+
* fired when the reporting lines chart is collapsed */
|
|
1761
|
+
'ui.ReportingLinesChart.collapsed': ReportingLinesChartCollapsedAttributesType;
|
|
1762
|
+
/**
|
|
1763
|
+
* fired when the reporting lines chart is expanded */
|
|
1764
|
+
'ui.ReportingLinesChart.expanded': ReportingLinesChartExpandedAttributesType;
|
|
1765
|
+
/**
|
|
1766
|
+
* fired when the reporting lines chart is viewed */
|
|
1767
|
+
'ui.ReportingLinesChart.viewed': ReportingLinesChartViewedAttributesType;
|
|
1768
|
+
/**
|
|
1769
|
+
* fired when the reporting lines chart is viewed - used for Atlas MAU */
|
|
1770
|
+
'ui.ui.viewed': UiViewedAttributesType;
|
|
1771
|
+
/**
|
|
1772
|
+
* fired when the reporting lines user card is clicked */
|
|
1773
|
+
'ui.ReportingLinesUserCard.clicked': ReportingLinesUserCardClickedAttributesType;
|
|
1774
|
+
/**
|
|
1775
|
+
* fired when the reporting lines empty state is viewed */
|
|
1776
|
+
'ui.ReportingLinesEmptyState.viewed': ReportingLinesEmptyStateViewedAttributesType;
|
|
1777
|
+
/**
|
|
1778
|
+
* fired when the add people button is clicked */
|
|
1779
|
+
'ui.button.clicked.addPeopleButton': ButtonClickedAddPeopleButtonAttributesType;
|
|
1780
|
+
/**
|
|
1781
|
+
* fired when the link profile button is clicked */
|
|
1782
|
+
'ui.userMenuItem.clicked.linkProfile': UserMenuItemClickedLinkProfileAttributesType;
|
|
1783
|
+
/**
|
|
1784
|
+
* fired when the link manage account button is clicked */
|
|
1785
|
+
'ui.userMenuItem.clicked.linkManageAccount': UserMenuItemClickedLinkManageAccountAttributesType;
|
|
1786
|
+
/**
|
|
1787
|
+
* fired when the link logout button is clicked */
|
|
1788
|
+
'ui.userMenuItem.clicked.linkLogout': UserMenuItemClickedLinkLogoutAttributesType;
|
|
1789
|
+
/**
|
|
1790
|
+
* fired when the user menu is opened */
|
|
1791
|
+
'track.userMenu.opened': UserMenuOpenedAttributesType;
|
|
1727
1792
|
};
|
|
1728
1793
|
export type EventKey = keyof AnalyticsEventAttributes;
|
|
@@ -2,5 +2,7 @@ export declare const EVENT_CHANNEL = "peopleTeams";
|
|
|
2
2
|
export declare enum AnalyticsEventSource {
|
|
3
3
|
USER_PROFILE_SCREEN = "userProfileScreen",
|
|
4
4
|
TEAM_PROFILE_ABOUT = "teamProfileAbout",
|
|
5
|
-
TEAM_PROFILE_SCREEN = "teamProfileScreen"
|
|
5
|
+
TEAM_PROFILE_SCREEN = "teamProfileScreen",
|
|
6
|
+
USER_MENU = "userMenu",
|
|
7
|
+
PEOPLE_HOME = "peopleHome"
|
|
6
8
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generates Typescript types for analytics events from analytics.spec.yaml
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::a4ebc6f4ba7d2252cc99ca62b6aa2a46>>
|
|
7
7
|
* @codegenCommand yarn workspace @atlassian/analytics-tooling run analytics:codegen teams-app-internal-analytics
|
|
8
8
|
*/
|
|
9
9
|
export type PackageMetaDataType = {
|
|
@@ -1037,6 +1037,38 @@ export type ProfileKudosClickedAttributesType = {
|
|
|
1037
1037
|
kudosId: string;
|
|
1038
1038
|
tabName: 'given' | 'received';
|
|
1039
1039
|
};
|
|
1040
|
+
export type ReportingLinesChartCollapsedAttributesType = {
|
|
1041
|
+
product: string;
|
|
1042
|
+
workspaceUuid: string | null;
|
|
1043
|
+
};
|
|
1044
|
+
export type ReportingLinesChartExpandedAttributesType = {
|
|
1045
|
+
product: string;
|
|
1046
|
+
workspaceUuid: string | null;
|
|
1047
|
+
};
|
|
1048
|
+
export type ReportingLinesChartViewedAttributesType = {
|
|
1049
|
+
product: string;
|
|
1050
|
+
workspaceUuid: string | null;
|
|
1051
|
+
};
|
|
1052
|
+
export type UiViewedAttributesType = {
|
|
1053
|
+
product: string;
|
|
1054
|
+
workspaceUuid: string | null;
|
|
1055
|
+
};
|
|
1056
|
+
export type ReportingLinesUserCardClickedAttributesType = {
|
|
1057
|
+
product: string;
|
|
1058
|
+
workspaceUuid: string | null;
|
|
1059
|
+
};
|
|
1060
|
+
export type ReportingLinesEmptyStateViewedAttributesType = {
|
|
1061
|
+
product: string;
|
|
1062
|
+
workspaceUuid: string | null;
|
|
1063
|
+
isAdmin: boolean;
|
|
1064
|
+
};
|
|
1065
|
+
export type ButtonClickedAddPeopleButtonAttributesType = {
|
|
1066
|
+
isPrimary: boolean;
|
|
1067
|
+
};
|
|
1068
|
+
export type UserMenuItemClickedLinkProfileAttributesType = undefined;
|
|
1069
|
+
export type UserMenuItemClickedLinkManageAccountAttributesType = undefined;
|
|
1070
|
+
export type UserMenuItemClickedLinkLogoutAttributesType = undefined;
|
|
1071
|
+
export type UserMenuOpenedAttributesType = undefined;
|
|
1040
1072
|
export type AnalyticsEventAttributes = {
|
|
1041
1073
|
/**
|
|
1042
1074
|
* fired when the teams-app-internal-analytics example button is clicked */
|
|
@@ -1724,5 +1756,38 @@ export type AnalyticsEventAttributes = {
|
|
|
1724
1756
|
/**
|
|
1725
1757
|
* fired when a kudos item is clicked */
|
|
1726
1758
|
'ui.ProfileKudos.clicked': ProfileKudosClickedAttributesType;
|
|
1759
|
+
/**
|
|
1760
|
+
* fired when the reporting lines chart is collapsed */
|
|
1761
|
+
'ui.ReportingLinesChart.collapsed': ReportingLinesChartCollapsedAttributesType;
|
|
1762
|
+
/**
|
|
1763
|
+
* fired when the reporting lines chart is expanded */
|
|
1764
|
+
'ui.ReportingLinesChart.expanded': ReportingLinesChartExpandedAttributesType;
|
|
1765
|
+
/**
|
|
1766
|
+
* fired when the reporting lines chart is viewed */
|
|
1767
|
+
'ui.ReportingLinesChart.viewed': ReportingLinesChartViewedAttributesType;
|
|
1768
|
+
/**
|
|
1769
|
+
* fired when the reporting lines chart is viewed - used for Atlas MAU */
|
|
1770
|
+
'ui.ui.viewed': UiViewedAttributesType;
|
|
1771
|
+
/**
|
|
1772
|
+
* fired when the reporting lines user card is clicked */
|
|
1773
|
+
'ui.ReportingLinesUserCard.clicked': ReportingLinesUserCardClickedAttributesType;
|
|
1774
|
+
/**
|
|
1775
|
+
* fired when the reporting lines empty state is viewed */
|
|
1776
|
+
'ui.ReportingLinesEmptyState.viewed': ReportingLinesEmptyStateViewedAttributesType;
|
|
1777
|
+
/**
|
|
1778
|
+
* fired when the add people button is clicked */
|
|
1779
|
+
'ui.button.clicked.addPeopleButton': ButtonClickedAddPeopleButtonAttributesType;
|
|
1780
|
+
/**
|
|
1781
|
+
* fired when the link profile button is clicked */
|
|
1782
|
+
'ui.userMenuItem.clicked.linkProfile': UserMenuItemClickedLinkProfileAttributesType;
|
|
1783
|
+
/**
|
|
1784
|
+
* fired when the link manage account button is clicked */
|
|
1785
|
+
'ui.userMenuItem.clicked.linkManageAccount': UserMenuItemClickedLinkManageAccountAttributesType;
|
|
1786
|
+
/**
|
|
1787
|
+
* fired when the link logout button is clicked */
|
|
1788
|
+
'ui.userMenuItem.clicked.linkLogout': UserMenuItemClickedLinkLogoutAttributesType;
|
|
1789
|
+
/**
|
|
1790
|
+
* fired when the user menu is opened */
|
|
1791
|
+
'track.userMenu.opened': UserMenuOpenedAttributesType;
|
|
1727
1792
|
};
|
|
1728
1793
|
export type EventKey = keyof AnalyticsEventAttributes;
|
package/package.json
CHANGED
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
}
|
|
89
89
|
},
|
|
90
90
|
"name": "@atlaskit/teams-app-internal-analytics",
|
|
91
|
-
"version": "1.
|
|
91
|
+
"version": "1.12.0",
|
|
92
92
|
"description": "A package used by the teams app and platform packages to handle people and teams analytics",
|
|
93
93
|
"author": "Atlassian Pty Ltd",
|
|
94
94
|
"license": "Apache-2.0",
|