truflow 0.0.97

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.
Files changed (98) hide show
  1. package/dist/Classes/ICRUDRouter.d.ts +6 -0
  2. package/dist/Classes/ICRUDRouter.js +2 -0
  3. package/dist/Events/IDateEntryMoved.d.ts +11 -0
  4. package/dist/Events/IDateEntryMoved.js +2 -0
  5. package/dist/Events/INegativeValue.d.ts +9 -0
  6. package/dist/Events/INegativeValue.js +2 -0
  7. package/dist/Events/IOrderDetails.d.ts +12 -0
  8. package/dist/Events/IOrderDetails.js +2 -0
  9. package/dist/Events/IOrderMoved.d.ts +12 -0
  10. package/dist/Events/IOrderMoved.js +2 -0
  11. package/dist/Events/IOrderProcessed.d.ts +5 -0
  12. package/dist/Events/IOrderProcessed.js +2 -0
  13. package/dist/Helpers/IAdministration.d.ts +5 -0
  14. package/dist/Helpers/IAdministration.js +2 -0
  15. package/dist/Helpers/IEvents.d.ts +10 -0
  16. package/dist/Helpers/IEvents.js +2 -0
  17. package/dist/Helpers/IExporters.d.ts +18 -0
  18. package/dist/Helpers/IExporters.js +2 -0
  19. package/dist/Helpers/IOrders/IMoveDateEntry.d.ts +18 -0
  20. package/dist/Helpers/IOrders/IMoveDateEntry.js +2 -0
  21. package/dist/Helpers/IOrders/IMoveOrder.d.ts +25 -0
  22. package/dist/Helpers/IOrders/IMoveOrder.js +2 -0
  23. package/dist/Helpers/IOrders/IUpdateFullDailyTotal.d.ts +8 -0
  24. package/dist/Helpers/IOrders/IUpdateFullDailyTotal.js +2 -0
  25. package/dist/Helpers/IOrders/IUpdateIndividualDailyTotal.d.ts +3 -0
  26. package/dist/Helpers/IOrders/IUpdateIndividualDailyTotal.js +2 -0
  27. package/dist/Helpers/IOrders/index.d.ts +8 -0
  28. package/dist/Helpers/IOrders/index.js +20 -0
  29. package/dist/Helpers/ITotals.d.ts +9 -0
  30. package/dist/Helpers/ITotals.js +2 -0
  31. package/dist/Helpers/IZapier/index.d.ts +26 -0
  32. package/dist/Helpers/IZapier/index.js +2 -0
  33. package/dist/IConfig.d.ts +11 -0
  34. package/dist/IConfig.js +2 -0
  35. package/dist/IDailyTotal.d.ts +7 -0
  36. package/dist/IDailyTotal.js +2 -0
  37. package/dist/IEvent.d.ts +22 -0
  38. package/dist/IEvent.js +2 -0
  39. package/dist/IExporter.d.ts +33 -0
  40. package/dist/IExporter.js +2 -0
  41. package/dist/IExpress.d.ts +8 -0
  42. package/dist/IExpress.js +10 -0
  43. package/dist/IIntegration.d.ts +7 -0
  44. package/dist/IIntegration.js +2 -0
  45. package/dist/IJWT.d.ts +4 -0
  46. package/dist/IJWT.js +2 -0
  47. package/dist/IOrder.d.ts +24 -0
  48. package/dist/IOrder.js +2 -0
  49. package/dist/IScript.d.ts +9 -0
  50. package/dist/IScript.js +2 -0
  51. package/dist/ISetting.d.ts +64 -0
  52. package/dist/ISetting.js +2 -0
  53. package/dist/IUser.d.ts +11 -0
  54. package/dist/IUser.js +2 -0
  55. package/dist/IWebsocket.d.ts +4 -0
  56. package/dist/IWebsocket.js +2 -0
  57. package/dist/Routes/IOrderRoutes.d.ts +32 -0
  58. package/dist/Routes/IOrderRoutes.js +4 -0
  59. package/dist/Routes/IZapierRoutes.d.ts +12 -0
  60. package/dist/Routes/IZapierRoutes.js +2 -0
  61. package/dist/Templates/IDailyTotals.d.ts +4 -0
  62. package/dist/Templates/IDailyTotals.js +2 -0
  63. package/dist/index.d.ts +22 -0
  64. package/dist/index.js +38 -0
  65. package/package.json +15 -0
  66. package/src/Classes/ICRUDRouter.ts +6 -0
  67. package/src/Events/IDateEntryMoved.ts +13 -0
  68. package/src/Events/INegativeValue.ts +10 -0
  69. package/src/Events/IOrderDetails.ts +12 -0
  70. package/src/Events/IOrderMoved.ts +14 -0
  71. package/src/Events/IOrderProcessed.ts +6 -0
  72. package/src/Helpers/IAdministration.ts +9 -0
  73. package/src/Helpers/IEvents.ts +23 -0
  74. package/src/Helpers/IExporters.ts +45 -0
  75. package/src/Helpers/IOrders/IMoveDateEntry.ts +21 -0
  76. package/src/Helpers/IOrders/IMoveOrder.ts +28 -0
  77. package/src/Helpers/IOrders/IUpdateFullDailyTotal.ts +13 -0
  78. package/src/Helpers/IOrders/IUpdateIndividualDailyTotal.ts +8 -0
  79. package/src/Helpers/IOrders/index.ts +10 -0
  80. package/src/Helpers/ITotals.ts +16 -0
  81. package/src/Helpers/IZapier/index.ts +52 -0
  82. package/src/IConfig.ts +11 -0
  83. package/src/IDailyTotal.ts +9 -0
  84. package/src/IEvent.ts +21 -0
  85. package/src/IExporter.ts +40 -0
  86. package/src/IExpress.ts +14 -0
  87. package/src/IIntegration.ts +8 -0
  88. package/src/IJWT.ts +4 -0
  89. package/src/IOrder.ts +27 -0
  90. package/src/IScript.ts +10 -0
  91. package/src/ISetting.ts +83 -0
  92. package/src/IUser.ts +13 -0
  93. package/src/IWebsocket.ts +5 -0
  94. package/src/Routes/IOrderRoutes.ts +37 -0
  95. package/src/Routes/IZapierRoutes.ts +12 -0
  96. package/src/Templates/IDailyTotals.ts +4 -0
  97. package/src/index.ts +22 -0
  98. package/tsconfig.json +11 -0
