@norcy/react-native-toolkit 0.1.118 → 0.1.120

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.
@@ -12,7 +12,7 @@ const semverGte = require('semver/functions/gte');
12
12
  const semverCoerce = require('semver/functions/coerce');
13
13
  let VersionInfo = {
14
14
  currentAppVersion: semverCoerce((0, _reactNativeDeviceInfo.getReadableVersion)()).version,
15
- currentBundleVersion: 1,
15
+ currentBundleVersion: 100,
16
16
  isDanger: false,
17
17
  hasNewAppVersion: false,
18
18
  hasNewBundleVersion: false
@@ -50,9 +50,17 @@ const VersionManager = exports.VersionManager = {
50
50
  appVer: () => {
51
51
  return VersionInfo.currentAppVersion;
52
52
  },
53
+ setBundleVer: bundleVer => {
54
+ if (bundleVer) {
55
+ VersionInfo.currentBundleVersion = semverCoerce(bundleVer).version;
56
+ }
57
+ },
53
58
  bundleVer: () => {
54
59
  return VersionInfo.currentBundleVersion;
55
60
  },
61
+ getReadableVersion: () => {
62
+ return VersionInfo.currentAppVersion + (VersionInfo.currentBundleVersion ? '(' + VersionInfo.currentBundleVersion + ')' : '');
63
+ },
56
64
  hasNewAppVer: () => {
57
65
  return VersionInfo.hasNewAppVersion;
58
66
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeDeviceInfo","require","_DevConfig","_PrefData","semverGt","semverGte","semverCoerce","VersionInfo","currentAppVersion","getReadableVersion","version","currentBundleVersion","isDanger","hasNewAppVersion","hasNewBundleVersion","VersionManager","exports","init","_ref","latestAppVersion","latestBundleVersion","onlineVersion","__DEV__","DevConfig","hasValue","BuildInPrefs","DevDanger","getValue","appVer","bundleVer","hasNewAppVer","hasNewBundleVer","isValidVersion","minVer","maxVer","_minVer","_maxVer","trim"],"sources":["VersionManager.ts"],"sourcesContent":["import { getReadableVersion } from 'react-native-device-info';\nimport { DevConfig } from './DevConfig';\nimport { BuildInPrefs } from './PrefData';\n\nconst semverGt = require('semver/functions/gt');\nconst semverGte = require('semver/functions/gte');\nconst semverCoerce = require('semver/functions/coerce');\n\nlet VersionInfo = {\n currentAppVersion: semverCoerce(getReadableVersion()).version,\n currentBundleVersion: 1,\n isDanger: false,\n hasNewAppVersion: false,\n hasNewBundleVersion: false,\n};\n\nexport const VersionManager = {\n init: ({\n latestAppVersion,\n latestBundleVersion,\n }: {\n latestAppVersion: string;\n latestBundleVersion?: string;\n }) => {\n if (latestAppVersion) {\n const onlineVersion = semverCoerce(latestAppVersion).version;\n // online > current,才有新版本\n if (semverGt(onlineVersion, VersionInfo.currentAppVersion)) {\n VersionInfo.hasNewAppVersion = true;\n }\n // current > online,就危险\n if (semverGt(VersionInfo.currentAppVersion, onlineVersion)) {\n VersionInfo.isDanger = true;\n }\n }\n\n if (__DEV__ && DevConfig.hasValue(BuildInPrefs.DevDanger)) {\n VersionInfo.isDanger = DevConfig.getValue(BuildInPrefs.DevDanger);\n }\n\n if (latestBundleVersion) {\n const onlineVersion = semverCoerce(latestBundleVersion).version;\n if (semverGt(onlineVersion, VersionInfo.currentBundleVersion)) {\n VersionInfo.hasNewBundleVersion = true;\n }\n }\n },\n\n isDanger: () => {\n return VersionInfo.isDanger;\n },\n\n appVer: () => {\n return VersionInfo.currentAppVersion;\n },\n\n bundleVer: () => {\n return VersionInfo.currentBundleVersion;\n },\n\n hasNewAppVer: () => {\n return VersionInfo.hasNewAppVersion;\n },\n\n hasNewBundleVer: () => {\n return VersionInfo.hasNewBundleVersion;\n },\n\n isValidVersion: (minVer?: string, maxVer?: string) => {\n minVer = minVer?.trim();\n maxVer = maxVer?.trim();\n // 确保 cur 处于 [minVer, maxVer)\n if (\n !!minVer &&\n semverGt(semverCoerce(minVer).version, VersionManager.appVer())\n ) {\n return false;\n }\n if (\n !!maxVer &&\n semverGte(VersionManager.appVer(), semverCoerce(maxVer).version)\n ) {\n return false;\n }\n return true;\n },\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNativeDeviceInfo","require","_DevConfig","_PrefData","semverGt","semverGte","semverCoerce","VersionInfo","currentAppVersion","getReadableVersion","version","currentBundleVersion","isDanger","hasNewAppVersion","hasNewBundleVersion","VersionManager","exports","init","_ref","latestAppVersion","latestBundleVersion","onlineVersion","__DEV__","DevConfig","hasValue","BuildInPrefs","DevDanger","getValue","appVer","setBundleVer","bundleVer","hasNewAppVer","hasNewBundleVer","isValidVersion","minVer","maxVer","_minVer","_maxVer","trim"],"sources":["VersionManager.ts"],"sourcesContent":["import { getReadableVersion } from 'react-native-device-info';\nimport { DevConfig } from './DevConfig';\nimport { BuildInPrefs } from './PrefData';\n\nconst semverGt = require('semver/functions/gt');\nconst semverGte = require('semver/functions/gte');\nconst semverCoerce = require('semver/functions/coerce');\n\nlet VersionInfo = {\n currentAppVersion: semverCoerce(getReadableVersion()).version,\n currentBundleVersion: 100,\n isDanger: false,\n hasNewAppVersion: false,\n hasNewBundleVersion: false,\n};\n\nexport const VersionManager = {\n init: ({\n latestAppVersion,\n latestBundleVersion,\n }: {\n latestAppVersion: string;\n latestBundleVersion?: string;\n }) => {\n if (latestAppVersion) {\n const onlineVersion = semverCoerce(latestAppVersion).version;\n // online > current,才有新版本\n if (semverGt(onlineVersion, VersionInfo.currentAppVersion)) {\n VersionInfo.hasNewAppVersion = true;\n }\n // current > online,就危险\n if (semverGt(VersionInfo.currentAppVersion, onlineVersion)) {\n VersionInfo.isDanger = true;\n }\n }\n\n if (__DEV__ && DevConfig.hasValue(BuildInPrefs.DevDanger)) {\n VersionInfo.isDanger = DevConfig.getValue(BuildInPrefs.DevDanger);\n }\n\n if (latestBundleVersion) {\n const onlineVersion = semverCoerce(latestBundleVersion).version;\n if (semverGt(onlineVersion, VersionInfo.currentBundleVersion)) {\n VersionInfo.hasNewBundleVersion = true;\n }\n }\n },\n\n isDanger: () => {\n return VersionInfo.isDanger;\n },\n\n appVer: () => {\n return VersionInfo.currentAppVersion;\n },\n\n setBundleVer: (bundleVer: string) => {\n if (bundleVer) {\n VersionInfo.currentBundleVersion = semverCoerce(bundleVer).version;\n }\n },\n\n bundleVer: () => {\n return VersionInfo.currentBundleVersion;\n },\n\n getReadableVersion: () => {\n return (\n VersionInfo.currentAppVersion +\n (VersionInfo.currentBundleVersion\n ? '(' + VersionInfo.currentBundleVersion + ')'\n : '')\n );\n },\n\n hasNewAppVer: () => {\n return VersionInfo.hasNewAppVersion;\n },\n\n hasNewBundleVer: () => {\n return VersionInfo.hasNewBundleVersion;\n },\n\n isValidVersion: (minVer?: string, maxVer?: string) => {\n minVer = minVer?.trim();\n maxVer = maxVer?.trim();\n // 确保 cur 处于 [minVer, maxVer)\n if (\n !!minVer &&\n semverGt(semverCoerce(minVer).version, VersionManager.appVer())\n ) {\n return false;\n }\n if (\n !!maxVer &&\n semverGte(VersionManager.appVer(), semverCoerce(maxVer).version)\n ) {\n return false;\n }\n return true;\n },\n};\n"],"mappings":"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"}
@@ -6,7 +6,7 @@ const semverGte = require('semver/functions/gte');
6
6
  const semverCoerce = require('semver/functions/coerce');
7
7
  let VersionInfo = {
8
8
  currentAppVersion: semverCoerce(getReadableVersion()).version,
9
- currentBundleVersion: 1,
9
+ currentBundleVersion: 100,
10
10
  isDanger: false,
11
11
  hasNewAppVersion: false,
12
12
  hasNewBundleVersion: false
@@ -44,9 +44,17 @@ export const VersionManager = {
44
44
  appVer: () => {
45
45
  return VersionInfo.currentAppVersion;
46
46
  },
47
+ setBundleVer: bundleVer => {
48
+ if (bundleVer) {
49
+ VersionInfo.currentBundleVersion = semverCoerce(bundleVer).version;
50
+ }
51
+ },
47
52
  bundleVer: () => {
48
53
  return VersionInfo.currentBundleVersion;
49
54
  },
55
+ getReadableVersion: () => {
56
+ return VersionInfo.currentAppVersion + (VersionInfo.currentBundleVersion ? '(' + VersionInfo.currentBundleVersion + ')' : '');
57
+ },
50
58
  hasNewAppVer: () => {
51
59
  return VersionInfo.hasNewAppVersion;
52
60
  },
@@ -1 +1 @@
1
- {"version":3,"names":["getReadableVersion","DevConfig","BuildInPrefs","semverGt","require","semverGte","semverCoerce","VersionInfo","currentAppVersion","version","currentBundleVersion","isDanger","hasNewAppVersion","hasNewBundleVersion","VersionManager","init","_ref","latestAppVersion","latestBundleVersion","onlineVersion","__DEV__","hasValue","DevDanger","getValue","appVer","bundleVer","hasNewAppVer","hasNewBundleVer","isValidVersion","minVer","maxVer","_minVer","_maxVer","trim"],"sources":["VersionManager.ts"],"sourcesContent":["import { getReadableVersion } from 'react-native-device-info';\nimport { DevConfig } from './DevConfig';\nimport { BuildInPrefs } from './PrefData';\n\nconst semverGt = require('semver/functions/gt');\nconst semverGte = require('semver/functions/gte');\nconst semverCoerce = require('semver/functions/coerce');\n\nlet VersionInfo = {\n currentAppVersion: semverCoerce(getReadableVersion()).version,\n currentBundleVersion: 1,\n isDanger: false,\n hasNewAppVersion: false,\n hasNewBundleVersion: false,\n};\n\nexport const VersionManager = {\n init: ({\n latestAppVersion,\n latestBundleVersion,\n }: {\n latestAppVersion: string;\n latestBundleVersion?: string;\n }) => {\n if (latestAppVersion) {\n const onlineVersion = semverCoerce(latestAppVersion).version;\n // online > current,才有新版本\n if (semverGt(onlineVersion, VersionInfo.currentAppVersion)) {\n VersionInfo.hasNewAppVersion = true;\n }\n // current > online,就危险\n if (semverGt(VersionInfo.currentAppVersion, onlineVersion)) {\n VersionInfo.isDanger = true;\n }\n }\n\n if (__DEV__ && DevConfig.hasValue(BuildInPrefs.DevDanger)) {\n VersionInfo.isDanger = DevConfig.getValue(BuildInPrefs.DevDanger);\n }\n\n if (latestBundleVersion) {\n const onlineVersion = semverCoerce(latestBundleVersion).version;\n if (semverGt(onlineVersion, VersionInfo.currentBundleVersion)) {\n VersionInfo.hasNewBundleVersion = true;\n }\n }\n },\n\n isDanger: () => {\n return VersionInfo.isDanger;\n },\n\n appVer: () => {\n return VersionInfo.currentAppVersion;\n },\n\n bundleVer: () => {\n return VersionInfo.currentBundleVersion;\n },\n\n hasNewAppVer: () => {\n return VersionInfo.hasNewAppVersion;\n },\n\n hasNewBundleVer: () => {\n return VersionInfo.hasNewBundleVersion;\n },\n\n isValidVersion: (minVer?: string, maxVer?: string) => {\n minVer = minVer?.trim();\n maxVer = maxVer?.trim();\n // 确保 cur 处于 [minVer, maxVer)\n if (\n !!minVer &&\n semverGt(semverCoerce(minVer).version, VersionManager.appVer())\n ) {\n return false;\n }\n if (\n !!maxVer &&\n semverGte(VersionManager.appVer(), semverCoerce(maxVer).version)\n ) {\n return false;\n }\n return true;\n },\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["getReadableVersion","DevConfig","BuildInPrefs","semverGt","require","semverGte","semverCoerce","VersionInfo","currentAppVersion","version","currentBundleVersion","isDanger","hasNewAppVersion","hasNewBundleVersion","VersionManager","init","_ref","latestAppVersion","latestBundleVersion","onlineVersion","__DEV__","hasValue","DevDanger","getValue","appVer","setBundleVer","bundleVer","hasNewAppVer","hasNewBundleVer","isValidVersion","minVer","maxVer","_minVer","_maxVer","trim"],"sources":["VersionManager.ts"],"sourcesContent":["import { getReadableVersion } from 'react-native-device-info';\nimport { DevConfig } from './DevConfig';\nimport { BuildInPrefs } from './PrefData';\n\nconst semverGt = require('semver/functions/gt');\nconst semverGte = require('semver/functions/gte');\nconst semverCoerce = require('semver/functions/coerce');\n\nlet VersionInfo = {\n currentAppVersion: semverCoerce(getReadableVersion()).version,\n currentBundleVersion: 100,\n isDanger: false,\n hasNewAppVersion: false,\n hasNewBundleVersion: false,\n};\n\nexport const VersionManager = {\n init: ({\n latestAppVersion,\n latestBundleVersion,\n }: {\n latestAppVersion: string;\n latestBundleVersion?: string;\n }) => {\n if (latestAppVersion) {\n const onlineVersion = semverCoerce(latestAppVersion).version;\n // online > current,才有新版本\n if (semverGt(onlineVersion, VersionInfo.currentAppVersion)) {\n VersionInfo.hasNewAppVersion = true;\n }\n // current > online,就危险\n if (semverGt(VersionInfo.currentAppVersion, onlineVersion)) {\n VersionInfo.isDanger = true;\n }\n }\n\n if (__DEV__ && DevConfig.hasValue(BuildInPrefs.DevDanger)) {\n VersionInfo.isDanger = DevConfig.getValue(BuildInPrefs.DevDanger);\n }\n\n if (latestBundleVersion) {\n const onlineVersion = semverCoerce(latestBundleVersion).version;\n if (semverGt(onlineVersion, VersionInfo.currentBundleVersion)) {\n VersionInfo.hasNewBundleVersion = true;\n }\n }\n },\n\n isDanger: () => {\n return VersionInfo.isDanger;\n },\n\n appVer: () => {\n return VersionInfo.currentAppVersion;\n },\n\n setBundleVer: (bundleVer: string) => {\n if (bundleVer) {\n VersionInfo.currentBundleVersion = semverCoerce(bundleVer).version;\n }\n },\n\n bundleVer: () => {\n return VersionInfo.currentBundleVersion;\n },\n\n getReadableVersion: () => {\n return (\n VersionInfo.currentAppVersion +\n (VersionInfo.currentBundleVersion\n ? '(' + VersionInfo.currentBundleVersion + ')'\n : '')\n );\n },\n\n hasNewAppVer: () => {\n return VersionInfo.hasNewAppVersion;\n },\n\n hasNewBundleVer: () => {\n return VersionInfo.hasNewBundleVersion;\n },\n\n isValidVersion: (minVer?: string, maxVer?: string) => {\n minVer = minVer?.trim();\n maxVer = maxVer?.trim();\n // 确保 cur 处于 [minVer, maxVer)\n if (\n !!minVer &&\n semverGt(semverCoerce(minVer).version, VersionManager.appVer())\n ) {\n return false;\n }\n if (\n !!maxVer &&\n semverGte(VersionManager.appVer(), semverCoerce(maxVer).version)\n ) {\n return false;\n }\n return true;\n },\n};\n"],"mappings":"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"}
@@ -5,7 +5,9 @@ export declare const VersionManager: {
5
5
  }) => void;
6
6
  isDanger: () => boolean;
7
7
  appVer: () => any;
8
+ setBundleVer: (bundleVer: string) => void;
8
9
  bundleVer: () => number;
10
+ getReadableVersion: () => string;
9
11
  hasNewAppVer: () => boolean;
10
12
  hasNewBundleVer: () => boolean;
11
13
  isValidVersion: (minVer?: string, maxVer?: string) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norcy/react-native-toolkit",
3
- "version": "0.1.118",
3
+ "version": "0.1.120",
4
4
  "description": "My Toolkit",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -8,7 +8,7 @@ const semverCoerce = require('semver/functions/coerce');
8
8
 
9
9
  let VersionInfo = {
10
10
  currentAppVersion: semverCoerce(getReadableVersion()).version,
11
- currentBundleVersion: 1,
11
+ currentBundleVersion: 100,
12
12
  isDanger: false,
13
13
  hasNewAppVersion: false,
14
14
  hasNewBundleVersion: false,
@@ -54,10 +54,25 @@ export const VersionManager = {
54
54
  return VersionInfo.currentAppVersion;
55
55
  },
56
56
 
57
+ setBundleVer: (bundleVer: string) => {
58
+ if (bundleVer) {
59
+ VersionInfo.currentBundleVersion = semverCoerce(bundleVer).version;
60
+ }
61
+ },
62
+
57
63
  bundleVer: () => {
58
64
  return VersionInfo.currentBundleVersion;
59
65
  },
60
66
 
67
+ getReadableVersion: () => {
68
+ return (
69
+ VersionInfo.currentAppVersion +
70
+ (VersionInfo.currentBundleVersion
71
+ ? '(' + VersionInfo.currentBundleVersion + ')'
72
+ : '')
73
+ );
74
+ },
75
+
61
76
  hasNewAppVer: () => {
62
77
  return VersionInfo.hasNewAppVersion;
63
78
  },