agrs-sequelize-sdk 1.1.45 → 1.1.47

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 (2) hide show
  1. package/models/Article.js +97 -114
  2. package/package.json +1 -1
package/models/Article.js CHANGED
@@ -1,116 +1,99 @@
1
- module.exports = (sequelize, DataTypes) => {
2
- const Article = sequelize.define(
3
- "Article",
4
- {
5
- providerId: {
6
- // Renamed from externalId to providerId
7
- type: DataTypes.STRING,
8
- allowNull: true,
9
- unique: true, // Ensure uniqueness for provider IDs
10
- },
11
- AGRSAID: {
12
- type: DataTypes.STRING,
13
- allowNull: false,
14
- unique: true,
15
- },
16
- articleUrl: {
17
- type: DataTypes.STRING(1024),
18
- allowNull: true,
19
- },
20
- feed: {
21
- type: DataTypes.STRING,
22
- allowNull: false,
23
- },
24
- feedName: {
25
- type: DataTypes.STRING,
26
- allowNull: false,
27
- },
28
- vertical: {
29
- type: DataTypes.STRING,
30
- allowNull: false,
31
- },
32
- language: {
33
- type: DataTypes.STRING,
34
- allowNull: false,
35
- defaultValue: "en",
36
- },
37
- headline: {
38
- type: DataTypes.STRING,
39
- allowNull: true,
40
- },
41
- topics: {
42
- type: DataTypes.ARRAY(DataTypes.STRING),
43
- allowNull: true,
44
- },
45
- keywords: {
46
- type: DataTypes.ARRAY(DataTypes.STRING),
47
- allowNull: true,
48
- },
49
- date: {
50
- type: DataTypes.DATE,
51
- allowNull: true,
52
- defaultValue: DataTypes.NOW,
53
- },
54
- nativeKeyword: {
55
- type: DataTypes.STRING,
56
- allowNull: false,
57
- },
58
- suggestedKeywords: {
59
- type: DataTypes.STRING,
60
- allowNull: true,
61
- },
62
- articleExcerpt: {
63
- type: DataTypes.TEXT,
64
- allowNull: true,
65
- },
66
- articleContent: {
67
- type: DataTypes.TEXT,
68
- allowNull: true,
69
- },
70
- fbPixelId: {
71
- type: DataTypes.STRING,
72
- allowNull: true,
73
- },
74
- status: {
75
- type: DataTypes.STRING,
76
- allowNull: false,
77
- defaultValue: "pending",
78
- },
79
- createdAt: {
80
- type: DataTypes.DATE,
81
- defaultValue: DataTypes.NOW,
82
- },
83
- updatedAt: {
84
- type: DataTypes.DATE,
85
- defaultValue: DataTypes.NOW,
86
- },
87
- buyer: {
88
- type: DataTypes.STRING,
89
- allowNull: true,
90
- },
91
- country: {
92
- type: DataTypes.STRING,
93
- allowNull: true,
94
- },
95
- },
96
- {
97
- tableName: "articles",
98
- timestamps: true,
99
- }
100
- );
1
+ const { Sequelize, DataTypes } = require("sequelize");
2
+ const sequelize = require("../index"); // Adjust the path to your Sequelize instance
101
3
 
102
- Article.associate = (models) => {
103
- Article.hasMany(models.RSOCFeedCampaign, {
104
- foreignKey: "AGRSAID",
105
- sourceKey: "AGRSAID",
106
- as: "RSOCFeedCampaigns",
107
- constraints: false,
108
- });
109
- };
110
-
111
- Article.prototype.isAvailableForCampaign = function () {
112
- return this.status === "approved";
113
- };
4
+ const Article = sequelize.define(
5
+ "Article",
6
+ {
7
+ AGRSAID: {
8
+ type: DataTypes.STRING,
9
+ primaryKey: true,
10
+ allowNull: false,
11
+ },
12
+ providerId: {
13
+ type: DataTypes.STRING,
14
+ allowNull: true,
15
+ unique: true,
16
+ },
17
+ feed: {
18
+ type: DataTypes.STRING,
19
+ allowNull: false,
20
+ },
21
+ feedName: {
22
+ type: DataTypes.STRING,
23
+ allowNull: false,
24
+ },
25
+ articleUrl: {
26
+ type: DataTypes.STRING,
27
+ allowNull: false,
28
+ },
29
+ vertical: {
30
+ type: DataTypes.STRING,
31
+ allowNull: false,
32
+ },
33
+ category: {
34
+ type: DataTypes.STRING,
35
+ defaultValue: "General",
36
+ },
37
+ language: {
38
+ type: DataTypes.STRING,
39
+ defaultValue: "English",
40
+ },
41
+ headline: {
42
+ type: DataTypes.STRING,
43
+ allowNull: true,
44
+ },
45
+ keyword: {
46
+ // Replaced mainKeyword
47
+ type: DataTypes.STRING,
48
+ allowNull: false,
49
+ },
50
+ relatedKeywords: {
51
+ type: DataTypes.JSON, // Or ARRAY(DataTypes.STRING) depending on your DB
52
+ defaultValue: [],
53
+ },
54
+ date: {
55
+ type: DataTypes.DATE,
56
+ allowNull: false,
57
+ },
58
+ nativeKeyword: {
59
+ type: DataTypes.STRING,
60
+ allowNull: false,
61
+ },
62
+ suggestedKeywords: {
63
+ // Now a JSON array
64
+ type: DataTypes.JSON,
65
+ defaultValue: [],
66
+ },
67
+ status: {
68
+ type: DataTypes.STRING,
69
+ allowNull: false,
70
+ },
71
+ buyer: {
72
+ type: DataTypes.STRING,
73
+ defaultValue: "Name",
74
+ },
75
+ country: {
76
+ type: DataTypes.STRING,
77
+ defaultValue: "N/A",
78
+ },
79
+ articleExcerpt: {
80
+ type: DataTypes.TEXT,
81
+ allowNull: true,
82
+ },
83
+ articleContent: {
84
+ type: DataTypes.TEXT,
85
+ allowNull: true,
86
+ },
87
+ name: {
88
+ // Mirrors headline
89
+ type: DataTypes.STRING,
90
+ allowNull: true,
91
+ },
92
+ },
93
+ {
94
+ tableName: "articles",
95
+ timestamps: true,
96
+ }
97
+ );
114
98
 
115
- return Article;
116
- };
99
+ module.exports = Article;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agrs-sequelize-sdk",
3
- "version": "1.1.45",
3
+ "version": "1.1.47",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "start": "node index.js",