@@ -0,0 +1,22 @@
1
+ export * from "./IOrder";
2
+ export * from "./IExporter";
3
+ export * from "./IScript";
4
+ export * from "./IUser";
5
+ export * from "./IEvent";
6
+ export * from "./IDailyTotal";
7
+ export * from "./ISetting";
8
+ export * from "./IJWT";
9
+ export * from "./IExpress";
10
+ export * from "./IConfig";
11
+ export * from "./IWebsocket";
12
+ export * from "./Routes/IOrderRoutes";
13
+ export * from "./Helpers/IOrders";
14
+ export * from "./Helpers/IEvents";
15
+ export * from "./Helpers/IExporters";
16
+ export * from "./Helpers/ITotals";
17
+ export * from "./Helpers/IAdministration";
18
+ export * from "./Helpers/IZapier";
19
+ export * from "./Classes/ICRUDRouter";
20
+ export * from "./Templates/IDailyTotals";
21
+ export * from "./Routes/IZapierRoutes";
22
+ export * from "./IIntegration";
package/dist/index.js ADDED
@@ -0,0 +1,38 @@
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("./IOrder"), exports);
18
+ __exportStar(require("./IExporter"), exports);
19
+ __exportStar(require("./IScript"), exports);
20
+ __exportStar(require("./IUser"), exports);
21
+ __exportStar(require("./IEvent"), exports);
22
+ __exportStar(require("./IDailyTotal"), exports);
23
+ __exportStar(require("./ISetting"), exports);
24
+ __exportStar(require("./IJWT"), exports);
25
+ __exportStar(require("./IExpress"), exports);
26
+ __exportStar(require("./IConfig"), exports);
27
+ __exportStar(require("./IWebsocket"), exports);
28
+ __exportStar(require("./Routes/IOrderRoutes"), exports);
29
+ __exportStar(require("./Helpers/IOrders"), exports);
30
+ __exportStar(require("./Helpers/IEvents"), exports);
31
+ __exportStar(require("./Helpers/IExporters"), exports);
32
+ __exportStar(require("./Helpers/ITotals"), exports);
33
+ __exportStar(require("./Helpers/IAdministration"), exports);
34
+ __exportStar(require("./Helpers/IZapier"), exports);
35
+ __exportStar(require("./Classes/ICRUDRouter"), exports);
36
+ __exportStar(require("./Templates/IDailyTotals"), exports);
37
+ __exportStar(require("./Routes/IZapierRoutes"), exports);
38
+ __exportStar(require("./IIntegration"), exports);
package/package.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "truflow",
3
+ "version": "0.0.97",
4
+ "main": "./dist/index.js",
5
+ "license": "MIT",
6
+ "scripts": {
7
+ "build": "tsc"
8
+ },
9
+ "dependencies": {
10
+ "@types/express": "^4.17.17",
11
+ "@types/luxon": "^3.3.0",
12
+ "mongoose": "^7.3.4",
13
+ "typescript": "^5.1.6"
14
+ }
15
+ }
@@ -0,0 +1,6 @@
1
+ export interface ICRUDRouterAuthorization {
2
+ view: string;
3
+ create: string;
4
+ update: string;
5
+ delete: string;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { ILeanDailyTotal } from "../IDailyTotal";
2
+
3
+ export interface IMoveData {
4
+ type: string;
5
+ quantity: number;
6
+ originalStartDate: string;
7
+ updatedStartDate: string;
8
+ }
9
+
10
+ export interface IDateEntryMoved {
11
+ moveData: IMoveData;
12
+ dailyTotalsData: ILeanDailyTotal;
13
+ }
@@ -0,0 +1,10 @@
1
+ import { ILeanDailyTotal } from "../IDailyTotal";
2
+ import { IDateEntry } from "../IOrder";
3
+
4
+ export interface INegativeValue {
5
+ time: Date;
6
+ dateEntry: IDateEntry;
7
+ dailyTotals: ILeanDailyTotal;
8
+ negativeType: string;
9
+ negativeValue: number;
10
+ }
@@ -0,0 +1,12 @@
1
+ export interface IOrderDetail {
2
+ id: number;
3
+ name: string;
4
+ companyName: string;
5
+ date: string;
6
+ shipDate: string;
7
+ requestedShipDate: string;
8
+ companyID: number;
9
+ summary: string;
10
+ orderTags: string[];
11
+ companyTags: string[];
12
+ }
@@ -0,0 +1,14 @@
1
+ import { ILeanDailyTotal } from "../IDailyTotal";
2
+
3
+ export interface IOrderMoveData {
4
+ types: any[];
5
+ quantity: number;
6
+ originalStartDates: any[];
7
+ updatedStartDate: string;
8
+ applyToOrder: boolean;
9
+ }
10
+
11
+ export interface IOrderMoved {
12
+ moveData: IOrderMoveData;
13
+ dailyTotalsData: ILeanDailyTotal[];
14
+ }
@@ -0,0 +1,6 @@
1
+ import { IOrderDetail } from "./IOrderDetails";
2
+
3
+ export interface IOrderProcessed {
4
+ orderDetails?: IOrderDetail;
5
+ message: string;
6
+ }
@@ -0,0 +1,9 @@
1
+ export type IEmitUpdateData = (
2
+ step: string,
3
+ stage: string,
4
+ data?: {
5
+ order: string;
6
+ lastOrder: number;
7
+ percent: number;
8
+ }
9
+ ) => void;
@@ -0,0 +1,23 @@
1
+ import { IZapierOrder } from "../Routes/IZapierRoutes";
2
+ import { IMoveDateEntryEventData, IMoveOrderEventData } from "./IOrders";
3
+
4
+ interface IOrderDetails {
5
+ orderID: string;
6
+ companyName: string;
7
+ }
8
+
9
+ export type IOrderMoved = (
10
+ orderDetails: IOrderDetails,
11
+ eventData: IMoveOrderEventData
12
+ ) => Promise<string>;
13
+
14
+ export type IDateEntryMoved = (
15
+ orderDetails: IOrderDetails,
16
+ eventData: IMoveDateEntryEventData
17
+ ) => Promise<string>;
18
+
19
+ export type IOrderProcessed = (
20
+ orderDetails: IZapierOrder,
21
+ status: number,
22
+ message: string
23
+ ) => Promise<void>;
@@ -0,0 +1,45 @@
1
+ export interface ICloudPanelAccount {
2
+ name: string;
3
+ username: string;
4
+ password: string;
5
+ }
6
+
7
+ export interface ICloudPanelAPIRequest {
8
+ DisplayName: string;
9
+ Company: string;
10
+ Username: string;
11
+ Domain: string;
12
+ Pwd: string;
13
+ confirmPwd: string;
14
+ PasswordNeverExpires: boolean;
15
+ EnableMailbox: boolean;
16
+ LocalPart: string;
17
+ DomainPart: string;
18
+ MailboxPlan: number;
19
+ }
20
+
21
+ export interface IPosteBox {
22
+ address: string;
23
+ user: string;
24
+ home: string;
25
+ name: string;
26
+ disabled: boolean;
27
+ domain_admin: boolean;
28
+ super_admin: boolean;
29
+ strict_from_disabled: boolean;
30
+ created: string;
31
+ updated: string;
32
+ redirect_only: boolean;
33
+ redirect_to: [];
34
+ discard: boolean;
35
+ }
36
+
37
+ export interface ICreatePosteBox {
38
+ name: string;
39
+ email: string;
40
+ passwordPlaintext: string;
41
+ disabled: boolean;
42
+ superAdmin: boolean;
43
+ redirectTo?: ["string"];
44
+ referenceId?: "string";
45
+ }
@@ -0,0 +1,21 @@
1
+ import { ITotalsData } from ".";
2
+ import { IOrder } from "../../IOrder";
3
+ import { IUpdateOrder } from "../../Routes/IOrderRoutes";
4
+
5
+ export interface IMoveDateEntryMoveData {
6
+ type: string;
7
+ quantity: number;
8
+ originalStartDate: string;
9
+ updatedStartDate: string;
10
+ applyToOrder: boolean;
11
+ }
12
+
13
+ export interface IMoveDateEntryEventData {
14
+ moveData: IMoveDateEntryMoveData;
15
+ dailyTotalsData: ITotalsData[];
16
+ }
17
+
18
+ export type IMoveDateEntry = (
19
+ data: IUpdateOrder,
20
+ order: IOrder
21
+ ) => Promise<{ eventData: IMoveDateEntryEventData; updatedOrder: IOrder }>;
@@ -0,0 +1,28 @@
1
+ import { IOrder } from "../../IOrder";
2
+ import { IUpdateOrder } from "../../Routes/IOrderRoutes";
3
+ import { IUpdateFullDailyTotalReturnData } from "./IUpdateFullDailyTotal";
4
+
5
+ export interface IMoveOrderTotalsData {
6
+ startDate: string;
7
+ updatedStartDate: string;
8
+ entries: {
9
+ limitsGroup: string;
10
+ quantity: number;
11
+ }[];
12
+ }
13
+
14
+ export interface IMoveOrderEventData {
15
+ moveData: {
16
+ types: string[];
17
+ quantity: number;
18
+ originalStartDates: string[];
19
+ updatedStartDate: string;
20
+ applyToOrder: boolean;
21
+ };
22
+ dailyTotalsData: IUpdateFullDailyTotalReturnData[];
23
+ }
24
+
25
+ export type IMoveOrder = (
26
+ data: IUpdateOrder,
27
+ order: IOrder
28
+ ) => Promise<{ eventData: IMoveOrderEventData; updatedOrder: IOrder }>;
@@ -0,0 +1,13 @@
1
+ import { IOrder } from "../../IOrder";
2
+ import { IMoveOrderTotalsData, ITotalsData } from ".";
3
+
4
+ export interface IUpdateFullDailyTotalReturnData {
5
+ oldStartDate: string;
6
+ updatedStartDate: string;
7
+ totalsData: ITotalsData[];
8
+ }
9
+
10
+ export type IUpdateFullDailyTotal = (
11
+ data: IMoveOrderTotalsData,
12
+ order: IOrder
13
+ ) => Promise<IUpdateFullDailyTotalReturnData>;
@@ -0,0 +1,8 @@
1
+ import { ITotalsData } from ".";
2
+ import { IDateEntry, IOrder } from "../../IOrder";
3
+
4
+ export type IUpdateIndividualDailyTotal = (
5
+ originalStartDate: string,
6
+ data: IDateEntry,
7
+ order: IOrder
8
+ ) => Promise<ITotalsData[]>;
@@ -0,0 +1,10 @@
1
+ import { ILeanDailyTotal } from "../../IDailyTotal";
2
+
3
+ export interface ITotalsData extends ILeanDailyTotal {
4
+ position: string;
5
+ }
6
+
7
+ export * from "./IMoveDateEntry";
8
+ export * from "./IMoveOrder";
9
+ export * from "./IUpdateFullDailyTotal";
10
+ export * from "./IUpdateIndividualDailyTotal";
@@ -0,0 +1,16 @@
1
+ import { ILeanDailyTotal } from "../IDailyTotal";
2
+ import { IOrder } from "../IOrder";
3
+ import { IUpdateOrder } from "../Routes/IOrderRoutes";
4
+
5
+ export type IFormattedHolidays = string[];
6
+
7
+ export interface IDateObject {
8
+ _id: string;
9
+ totals: number[];
10
+ }
11
+
12
+ export type ICheckForNegativeValue = (
13
+ totals: ILeanDailyTotal,
14
+ order: IOrder,
15
+ data: IUpdateOrder
16
+ ) => Promise<boolean>;
@@ -0,0 +1,52 @@
1
+ import { DateTime } from "luxon";
2
+ import { ILimit } from "../../ISetting";
3
+ import { IZapierOrder } from "../../Routes/IZapierRoutes";
4
+ import { IDateEntry } from "../../IOrder";
5
+
6
+ export type IFetchLimits = (type: string) => Promise<ILimit>;
7
+
8
+ export type ICalculateInitialStartDate = (
9
+ shipDate: DateTime,
10
+ limits: ILimit
11
+ ) => Promise<{ startDate: DateTime; isHighlighted: boolean }>;
12
+
13
+ export type ICheckDailyTotals = (
14
+ date: string,
15
+ quantity: number,
16
+ limitData: ILimit
17
+ ) => Promise<{ result: boolean; exists?: boolean } | boolean>;
18
+
19
+ export type ICalculateStartDate = (
20
+ startDate: DateTime,
21
+ isHighlighted: boolean
22
+ ) => Promise<{ startDate: DateTime; isHighlighted: boolean }>;
23
+
24
+ export type ICalculateRPD = (
25
+ requiredProductionDays: number,
26
+ requestedShipDate: DateTime
27
+ ) => number;
28
+
29
+ export type ICalculateShipDate = (
30
+ startDate: DateTime,
31
+ limits: ILimit
32
+ ) => Promise<DateTime>;
33
+
34
+ export type ICalculateStartDates = (
35
+ summary: string[],
36
+ data: IZapierOrder
37
+ ) => Promise<{ entries: IDateEntry[]; shipDate?: DateTime }>;
38
+
39
+ export type IUpdateAllmoxyShipDate = (
40
+ id: string | number,
41
+ shipDate: DateTime
42
+ ) => Promise<void>;
43
+
44
+ export type IPopulateDatabase = (
45
+ entries: IDateEntry[],
46
+ requestBody: IZapierOrder
47
+ ) => Promise<void>;
48
+
49
+ export type ICreateTotalsEntry = (
50
+ startDate: string,
51
+ dateEntry: IDateEntry
52
+ ) => Promise<void>;
package/src/IConfig.ts ADDED
@@ -0,0 +1,11 @@
1
+ export interface IConfig {
2
+ DB_HOST: string;
3
+ DB_PORT: number;
4
+ DB_NAME: string;
5
+ VERSION: string;
6
+ DB_USER?: string;
7
+ DB_PASS?: string;
8
+ DB_URL: string;
9
+ PORT: number;
10
+ NODE_ENV: string;
11
+ }
@@ -0,0 +1,9 @@
1
+ import { Document } from "mongoose";
2
+
3
+ export type IDailyTotal = ILeanDailyTotal & Document;
4
+
5
+ export interface ILeanDailyTotal {
6
+ _id: string;
7
+ locked: boolean;
8
+ [key: string]: any;
9
+ }
package/src/IEvent.ts ADDED
@@ -0,0 +1,21 @@
1
+ import { IDateEntryMoved } from "./Events/IDateEntryMoved";
2
+ import { IOrderMoved } from "./Events/IOrderMoved";
3
+ import { IOrderProcessed } from "./Events/IOrderProcessed";
4
+ import { INegativeValue } from "./Events/INegativeValue";
5
+ import mongoose, { Document } from "mongoose";
6
+
7
+ export type IEvent = ILeanEvent & Document;
8
+
9
+ export interface ILeanEvent {
10
+ _id: mongoose.Types.ObjectId;
11
+ time: Date;
12
+ orderID: string;
13
+ companyName: string;
14
+ status: number;
15
+ _type?: string;
16
+ }
17
+
18
+ export interface IDateEntryMovedEvent extends Event, IDateEntryMoved {}
19
+ export interface IOrderMovedEvent extends Event, IOrderMoved {}
20
+ export interface IOrderProcessedEvent extends Event, IOrderProcessed {}
21
+ export interface INegativeValueEvent extends Event, INegativeValue {}
@@ -0,0 +1,40 @@
1
+ import mongoose, { Document } from "mongoose";
2
+
3
+ export interface IHeader {
4
+ name: string;
5
+ defaultValue?: string;
6
+ }
7
+
8
+ export type IExporter = ILeanExporter & Document;
9
+
10
+ export interface ILeanExporter {
11
+ _id: mongoose.Types.ObjectId;
12
+ exporterName: string;
13
+ programDirectory: string;
14
+ preProcessorScript: string;
15
+ emailAddress: string;
16
+ password: string;
17
+ csvGenerator?: IHeader[];
18
+ }
19
+
20
+ export interface IAttachment {
21
+ fileName: string;
22
+ content: string;
23
+ }
24
+
25
+ export interface IMailCacheObject {
26
+ _id?: mongoose.Types.ObjectId;
27
+ time: Date;
28
+ subject: string;
29
+ attachments: IAttachment[];
30
+ saveDir: string;
31
+ state: string;
32
+ }
33
+
34
+ export type IMailCache = ILeanMailCache & Document;
35
+
36
+ export interface ILeanMailCache {
37
+ _id: mongoose.Types.ObjectId;
38
+ exporterID?: string;
39
+ mailCache?: IMailCacheObject[];
40
+ }
@@ -0,0 +1,14 @@
1
+ import { Request, Response, NextFunction } from "express";
2
+
3
+ export type IRequestHandler = (
4
+ req: Request,
5
+ res: Response,
6
+ next: NextFunction
7
+ ) => void | Promise<any>;
8
+
9
+ export enum IHTTPMethod {
10
+ GET = "get",
11
+ POST = "post",
12
+ PUT = "put",
13
+ DELETE = "delete",
14
+ }
@@ -0,0 +1,8 @@
1
+ import mongoose, { Document } from "mongoose";
2
+
3
+ export type IIntegration = ILeanIntegration & Document;
4
+ export interface ILeanIntegration {
5
+ _id: mongoose.Types.ObjectId;
6
+ name: string;
7
+ any: any;
8
+ }
package/src/IJWT.ts ADDED
@@ -0,0 +1,4 @@
1
+ export interface IJWTToken {
2
+ id: string;
3
+ ip: string;
4
+ }
package/src/IOrder.ts ADDED
@@ -0,0 +1,27 @@
1
+ import { Document } from "mongoose";
2
+
3
+ export interface IDateEntry {
4
+ _id: string;
5
+ quantity: number;
6
+ type: string;
7
+ limitsGroup: string;
8
+ startDate: string;
9
+ hasStarted: boolean;
10
+ highlight: boolean;
11
+ }
12
+
13
+ export type IOrder = ILeanOrder & Document;
14
+
15
+ export interface ILeanOrder {
16
+ _id: number;
17
+ name?: string;
18
+ companyName: string;
19
+ date?: string;
20
+ shipDate: string;
21
+ requestedShipDate: string;
22
+ companyId?: number;
23
+ summary: string;
24
+ dateEntries: IDateEntry[];
25
+ orderTags: string[];
26
+ companyTags: string[];
27
+ }
package/src/IScript.ts ADDED
@@ -0,0 +1,10 @@
1
+ import mongoose, { Document } from "mongoose";
2
+
3
+ export type IScript = ILeanScript & Document;
4
+ export interface ILeanScript {
5
+ _id: mongoose.Types.ObjectId;
6
+ name: string;
7
+ usage: string;
8
+ language: string;
9
+ parser: "csv2json" | "xml2json";
10
+ }
@@ -0,0 +1,83 @@
1
+ import mongoose, { Document } from "mongoose";
2
+
3
+ export interface ILeanSetting {
4
+ _id: mongoose.Types.ObjectId;
5
+ modifiedAt: string;
6
+ _type: string;
7
+ }
8
+
9
+ export interface ILeanAPIToken extends ILeanSetting {
10
+ name: string;
11
+ token: string;
12
+ permissions: string[];
13
+ expiry: string;
14
+ }
15
+
16
+ export interface ILeanGroup extends ILeanSetting {
17
+ name: string;
18
+ permissions: string[];
19
+ }
20
+
21
+ export interface ILeanHoliday extends ILeanSetting {
22
+ title: string;
23
+ date: string;
24
+ recurring?: boolean;
25
+ recurs?: string;
26
+ }
27
+
28
+ export interface ILeanLimit extends ILeanSetting {
29
+ name: string;
30
+ rpd: string;
31
+ limit: string;
32
+ enabled: boolean;
33
+ products?: string[];
34
+ }
35
+
36
+ export interface ILeanOrderFlag extends ILeanSetting {
37
+ name: string;
38
+ highlightColor: string;
39
+ products?: string[];
40
+ tags?: string[];
41
+ }
42
+
43
+ export interface ILeanSorting extends ILeanSetting {
44
+ headerList?: string[];
45
+ itemList: string[];
46
+ usage: "totals-groups" | "limits";
47
+ }
48
+
49
+ export interface ICalculation {
50
+ action: "add" | "subtract";
51
+ source: string;
52
+ calculation: "add" | "subtract" | "current";
53
+ days: string;
54
+ }
55
+
56
+ export interface ILeanTotalsGroup extends ILeanSetting {
57
+ name: string;
58
+ identifier: string;
59
+ calculations?: ICalculation[];
60
+ }
61
+
62
+ export interface ILeanKeyValue extends ILeanSetting {
63
+ key: string;
64
+ value: string;
65
+ }
66
+
67
+ export type ISetting = ILeanSetting & Document;
68
+
69
+ export type IAPIToken = ILeanAPIToken & Document;
70
+
71
+ export type IGroup = ILeanGroup & Document;
72
+
73
+ export type IHoliday = ILeanHoliday & Document;
74
+
75
+ export type ILimit = ILeanLimit & Document;
76
+
77
+ export type IOrderFlag = ILeanOrderFlag & Document;
78
+
79
+ export type ISorting = ILeanSorting & Document;
80
+
81
+ export type ITotalsGroup = ILeanTotalsGroup & Document;
82
+
83
+ export type IKeyValue = ILeanKeyValue & Document;
package/src/IUser.ts ADDED
@@ -0,0 +1,13 @@
1
+ import mongoose, { Document } from "mongoose";
2
+
3
+ export type IUser = ILeanUser & Document;
4
+
5
+ export interface ILeanUser {
6
+ _id: mongoose.Types.ObjectId;
7
+ firstName: string;
8
+ lastName: string;
9
+ email: string;
10
+ password: string;
11
+ permissions: any[];
12
+ groups: any[];
13
+ }
@@ -0,0 +1,5 @@
1
+ import { IMailCacheObject } from "./IExporter";
2
+
3
+ export interface IPendingOperation extends IMailCacheObject {
4
+ exporterID: string;
5
+ }