@todoist/ui-extensions-server 0.0.0-stage → 4.0.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/README.md +2 -2
- package/dist/analytics/events.d.ts +8 -0
- package/dist/analytics/events.js +15 -0
- package/dist/analytics/events.js.map +1 -0
- package/dist/buffer/cloneBuffer.d.ts +1 -0
- package/dist/buffer/cloneBuffer.js +12 -0
- package/dist/buffer/cloneBuffer.js.map +1 -0
- package/dist/buffer/incomingMessageWithRawBody.d.ts +4 -0
- package/dist/buffer/incomingMessageWithRawBody.js +8 -0
- package/dist/buffer/incomingMessageWithRawBody.js.map +1 -0
- package/dist/buffer/index.d.ts +2 -0
- package/dist/buffer/index.js +19 -0
- package/dist/buffer/index.js.map +1 -0
- package/dist/config/configurationBase.d.ts +29 -0
- package/dist/config/configurationBase.js +58 -0
- package/dist/config/configurationBase.js.map +1 -0
- package/dist/constants/card-actions.d.ts +12 -0
- package/dist/constants/card-actions.js +17 -0
- package/dist/constants/card-actions.js.map +1 -0
- package/dist/constants/core-strings.d.ts +61 -0
- package/dist/constants/core-strings.js +66 -0
- package/dist/constants/core-strings.js.map +1 -0
- package/dist/constants/images.d.ts +25 -0
- package/dist/constants/images.js +29 -0
- package/dist/constants/images.js.map +1 -0
- package/dist/constants/index.d.ts +4 -0
- package/dist/constants/index.js +21 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/ui-constants.d.ts +1 -0
- package/dist/constants/ui-constants.js +5 -0
- package/dist/constants/ui-constants.js.map +1 -0
- package/dist/controllers/app.controller.d.ts +15 -0
- package/dist/controllers/app.controller.js +76 -0
- package/dist/controllers/app.controller.js.map +1 -0
- package/dist/controllers/auth.controller.d.ts +47 -0
- package/dist/controllers/auth.controller.js +348 -0
- package/dist/controllers/auth.controller.js.map +1 -0
- package/dist/controllers/index.d.ts +3 -0
- package/dist/controllers/index.js +20 -0
- package/dist/controllers/index.js.map +1 -0
- package/dist/controllers/ping.controller.d.ts +3 -0
- package/dist/controllers/ping.controller.js +30 -0
- package/dist/controllers/ping.controller.js.map +1 -0
- package/dist/decorators/action-decorators.d.ts +12 -0
- package/dist/decorators/action-decorators.js +12 -0
- package/dist/decorators/action-decorators.js.map +1 -0
- package/dist/decorators/app-token.decorator.d.ts +1 -0
- package/dist/decorators/app-token.decorator.js +12 -0
- package/dist/decorators/app-token.decorator.js.map +1 -0
- package/dist/decorators/index.d.ts +2 -0
- package/dist/decorators/index.js +19 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/typed-method-decorator.d.ts +1 -0
- package/dist/decorators/typed-method-decorator.js +3 -0
- package/dist/decorators/typed-method-decorator.js.map +1 -0
- package/dist/entities/User.d.ts +24 -0
- package/dist/entities/User.js +89 -0
- package/dist/entities/User.js.map +1 -0
- package/dist/entities/index.d.ts +1 -0
- package/dist/entities/index.js +18 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/exceptions/index.d.ts +1 -0
- package/dist/exceptions/index.js +18 -0
- package/dist/exceptions/index.js.map +1 -0
- package/dist/exceptions/integration.exception.d.ts +32 -0
- package/dist/exceptions/integration.exception.js +17 -0
- package/dist/exceptions/integration.exception.js.map +1 -0
- package/dist/filters/index.d.ts +1 -0
- package/dist/filters/index.js +18 -0
- package/dist/filters/index.js.map +1 -0
- package/dist/filters/integration-exception.filter.d.ts +10 -0
- package/dist/filters/integration-exception.filter.js +83 -0
- package/dist/filters/integration-exception.filter.js.map +1 -0
- package/dist/guards/extensionVerification.guard.d.ts +6 -0
- package/dist/guards/extensionVerification.guard.js +55 -0
- package/dist/guards/extensionVerification.guard.js.map +1 -0
- package/dist/guards/index.d.ts +1 -0
- package/dist/guards/index.js +18 -0
- package/dist/guards/index.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/interceptors/sentry.interceptor.d.ts +5 -0
- package/dist/interceptors/sentry.interceptor.js +30 -0
- package/dist/interceptors/sentry.interceptor.js.map +1 -0
- package/dist/logging/index.d.ts +1 -0
- package/dist/logging/index.js +18 -0
- package/dist/logging/index.js.map +1 -0
- package/dist/logging/json.logger.d.ts +7 -0
- package/dist/logging/json.logger.js +23 -0
- package/dist/logging/json.logger.js.map +1 -0
- package/dist/middleware/index.d.ts +1 -0
- package/dist/middleware/index.js +18 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/request-header.middleware.d.ts +8 -0
- package/dist/middleware/request-header.middleware.js +29 -0
- package/dist/middleware/request-header.middleware.js.map +1 -0
- package/dist/middleware/workflow-initial-action.middleware.d.ts +13 -0
- package/dist/middleware/workflow-initial-action.middleware.js +23 -0
- package/dist/middleware/workflow-initial-action.middleware.js.map +1 -0
- package/dist/modules/analytics.module.d.ts +5 -0
- package/dist/modules/analytics.module.js +37 -0
- package/dist/modules/analytics.module.js.map +1 -0
- package/dist/modules/app-token.module.d.ts +2 -0
- package/dist/modules/app-token.module.js +22 -0
- package/dist/modules/app-token.module.js.map +1 -0
- package/dist/modules/auth.module.d.ts +17 -0
- package/dist/modules/auth.module.js +44 -0
- package/dist/modules/auth.module.js.map +1 -0
- package/dist/modules/core.module.d.ts +4 -0
- package/dist/modules/core.module.js +38 -0
- package/dist/modules/core.module.js.map +1 -0
- package/dist/modules/error.module.d.ts +7 -0
- package/dist/modules/error.module.js +39 -0
- package/dist/modules/error.module.js.map +1 -0
- package/dist/modules/index.d.ts +3 -0
- package/dist/modules/index.js +20 -0
- package/dist/modules/index.js.map +1 -0
- package/dist/modules/request-headers.module.d.ts +2 -0
- package/dist/modules/request-headers.module.js +22 -0
- package/dist/modules/request-headers.module.js.map +1 -0
- package/dist/server.d.ts +11 -0
- package/dist/server.js +52 -0
- package/dist/server.js.map +1 -0
- package/dist/services/actions.service.d.ts +19 -0
- package/dist/services/actions.service.js +126 -0
- package/dist/services/actions.service.js.map +1 -0
- package/dist/services/adaptive-card.service.d.ts +57 -0
- package/dist/services/adaptive-card.service.js +284 -0
- package/dist/services/adaptive-card.service.js.map +1 -0
- package/dist/services/analytics.service.d.ts +7 -0
- package/dist/services/analytics.service.js +20 -0
- package/dist/services/analytics.service.js.map +1 -0
- package/dist/services/app-token.service.d.ts +6 -0
- package/dist/services/app-token.service.js +47 -0
- package/dist/services/app-token.service.js.map +1 -0
- package/dist/services/authentication-client.d.ts +42 -0
- package/dist/services/authentication-client.js +95 -0
- package/dist/services/authentication-client.js.map +1 -0
- package/dist/services/composer-append-formatting.service.d.ts +9 -0
- package/dist/services/composer-append-formatting.service.js +37 -0
- package/dist/services/composer-append-formatting.service.js.map +1 -0
- package/dist/services/composer-append-settings.service.d.ts +7 -0
- package/dist/services/composer-append-settings.service.js +39 -0
- package/dist/services/composer-append-settings.service.js.map +1 -0
- package/dist/services/errorCard.service.d.ts +14 -0
- package/dist/services/errorCard.service.js +129 -0
- package/dist/services/errorCard.service.js.map +1 -0
- package/dist/services/google-analytics.service.d.ts +10 -0
- package/dist/services/google-analytics.service.js +56 -0
- package/dist/services/google-analytics.service.js.map +1 -0
- package/dist/services/index.d.ts +15 -0
- package/dist/services/index.js +32 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/legacy-google-analytics.service.d.ts +10 -0
- package/dist/services/legacy-google-analytics.service.js +56 -0
- package/dist/services/legacy-google-analytics.service.js.map +1 -0
- package/dist/services/login.service.d.ts +31 -0
- package/dist/services/login.service.js +165 -0
- package/dist/services/login.service.js.map +1 -0
- package/dist/services/request-headers.service.d.ts +9 -0
- package/dist/services/request-headers.service.js +53 -0
- package/dist/services/request-headers.service.js.map +1 -0
- package/dist/services/state.service.d.ts +18 -0
- package/dist/services/state.service.js +96 -0
- package/dist/services/state.service.js.map +1 -0
- package/dist/services/theme.service.d.ts +5 -0
- package/dist/services/theme.service.js +28 -0
- package/dist/services/theme.service.js.map +1 -0
- package/dist/services/translation.service.d.ts +3 -0
- package/dist/services/translation.service.js +20 -0
- package/dist/services/translation.service.js.map +1 -0
- package/dist/services/user-database.service.d.ts +18 -0
- package/dist/services/user-database.service.js +87 -0
- package/dist/services/user-database.service.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/types/auth.d.ts +8 -0
- package/dist/types/auth.js +3 -0
- package/dist/types/auth.js.map +1 -0
- package/dist/types/data.d.ts +12 -0
- package/dist/types/data.js +10 -0
- package/dist/types/data.js.map +1 -0
- package/dist/types/endpoints.d.ts +1 -0
- package/dist/types/endpoints.js +3 -0
- package/dist/types/endpoints.js.map +1 -0
- package/dist/types/error-card-options.d.ts +11 -0
- package/dist/types/error-card-options.js +3 -0
- package/dist/types/error-card-options.js.map +1 -0
- package/dist/types/error.d.ts +2 -0
- package/dist/types/error.js +12 -0
- package/dist/types/error.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.js +24 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/logging.d.ts +1 -0
- package/dist/types/logging.js +3 -0
- package/dist/types/logging.js.map +1 -0
- package/dist/types/product.d.ts +1 -0
- package/dist/types/product.js +3 -0
- package/dist/types/product.js.map +1 -0
- package/dist/types/retry.d.ts +11 -0
- package/dist/types/retry.js +12 -0
- package/dist/types/retry.js.map +1 -0
- package/dist/ui/back-button.d.ts +7 -0
- package/dist/ui/back-button.js +33 -0
- package/dist/ui/back-button.js.map +1 -0
- package/dist/ui/button.d.ts +15 -0
- package/dist/ui/button.js +27 -0
- package/dist/ui/button.js.map +1 -0
- package/dist/ui/column.d.ts +4 -0
- package/dist/ui/column.js +23 -0
- package/dist/ui/column.js.map +1 -0
- package/dist/ui/container.d.ts +11 -0
- package/dist/ui/container.js +31 -0
- package/dist/ui/container.js.map +1 -0
- package/dist/ui/date-time-input.d.ts +17 -0
- package/dist/ui/date-time-input.js +59 -0
- package/dist/ui/date-time-input.js.map +1 -0
- package/dist/ui/index.d.ts +9 -0
- package/dist/ui/index.js +26 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/profile-details.d.ts +3 -0
- package/dist/ui/profile-details.js +16 -0
- package/dist/ui/profile-details.js.map +1 -0
- package/dist/ui/stock-button.d.ts +20 -0
- package/dist/ui/stock-button.js +131 -0
- package/dist/ui/stock-button.js.map +1 -0
- package/dist/ui/text-block.d.ts +9 -0
- package/dist/ui/text-block.js +24 -0
- package/dist/ui/text-block.js.map +1 -0
- package/dist/ui/ui-builder-context.d.ts +7 -0
- package/dist/ui/ui-builder-context.js +3 -0
- package/dist/ui/ui-builder-context.js.map +1 -0
- package/dist/utils/action-utils.d.ts +5 -0
- package/dist/utils/action-utils.js +29 -0
- package/dist/utils/action-utils.js.map +1 -0
- package/dist/utils/card-bridge.d.ts +7 -0
- package/dist/utils/card-bridge.js +30 -0
- package/dist/utils/card-bridge.js.map +1 -0
- package/dist/utils/context-utils.d.ts +3 -0
- package/dist/utils/context-utils.js +21 -0
- package/dist/utils/context-utils.js.map +1 -0
- package/dist/utils/dateUtils.d.ts +10 -0
- package/dist/utils/dateUtils.js +88 -0
- package/dist/utils/dateUtils.js.map +1 -0
- package/dist/utils/encryption.d.ts +10 -0
- package/dist/utils/encryption.js +70 -0
- package/dist/utils/encryption.js.map +1 -0
- package/dist/utils/endpointUtils.d.ts +2 -0
- package/dist/utils/endpointUtils.js +7 -0
- package/dist/utils/endpointUtils.js.map +1 -0
- package/dist/utils/envUtils.d.ts +1 -0
- package/dist/utils/envUtils.js +7 -0
- package/dist/utils/envUtils.js.map +1 -0
- package/dist/utils/errorUtils.d.ts +6 -0
- package/dist/utils/errorUtils.js +51 -0
- package/dist/utils/errorUtils.js.map +1 -0
- package/dist/utils/header-utils.d.ts +9 -0
- package/dist/utils/header-utils.js +24 -0
- package/dist/utils/header-utils.js.map +1 -0
- package/dist/utils/index.d.ts +13 -0
- package/dist/utils/index.js +30 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.js +50 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/paginationDataUtils.d.ts +6 -0
- package/dist/utils/paginationDataUtils.js +52 -0
- package/dist/utils/paginationDataUtils.js.map +1 -0
- package/dist/utils/urlUtils.d.ts +2 -0
- package/dist/utils/urlUtils.js +20 -0
- package/dist/utils/urlUtils.js.map +1 -0
- package/dist/utils/validationUtils.d.ts +3 -0
- package/dist/utils/validationUtils.js +22 -0
- package/dist/utils/validationUtils.js.map +1 -0
- package/package.json +63 -5
- package/views/authDetails.hbs +97 -0
- package/views/partials/errorBody.hbs +7 -0
- package/views/partials/errorTitle.hbs +1 -0
- package/views/partials/successBody.hbs +2 -0
- package/views/partials/successTitle.hbs +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composer-append-settings.service.js","sourceRoot":"","sources":["../../src/services/composer-append-settings.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA2C;AAC3C,oEAAoE;AAEpE,4DAAgD;AAEhD,+DAA0D;AAGnD,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IACtC,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;IAAG,CAAC;IAEvE,mCAAmC,CAAC,EAAU,EAAE,gBAA0B;QACtE,MAAM,qBAAqB,GAAG,IAAI,mCAAc,EAAE,CAAA;QAClD,qBAAqB,CAAC,EAAE,GAAG,EAAE,CAAA;QAC7B,qBAAqB,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,mBAAI,CAAC,eAAe,CAAC,CAAA;QAE1F,MAAM,iBAAiB,GAAG,IAAI,2BAAM,CAChC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,mBAAI,CAAC,YAAY,CAAC,EACzD,IAAI,CAAC,QAAQ,EAAE,CAClB,CAAA;QACD,MAAM,kBAAkB,GAAG,IAAI,2BAAM,CACjC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,mBAAI,CAAC,aAAa,CAAC,EAC1D,KAAK,CAAC,QAAQ,EAAE,CACnB,CAAA;QAED,qBAAqB,CAAC,OAAO,GAAG,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAA;QACvE,qBAAqB,CAAC,YAAY;YAC9B,CAAC,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAA;QAEnF,qBAAqB,CAAC,OAAO,GAAG,QAAQ,CAAA;QAExC,OAAO,qBAAqB,CAAA;IAChC,CAAC;CACJ,CAAA;AAzBY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,mBAAU,GAAE;qCAEwC,wCAAkB;GAD1D,6BAA6B,CAyBzC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TodoistCard, TodoistCardRequest } from '@todoist/ui-extensions-core';
|
|
2
|
+
import type { ErrorCardOptions } from '../types';
|
|
3
|
+
import { ThemeService } from './theme.service';
|
|
4
|
+
import { TranslationService } from './translation.service';
|
|
5
|
+
export type ErrorCardServiceOptions = Pick<ErrorCardOptions, 'showSignout' | 'showGoHome' | 'helpCenterLink'>;
|
|
6
|
+
export declare class ErrorCardService {
|
|
7
|
+
private readonly translationService;
|
|
8
|
+
private readonly themeService;
|
|
9
|
+
private readonly options;
|
|
10
|
+
static readonly OPTIONS = "ErrorCardService.Options";
|
|
11
|
+
constructor(translationService: TranslationService, themeService: ThemeService, options: ErrorCardServiceOptions);
|
|
12
|
+
private getErrorCardOptions;
|
|
13
|
+
errorCard(request: TodoistCardRequest, errorCardOptions?: ErrorCardOptions): TodoistCard;
|
|
14
|
+
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.ErrorCardService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const ui_extensions_core_1 = require("@todoist/ui-extensions-core");
|
|
18
|
+
const lodash_1 = require("lodash");
|
|
19
|
+
const constants_1 = require("../constants");
|
|
20
|
+
const types_1 = require("../types");
|
|
21
|
+
const adaptive_card_service_1 = require("./adaptive-card.service");
|
|
22
|
+
const theme_service_1 = require("./theme.service");
|
|
23
|
+
const translation_service_1 = require("./translation.service");
|
|
24
|
+
let ErrorCardService = class ErrorCardService {
|
|
25
|
+
constructor(translationService, themeService, options) {
|
|
26
|
+
this.translationService = translationService;
|
|
27
|
+
this.themeService = themeService;
|
|
28
|
+
this.options = options;
|
|
29
|
+
}
|
|
30
|
+
getErrorCardOptions(request, errorCardOptions = {}) {
|
|
31
|
+
const defaultOptions = {
|
|
32
|
+
showSignout: true,
|
|
33
|
+
showGoHome: true,
|
|
34
|
+
maximumDoistCardVersion: 0.3,
|
|
35
|
+
errorMessage: this.translationService.getTranslation(constants_1.Core.ERROR_CONTENT),
|
|
36
|
+
};
|
|
37
|
+
const serviceOptions = {
|
|
38
|
+
showSignout: this.options.showSignout,
|
|
39
|
+
showGoHome: this.options.showGoHome,
|
|
40
|
+
helpCenterLink: this.options.helpCenterLink,
|
|
41
|
+
};
|
|
42
|
+
const requestOptions = {
|
|
43
|
+
maximumDoistCardVersion: request.maximumDoistCardVersion,
|
|
44
|
+
};
|
|
45
|
+
return (0, lodash_1.merge)(defaultOptions, serviceOptions, requestOptions, errorCardOptions);
|
|
46
|
+
}
|
|
47
|
+
errorCard(request, errorCardOptions) {
|
|
48
|
+
const { showSignout, showGoHome, errorMessage, exceptionMessage, retryRequest, helpCenterLink, errorId, maximumDoistCardVersion, } = this.getErrorCardOptions(request, errorCardOptions);
|
|
49
|
+
const card = new ui_extensions_core_1.TodoistCard();
|
|
50
|
+
card.todoistCardVersion = '0.3';
|
|
51
|
+
card.verticalContentAlignment = 'center';
|
|
52
|
+
card.minHeight = 200;
|
|
53
|
+
const errorImage = new ui_extensions_core_1.Image();
|
|
54
|
+
errorImage.pixelWidth = 200;
|
|
55
|
+
errorImage.url = this.themeService.createThemeBasedUrl(constants_1.ERROR_IMAGE);
|
|
56
|
+
errorImage.horizontalAlignment = 'center';
|
|
57
|
+
const content = new ui_extensions_core_1.TextBlock(errorMessage);
|
|
58
|
+
content.id = adaptive_card_service_1.ERROR_CONTENT_ID;
|
|
59
|
+
content.horizontalAlignment = 'center';
|
|
60
|
+
content.wrap = true;
|
|
61
|
+
card.addItem(errorImage);
|
|
62
|
+
card.addItem(content);
|
|
63
|
+
if (retryRequest) {
|
|
64
|
+
const data = {
|
|
65
|
+
[types_1.RetryAttributes.ORIGINAL_DATA]: retryRequest.retryAction.data,
|
|
66
|
+
[types_1.RetryAttributes.ORIGINAL_INPUTS]: retryRequest.retryAction.inputs,
|
|
67
|
+
[types_1.RetryAttributes.COMMAND]: retryRequest.retryAction.actionId,
|
|
68
|
+
[types_1.RetryAttributes.ACTION_TYPE]: retryRequest.retryAction.actionType,
|
|
69
|
+
exceptionMessage: exceptionMessage,
|
|
70
|
+
};
|
|
71
|
+
const retryButton = new ui_extensions_core_1.SubmitAction();
|
|
72
|
+
retryButton.id = constants_1.CardActions.Retry;
|
|
73
|
+
retryButton.data = data;
|
|
74
|
+
retryButton.style = 'positive';
|
|
75
|
+
retryButton.title = this.translationService.getTranslation(constants_1.Core.RETRY);
|
|
76
|
+
const column = new ui_extensions_core_1.Column(new ui_extensions_core_1.SizeAndUnit(100, 'pixel'));
|
|
77
|
+
const actions = new ui_extensions_core_1.ActionSet();
|
|
78
|
+
actions.id = 'RetryActions';
|
|
79
|
+
actions.addAction(retryButton);
|
|
80
|
+
column.addItem(actions);
|
|
81
|
+
const columns = new ui_extensions_core_1.ColumnSet();
|
|
82
|
+
columns.horizontalAlignment = 'center';
|
|
83
|
+
columns.spacing = 'medium';
|
|
84
|
+
columns.addColumn(column);
|
|
85
|
+
card.addItem(columns);
|
|
86
|
+
}
|
|
87
|
+
const actionSet = new ui_extensions_core_1.ActionSet();
|
|
88
|
+
actionSet.spacing = 'medium';
|
|
89
|
+
if (showGoHome) {
|
|
90
|
+
const goHomeButton = new ui_extensions_core_1.SubmitAction();
|
|
91
|
+
goHomeButton.id = constants_1.CardActions.GoHome;
|
|
92
|
+
goHomeButton.title = this.translationService.getTranslation(constants_1.Core.GO_BACK);
|
|
93
|
+
goHomeButton.associatedInputs = 'none';
|
|
94
|
+
actionSet.addAction(goHomeButton);
|
|
95
|
+
}
|
|
96
|
+
if (helpCenterLink) {
|
|
97
|
+
const contactUsButton = new ui_extensions_core_1.OpenUrlAction();
|
|
98
|
+
contactUsButton.title = this.translationService.getTranslation(constants_1.Core.CONTACT_US);
|
|
99
|
+
contactUsButton.url = helpCenterLink;
|
|
100
|
+
actionSet.addAction(contactUsButton);
|
|
101
|
+
}
|
|
102
|
+
if (errorId && maximumDoistCardVersion && maximumDoistCardVersion >= 0.6) {
|
|
103
|
+
card.todoistCardVersion = '0.6';
|
|
104
|
+
const copySupportDataButton = new ui_extensions_core_1.ClipboardAction();
|
|
105
|
+
copySupportDataButton.id = constants_1.CardActions.CopySupportInfo;
|
|
106
|
+
copySupportDataButton.title = this.translationService.getTranslation(constants_1.Core.COPY_SUPPORT_INFORMATION);
|
|
107
|
+
copySupportDataButton.text = JSON.stringify({ errorId });
|
|
108
|
+
actionSet.addAction(copySupportDataButton);
|
|
109
|
+
}
|
|
110
|
+
if (showSignout) {
|
|
111
|
+
const signOutButton = new ui_extensions_core_1.SubmitAction();
|
|
112
|
+
signOutButton.id = constants_1.CardActions.LogOut;
|
|
113
|
+
signOutButton.title = this.translationService.getTranslation(constants_1.Core.LOGOUT);
|
|
114
|
+
signOutButton.style = 'destructive';
|
|
115
|
+
actionSet.addAction(signOutButton);
|
|
116
|
+
}
|
|
117
|
+
card.addItem(actionSet);
|
|
118
|
+
return card;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
exports.ErrorCardService = ErrorCardService;
|
|
122
|
+
ErrorCardService.OPTIONS = 'ErrorCardService.Options';
|
|
123
|
+
exports.ErrorCardService = ErrorCardService = __decorate([
|
|
124
|
+
(0, common_1.Injectable)(),
|
|
125
|
+
__param(2, (0, common_1.Inject)(ErrorCardService.OPTIONS)),
|
|
126
|
+
__metadata("design:paramtypes", [translation_service_1.TranslationService,
|
|
127
|
+
theme_service_1.ThemeService, Object])
|
|
128
|
+
], ErrorCardService);
|
|
129
|
+
//# sourceMappingURL=errorCard.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorCard.service.js","sourceRoot":"","sources":["../../src/services/errorCard.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnalyticsEvent } from '@todoist/integrations-common';
|
|
2
|
+
import { AnalyticsService as AnalyticsBaseService } from '../services/analytics.service';
|
|
3
|
+
import { Logger } from '../utils';
|
|
4
|
+
export declare class GoogleAnalyticsService extends AnalyticsBaseService {
|
|
5
|
+
private analyticsService?;
|
|
6
|
+
_logger?: Logger;
|
|
7
|
+
getLogger(): Logger;
|
|
8
|
+
setUserId(userId: number): void;
|
|
9
|
+
trackEvents(events: AnalyticsEvent[]): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var GoogleAnalyticsService_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.GoogleAnalyticsService = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const node_1 = require("@sentry/node");
|
|
13
|
+
const integrations_common_1 = require("@todoist/integrations-common");
|
|
14
|
+
const configurationBase_1 = require("../config/configurationBase");
|
|
15
|
+
const analytics_service_1 = require("../services/analytics.service");
|
|
16
|
+
const utils_1 = require("../utils");
|
|
17
|
+
let GoogleAnalyticsService = GoogleAnalyticsService_1 = class GoogleAnalyticsService extends analytics_service_1.AnalyticsService {
|
|
18
|
+
getLogger() {
|
|
19
|
+
if (!this._logger) {
|
|
20
|
+
this._logger = new utils_1.Logger(GoogleAnalyticsService_1.name, 'ANALYTICS');
|
|
21
|
+
}
|
|
22
|
+
return this._logger;
|
|
23
|
+
}
|
|
24
|
+
setUserId(userId) {
|
|
25
|
+
const { googleMeasurementId, googleAPISecret } = (0, configurationBase_1.getBaseConfiguration)();
|
|
26
|
+
this.getLogger().log('Instantiating Google Analytics GA service', {
|
|
27
|
+
googleMeasurementId,
|
|
28
|
+
});
|
|
29
|
+
this.analyticsService = new integrations_common_1.AnalyticsService({
|
|
30
|
+
apiSecret: googleAPISecret,
|
|
31
|
+
measurementId: googleMeasurementId,
|
|
32
|
+
clientId: (0, integrations_common_1.createIdFromString)(userId.toString()),
|
|
33
|
+
appVersion: undefined,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
trackEvents(events) {
|
|
37
|
+
this.getLogger().log('Sending events to Google Analytics GA4', { events });
|
|
38
|
+
if (this.analyticsService) {
|
|
39
|
+
if ((0, utils_1.isProduction)()) {
|
|
40
|
+
this.analyticsService.trackEvents(events).catch((error) => {
|
|
41
|
+
this.getLogger().error(error);
|
|
42
|
+
(0, node_1.captureException)(error);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
const message = 'analyticsService has not been instantiated before tracking events';
|
|
48
|
+
this.getLogger().error(message);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
exports.GoogleAnalyticsService = GoogleAnalyticsService;
|
|
53
|
+
exports.GoogleAnalyticsService = GoogleAnalyticsService = GoogleAnalyticsService_1 = __decorate([
|
|
54
|
+
(0, common_1.Injectable)({ scope: common_1.Scope.REQUEST })
|
|
55
|
+
], GoogleAnalyticsService);
|
|
56
|
+
//# sourceMappingURL=google-analytics.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-analytics.service.js","sourceRoot":"","sources":["../../src/services/google-analytics.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAkD;AAClD,uCAA+C;AAC/C,sEAAmG;AAEnG,mEAAkE;AAClE,qEAAwF;AACxF,oCAA+C;AAOxC,IAAM,sBAAsB,8BAA5B,MAAM,sBAAuB,SAAQ,oCAAoB;IAY5D,SAAS;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,IAAI,cAAM,CAAC,wBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,SAAS,CAAC,MAAc;QACpB,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,IAAA,wCAAoB,GAAE,CAAA;QACvE,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,2CAA2C,EAAE;YAC9D,mBAAmB;SACtB,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,sCAAgB,CAAC;YACzC,SAAS,EAAE,eAAyB;YACpC,aAAa,EAAE,mBAA6B;YAC5C,QAAQ,EAAE,IAAA,wCAAkB,EAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC/C,UAAU,EAAE,SAAS;SACxB,CAAC,CAAA;IACN,CAAC;IAED,WAAW,CAAC,MAAwB;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,wCAAwC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1E,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,IAAA,oBAAY,GAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBAEtD,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAC7B,IAAA,uBAAgB,EAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC,CAAC,CAAA;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YAGJ,MAAM,OAAO,GAAG,mEAAmE,CAAA;YACnF,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;IACL,CAAC;CACJ,CAAA;AAjDY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,cAAK,CAAC,OAAO,EAAE,CAAC;GACxB,sBAAsB,CAiDlC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './actions.service';
|
|
2
|
+
export * from './adaptive-card.service';
|
|
3
|
+
export * from './analytics.service';
|
|
4
|
+
export * from './app-token.service';
|
|
5
|
+
export * from './authentication-client';
|
|
6
|
+
export * from './composer-append-formatting.service';
|
|
7
|
+
export * from './composer-append-settings.service';
|
|
8
|
+
export * from './google-analytics.service';
|
|
9
|
+
export * from './legacy-google-analytics.service';
|
|
10
|
+
export * from './login.service';
|
|
11
|
+
export * from './request-headers.service';
|
|
12
|
+
export * from './state.service';
|
|
13
|
+
export * from './theme.service';
|
|
14
|
+
export * from './translation.service';
|
|
15
|
+
export * from './user-database.service';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./actions.service"), exports);
|
|
18
|
+
__exportStar(require("./adaptive-card.service"), exports);
|
|
19
|
+
__exportStar(require("./analytics.service"), exports);
|
|
20
|
+
__exportStar(require("./app-token.service"), exports);
|
|
21
|
+
__exportStar(require("./authentication-client"), exports);
|
|
22
|
+
__exportStar(require("./composer-append-formatting.service"), exports);
|
|
23
|
+
__exportStar(require("./composer-append-settings.service"), exports);
|
|
24
|
+
__exportStar(require("./google-analytics.service"), exports);
|
|
25
|
+
__exportStar(require("./legacy-google-analytics.service"), exports);
|
|
26
|
+
__exportStar(require("./login.service"), exports);
|
|
27
|
+
__exportStar(require("./request-headers.service"), exports);
|
|
28
|
+
__exportStar(require("./state.service"), exports);
|
|
29
|
+
__exportStar(require("./theme.service"), exports);
|
|
30
|
+
__exportStar(require("./translation.service"), exports);
|
|
31
|
+
__exportStar(require("./user-database.service"), exports);
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,0DAAuC;AACvC,sDAAmC;AACnC,sDAAmC;AACnC,0DAAuC;AACvC,uEAAoD;AACpD,qEAAkD;AAClD,6DAA0C;AAC1C,oEAAiD;AACjD,kDAA+B;AAC/B,4DAAyC;AACzC,kDAA+B;AAC/B,kDAA+B;AAC/B,wDAAqC;AACrC,0DAAuC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnalyticsEvent } from '@todoist/integrations-common';
|
|
2
|
+
import { AnalyticsService as AnalyticsBaseService } from '../services/analytics.service';
|
|
3
|
+
import { Logger } from '../utils';
|
|
4
|
+
export declare class LegacyGoogleAnalyticsService extends AnalyticsBaseService {
|
|
5
|
+
private analyticsService?;
|
|
6
|
+
_logger?: Logger;
|
|
7
|
+
getLogger(): Logger;
|
|
8
|
+
setUserId(userId: number): void;
|
|
9
|
+
trackEvents(events: AnalyticsEvent[]): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var LegacyGoogleAnalyticsService_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.LegacyGoogleAnalyticsService = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const node_1 = require("@sentry/node");
|
|
13
|
+
const integrations_common_1 = require("@todoist/integrations-common");
|
|
14
|
+
const configurationBase_1 = require("../config/configurationBase");
|
|
15
|
+
const analytics_service_1 = require("../services/analytics.service");
|
|
16
|
+
const utils_1 = require("../utils");
|
|
17
|
+
let LegacyGoogleAnalyticsService = LegacyGoogleAnalyticsService_1 = class LegacyGoogleAnalyticsService extends analytics_service_1.AnalyticsService {
|
|
18
|
+
getLogger() {
|
|
19
|
+
if (!this._logger) {
|
|
20
|
+
this._logger = new utils_1.Logger(LegacyGoogleAnalyticsService_1.name, 'ANALYTICS');
|
|
21
|
+
}
|
|
22
|
+
return this._logger;
|
|
23
|
+
}
|
|
24
|
+
setUserId(userId) {
|
|
25
|
+
const { googleTrackingId } = (0, configurationBase_1.getBaseConfiguration)();
|
|
26
|
+
this.getLogger().log('Instantiating Google Analytics UA service (deprecated)', {
|
|
27
|
+
googleTrackingId,
|
|
28
|
+
});
|
|
29
|
+
this.analyticsService = new integrations_common_1.LegacyAnalyticsService({
|
|
30
|
+
trackingId: googleTrackingId,
|
|
31
|
+
clientId: (0, integrations_common_1.createIdFromString)(userId.toString()),
|
|
32
|
+
provideCustomUserAgent: true,
|
|
33
|
+
appVersion: undefined,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
trackEvents(events) {
|
|
37
|
+
this.getLogger().log('Sending events to Google Analytics UA (deprecated)', { events });
|
|
38
|
+
if (this.analyticsService) {
|
|
39
|
+
if ((0, utils_1.isProduction)()) {
|
|
40
|
+
this.analyticsService.trackEvents(events).catch((error) => {
|
|
41
|
+
this.getLogger().error(error);
|
|
42
|
+
(0, node_1.captureException)(error);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
const message = 'analyticsService has not been instantiated before tracking events';
|
|
48
|
+
this.getLogger().error(message);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
exports.LegacyGoogleAnalyticsService = LegacyGoogleAnalyticsService;
|
|
53
|
+
exports.LegacyGoogleAnalyticsService = LegacyGoogleAnalyticsService = LegacyGoogleAnalyticsService_1 = __decorate([
|
|
54
|
+
(0, common_1.Injectable)({ scope: common_1.Scope.REQUEST })
|
|
55
|
+
], LegacyGoogleAnalyticsService);
|
|
56
|
+
//# sourceMappingURL=legacy-google-analytics.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-google-analytics.service.js","sourceRoot":"","sources":["../../src/services/legacy-google-analytics.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAkD;AAClD,uCAA+C;AAC/C,sEAIqC;AAErC,mEAAkE;AAClE,qEAAwF;AACxF,oCAA+C;AAOxC,IAAM,4BAA4B,oCAAlC,MAAM,4BAA6B,SAAQ,oCAAoB;IAYlE,SAAS;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,IAAI,cAAM,CAAC,8BAA4B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,SAAS,CAAC,MAAc;QACpB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,wCAAoB,GAAE,CAAA;QACnD,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,wDAAwD,EAAE;YAC3E,gBAAgB;SACnB,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,4CAAsB,CAAC;YAC/C,UAAU,EAAE,gBAA0B;YACtC,QAAQ,EAAE,IAAA,wCAAkB,EAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC/C,sBAAsB,EAAE,IAAI;YAC5B,UAAU,EAAE,SAAS;SACxB,CAAC,CAAA;IACN,CAAC;IAED,WAAW,CAAC,MAAwB;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,oDAAoD,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QACtF,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,IAAA,oBAAY,GAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBAEtD,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAC7B,IAAA,uBAAgB,EAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC,CAAC,CAAA;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YAGJ,MAAM,OAAO,GAAG,mEAAmE,CAAA;YACnF,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;IACL,CAAC;CACJ,CAAA;AAjDY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,cAAK,CAAC,OAAO,EAAE,CAAC;GACxB,4BAA4B,CAiDxC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { TodoistCardActionData, TodoistCardContext, TodoistCardExtensionType, TodoistCardResponse } from '@todoist/ui-extensions-core';
|
|
2
|
+
import { AdaptiveCardService } from './adaptive-card.service';
|
|
3
|
+
import { AnalyticsService } from './analytics.service';
|
|
4
|
+
import { AuthenticationClient } from './authentication-client';
|
|
5
|
+
import { TranslationService } from './translation.service';
|
|
6
|
+
type LoginCardVerson = 'v1' | 'v2';
|
|
7
|
+
export type LoginCardInformation = {
|
|
8
|
+
authUrl: string;
|
|
9
|
+
loginTitle: string;
|
|
10
|
+
loginInstructions: string;
|
|
11
|
+
learnMoreLink?: string;
|
|
12
|
+
loginCardVersion?: LoginCardVerson;
|
|
13
|
+
};
|
|
14
|
+
export type LoginCardOptions = Omit<LoginCardInformation, 'authUrl'>;
|
|
15
|
+
export declare class LoginService {
|
|
16
|
+
private readonly authenticationClient;
|
|
17
|
+
private readonly analyticsService;
|
|
18
|
+
private readonly adaptiveCardService;
|
|
19
|
+
private readonly translationService;
|
|
20
|
+
private options;
|
|
21
|
+
static OPTIONS: string;
|
|
22
|
+
constructor(authenticationClient: AuthenticationClient, analyticsService: AnalyticsService, adaptiveCardService: AdaptiveCardService, translationService: TranslationService, options: LoginCardOptions);
|
|
23
|
+
getAuthentication(context: TodoistCardContext, isInitialLaunch?: boolean, options?: {
|
|
24
|
+
unauthorized?: boolean;
|
|
25
|
+
continueButtonData?: () => TodoistCardActionData | undefined;
|
|
26
|
+
extensionType?: TodoistCardExtensionType;
|
|
27
|
+
}): Promise<TodoistCardResponse>;
|
|
28
|
+
private createLoginCard;
|
|
29
|
+
private createLegacyLoginCard;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.LoginService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const ui_extensions_core_1 = require("@todoist/ui-extensions-core");
|
|
18
|
+
const __1 = require("..");
|
|
19
|
+
const events_1 = require("../analytics/events");
|
|
20
|
+
const adaptive_card_service_1 = require("./adaptive-card.service");
|
|
21
|
+
const analytics_service_1 = require("./analytics.service");
|
|
22
|
+
const authentication_client_1 = require("./authentication-client");
|
|
23
|
+
const translation_service_1 = require("./translation.service");
|
|
24
|
+
let LoginService = class LoginService {
|
|
25
|
+
constructor(authenticationClient, analyticsService, adaptiveCardService, translationService, options) {
|
|
26
|
+
this.authenticationClient = authenticationClient;
|
|
27
|
+
this.analyticsService = analyticsService;
|
|
28
|
+
this.adaptiveCardService = adaptiveCardService;
|
|
29
|
+
this.translationService = translationService;
|
|
30
|
+
this.options = options;
|
|
31
|
+
}
|
|
32
|
+
async getAuthentication(context, isInitialLaunch = false, options) {
|
|
33
|
+
var _a;
|
|
34
|
+
if (isInitialLaunch) {
|
|
35
|
+
this.analyticsService.trackEvents([events_1.launchedNotAuthenticated]);
|
|
36
|
+
}
|
|
37
|
+
const loginCardInformation = {
|
|
38
|
+
authUrl: await this.authenticationClient.getAuthorizationUrl((0, __1.getUserId)(context)),
|
|
39
|
+
...this.options,
|
|
40
|
+
};
|
|
41
|
+
const card = this.options.loginCardVersion === 'v2'
|
|
42
|
+
? this.createLoginCard({
|
|
43
|
+
loginCardInformation,
|
|
44
|
+
displayUnauthorized: options === null || options === void 0 ? void 0 : options.unauthorized,
|
|
45
|
+
continueButtonData: options === null || options === void 0 ? void 0 : options.continueButtonData,
|
|
46
|
+
extensionType: options === null || options === void 0 ? void 0 : options.extensionType,
|
|
47
|
+
})
|
|
48
|
+
: this.createLegacyLoginCard(loginCardInformation, (_a = options === null || options === void 0 ? void 0 : options.unauthorized) !== null && _a !== void 0 ? _a : false, options === null || options === void 0 ? void 0 : options.continueButtonData);
|
|
49
|
+
return { card };
|
|
50
|
+
}
|
|
51
|
+
createLoginCard({ loginCardInformation, displayUnauthorized = false, continueButtonData, extensionType, }) {
|
|
52
|
+
const { authUrl, loginInstructions, loginTitle, learnMoreLink } = loginCardInformation;
|
|
53
|
+
return ui_extensions_core_1.TodoistCard.fromWithItems({
|
|
54
|
+
todoistCardVersion: '0.3',
|
|
55
|
+
items: [
|
|
56
|
+
...(displayUnauthorized
|
|
57
|
+
? [
|
|
58
|
+
ui_extensions_core_1.TextBlock.from({
|
|
59
|
+
text: this.translationService.getTranslation(__1.Core.UNAUTHORIZED),
|
|
60
|
+
color: 'attention',
|
|
61
|
+
wrap: true,
|
|
62
|
+
}),
|
|
63
|
+
]
|
|
64
|
+
: []),
|
|
65
|
+
ui_extensions_core_1.TextBlock.from({
|
|
66
|
+
text: this.translationService.getTranslation(loginTitle),
|
|
67
|
+
weight: 'bolder',
|
|
68
|
+
}),
|
|
69
|
+
ui_extensions_core_1.RichTextBlock.fromWithInlines({
|
|
70
|
+
spacing: 'medium',
|
|
71
|
+
inlines: [
|
|
72
|
+
ui_extensions_core_1.TextRun.from({
|
|
73
|
+
text: this.translationService.getTranslation(loginInstructions),
|
|
74
|
+
isSubtle: true,
|
|
75
|
+
size: 'small',
|
|
76
|
+
}),
|
|
77
|
+
...(learnMoreLink
|
|
78
|
+
? [
|
|
79
|
+
ui_extensions_core_1.TextRun.from({
|
|
80
|
+
spacing: 'small',
|
|
81
|
+
text: this.translationService.getTranslation(__1.Core.LEARN_MORE),
|
|
82
|
+
selectAction: ui_extensions_core_1.OpenUrlAction.from({
|
|
83
|
+
url: learnMoreLink,
|
|
84
|
+
}),
|
|
85
|
+
color: 'attention',
|
|
86
|
+
size: 'small',
|
|
87
|
+
}),
|
|
88
|
+
]
|
|
89
|
+
: []),
|
|
90
|
+
],
|
|
91
|
+
}),
|
|
92
|
+
(0, __1.columnSet)(ui_extensions_core_1.ActionSet.fromWithActions({
|
|
93
|
+
spacing: 'large',
|
|
94
|
+
actions: [
|
|
95
|
+
ui_extensions_core_1.SubmitAction.from({
|
|
96
|
+
id: __1.CardActions.Continue,
|
|
97
|
+
title: this.translationService.getTranslation(__1.Core.ALREADY_DONE),
|
|
98
|
+
data: continueButtonData === null || continueButtonData === void 0 ? void 0 : continueButtonData(),
|
|
99
|
+
associatedInputs: 'none',
|
|
100
|
+
}),
|
|
101
|
+
ui_extensions_core_1.OpenUrlAction.from({
|
|
102
|
+
url: authUrl,
|
|
103
|
+
title: this.translationService.getTranslation(__1.Core.AUTHENTICATE),
|
|
104
|
+
style: 'positive',
|
|
105
|
+
}),
|
|
106
|
+
],
|
|
107
|
+
}), {
|
|
108
|
+
horizontalAlignment: extensionType === 'settings' ? undefined : 'right',
|
|
109
|
+
spacing: 'medium',
|
|
110
|
+
}),
|
|
111
|
+
],
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
createLegacyLoginCard(loginCardInformation, displayUnauthorized = false, continueButtonData) {
|
|
115
|
+
const { authUrl, loginInstructions, loginTitle, learnMoreLink } = loginCardInformation;
|
|
116
|
+
const card = this.adaptiveCardService.createEmptyCard();
|
|
117
|
+
const topContainer = new ui_extensions_core_1.Container();
|
|
118
|
+
const loginInstructionText = new ui_extensions_core_1.TextBlock(this.translationService.getTranslation(loginInstructions));
|
|
119
|
+
loginInstructionText.wrap = true;
|
|
120
|
+
if (displayUnauthorized) {
|
|
121
|
+
const unauthorizedText = new ui_extensions_core_1.TextBlock(this.translationService.getTranslation(__1.Core.UNAUTHORIZED));
|
|
122
|
+
unauthorizedText.color = 'attention';
|
|
123
|
+
unauthorizedText.wrap = true;
|
|
124
|
+
card.addItem(unauthorizedText);
|
|
125
|
+
}
|
|
126
|
+
topContainer.addItem(loginInstructionText);
|
|
127
|
+
const loginButton = new ui_extensions_core_1.OpenUrlAction();
|
|
128
|
+
loginButton.url = authUrl;
|
|
129
|
+
loginButton.title = this.translationService.getTranslation(loginTitle);
|
|
130
|
+
loginButton.style = 'positive';
|
|
131
|
+
const continueButton = new ui_extensions_core_1.SubmitAction();
|
|
132
|
+
continueButton.id = __1.CardActions.Continue;
|
|
133
|
+
continueButton.title = this.translationService.getTranslation(__1.Core.CONTINUE);
|
|
134
|
+
continueButton.associatedInputs = 'none';
|
|
135
|
+
continueButton.data = continueButtonData === null || continueButtonData === void 0 ? void 0 : continueButtonData();
|
|
136
|
+
const actions = new ui_extensions_core_1.ActionSet();
|
|
137
|
+
actions.addAction(continueButton);
|
|
138
|
+
actions.addAction(loginButton);
|
|
139
|
+
topContainer.addItem((0, __1.columnSet)(actions, { horizontalAlignment: 'right' }));
|
|
140
|
+
const bottomContainer = new ui_extensions_core_1.Container();
|
|
141
|
+
bottomContainer.separator = true;
|
|
142
|
+
bottomContainer.spacing = 'extraLarge';
|
|
143
|
+
const bottomColumns = new ui_extensions_core_1.ColumnSet();
|
|
144
|
+
const learnMoreColumn = new ui_extensions_core_1.Column('stretch');
|
|
145
|
+
if (learnMoreLink) {
|
|
146
|
+
learnMoreColumn.addItem((0, __1.createLearnMoreButton)(this.adaptiveCardService, learnMoreLink));
|
|
147
|
+
bottomColumns.addColumn(learnMoreColumn);
|
|
148
|
+
}
|
|
149
|
+
bottomContainer.addItem(bottomColumns);
|
|
150
|
+
card.addItem(topContainer);
|
|
151
|
+
card.addItem(bottomContainer);
|
|
152
|
+
return card;
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
exports.LoginService = LoginService;
|
|
156
|
+
LoginService.OPTIONS = 'LoginService.OPTIONS';
|
|
157
|
+
exports.LoginService = LoginService = __decorate([
|
|
158
|
+
(0, common_1.Injectable)(),
|
|
159
|
+
__param(4, (0, common_1.Inject)(LoginService.OPTIONS)),
|
|
160
|
+
__metadata("design:paramtypes", [authentication_client_1.AuthenticationClient,
|
|
161
|
+
analytics_service_1.AnalyticsService,
|
|
162
|
+
adaptive_card_service_1.AdaptiveCardService,
|
|
163
|
+
translation_service_1.TranslationService, Object])
|
|
164
|
+
], LoginService);
|
|
165
|
+
//# sourceMappingURL=login.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.service.js","sourceRoot":"","sources":["../../src/services/login.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Request } from 'express';
|
|
2
|
+
export type Headers = Request['headers'];
|
|
3
|
+
export declare class RequestHeadersService {
|
|
4
|
+
#private;
|
|
5
|
+
get requestHeaders(): Headers | never;
|
|
6
|
+
set requestHeaders(requestHeaders: Headers | undefined);
|
|
7
|
+
get origin(): string | undefined;
|
|
8
|
+
get referer(): string | undefined;
|
|
9
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
14
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
15
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
16
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
17
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
18
|
+
};
|
|
19
|
+
var _RequestHeadersService_requestHeaders;
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.RequestHeadersService = void 0;
|
|
22
|
+
const common_1 = require("@nestjs/common");
|
|
23
|
+
const exceptions_1 = require("../exceptions");
|
|
24
|
+
let RequestHeadersService = class RequestHeadersService {
|
|
25
|
+
constructor() {
|
|
26
|
+
_RequestHeadersService_requestHeaders.set(this, void 0);
|
|
27
|
+
}
|
|
28
|
+
get requestHeaders() {
|
|
29
|
+
if (!__classPrivateFieldGet(this, _RequestHeadersService_requestHeaders, "f")) {
|
|
30
|
+
throw new exceptions_1.IntegrationException({
|
|
31
|
+
error: new Error('Missing request headers'),
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return __classPrivateFieldGet(this, _RequestHeadersService_requestHeaders, "f");
|
|
35
|
+
}
|
|
36
|
+
set requestHeaders(requestHeaders) {
|
|
37
|
+
__classPrivateFieldSet(this, _RequestHeadersService_requestHeaders, requestHeaders, "f");
|
|
38
|
+
}
|
|
39
|
+
get origin() {
|
|
40
|
+
return this.requestHeaders.origin;
|
|
41
|
+
}
|
|
42
|
+
get referer() {
|
|
43
|
+
return this.requestHeaders.referer;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
exports.RequestHeadersService = RequestHeadersService;
|
|
47
|
+
_RequestHeadersService_requestHeaders = new WeakMap();
|
|
48
|
+
exports.RequestHeadersService = RequestHeadersService = __decorate([
|
|
49
|
+
(0, common_1.Injectable)({
|
|
50
|
+
scope: common_1.Scope.REQUEST,
|
|
51
|
+
})
|
|
52
|
+
], RequestHeadersService);
|
|
53
|
+
//# sourceMappingURL=request-headers.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-headers.service.js","sourceRoot":"","sources":["../../src/services/request-headers.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2CAAkD;AAElD,8CAAoD;AAO7C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACH,wDAAoC;IAsBxC,CAAC;IApBG,IAAI,cAAc;QACd,IAAI,CAAC,uBAAA,IAAI,6CAAgB,EAAE,CAAC;YACxB,MAAM,IAAI,iCAAoB,CAAC;gBAC3B,KAAK,EAAE,IAAI,KAAK,CAAC,yBAAyB,CAAC;aAC9C,CAAC,CAAA;QACN,CAAC;QACD,OAAO,uBAAA,IAAI,6CAAgB,CAAA;IAC/B,CAAC;IAED,IAAI,cAAc,CAAC,cAAmC;QAClD,uBAAA,IAAI,yCAAmB,cAAc,MAAA,CAAA;IACzC,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAA;IACrC,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAA;IACtC,CAAC;CACJ,CAAA;AAvBY,sDAAqB;;gCAArB,qBAAqB;IAHjC,IAAA,mBAAU,EAAC;QACR,KAAK,EAAE,cAAK,CAAC,OAAO;KACvB,CAAC;GACW,qBAAqB,CAuBjC"}
|