@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,37 @@
|
|
|
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 AnalyticsModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.AnalyticsModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const configurationBase_1 = require("../config/configurationBase");
|
|
13
|
+
const services_1 = require("../services");
|
|
14
|
+
const analytics_service_1 = require("../services/analytics.service");
|
|
15
|
+
let AnalyticsModule = AnalyticsModule_1 = class AnalyticsModule {
|
|
16
|
+
static forRoot() {
|
|
17
|
+
const analyticsVersion = (0, configurationBase_1.getBaseConfiguration)().analyticsVersion;
|
|
18
|
+
return {
|
|
19
|
+
module: AnalyticsModule_1,
|
|
20
|
+
providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: analytics_service_1.AnalyticsService,
|
|
23
|
+
useClass: analyticsVersion === 'UA'
|
|
24
|
+
? services_1.LegacyGoogleAnalyticsService
|
|
25
|
+
: services_1.GoogleAnalyticsService,
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
exports: [analytics_service_1.AnalyticsService],
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
exports.AnalyticsModule = AnalyticsModule;
|
|
33
|
+
exports.AnalyticsModule = AnalyticsModule = AnalyticsModule_1 = __decorate([
|
|
34
|
+
(0, common_1.Global)(),
|
|
35
|
+
(0, common_1.Module)({})
|
|
36
|
+
], AnalyticsModule);
|
|
37
|
+
//# sourceMappingURL=analytics.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analytics.module.js","sourceRoot":"","sources":["../../src/modules/analytics.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA8D;AAE9D,mEAAkE;AAClE,0CAAkF;AAClF,qEAAgE;AAWzD,IAAM,eAAe,uBAArB,MAAM,eAAe;IACxB,MAAM,CAAC,OAAO;QACV,MAAM,gBAAgB,GAAG,IAAA,wCAAoB,GAAE,CAAC,gBAAgB,CAAA;QAChE,OAAO;YACH,MAAM,EAAE,iBAAe;YACvB,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,oCAAgB;oBACzB,QAAQ,EACJ,gBAAgB,KAAK,IAAI;wBACrB,CAAC,CAAC,uCAA4B;wBAC9B,CAAC,CAAC,iCAAsB;iBACnC;aACJ;YACD,OAAO,EAAE,CAAC,oCAAgB,CAAC;SAC9B,CAAA;IACL,CAAC;CACJ,CAAA;AAjBY,0CAAe;0BAAf,eAAe;IAH3B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GAEE,eAAe,CAiB3B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.AppTokenModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const app_token_service_1 = require("../services/app-token.service");
|
|
12
|
+
let AppTokenModule = class AppTokenModule {
|
|
13
|
+
};
|
|
14
|
+
exports.AppTokenModule = AppTokenModule;
|
|
15
|
+
exports.AppTokenModule = AppTokenModule = __decorate([
|
|
16
|
+
(0, common_1.Global)(),
|
|
17
|
+
(0, common_1.Module)({
|
|
18
|
+
providers: [app_token_service_1.AppTokenService],
|
|
19
|
+
exports: [app_token_service_1.AppTokenService],
|
|
20
|
+
})
|
|
21
|
+
], AppTokenModule);
|
|
22
|
+
//# sourceMappingURL=app-token.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-token.module.js","sourceRoot":"","sources":["../../src/modules/app-token.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA+C;AAE/C,qEAA+D;AAWxD,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,wCAAc;yBAAd,cAAc;IAL1B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACJ,SAAS,EAAE,CAAC,mCAAe,CAAC;QAC5B,OAAO,EAAE,CAAC,mCAAe,CAAC;KAC7B,CAAC;GACW,cAAc,CAAG"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DynamicModule, ModuleMetadata, Provider } from '@nestjs/common';
|
|
2
|
+
import { AuthStrings, DoistApp, TokenValidator } from '../controllers';
|
|
3
|
+
type AuthModuleOptions = {
|
|
4
|
+
module?: DynamicModule['module'];
|
|
5
|
+
imports?: ModuleMetadata['imports'];
|
|
6
|
+
exports?: ModuleMetadata['exports'];
|
|
7
|
+
success: AuthStrings;
|
|
8
|
+
error: AuthStrings;
|
|
9
|
+
providers?: Provider[];
|
|
10
|
+
validateToken?: TokenValidator;
|
|
11
|
+
appName?: DoistApp;
|
|
12
|
+
debug?: boolean;
|
|
13
|
+
};
|
|
14
|
+
export declare class AuthModule {
|
|
15
|
+
static forRoot(options: AuthModuleOptions): DynamicModule;
|
|
16
|
+
}
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
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 AuthModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.AuthModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const controllers_1 = require("../controllers");
|
|
13
|
+
const services_1 = require("../services");
|
|
14
|
+
const core_module_1 = require("./core.module");
|
|
15
|
+
let AuthModule = AuthModule_1 = class AuthModule {
|
|
16
|
+
static forRoot(options) {
|
|
17
|
+
var _a, _b, _c, _d;
|
|
18
|
+
return {
|
|
19
|
+
module: (_a = options.module) !== null && _a !== void 0 ? _a : AuthModule_1,
|
|
20
|
+
controllers: [controllers_1.AuthController],
|
|
21
|
+
imports: options.imports,
|
|
22
|
+
providers: [
|
|
23
|
+
{ provide: controllers_1.AuthController.SUCCESS, useValue: options.success },
|
|
24
|
+
{ provide: controllers_1.AuthController.ERROR, useValue: options.error },
|
|
25
|
+
{ provide: controllers_1.TokenValidator, useValue: options.validateToken },
|
|
26
|
+
{ provide: controllers_1.AuthController.APP_NAME, useValue: options.appName },
|
|
27
|
+
{ provide: controllers_1.AuthController.DEBUG, useValue: (_b = options.debug) !== null && _b !== void 0 ? _b : false },
|
|
28
|
+
...((_c = options.providers) !== null && _c !== void 0 ? _c : []),
|
|
29
|
+
],
|
|
30
|
+
exports: [services_1.StateService, ...((_d = options.exports) !== null && _d !== void 0 ? _d : [])],
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
exports.AuthModule = AuthModule;
|
|
35
|
+
exports.AuthModule = AuthModule = AuthModule_1 = __decorate([
|
|
36
|
+
(0, common_1.Module)({
|
|
37
|
+
imports: [
|
|
38
|
+
core_module_1.CoreModule,
|
|
39
|
+
],
|
|
40
|
+
providers: [services_1.StateService],
|
|
41
|
+
exports: [services_1.StateService],
|
|
42
|
+
})
|
|
43
|
+
], AuthModule);
|
|
44
|
+
//# sourceMappingURL=auth.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../src/modules/auth.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAgF;AAEhF,gDAAsF;AACtF,0CAA0C;AAE1C,+CAA0C;AAsBnC,IAAM,UAAU,kBAAhB,MAAM,UAAU;IACnB,MAAM,CAAC,OAAO,CAAC,OAA0B;;QACrC,OAAO;YACH,MAAM,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,YAAU;YACpC,WAAW,EAAE,CAAC,4BAAc,CAAC;YAC7B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE;gBACP,EAAE,OAAO,EAAE,4BAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE;gBAC9D,EAAE,OAAO,EAAE,4BAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE;gBAC1D,EAAE,OAAO,EAAE,4BAAc,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE;gBAC5D,EAAE,OAAO,EAAE,4BAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE;gBAC/D,EAAE,OAAO,EAAE,4BAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,KAAK,EAAE;gBACnE,GAAG,CAAC,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC;aAC/B;YACD,OAAO,EAAE,CAAC,uBAAY,EAAE,GAAG,CAAC,MAAA,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC,CAAC;SACtD,CAAA;IACL,CAAC;CACJ,CAAA;AAjBY,gCAAU;qBAAV,UAAU;IARtB,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE;YACL,wBAAU;SACb;QACD,SAAS,EAAE,CAAC,uBAAY,CAAC;QACzB,OAAO,EAAE,CAAC,uBAAY,CAAC;KAC1B,CAAC;GAEW,UAAU,CAiBtB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.CoreModule = void 0;
|
|
10
|
+
const axios_1 = require("@nestjs/axios");
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const core_1 = require("@nestjs/core");
|
|
13
|
+
const controllers_1 = require("../controllers");
|
|
14
|
+
const sentry_interceptor_1 = require("../interceptors/sentry.interceptor");
|
|
15
|
+
const request_header_middleware_1 = require("../middleware/request-header.middleware");
|
|
16
|
+
const services_1 = require("../services");
|
|
17
|
+
const analytics_module_1 = require("./analytics.module");
|
|
18
|
+
const app_token_module_1 = require("./app-token.module");
|
|
19
|
+
const request_headers_module_1 = require("./request-headers.module");
|
|
20
|
+
let CoreModule = class CoreModule {
|
|
21
|
+
configure(consumer) {
|
|
22
|
+
consumer.apply(request_header_middleware_1.RequestHeaderMiddleware).forRoutes('*');
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
exports.CoreModule = CoreModule;
|
|
26
|
+
exports.CoreModule = CoreModule = __decorate([
|
|
27
|
+
(0, common_1.Module)({
|
|
28
|
+
controllers: [controllers_1.PingController],
|
|
29
|
+
providers: [
|
|
30
|
+
services_1.TranslationService,
|
|
31
|
+
services_1.ThemeService,
|
|
32
|
+
{ provide: core_1.APP_INTERCEPTOR, useClass: sentry_interceptor_1.SentryInterceptor },
|
|
33
|
+
],
|
|
34
|
+
imports: [axios_1.HttpModule, app_token_module_1.AppTokenModule, analytics_module_1.AnalyticsModule.forRoot(), request_headers_module_1.RequestHeadersModule],
|
|
35
|
+
exports: [axios_1.HttpModule, services_1.TranslationService, services_1.ThemeService, app_token_module_1.AppTokenModule, request_headers_module_1.RequestHeadersModule],
|
|
36
|
+
})
|
|
37
|
+
], CoreModule);
|
|
38
|
+
//# sourceMappingURL=core.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.module.js","sourceRoot":"","sources":["../../src/modules/core.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yCAA0C;AAC1C,2CAAuE;AACvE,uCAA8C;AAE9C,gDAA+C;AAC/C,2EAAsE;AACtE,uFAAiF;AACjF,0CAA8D;AAE9D,yDAAoD;AACpD,yDAAmD;AACnD,qEAA+D;AA8BxD,IAAM,UAAU,GAAhB,MAAM,UAAU;IACnB,SAAS,CAAC,QAA4B;QAClC,QAAQ,CAAC,KAAK,CAAC,mDAAuB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAC1D,CAAC;CACJ,CAAA;AAJY,gCAAU;qBAAV,UAAU;IAVtB,IAAA,eAAM,EAAC;QACJ,WAAW,EAAE,CAAC,4BAAc,CAAC;QAC7B,SAAS,EAAE;YACP,6BAAkB;YAClB,uBAAY;YACZ,EAAE,OAAO,EAAE,sBAAe,EAAE,QAAQ,EAAE,sCAAiB,EAAE;SAC5D;QACD,OAAO,EAAE,CAAC,kBAAU,EAAE,iCAAc,EAAE,kCAAe,CAAC,OAAO,EAAE,EAAE,6CAAoB,CAAC;QACtF,OAAO,EAAE,CAAC,kBAAU,EAAE,6BAAkB,EAAE,uBAAY,EAAE,iCAAc,EAAE,6CAAoB,CAAC;KAChG,CAAC;GACW,UAAU,CAItB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DynamicModule } from '@nestjs/common';
|
|
2
|
+
import { ErrorCardServiceOptions } from '../services/errorCard.service';
|
|
3
|
+
export declare class ErrorModule {
|
|
4
|
+
static forRoot({ errorCardOptions, }: {
|
|
5
|
+
errorCardOptions: ErrorCardServiceOptions;
|
|
6
|
+
}): DynamicModule;
|
|
7
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
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 ErrorModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.ErrorModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const core_1 = require("@nestjs/core");
|
|
13
|
+
const filters_1 = require("../filters");
|
|
14
|
+
const errorCard_service_1 = require("../services/errorCard.service");
|
|
15
|
+
const core_module_1 = require("./core.module");
|
|
16
|
+
let ErrorModule = ErrorModule_1 = class ErrorModule {
|
|
17
|
+
static forRoot({ errorCardOptions, }) {
|
|
18
|
+
return {
|
|
19
|
+
module: ErrorModule_1,
|
|
20
|
+
imports: [core_module_1.CoreModule],
|
|
21
|
+
providers: [
|
|
22
|
+
{ provide: errorCard_service_1.ErrorCardService.OPTIONS, useValue: errorCardOptions },
|
|
23
|
+
errorCard_service_1.ErrorCardService,
|
|
24
|
+
filters_1.IntegrationExceptionFilter,
|
|
25
|
+
{
|
|
26
|
+
provide: core_1.APP_FILTER,
|
|
27
|
+
useClass: filters_1.IntegrationExceptionFilter,
|
|
28
|
+
scope: common_1.Scope.REQUEST,
|
|
29
|
+
},
|
|
30
|
+
],
|
|
31
|
+
exports: [filters_1.IntegrationExceptionFilter],
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
exports.ErrorModule = ErrorModule;
|
|
36
|
+
exports.ErrorModule = ErrorModule = ErrorModule_1 = __decorate([
|
|
37
|
+
(0, common_1.Module)({})
|
|
38
|
+
], ErrorModule);
|
|
39
|
+
//# sourceMappingURL=error.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.module.js","sourceRoot":"","sources":["../../src/modules/error.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA6D;AAC7D,uCAAyC;AAEzC,wCAAuD;AACvD,qEAAyF;AAEzF,+CAA0C;AAInC,IAAM,WAAW,mBAAjB,MAAM,WAAW;IACpB,MAAM,CAAC,OAAO,CAAC,EACX,gBAAgB,GAGnB;QACG,OAAO;YACH,MAAM,EAAE,aAAW;YACnB,OAAO,EAAE,CAAC,wBAAU,CAAC;YACrB,SAAS,EAAE;gBACP,EAAE,OAAO,EAAE,oCAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE;gBACjE,oCAAgB;gBAChB,oCAA0B;gBAC1B;oBACI,OAAO,EAAE,iBAAU;oBACnB,QAAQ,EAAE,oCAA0B;oBACpC,KAAK,EAAE,cAAK,CAAC,OAAO;iBACvB;aACJ;YACD,OAAO,EAAE,CAAC,oCAA0B,CAAC;SACxC,CAAA;IACL,CAAC;CACJ,CAAA;AAtBY,kCAAW;sBAAX,WAAW;IAFvB,IAAA,eAAM,EAAC,EAAE,CAAC;GAEE,WAAW,CAsBvB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
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("./auth.module"), exports);
|
|
18
|
+
__exportStar(require("./core.module"), exports);
|
|
19
|
+
__exportStar(require("./error.module"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,gDAA6B;AAC7B,iDAA8B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.RequestHeadersModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const request_headers_service_1 = require("../services/request-headers.service");
|
|
12
|
+
let RequestHeadersModule = class RequestHeadersModule {
|
|
13
|
+
};
|
|
14
|
+
exports.RequestHeadersModule = RequestHeadersModule;
|
|
15
|
+
exports.RequestHeadersModule = RequestHeadersModule = __decorate([
|
|
16
|
+
(0, common_1.Global)(),
|
|
17
|
+
(0, common_1.Module)({
|
|
18
|
+
providers: [request_headers_service_1.RequestHeadersService],
|
|
19
|
+
exports: [request_headers_service_1.RequestHeadersService],
|
|
20
|
+
})
|
|
21
|
+
], RequestHeadersModule);
|
|
22
|
+
//# sourceMappingURL=request-headers.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-headers.module.js","sourceRoot":"","sources":["../../src/modules/request-headers.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA+C;AAE/C,iFAA2E;AAOpE,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAAG,CAAA;AAAvB,oDAAoB;+BAApB,oBAAoB;IALhC,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACJ,SAAS,EAAE,CAAC,+CAAqB,CAAC;QAClC,OAAO,EAAE,CAAC,+CAAqB,CAAC;KACnC,CAAC;GACW,oBAAoB,CAAG"}
|
package/dist/server.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DynamicModule, NestApplicationOptions, Type } from '@nestjs/common';
|
|
2
|
+
import type { NestExpressApplication } from '@nestjs/platform-express';
|
|
3
|
+
import type { ServeStaticOptions } from '@nestjs/platform-express/interfaces/serve-static-options.interface';
|
|
4
|
+
export type ApplicationOptions = {
|
|
5
|
+
useStaticAssets?: {
|
|
6
|
+
path: string;
|
|
7
|
+
options?: ServeStaticOptions;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export declare function bootstrap(module: Type<any> | DynamicModule, options?: NestApplicationOptions & ApplicationOptions): Promise<void>;
|
|
11
|
+
export declare function registerViews(app: NestExpressApplication): Promise<void>;
|
package/dist/server.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.bootstrap = bootstrap;
|
|
7
|
+
exports.registerViews = registerViews;
|
|
8
|
+
const node_path_1 = require("node:path");
|
|
9
|
+
const core_1 = require("@nestjs/core");
|
|
10
|
+
const node_1 = require("@sentry/node");
|
|
11
|
+
const body_parser_1 = require("body-parser");
|
|
12
|
+
const hbs_1 = __importDefault(require("hbs"));
|
|
13
|
+
const cloneBuffer_1 = require("./buffer/cloneBuffer");
|
|
14
|
+
const configurationBase_1 = require("./config/configurationBase");
|
|
15
|
+
const utils_1 = require("./utils");
|
|
16
|
+
const envUtils_1 = require("./utils/envUtils");
|
|
17
|
+
require('date-time-format-timezone');
|
|
18
|
+
async function bootstrap(module, options) {
|
|
19
|
+
const app = await core_1.NestFactory.create(module, options);
|
|
20
|
+
const { port, sentryDsn } = (0, configurationBase_1.getBaseConfiguration)();
|
|
21
|
+
if ((0, envUtils_1.isProduction)() && sentryDsn) {
|
|
22
|
+
(0, node_1.init)({ dsn: sentryDsn, integrations: [(0, node_1.extraErrorDataIntegration)()] });
|
|
23
|
+
}
|
|
24
|
+
app.enableCors({
|
|
25
|
+
methods: 'POST',
|
|
26
|
+
});
|
|
27
|
+
if (options === null || options === void 0 ? void 0 : options.useStaticAssets) {
|
|
28
|
+
app.useStaticAssets(options.useStaticAssets.path, options.useStaticAssets.options);
|
|
29
|
+
}
|
|
30
|
+
await registerViews(app);
|
|
31
|
+
app.use((0, body_parser_1.json)({
|
|
32
|
+
verify: function rawBodyExtraction(req, _res, buf, _encoding) {
|
|
33
|
+
if ((0, utils_1.containsTwistOrTodoistHeaders)(req.headers) && Buffer.isBuffer(buf)) {
|
|
34
|
+
req.rawBody = (0, cloneBuffer_1.cloneBuffer)(buf);
|
|
35
|
+
}
|
|
36
|
+
return true;
|
|
37
|
+
},
|
|
38
|
+
}));
|
|
39
|
+
await app.listen(port);
|
|
40
|
+
}
|
|
41
|
+
function registerViews(app) {
|
|
42
|
+
app.setViewEngine('hbs');
|
|
43
|
+
app.engine('hbs', hbs_1.default.__express);
|
|
44
|
+
const viewsFolder = (0, node_path_1.join)(__dirname, '..', 'views');
|
|
45
|
+
app.setBaseViewsDir(viewsFolder);
|
|
46
|
+
return new Promise((resolve) => {
|
|
47
|
+
hbs_1.default.registerPartials((0, node_path_1.join)(viewsFolder, 'partials'), () => {
|
|
48
|
+
resolve();
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;AA2BA,8BAsCC;AAED,sCAcC;AAhFD,yCAAgC;AAEhC,uCAA0C;AAG1C,uCAA4E;AAC5E,6CAAkC;AAClC,8CAAqB;AACrB,sDAAkD;AAElD,kEAAiE;AACjE,mCAAuD;AACvD,+CAA+C;AAK/C,OAAO,CAAC,2BAA2B,CAAC,CAAA;AAS7B,KAAK,UAAU,SAAS,CAC3B,MAAiC,EACjC,OAAqD;IAErD,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAyB,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7E,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAA,wCAAoB,GAAE,CAAA;IAElD,IAAI,IAAA,uBAAY,GAAE,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAA,WAAU,EAAC,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,IAAA,gCAAyB,GAAE,CAAC,EAAE,CAAC,CAAA;IAC/E,CAAC;IAED,GAAG,CAAC,UAAU,CAAC;QACX,OAAO,EAAE,MAAM;KAClB,CAAC,CAAA;IAEF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,EAAE,CAAC;QAC3B,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IACtF,CAAC;IAED,MAAM,aAAa,CAAC,GAAG,CAAC,CAAA;IAExB,GAAG,CAAC,GAAG,CACH,IAAA,kBAAI,EAAC;QACD,MAAM,EAAE,SAAS,iBAAiB,CAC9B,GAA+B,EAC/B,IAAoB,EACpB,GAAW,EACX,SAAiB;YAEjB,IAAI,IAAA,qCAA6B,EAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrE,GAAG,CAAC,OAAO,GAAG,IAAA,yBAAW,EAAC,GAAG,CAAC,CAAA;YAClC,CAAC;YACD,OAAO,IAAI,CAAA;QACf,CAAC;KACJ,CAAC,CACL,CAAA;IAED,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED,SAAgB,aAAa,CAAC,GAA2B;IACrD,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAGxB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,aAAG,CAAC,SAAS,CAAC,CAAA;IAEhC,MAAM,WAAW,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAClD,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;IAEhC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACjC,aAAG,CAAC,gBAAgB,CAAC,IAAA,gBAAI,EAAC,WAAW,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE;YACrD,OAAO,EAAE,CAAA;QACb,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { TodoistCardRequest, TodoistCardResponse } from '@todoist/ui-extensions-core';
|
|
2
|
+
export type ProcessorRequest = (request: TodoistCardRequest) => boolean;
|
|
3
|
+
export type ProcessorAction = (request: TodoistCardRequest) => Promise<TodoistCardResponse>;
|
|
4
|
+
export type ActionProcessor = {
|
|
5
|
+
check: ProcessorRequest;
|
|
6
|
+
action: ProcessorAction;
|
|
7
|
+
};
|
|
8
|
+
export declare abstract class ActionsService {
|
|
9
|
+
private actionProcessors;
|
|
10
|
+
constructor();
|
|
11
|
+
processRequest(request: TodoistCardRequest): Promise<TodoistCardResponse>;
|
|
12
|
+
abstract getInitialView(request: TodoistCardRequest): Promise<TodoistCardResponse>;
|
|
13
|
+
goHome(request: TodoistCardRequest): Promise<TodoistCardResponse>;
|
|
14
|
+
continueFromLogin(request: TodoistCardRequest): Promise<TodoistCardResponse>;
|
|
15
|
+
close(): Promise<TodoistCardResponse>;
|
|
16
|
+
retry(request: TodoistCardRequest): Promise<TodoistCardResponse>;
|
|
17
|
+
protected addActionProcessors(actions: ActionProcessor[]): void;
|
|
18
|
+
private registerDecoratedActions;
|
|
19
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
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 ActionsService_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.ActionsService = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const core_1 = require("@nestjs/core");
|
|
16
|
+
const __1 = require("..");
|
|
17
|
+
const decorators_1 = require("../decorators");
|
|
18
|
+
const action_utils_1 = require("../utils/action-utils");
|
|
19
|
+
let ActionsService = ActionsService_1 = class ActionsService {
|
|
20
|
+
constructor() {
|
|
21
|
+
this.actionProcessors = [];
|
|
22
|
+
this.addActionProcessors([
|
|
23
|
+
{
|
|
24
|
+
check: (request) => (0, action_utils_1.isInitial)(request.action),
|
|
25
|
+
action: (request) => this.getInitialView(request),
|
|
26
|
+
},
|
|
27
|
+
]);
|
|
28
|
+
this.registerDecoratedActions();
|
|
29
|
+
}
|
|
30
|
+
async processRequest(request) {
|
|
31
|
+
const { action } = request;
|
|
32
|
+
const actionProcessor = this.actionProcessors.find((processor) => processor.check(request));
|
|
33
|
+
if (!actionProcessor) {
|
|
34
|
+
const actionDetails = action.actionId
|
|
35
|
+
? `${action.actionType}.${action.actionId}`
|
|
36
|
+
: action.actionType;
|
|
37
|
+
throw new common_1.HttpException(`${actionDetails} is not a valid action`, common_1.HttpStatus.BAD_REQUEST);
|
|
38
|
+
}
|
|
39
|
+
return actionProcessor.action(request);
|
|
40
|
+
}
|
|
41
|
+
goHome(request) {
|
|
42
|
+
return this.getInitialView(request);
|
|
43
|
+
}
|
|
44
|
+
continueFromLogin(request) {
|
|
45
|
+
return this.getInitialView(request);
|
|
46
|
+
}
|
|
47
|
+
close() {
|
|
48
|
+
return Promise.resolve({
|
|
49
|
+
bridges: [__1.DoistCardBridgeFactory.finished],
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
async retry(request) {
|
|
53
|
+
const { data } = request.action;
|
|
54
|
+
if (!data) {
|
|
55
|
+
throw new Error('Retry action must have data');
|
|
56
|
+
}
|
|
57
|
+
const actionType = new String(data[__1.RetryAttributes.ACTION_TYPE]).toString();
|
|
58
|
+
const command = new String(data[__1.RetryAttributes.COMMAND]).toString();
|
|
59
|
+
const originalData = __1.RetryAttributes.ORIGINAL_DATA in data
|
|
60
|
+
? data[__1.RetryAttributes.ORIGINAL_DATA]
|
|
61
|
+
: undefined;
|
|
62
|
+
const originalInputs = __1.RetryAttributes.ORIGINAL_INPUTS in data
|
|
63
|
+
? data[__1.RetryAttributes.ORIGINAL_INPUTS]
|
|
64
|
+
: undefined;
|
|
65
|
+
request.action.actionId = command;
|
|
66
|
+
request.action.data = originalData;
|
|
67
|
+
request.action.inputs = originalInputs;
|
|
68
|
+
request.action.actionType = actionType;
|
|
69
|
+
return this.processRequest(request);
|
|
70
|
+
}
|
|
71
|
+
addActionProcessors(actions) {
|
|
72
|
+
actions.forEach((a) => {
|
|
73
|
+
this.actionProcessors.push(a);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
registerDecoratedActions() {
|
|
77
|
+
const metadataScanner = new core_1.MetadataScanner();
|
|
78
|
+
const instancePrototype = Object.getPrototypeOf(this);
|
|
79
|
+
metadataScanner.scanFromPrototype(this, instancePrototype, (methodName) => {
|
|
80
|
+
const instanceCallback = this[methodName];
|
|
81
|
+
const prototypeCallback = instancePrototype[methodName];
|
|
82
|
+
const actionMetadata = Reflect.getMetadata(decorators_1.ACTION_METADATA, prototypeCallback);
|
|
83
|
+
if (actionMetadata) {
|
|
84
|
+
const { actionType, actionId } = actionMetadata;
|
|
85
|
+
this.addActionProcessors([
|
|
86
|
+
{
|
|
87
|
+
check: (request) => request.action.actionType === actionType &&
|
|
88
|
+
(actionId === undefined ||
|
|
89
|
+
(0, action_utils_1.isValidActionId)(request.action.actionId, actionId)),
|
|
90
|
+
action: (request) => instanceCallback.apply(this, [request]),
|
|
91
|
+
},
|
|
92
|
+
]);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
exports.ActionsService = ActionsService;
|
|
98
|
+
__decorate([
|
|
99
|
+
(0, decorators_1.Submit)({ actionId: __1.CardActions.GoHome }),
|
|
100
|
+
__metadata("design:type", Function),
|
|
101
|
+
__metadata("design:paramtypes", [Object]),
|
|
102
|
+
__metadata("design:returntype", Promise)
|
|
103
|
+
], ActionsService.prototype, "goHome", null);
|
|
104
|
+
__decorate([
|
|
105
|
+
(0, decorators_1.Submit)({ actionId: __1.CardActions.Continue }),
|
|
106
|
+
__metadata("design:type", Function),
|
|
107
|
+
__metadata("design:paramtypes", [Object]),
|
|
108
|
+
__metadata("design:returntype", Promise)
|
|
109
|
+
], ActionsService.prototype, "continueFromLogin", null);
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, decorators_1.Submit)({ actionId: __1.CardActions.Close }),
|
|
112
|
+
__metadata("design:type", Function),
|
|
113
|
+
__metadata("design:paramtypes", []),
|
|
114
|
+
__metadata("design:returntype", Promise)
|
|
115
|
+
], ActionsService.prototype, "close", null);
|
|
116
|
+
__decorate([
|
|
117
|
+
(0, decorators_1.Submit)({ actionId: __1.CardActions.Retry }),
|
|
118
|
+
__metadata("design:type", Function),
|
|
119
|
+
__metadata("design:paramtypes", [Object]),
|
|
120
|
+
__metadata("design:returntype", Promise)
|
|
121
|
+
], ActionsService.prototype, "retry", null);
|
|
122
|
+
exports.ActionsService = ActionsService = ActionsService_1 = __decorate([
|
|
123
|
+
(0, common_1.Injectable)(),
|
|
124
|
+
__metadata("design:paramtypes", [])
|
|
125
|
+
], ActionsService);
|
|
126
|
+
//# sourceMappingURL=actions.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions.service.js","sourceRoot":"","sources":["../../src/services/actions.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CardElement, ColumnSet, HorizontalAlignment, Image, RichTextBlock, Spacing, TodoistCard } from '@todoist/ui-extensions-core';
|
|
2
|
+
import { ErrorCardOptions } from '../types';
|
|
3
|
+
import type { DoistProduct } from '../types/product';
|
|
4
|
+
import { UIBuilderContext } from '../ui';
|
|
5
|
+
import { ThemeService } from './theme.service';
|
|
6
|
+
import { TranslationService } from './translation.service';
|
|
7
|
+
export declare const ERROR_CONTENT_ID = "ErrorContent";
|
|
8
|
+
export type ConfirmationInformation = {
|
|
9
|
+
title: string;
|
|
10
|
+
body: string;
|
|
11
|
+
confirmationText?: string;
|
|
12
|
+
confirmationActionId: string;
|
|
13
|
+
confirmationData?: Record<string, unknown>;
|
|
14
|
+
cancelData?: Record<string, unknown>;
|
|
15
|
+
cancelActionId?: string;
|
|
16
|
+
};
|
|
17
|
+
export type TextWithLearnMoreOptions = {
|
|
18
|
+
textKey: string;
|
|
19
|
+
learnMoreUrl: string;
|
|
20
|
+
spacing?: Spacing;
|
|
21
|
+
horizontalAlignment?: HorizontalAlignment;
|
|
22
|
+
};
|
|
23
|
+
export type ConfirmAndCancelOptions = {
|
|
24
|
+
confirmationButtonKey?: string;
|
|
25
|
+
confirmationButtonId?: string;
|
|
26
|
+
confirmationButtonActionUrl?: string;
|
|
27
|
+
cancelButtonKey?: string;
|
|
28
|
+
cancelButtonId?: string;
|
|
29
|
+
};
|
|
30
|
+
export type NotFoundCardOptions = {
|
|
31
|
+
textKey: string;
|
|
32
|
+
learnMoreUrl: string;
|
|
33
|
+
};
|
|
34
|
+
export type ProOnlyCardOptions = {
|
|
35
|
+
learnMoreUrl: string;
|
|
36
|
+
product: DoistProduct;
|
|
37
|
+
};
|
|
38
|
+
export declare class AdaptiveCardService implements UIBuilderContext {
|
|
39
|
+
readonly translationService: TranslationService;
|
|
40
|
+
readonly themeService: ThemeService;
|
|
41
|
+
constructor(translationService: TranslationService, themeService: ThemeService);
|
|
42
|
+
get spacingImageUrl(): string;
|
|
43
|
+
createStaticUrl(path: string): string;
|
|
44
|
+
createThemeBasedUrl(pathFormat: string): string;
|
|
45
|
+
createEmptyCard(): TodoistCard;
|
|
46
|
+
createHeader(leftColumnItems: CardElement[], middleColumnItems: CardElement[], rightColumnItems: CardElement[], includeEmptySpacing?: boolean): CardElement;
|
|
47
|
+
createCardWithItems(items: CardElement[]): TodoistCard;
|
|
48
|
+
errorCard(errorCardOptions?: ErrorCardOptions): TodoistCard;
|
|
49
|
+
confirmationCard(options: ConfirmationInformation): TodoistCard;
|
|
50
|
+
createTextWithLearnMore(options: TextWithLearnMoreOptions): RichTextBlock;
|
|
51
|
+
notFoundImage(): Image;
|
|
52
|
+
createNotFoundCard(options: NotFoundCardOptions): TodoistCard;
|
|
53
|
+
noResultsImage(): Image;
|
|
54
|
+
createProOnlyCard(options: ProOnlyCardOptions): TodoistCard;
|
|
55
|
+
createConfirmAndCancelActions(options: ConfirmAndCancelOptions): CardElement;
|
|
56
|
+
createWarningMessage(textKey: string): ColumnSet;
|
|
57
|
+
}
|