@cool-digital-solutions/interferir-models 1.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.
Files changed (179) hide show
  1. package/dist/config/index.d.ts +75 -0
  2. package/dist/config/index.js +27 -0
  3. package/dist/index.d.ts +82 -0
  4. package/dist/index.js +79 -0
  5. package/dist/models/ai-conversation.model.d.ts +2 -0
  6. package/dist/models/ai-conversation.model.js +43 -0
  7. package/dist/models/backend-error.model.d.ts +2 -0
  8. package/dist/models/backend-error.model.js +40 -0
  9. package/dist/models/badge.model.d.ts +2 -0
  10. package/dist/models/badge.model.js +43 -0
  11. package/dist/models/batch-history.model.d.ts +33 -0
  12. package/dist/models/batch-history.model.js +39 -0
  13. package/dist/models/company.model.d.ts +2 -0
  14. package/dist/models/company.model.js +180 -0
  15. package/dist/models/competitor.model.d.ts +2 -0
  16. package/dist/models/competitor.model.js +33 -0
  17. package/dist/models/contact-message.model.d.ts +2 -0
  18. package/dist/models/contact-message.model.js +40 -0
  19. package/dist/models/contact-startup.model.d.ts +2 -0
  20. package/dist/models/contact-startup.model.js +28 -0
  21. package/dist/models/content.model.d.ts +2 -0
  22. package/dist/models/content.model.js +41 -0
  23. package/dist/models/draft-version.model.d.ts +2 -0
  24. package/dist/models/draft-version.model.js +35 -0
  25. package/dist/models/evidence-layout.model.d.ts +2 -0
  26. package/dist/models/evidence-layout.model.js +39 -0
  27. package/dist/models/evidence.model.d.ts +2 -0
  28. package/dist/models/evidence.model.js +108 -0
  29. package/dist/models/faq.model.d.ts +2 -0
  30. package/dist/models/faq.model.js +35 -0
  31. package/dist/models/follow-content.model.d.ts +2 -0
  32. package/dist/models/follow-content.model.js +37 -0
  33. package/dist/models/general-config-sub.model.d.ts +2 -0
  34. package/dist/models/general-config-sub.model.js +14 -0
  35. package/dist/models/general-config.model.d.ts +2 -0
  36. package/dist/models/general-config.model.js +16 -0
  37. package/dist/models/image.model.d.ts +2 -0
  38. package/dist/models/image.model.js +46 -0
  39. package/dist/models/index.d.ts +39 -0
  40. package/dist/models/index.js +79 -0
  41. package/dist/models/industry.model.d.ts +2 -0
  42. package/dist/models/industry.model.js +34 -0
  43. package/dist/models/instant-research.model.d.ts +2 -0
  44. package/dist/models/instant-research.model.js +174 -0
  45. package/dist/models/investor.model.d.ts +2 -0
  46. package/dist/models/investor.model.js +36 -0
  47. package/dist/models/like.model.d.ts +2 -0
  48. package/dist/models/like.model.js +43 -0
  49. package/dist/models/model-indexes.d.ts +3 -0
  50. package/dist/models/model-indexes.js +24 -0
  51. package/dist/models/news.model.d.ts +2 -0
  52. package/dist/models/news.model.js +77 -0
  53. package/dist/models/notification.model.d.ts +2 -0
  54. package/dist/models/notification.model.js +17 -0
  55. package/dist/models/otp.model.d.ts +2 -0
  56. package/dist/models/otp.model.js +15 -0
  57. package/dist/models/portia-article.model.d.ts +2 -0
  58. package/dist/models/portia-article.model.js +96 -0
  59. package/dist/models/problem.model.d.ts +2 -0
  60. package/dist/models/problem.model.js +54 -0
  61. package/dist/models/search-history.model.d.ts +2 -0
  62. package/dist/models/search-history.model.js +41 -0
  63. package/dist/models/sf-category.model.d.ts +2 -0
  64. package/dist/models/sf-category.model.js +36 -0
  65. package/dist/models/sf-sub-category.model.d.ts +2 -0
  66. package/dist/models/sf-sub-category.model.js +35 -0
  67. package/dist/models/sf-tag.model.d.ts +2 -0
  68. package/dist/models/sf-tag.model.js +34 -0
  69. package/dist/models/site-map-cache.model.d.ts +2 -0
  70. package/dist/models/site-map-cache.model.js +19 -0
  71. package/dist/models/spark-use-case.model.d.ts +2 -0
  72. package/dist/models/spark-use-case.model.js +87 -0
  73. package/dist/models/spark.model.d.ts +2 -0
  74. package/dist/models/spark.model.js +78 -0
  75. package/dist/models/suggest.model.d.ts +2 -0
  76. package/dist/models/suggest.model.js +40 -0
  77. package/dist/models/technology.model.d.ts +2 -0
  78. package/dist/models/technology.model.js +34 -0
  79. package/dist/models/theme.model.d.ts +2 -0
  80. package/dist/models/theme.model.js +69 -0
  81. package/dist/models/token.model.d.ts +2 -0
  82. package/dist/models/token.model.js +15 -0
  83. package/dist/models/update-job.model.d.ts +2 -0
  84. package/dist/models/update-job.model.js +37 -0
  85. package/dist/models/use-case.model.d.ts +2 -0
  86. package/dist/models/use-case.model.js +83 -0
  87. package/dist/models/user-token.model.d.ts +2 -0
  88. package/dist/models/user-token.model.js +33 -0
  89. package/dist/models/user-visit.model.d.ts +2 -0
  90. package/dist/models/user-visit.model.js +35 -0
  91. package/dist/models/user.model.d.ts +2 -0
  92. package/dist/models/user.model.js +78 -0
  93. package/dist/types/ai-conversation.type.d.ts +46 -0
  94. package/dist/types/ai-conversation.type.js +8 -0
  95. package/dist/types/backend-error.type.d.ts +19 -0
  96. package/dist/types/backend-error.type.js +10 -0
  97. package/dist/types/badge.type.d.ts +42 -0
  98. package/dist/types/badge.type.js +11 -0
  99. package/dist/types/batch-history.type.d.ts +39 -0
  100. package/dist/types/batch-history.type.js +10 -0
  101. package/dist/types/company.type.d.ts +229 -0
  102. package/dist/types/company.type.js +75 -0
  103. package/dist/types/competitor.type.d.ts +33 -0
  104. package/dist/types/competitor.type.js +2 -0
  105. package/dist/types/contact-message.type.d.ts +46 -0
  106. package/dist/types/contact-message.type.js +11 -0
  107. package/dist/types/contact-startup.type.d.ts +43 -0
  108. package/dist/types/contact-startup.type.js +10 -0
  109. package/dist/types/content.type.d.ts +33 -0
  110. package/dist/types/content.type.js +2 -0
  111. package/dist/types/draft-version.type.d.ts +41 -0
  112. package/dist/types/draft-version.type.js +12 -0
  113. package/dist/types/evidence-layout.type.d.ts +13 -0
  114. package/dist/types/evidence-layout.type.js +2 -0
  115. package/dist/types/evidence.type.d.ts +102 -0
  116. package/dist/types/evidence.type.js +11 -0
  117. package/dist/types/faq.type.d.ts +17 -0
  118. package/dist/types/faq.type.js +12 -0
  119. package/dist/types/follow-content.type.d.ts +50 -0
  120. package/dist/types/follow-content.type.js +17 -0
  121. package/dist/types/general-config-sub.type.d.ts +17 -0
  122. package/dist/types/general-config-sub.type.js +14 -0
  123. package/dist/types/general-config.type.d.ts +55 -0
  124. package/dist/types/general-config.type.js +25 -0
  125. package/dist/types/image.type.d.ts +54 -0
  126. package/dist/types/image.type.js +13 -0
  127. package/dist/types/index.d.ts +43 -0
  128. package/dist/types/index.js +2 -0
  129. package/dist/types/industry.type.d.ts +5 -0
  130. package/dist/types/industry.type.js +2 -0
  131. package/dist/types/instant-research.type.d.ts +182 -0
  132. package/dist/types/instant-research.type.js +37 -0
  133. package/dist/types/investor.type.d.ts +32 -0
  134. package/dist/types/investor.type.js +2 -0
  135. package/dist/types/like.type.d.ts +49 -0
  136. package/dist/types/like.type.js +16 -0
  137. package/dist/types/news.type.d.ts +63 -0
  138. package/dist/types/news.type.js +2 -0
  139. package/dist/types/notification.type.d.ts +34 -0
  140. package/dist/types/notification.type.js +2 -0
  141. package/dist/types/otp.type.d.ts +10 -0
  142. package/dist/types/otp.type.js +2 -0
  143. package/dist/types/portia-article.type.d.ts +87 -0
  144. package/dist/types/portia-article.type.js +23 -0
  145. package/dist/types/problem.type.d.ts +56 -0
  146. package/dist/types/problem.type.js +2 -0
  147. package/dist/types/search-history.type.d.ts +36 -0
  148. package/dist/types/search-history.type.js +2 -0
  149. package/dist/types/sf-category.type.d.ts +8 -0
  150. package/dist/types/sf-category.type.js +2 -0
  151. package/dist/types/sf-sub-category.type.d.ts +7 -0
  152. package/dist/types/sf-sub-category.type.js +2 -0
  153. package/dist/types/sf-tag.type.d.ts +5 -0
  154. package/dist/types/sf-tag.type.js +2 -0
  155. package/dist/types/site-map-cache.type.d.ts +11 -0
  156. package/dist/types/site-map-cache.type.js +2 -0
  157. package/dist/types/spark-use-case.type.d.ts +93 -0
  158. package/dist/types/spark-use-case.type.js +18 -0
  159. package/dist/types/spark.type.d.ts +108 -0
  160. package/dist/types/spark.type.js +42 -0
  161. package/dist/types/suggest.type.d.ts +42 -0
  162. package/dist/types/suggest.type.js +11 -0
  163. package/dist/types/technology.type.d.ts +5 -0
  164. package/dist/types/technology.type.js +2 -0
  165. package/dist/types/theme.type.d.ts +63 -0
  166. package/dist/types/theme.type.js +2 -0
  167. package/dist/types/token.type.d.ts +41 -0
  168. package/dist/types/token.type.js +10 -0
  169. package/dist/types/update-job.type.d.ts +49 -0
  170. package/dist/types/update-job.type.js +18 -0
  171. package/dist/types/use-case.type.d.ts +81 -0
  172. package/dist/types/use-case.type.js +2 -0
  173. package/dist/types/user-token.type.d.ts +33 -0
  174. package/dist/types/user-token.type.js +2 -0
  175. package/dist/types/user-visit.type.d.ts +41 -0
  176. package/dist/types/user-visit.type.js +11 -0
  177. package/dist/types/user.type.d.ts +71 -0
  178. package/dist/types/user.type.js +15 -0
  179. package/package.json +28 -0
