@nina-protocol/nina-db 0.0.57 → 0.0.59

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.
@@ -83,7 +83,7 @@ export default class Release extends Model {
83
83
  };
84
84
  static createRelease = async ({ publicKey, mint, metadata, datetime, publisherId, releaseAccount }) => {
85
85
  const slug = await this.generateSlug(metadata);
86
- const price = releaseAccount.account?.price?.toNumber() || releaseAccount?.price?.toNumber();
86
+ const price = releaseAccount.account?.price?.toNumber() || releaseAccount?.price?.toNumber() || 0;
87
87
  const paymentMint = releaseAccount.account?.paymentMint.toBase58() || releaseAccount?.paymentMint.toBase58();
88
88
  const release = await Release.query().insertGraph({
89
89
  publicKey,
@@ -92,11 +92,11 @@ export default class Release extends Model {
92
92
  slug,
93
93
  datetime,
94
94
  publisherId,
95
- price,
95
+ price: `${price}`,
96
96
  paymentMint,
97
97
  });
98
98
  await this.processRevenueShares(releaseAccount, release);
99
- tweetNewRelease(metadata, publisherId);
99
+ tweetNewRelease(metadata, publisherId, slug);
100
100
  return release;
101
101
  };
102
102
  static processRevenueShares = async (releaseData, releaseRecord) => {
@@ -1,7 +1,7 @@
1
1
  import striptags from 'striptags';
2
2
  import { TwitterApi } from 'twitter-api-v2';
3
3
  import Account from '../models/Account.js';
4
- const TWEET_DELAY = 180000; // 3 minutes
4
+ const TWEET_DELAY = 360000; // 6 minutes
5
5
  const removeQuotesFromStartAndEndOfString = (string) => {
6
6
  return string.substring(1, string.length - 1).substring(-1, string.length - 1);
7
7
  };
@@ -16,7 +16,7 @@ export const stripHtmlIfNeeded = (object, value) => {
16
16
  export const decode = (byteArray) => {
17
17
  return new TextDecoder().decode(new Uint8Array(byteArray)).replaceAll(/\u0000/g, '');
18
18
  };
19
- export const tweetNewRelease = async (metadata, publisherId) => {
19
+ export const tweetNewRelease = async (metadata, publisherId, slug) => {
20
20
  if (process.env.TWITTER_API_SECRET) {
21
21
  try {
22
22
  await new Promise(resolve => setTimeout(resolve, TWEET_DELAY));
@@ -34,7 +34,7 @@ export const tweetNewRelease = async (metadata, publisherId) => {
34
34
  text = `${text} (@${twitterVerification.value})`;
35
35
  }
36
36
  }
37
- text = `${text} ${metadata.external_url}`;
37
+ text = `${text} https://ninaprotocol.com/releases/${slug}`;
38
38
  await client.v2.tweet(text);
39
39
  }
40
40
  catch (error) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nina-protocol/nina-db",
3
- "version": "0.0.57",
3
+ "version": "0.0.59",
4
4
  "description": "",
5
5
  "source": "src/index.js",
6
6
  "main": "dist/index.js",
@@ -94,7 +94,7 @@ export default class Release extends Model {
94
94
 
95
95
  static createRelease = async ({publicKey, mint, metadata, datetime, publisherId, releaseAccount}) => {
96
96
  const slug = await this.generateSlug(metadata);
97
- const price = releaseAccount.account?.price?.toNumber() || releaseAccount?.price?.toNumber() ;
97
+ const price = releaseAccount.account?.price?.toNumber() || releaseAccount?.price?.toNumber() || 0;
98
98
  const paymentMint = releaseAccount.account?.paymentMint.toBase58() || releaseAccount?.paymentMint.toBase58();
99
99
  const release = await Release.query().insertGraph({
100
100
  publicKey,
@@ -103,11 +103,11 @@ export default class Release extends Model {
103
103
  slug,
104
104
  datetime,
105
105
  publisherId,
106
- price,
106
+ price: `${price}`,
107
107
  paymentMint,
108
108
  })
109
109
  await this.processRevenueShares(releaseAccount, release);
110
- tweetNewRelease(metadata, publisherId);
110
+ tweetNewRelease(metadata, publisherId, slug);
111
111
  return release;
112
112
  }
113
113
 
@@ -2,7 +2,7 @@ import striptags from 'striptags';
2
2
  import { TwitterApi } from 'twitter-api-v2';
3
3
  import Account from '../models/Account.js';
4
4
 
5
- const TWEET_DELAY = 180000; // 3 minutes
5
+ const TWEET_DELAY = 360000; // 6 minutes
6
6
 
7
7
  const removeQuotesFromStartAndEndOfString = (string) => {
8
8
  return string.substring(1, string.length - 1).substring(-1, string.length - 1);
@@ -21,7 +21,7 @@ export const decode = (byteArray) => {
21
21
  return new TextDecoder().decode(new Uint8Array(byteArray)).replaceAll(/\u0000/g, '');
22
22
  }
23
23
 
24
- export const tweetNewRelease = async (metadata, publisherId) => {
24
+ export const tweetNewRelease = async (metadata, publisherId, slug) => {
25
25
  if (process.env.TWITTER_API_SECRET) {
26
26
  try {
27
27
  await new Promise(resolve => setTimeout(resolve, TWEET_DELAY))
@@ -39,7 +39,7 @@ export const tweetNewRelease = async (metadata, publisherId) => {
39
39
  text = `${text} (@${twitterVerification.value})`
40
40
  }
41
41
  }
42
- text = `${text} ${metadata.external_url}`
42
+ text = `${text} https://ninaprotocol.com/releases/${slug}`
43
43
  await client.v2.tweet(text);
44
44
  } catch (error) {
45
45
  console.warn('error sending new release tweet: ', error, metadata)