@@ -0,0 +1,2 @@
1
+ import { IPortiaArticleModel } from '../types';
2
+ export declare const PortiaArticleModel: IPortiaArticleModel;
@@ -0,0 +1,96 @@
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.PortiaArticleModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const portia_article_type_1 = require("../types/portia-article.type");
10
+ const _config_1 = require("../config");
11
+ const portiaArticleSchema = new mongoose_1.Schema({
12
+ slug: { type: String, required: [true, 'slug is required'], unique: true },
13
+ url: { type: String, required: [true, 'url is required'], unique: true },
14
+ downloadDate: { type: Number, required: [true, 'downloadDate is required'] },
15
+ authors: [{ type: String, default: '' }],
16
+ publishDate: { type: Number, required: [true, 'publishDate is required'] },
17
+ imageUrl: { type: String, default: '' },
18
+ image: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Image', default: null },
19
+ title: { type: String, default: '' },
20
+ articleType: {
21
+ type: String,
22
+ enum: Object.values(portia_article_type_1.PortiaArticleTypes),
23
+ required: [true, 'articleType is required.'],
24
+ },
25
+ description: { type: String, default: '' },
26
+ mainText: { type: String, required: [true, 'mainText is required'] },
27
+ language: {
28
+ type: String,
29
+ enum: Object.values(portia_article_type_1.PortiaArticleLanguages),
30
+ default: portia_article_type_1.PortiaArticleLanguages.ENGLISH,
31
+ },
32
+ sourceDomain: { type: String, default: '' },
33
+ hyperlinks: [{ type: String, default: '' }],
34
+ analysisResult: {
35
+ type: {
36
+ category: {
37
+ type: String,
38
+ enum: Object.values(portia_article_type_1.PortiaArticleCategories),
39
+ required: [true, 'articleCategory is required.'],
40
+ },
41
+ summary: {
42
+ type: String,
43
+ default: '',
44
+ },
45
+ companies: {
46
+ type: [
47
+ {
48
+ name: String,
49
+ link: String,
50
+ description: String,
51
+ },
52
+ ],
53
+ default: [],
54
+ },
55
+ companyReferences: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Company' }],
56
+ investors: [{ type: String, default: '' }],
57
+ },
58
+ default: null,
59
+ },
60
+ cardDescription: { type: String, default: '' },
61
+ instantResearches: [
62
+ {
63
+ instantResearchId: { type: mongoose_1.Schema.Types.ObjectId, ref: 'InstantResearch' },
64
+ score: { type: Number, default: 0 },
65
+ },
66
+ ],
67
+ status: { type: String, enum: Object.values(_config_1.ContentStatus), required: [true, 'status is required!'], default: _config_1.ContentStatus.PUBLISH },
68
+ sfIndustries: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Industry' }],
69
+ sfTechnologies: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Technology' }],
70
+ sfCategories: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFCategory' }],
71
+ sfSubCategories: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFSubCategory' }],
72
+ sfTags: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFTag' }],
73
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
74
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
75
+ updatedDate: { type: Number, index: -1 },
76
+ createdDate: { type: Number, index: -1 },
77
+ }, _config_1.schemaOptions);
78
+ portiaArticleSchema.pre('save', function (next) {
79
+ const user = express_http_context_1.default.get('user');
80
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
81
+ if (user) {
82
+ if (!this.createdBy)
83
+ this.createdBy = user._id;
84
+ if (!notUpdatedBy)
85
+ this.updatedBy = user._id;
86
+ }
87
+ next();
88
+ });
89
+ portiaArticleSchema.pre('findOneAndUpdate', function (next) {
90
+ const user = express_http_context_1.default.get('user');
91
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
92
+ if (user && !notUpdatedBy)
93
+ this._update.updatedBy = user._id;
94
+ next();
95
+ });
96
+ exports.PortiaArticleModel = (0, mongoose_1.model)('PortiaArticle', portiaArticleSchema);
@@ -0,0 +1,2 @@
1
+ import { IProblemModel } from '../types';
2
+ export declare const ProblemModel: IProblemModel;
@@ -0,0 +1,54 @@
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.ProblemModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const problemSchema = new mongoose_1.Schema({
11
+ title: { type: String },
12
+ slug: { type: String, required: [true, 'slug is required!'], unique: true },
13
+ content: { type: String },
14
+ contentHTML: { type: String },
15
+ themeList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Theme' }],
16
+ useCaseList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'UseCase' }],
17
+ writtenBy: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'User' }],
18
+ privForUsers: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'User' }],
19
+ status: { type: String, enum: Object.values(_config_1.ContentStatus), required: [true, 'status is required!'] },
20
+ draftVersionStatus: { type: String, default: '' },
21
+ likeCount: { type: Number, default: 0 },
22
+ dislikeCount: { type: Number, default: 0 },
23
+ evidenceCount: {
24
+ type: Object,
25
+ default: { publish: 0, private: 0, draft: 0, prePublish: 0 },
26
+ },
27
+ solutionCount: {
28
+ type: Object,
29
+ default: { publish: 0, private: 0, draft: 0, prePublish: 0 },
30
+ },
31
+ updatedDate: { type: Number, index: -1 },
32
+ createdDate: { type: Number, index: -1 },
33
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
34
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
35
+ }, _config_1.schemaOptions);
36
+ problemSchema.pre('save', function (next) {
37
+ const user = express_http_context_1.default.get('user');
38
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
39
+ if (user) {
40
+ if (!this.createdBy)
41
+ this.createdBy = user._id;
42
+ if (!notUpdatedBy)
43
+ this.updatedBy = user._id;
44
+ }
45
+ next();
46
+ });
47
+ problemSchema.pre('findOneAndUpdate', function (next) {
48
+ const user = express_http_context_1.default.get('user');
49
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
50
+ if (user && !notUpdatedBy)
51
+ this._update.updatedBy = user._id;
52
+ next();
53
+ });
54
+ exports.ProblemModel = (0, mongoose_1.model)('Problem', problemSchema);
@@ -0,0 +1,2 @@
1
+ import { ISearchHistoryModel } from '../types';
2
+ export declare const SearchHistoryModel: ISearchHistoryModel;
@@ -0,0 +1,41 @@
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.SearchHistoryModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const searchHistorySchema = new mongoose_1.Schema({
11
+ user: {
12
+ type: mongoose_1.Schema.Types.ObjectId,
13
+ ref: 'User',
14
+ required: [true, 'user required!'],
15
+ index: true,
16
+ },
17
+ problem: { type: String, default: '' },
18
+ usecase: { type: String, default: '' },
19
+ evidenceList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Evidence', index: true }],
20
+ searchDate: { type: Number, required: [true, 'searchDate required!'] },
21
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
22
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
23
+ updatedDate: { type: Number, index: -1 },
24
+ createdDate: { type: Number, index: -1 },
25
+ }, _config_1.schemaOptions);
26
+ searchHistorySchema.pre('save', function (next) {
27
+ const user = express_http_context_1.default.get('user');
28
+ if (user) {
29
+ if (!this.createdBy)
30
+ this.createdBy = user._id;
31
+ this.updatedBy = user._id;
32
+ }
33
+ next();
34
+ });
35
+ searchHistorySchema.pre('findOneAndUpdate', function (next) {
36
+ const user = express_http_context_1.default.get('user');
37
+ if (user)
38
+ this._update.updatedBy = user._id;
39
+ next();
40
+ });
41
+ exports.SearchHistoryModel = (0, mongoose_1.model)('SearchHistory', searchHistorySchema);
@@ -0,0 +1,2 @@
1
+ import { ISFCategoryModel } from '../types';
2
+ export declare const SFCategoryModel: ISFCategoryModel;
@@ -0,0 +1,36 @@
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.SFCategoryModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const sfCategorySchema = new mongoose_1.Schema({
11
+ name: { type: String, required: [true, 'name required!'], unique: true },
12
+ synonyms: { type: String, default: '' },
13
+ description: { type: String, default: '' },
14
+ industry: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Industry', default: null },
15
+ technology: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Technology', default: null },
16
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
17
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
18
+ updatedDate: { type: Number, index: -1 },
19
+ createdDate: { type: Number, index: -1 },
20
+ }, _config_1.schemaOptions);
21
+ sfCategorySchema.pre('save', function (next) {
22
+ const user = express_http_context_1.default.get('user');
23
+ if (user) {
24
+ if (!this.createdBy)
25
+ this.createdBy = user._id;
26
+ this.updatedBy = user._id;
27
+ }
28
+ next();
29
+ });
30
+ sfCategorySchema.pre('findOneAndUpdate', function (next) {
31
+ const user = express_http_context_1.default.get('user');
32
+ if (user)
33
+ this._update.updatedBy = user._id;
34
+ next();
35
+ });
36
+ exports.SFCategoryModel = (0, mongoose_1.model)('SFCategory', sfCategorySchema);
@@ -0,0 +1,2 @@
1
+ import { ISFSubCategoryModel } from '../types';
2
+ export declare const SFSubCategoryModel: ISFSubCategoryModel;
@@ -0,0 +1,35 @@
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.SFSubCategoryModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const sfSubCategorySchema = new mongoose_1.Schema({
11
+ name: { type: String, required: [true, 'name required!'], unique: true },
12
+ synonyms: { type: String, default: '' },
13
+ description: { type: String, default: '' },
14
+ category: { type: mongoose_1.Schema.Types.ObjectId, ref: 'SFCategory', default: null },
15
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
16
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
17
+ updatedDate: { type: Number, index: -1 },
18
+ createdDate: { type: Number, index: -1 },
19
+ }, _config_1.schemaOptions);
20
+ sfSubCategorySchema.pre('save', function (next) {
21
+ const user = express_http_context_1.default.get('user');
22
+ if (user) {
23
+ if (!this.createdBy)
24
+ this.createdBy = user._id;
25
+ this.updatedBy = user._id;
26
+ }
27
+ next();
28
+ });
29
+ sfSubCategorySchema.pre('findOneAndUpdate', function (next) {
30
+ const user = express_http_context_1.default.get('user');
31
+ if (user)
32
+ this._update.updatedBy = user._id;
33
+ next();
34
+ });
35
+ exports.SFSubCategoryModel = (0, mongoose_1.model)('SFSubCategory', sfSubCategorySchema);
@@ -0,0 +1,2 @@
1
+ import { ISFTagModel } from '../types';
2
+ export declare const SFTagModel: ISFTagModel;
@@ -0,0 +1,34 @@
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.SFTagModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const sfTagSchema = new mongoose_1.Schema({
11
+ name: { type: String, required: [true, 'name required!'], unique: true },
12
+ synonyms: { type: String, default: '' },
13
+ description: { type: String, default: '' },
14
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
15
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
16
+ updatedDate: { type: Number, index: -1 },
17
+ createdDate: { type: Number, index: -1 },
18
+ }, _config_1.schemaOptions);
19
+ sfTagSchema.pre('save', function (next) {
20
+ const user = express_http_context_1.default.get('user');
21
+ if (user) {
22
+ if (!this.createdBy)
23
+ this.createdBy = user._id;
24
+ this.updatedBy = user._id;
25
+ }
26
+ next();
27
+ });
28
+ sfTagSchema.pre('findOneAndUpdate', function (next) {
29
+ const user = express_http_context_1.default.get('user');
30
+ if (user)
31
+ this._update.updatedBy = user._id;
32
+ next();
33
+ });
34
+ exports.SFTagModel = (0, mongoose_1.model)('SFTag', sfTagSchema);
@@ -0,0 +1,2 @@
1
+ import { ISiteMapCacheModel } from '../types';
2
+ export declare const SiteMapCacheModel: ISiteMapCacheModel;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SiteMapCacheModel = void 0;
4
+ const mongoose_1 = require("mongoose");
5
+ const _config_1 = require("../config");
6
+ const siteMapCacheSchema = new mongoose_1.Schema({
7
+ data: [
8
+ {
9
+ url: { type: String, required: [true, 'url is required'] },
10
+ lastModified: {
11
+ type: String,
12
+ required: [true, 'lastModified is required'],
13
+ },
14
+ },
15
+ ],
16
+ updatedDate: Number,
17
+ createdDate: Number,
18
+ }, _config_1.schemaOptions);
19
+ exports.SiteMapCacheModel = (0, mongoose_1.model)('SiteMapCache', siteMapCacheSchema);
@@ -0,0 +1,2 @@
1
+ import { ISparkUseCaseModel } from '../types';
2
+ export declare const SparkUseCaseModel: ISparkUseCaseModel;
@@ -0,0 +1,87 @@
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.SparkUseCaseModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const spark_type_1 = require("../types/spark.type");
10
+ const spark_use_case_type_1 = require("../types/spark-use-case.type");
11
+ const _config_1 = require("../config");
12
+ const sparkUseCaseSchema = new mongoose_1.Schema({
13
+ owner: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
14
+ slug: { type: String, required: [true, 'slug is required!'], unique: true },
15
+ spark: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Spark', index: 1, required: [true, 'spark is required'] },
16
+ priority: { type: String, required: [true, 'priority is required'], enum: Object.values(spark_type_1.SparkPriorityList) },
17
+ priorityLevel: { type: Number, default: 0 },
18
+ status: {
19
+ type: String,
20
+ enum: Object.values(spark_use_case_type_1.SparkUseCaseStatusList),
21
+ required: [true, 'status is required'],
22
+ default: spark_use_case_type_1.SparkUseCaseStatusList.DRAFT,
23
+ },
24
+ statusPriorityLevel: { type: Number, default: 3 },
25
+ useCaseStatus: { type: String, enum: Object.values(_config_1.ContentStatus), default: _config_1.ContentStatus.DRAFT },
26
+ problem: { type: String, default: '' },
27
+ problemSourceList: [{ type: String, required: [true, 'problemSource is required'] }],
28
+ solution: { type: String, default: '' },
29
+ solutionSourceList: [{ type: String, required: [true, 'solutionSource is reuqired'] }],
30
+ importance: { type: String, default: '' },
31
+ url: { type: String, default: '' },
32
+ importanceSourceList: [{ type: String, required: [true, 'importanceSource is required'] }],
33
+ rejectNote: { type: String, default: '' },
34
+ rejectSolutionNote: { type: String, default: '' },
35
+ rejectProblemNote: { type: String, default: '' },
36
+ rejectImportanceNote: { type: String, default: '' },
37
+ requestDeleteMessage: { type: String, default: '' },
38
+ feedbackMessage: { type: String, default: '' },
39
+ actors: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Company' }],
40
+ themeList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Theme' }],
41
+ relatedUseCaseList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'UseCase' }],
42
+ technologyList: [{ type: String, required: [true, 'technoloyList element is required!'] }],
43
+ industryList: [{ type: String, required: [true, 'industryList element is required!'] }],
44
+ entramindProblem: { type: String, default: '' },
45
+ entramindSolution: { type: String, default: '' },
46
+ entramindWhy: { type: String, default: '' },
47
+ writtenBy: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'User' }],
48
+ privForUsers: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'User' }],
49
+ entramindDetailedResponse: [
50
+ {
51
+ question: { type: String, default: '' },
52
+ answers: [
53
+ {
54
+ answer: { type: String, default: '' },
55
+ longContext: { type: String, default: '' },
56
+ },
57
+ ],
58
+ },
59
+ ],
60
+ sfIndustries: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Industry' }],
61
+ sfTechnologies: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Technology' }],
62
+ sfCategories: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFCategory' }],
63
+ sfSubCategories: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFSubCategory' }],
64
+ sfTags: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'SFTag' }],
65
+ fromEmptySparkUseCase: { type: Boolean, default: false },
66
+ projectLocation: [{ type: String, default: [] }],
67
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
68
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
69
+ updatedDate: { type: Number, index: -1 },
70
+ createdDate: { type: Number, index: -1 },
71
+ }, _config_1.schemaOptions);
72
+ sparkUseCaseSchema.pre('save', function (next) {
73
+ const user = express_http_context_1.default.get('user');
74
+ if (user) {
75
+ if (!this.createdBy)
76
+ this.createdBy = user._id;
77
+ this.updatedBy = user._id;
78
+ }
79
+ next();
80
+ });
81
+ sparkUseCaseSchema.pre('findOneAndUpdate', function (next) {
82
+ const user = express_http_context_1.default.get('user');
83
+ if (user)
84
+ this._update.updatedBy = user._id;
85
+ next();
86
+ });
87
+ exports.SparkUseCaseModel = (0, mongoose_1.model)('SparkUseCase', sparkUseCaseSchema);
@@ -0,0 +1,2 @@
1
+ import { ISparkModel } from '../types';
2
+ export declare const SparkModel: ISparkModel;
@@ -0,0 +1,78 @@
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.SparkModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const company_type_1 = require("../types/company.type");
10
+ const spark_type_1 = require("../types/spark.type");
11
+ const _config_1 = require("../config");
12
+ const sparkSchema = new mongoose_1.Schema({
13
+ companyName: { type: String, required: [true, 'companyName is required'] },
14
+ companyType: { type: String, required: [true, 'companyType is required'], enum: Object.values(company_type_1.CompanyTypes) },
15
+ refCompany: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Company', required: [true, 'refCompany is required'] },
16
+ website: { type: String, default: '' },
17
+ useCaseSourceList: [{ type: String, required: [true, 'useCaseSource is required'] }],
18
+ themeList: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Theme', index: true, default: null }],
19
+ priority: { type: String, required: [true, 'priority is required'], enum: Object.values(spark_type_1.SparkPriorityList) },
20
+ priorityLevel: { type: Number, index: -1, default: 0 },
21
+ note: { type: String, default: '' },
22
+ status: {
23
+ type: String,
24
+ required: [true, 'status is required'],
25
+ enum: Object.values(spark_type_1.SparkStatusList),
26
+ default: spark_type_1.SparkStatusList.EM_WORKING,
27
+ },
28
+ entramindStatus: {
29
+ type: String,
30
+ enum: Object.values(spark_type_1.EntramindStatusList),
31
+ default: spark_type_1.EntramindStatusList.CREATED,
32
+ },
33
+ entramindStartCount: { type: Number, default: 0 },
34
+ entramindErrorCount: { type: Number, default: 0 },
35
+ entramindSparkId: { type: String, default: '' },
36
+ entramindResponseMessageList: [
37
+ {
38
+ message: { type: String, default: '' },
39
+ date: { type: Number, default: 0 },
40
+ status: { type: Number, default: 500 },
41
+ },
42
+ ],
43
+ requester: {
44
+ requesterId: [{ type: mongoose_1.Schema.Types.ObjectId }],
45
+ requesterType: { type: String, enum: Object.values(spark_type_1.SparkRequesterType) },
46
+ },
47
+ projectLocation: { type: String, default: '' },
48
+ profileDetailUrls: [{ type: String, default: '' }],
49
+ autoPublish: { type: Boolean, default: false },
50
+ extraParameter: {
51
+ sendedNotWorkingAlertEmail: { type: Boolean, default: false },
52
+ },
53
+ rawContent: { type: String, default: '' },
54
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
55
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
56
+ updatedDate: { type: Number, index: -1 },
57
+ createdDate: { type: Number, index: -1 },
58
+ }, _config_1.schemaOptions);
59
+ sparkSchema.pre('save', function (next) {
60
+ const user = express_http_context_1.default.get('user');
61
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
62
+ if (user) {
63
+ if (!this.createdBy)
64
+ this.createdBy = user._id;
65
+ if (!notUpdatedBy)
66
+ this.updatedBy = user._id;
67
+ this.updatedBy = user._id;
68
+ }
69
+ next();
70
+ });
71
+ sparkSchema.pre('findOneAndUpdate', function (next) {
72
+ const user = express_http_context_1.default.get('user');
73
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
74
+ if (user && !notUpdatedBy)
75
+ this._update.updatedBy = user._id;
76
+ next();
77
+ });
78
+ exports.SparkModel = (0, mongoose_1.model)('Spark', sparkSchema);
@@ -0,0 +1,2 @@
1
+ import { ISuggestModel } from '../types';
2
+ export declare const SuggestModel: ISuggestModel;
@@ -0,0 +1,40 @@
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.SuggestModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const suggest_type_1 = require("../types/suggest.type");
10
+ const _config_1 = require("../config");
11
+ const suggestSchema = new mongoose_1.Schema({
12
+ message: { type: String, required: [true, 'message is required'] },
13
+ user: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', required: true },
14
+ relatedId: { type: mongoose_1.Schema.Types.ObjectId, required: [true, 'relatedId is required'] },
15
+ relatedModel: { type: String, enum: Object.values(suggest_type_1.RelatedModels) },
16
+ files: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Image', default: null }],
17
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
18
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
19
+ updatedDate: { type: Number, index: -1 },
20
+ createdDate: { type: Number, index: -1 },
21
+ }, _config_1.schemaOptions);
22
+ suggestSchema.pre('save', function (next) {
23
+ const user = express_http_context_1.default.get('user');
24
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
25
+ if (user) {
26
+ if (!this.createdBy)
27
+ this.createdBy = user._id;
28
+ if (!notUpdatedBy)
29
+ this.updatedBy = user._id;
30
+ }
31
+ next();
32
+ });
33
+ suggestSchema.pre('findOneAndUpdate', function (next) {
34
+ const user = express_http_context_1.default.get('user');
35
+ const notUpdatedBy = express_http_context_1.default.get('notUpdatedBy');
36
+ if (user && !notUpdatedBy)
37
+ this._update.updatedBy = user._id;
38
+ next();
39
+ });
40
+ exports.SuggestModel = (0, mongoose_1.model)('Suggest', suggestSchema);
@@ -0,0 +1,2 @@
1
+ import { ITechnologyModel } from '../types';
2
+ export declare const TechnologyModel: ITechnologyModel;
@@ -0,0 +1,34 @@
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.TechnologyModel = void 0;
7
+ const mongoose_1 = require("mongoose");
8
+ const express_http_context_1 = __importDefault(require("express-http-context"));
9
+ const _config_1 = require("../config");
10
+ const technologySchema = new mongoose_1.Schema({
11
+ name: { type: String, required: [true, 'name required!'], unique: true },
12
+ synonyms: { type: String, default: '' },
13
+ description: { type: String, default: '' },
14
+ createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
15
+ updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
16
+ updatedDate: { type: Number, index: -1 },
17
+ createdDate: { type: Number, index: -1 },
18
+ }, _config_1.schemaOptions);
19
+ technologySchema.pre('save', function (next) {
20
+ const user = express_http_context_1.default.get('user');
21
+ if (user) {
22
+ if (!this.createdBy)
23
+ this.createdBy = user._id;
24
+ this.updatedBy = user._id;
25
+ }
26
+ next();
27
+ });
28
+ technologySchema.pre('findOneAndUpdate', function (next) {
29
+ const user = express_http_context_1.default.get('user');
30
+ if (user)
31
+ this._update.updatedBy = user._id;
32
+ next();
33
+ });
34
+ exports.TechnologyModel = (0, mongoose_1.model)('Technology', technologySchema);
@@ -0,0 +1,2 @@
1
+ import { IThemeModel } from '../types';
2
+ export declare const ThemeModel: IThemeModel;