nport 2.1.1 → 2.1.2

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 (62) hide show
  1. package/dist/bin-manager.js +1 -209
  2. package/dist/index.js +68 -91
  3. package/package.json +7 -7
  4. package/CHANGELOG.md +0 -449
  5. package/dist/analytics.d.ts +0 -59
  6. package/dist/analytics.js +0 -193
  7. package/dist/analytics.js.map +0 -1
  8. package/dist/api.d.ts +0 -20
  9. package/dist/api.js +0 -85
  10. package/dist/api.js.map +0 -1
  11. package/dist/args.d.ts +0 -44
  12. package/dist/args.js +0 -127
  13. package/dist/args.js.map +0 -1
  14. package/dist/bin-manager.d.ts +0 -1
  15. package/dist/bin-manager.js.map +0 -1
  16. package/dist/binary.d.ts +0 -42
  17. package/dist/binary.js +0 -119
  18. package/dist/binary.js.map +0 -1
  19. package/dist/config-manager.d.ts +0 -54
  20. package/dist/config-manager.js +0 -129
  21. package/dist/config-manager.js.map +0 -1
  22. package/dist/config.d.ts +0 -25
  23. package/dist/config.js +0 -59
  24. package/dist/config.js.map +0 -1
  25. package/dist/constants.d.ts +0 -61
  26. package/dist/constants.js +0 -86
  27. package/dist/constants.js.map +0 -1
  28. package/dist/index.d.ts +0 -7
  29. package/dist/index.js.map +0 -1
  30. package/dist/lang.d.ts +0 -38
  31. package/dist/lang.js +0 -217
  32. package/dist/lang.js.map +0 -1
  33. package/dist/state.d.ts +0 -82
  34. package/dist/state.js +0 -139
  35. package/dist/state.js.map +0 -1
  36. package/dist/tunnel.d.ts +0 -16
  37. package/dist/tunnel.js +0 -101
  38. package/dist/tunnel.js.map +0 -1
  39. package/dist/types/analytics.d.ts +0 -91
  40. package/dist/types/analytics.js +0 -8
  41. package/dist/types/analytics.js.map +0 -1
  42. package/dist/types/config.d.ts +0 -89
  43. package/dist/types/config.js +0 -8
  44. package/dist/types/config.js.map +0 -1
  45. package/dist/types/i18n.d.ts +0 -75
  46. package/dist/types/i18n.js +0 -5
  47. package/dist/types/i18n.js.map +0 -1
  48. package/dist/types/index.d.ts +0 -10
  49. package/dist/types/index.js +0 -7
  50. package/dist/types/index.js.map +0 -1
  51. package/dist/types/tunnel.d.ts +0 -74
  52. package/dist/types/tunnel.js +0 -8
  53. package/dist/types/tunnel.js.map +0 -1
  54. package/dist/types/version.d.ts +0 -25
  55. package/dist/types/version.js +0 -5
  56. package/dist/types/version.js.map +0 -1
  57. package/dist/ui.d.ts +0 -54
  58. package/dist/ui.js +0 -120
  59. package/dist/ui.js.map +0 -1
  60. package/dist/version.d.ts +0 -16
  61. package/dist/version.js +0 -49
  62. package/dist/version.js.map +0 -1
@@ -1,74 +0,0 @@
1
- /**
2
- * Tunnel-related type definitions
3
- *
4
- * These types define the data structures used for tunnel creation,
5
- * management, and communication between CLI and backend.
6
- */
7
- /**
8
- * Configuration for creating a new tunnel
9
- */
10
- export interface TunnelConfig {
11
- /** Local port to tunnel (e.g., 3000) */
12
- port: number;
13
- /** Subdomain to use (e.g., "myapp" for myapp.nport.link) */
14
- subdomain: string;
15
- /** Custom backend URL or null for default */
16
- backendUrl: string | null;
17
- /** Language code or null for default */
18
- language: string | null;
19
- }
20
- /**
21
- * Response from the backend after creating a tunnel
22
- */
23
- export interface TunnelResponse {
24
- /** UUID of the created tunnel */
25
- tunnelId: string;
26
- /** Base64-encoded token for cloudflared authentication */
27
- tunnelToken: string;
28
- /** Full HTTPS URL of the tunnel (e.g., "https://myapp.nport.link") */
29
- url: string;
30
- }
31
- /**
32
- * Backend API response wrapper
33
- */
34
- export interface ApiResponse<T = unknown> {
35
- /** Whether the request was successful */
36
- success: boolean;
37
- /** Error message if success is false */
38
- error?: string;
39
- /** Response data if success is true */
40
- data?: T;
41
- }
42
- /**
43
- * Create tunnel API response
44
- */
45
- export interface CreateTunnelApiResponse extends ApiResponse {
46
- tunnelId?: string;
47
- tunnelToken?: string;
48
- url?: string;
49
- }
50
- /**
51
- * Tunnel state information
52
- */
53
- export interface TunnelState {
54
- /** UUID of the current tunnel */
55
- tunnelId: string | null;
56
- /** Current subdomain */
57
- subdomain: string | null;
58
- /** Local port being tunneled */
59
- port: number | null;
60
- /** Custom backend URL */
61
- backendUrl: string | null;
62
- /** Number of established connections */
63
- connectionCount: number;
64
- /** Timestamp when tunnel was created */
65
- startTime: number | null;
66
- }
67
- /**
68
- * Shutdown reason types
69
- */
70
- export type ShutdownReason = 'manual' | 'timeout' | 'error';
71
- /**
72
- * Tunnel lifecycle events
73
- */
74
- export type TunnelEvent = 'created' | 'connected' | 'disconnected' | 'error' | 'shutdown';
@@ -1,8 +0,0 @@
1
- /**
2
- * Tunnel-related type definitions
3
- *
4
- * These types define the data structures used for tunnel creation,
5
- * management, and communication between CLI and backend.
6
- */
7
- export {};
8
- //# sourceMappingURL=tunnel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../src/types/tunnel.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,25 +0,0 @@
1
- /**
2
- * Version-related type definitions
3
- */
4
- /**
5
- * Result of checking for updates
6
- */
7
- export interface UpdateCheckResult {
8
- /** Currently installed version */
9
- current: string;
10
- /** Latest version available on npm */
11
- latest: string;
12
- /** True if latest > current */
13
- shouldUpdate: boolean;
14
- }
15
- /**
16
- * npm registry package response (partial)
17
- */
18
- export interface NpmPackageInfo {
19
- /** Package name */
20
- name: string;
21
- /** Latest version */
22
- version: string;
23
- /** Package description */
24
- description?: string;
25
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * Version-related type definitions
3
- */
4
- export {};
5
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/types/version.ts"],"names":[],"mappings":"AAAA;;GAEG"}
package/dist/ui.d.ts DELETED
@@ -1,54 +0,0 @@
1
- import type { UpdateCheckResult } from './types/index.js';
2
- /**
3
- * UI Display Manager
4
- *
5
- * Handles all console output and user interface formatting.
6
- */
7
- export declare class UI {
8
- /**
9
- * Displays the project info header box.
10
- */
11
- static displayProjectInfo(): void;
12
- /**
13
- * Displays the startup banner.
14
- */
15
- static displayStartupBanner(_port: number): void;
16
- /**
17
- * Displays the tunnel success message.
18
- */
19
- static displayTunnelSuccess(url: string, _port: number, _updateInfo: UpdateCheckResult | null): void;
20
- /**
21
- * Displays the footer with call-to-action links.
22
- */
23
- static displayFooter(updateInfo: UpdateCheckResult | null): void;
24
- /**
25
- * Displays timeout warning.
26
- */
27
- static displayTimeoutWarning(): void;
28
- /**
29
- * Displays an error message.
30
- */
31
- static displayError(error: Error, spinner?: {
32
- fail: (msg: string) => void;
33
- } | null): void;
34
- /**
35
- * Displays cleanup start.
36
- */
37
- static displayCleanupStart(): void;
38
- /**
39
- * Displays cleanup success.
40
- */
41
- static displayCleanupSuccess(): void;
42
- /**
43
- * Displays cleanup error.
44
- */
45
- static displayCleanupError(): void;
46
- /**
47
- * Displays goodbye message.
48
- */
49
- static displayGoodbye(): void;
50
- /**
51
- * Displays version information.
52
- */
53
- static displayVersion(current: string, updateInfo: UpdateCheckResult | null): void;
54
- }
package/dist/ui.js DELETED
@@ -1,120 +0,0 @@
1
- import chalk from 'chalk';
2
- import { GITHUB_URL, COFFEE_URL, WEBSITE_URL } from './constants.js';
3
- import { CONFIG } from './config.js';
4
- import { lang } from './lang.js';
5
- /**
6
- * UI Display Manager
7
- *
8
- * Handles all console output and user interface formatting.
9
- */
10
- export class UI {
11
- /**
12
- * Displays the project info header box.
13
- */
14
- static displayProjectInfo() {
15
- const line = '─'.repeat(56);
16
- const headerText = lang.t('header');
17
- const visualLength = 59;
18
- const padding = ' '.repeat(Math.max(0, visualLength - headerText.length - 4));
19
- console.log(chalk.gray(`\n ╭${line}╮`));
20
- console.log(chalk.cyan.bold(` │ ${headerText}`) + padding + chalk.gray('│'));
21
- console.log(chalk.gray(` ╰${line}╯\n`));
22
- }
23
- /**
24
- * Displays the startup banner.
25
- */
26
- static displayStartupBanner(_port) {
27
- this.displayProjectInfo();
28
- }
29
- /**
30
- * Displays the tunnel success message.
31
- */
32
- static displayTunnelSuccess(url, _port, _updateInfo) {
33
- console.log();
34
- console.log(chalk.cyan.bold(` 👉 ${url} 👈\n`));
35
- console.log(chalk.gray(' ' + '─'.repeat(54) + '\n'));
36
- console.log(chalk.gray(` ${lang.t('timeRemaining', { hours: CONFIG.TUNNEL_TIMEOUT_HOURS })}\n`));
37
- }
38
- /**
39
- * Displays the footer with call-to-action links.
40
- */
41
- static displayFooter(updateInfo) {
42
- console.log(chalk.gray(' ' + '─'.repeat(54) + '\n'));
43
- console.log(chalk.yellow.bold(` ${lang.t('footerTitle')}\n`));
44
- console.log(chalk.gray(` ${lang.t('footerSubtitle')}\n`));
45
- console.log(chalk.cyan(` ${lang.t('dropStar')}`) + chalk.white(GITHUB_URL));
46
- console.log(chalk.yellow(` ${lang.t('sendCoffee')}`) + chalk.white(COFFEE_URL));
47
- if (updateInfo?.shouldUpdate) {
48
- console.log(chalk.red.bold(`\n ${lang.t('newVersion', { version: updateInfo.latest })}`));
49
- console.log(chalk.gray(' ') + chalk.cyan(lang.t('updateCommand')));
50
- }
51
- console.log();
52
- }
53
- /**
54
- * Displays timeout warning.
55
- */
56
- static displayTimeoutWarning() {
57
- console.log(chalk.yellow(`\n⏰ Tunnel has been running for ${CONFIG.TUNNEL_TIMEOUT_HOURS} hours.`));
58
- console.log(chalk.yellow(' Automatically shutting down...'));
59
- }
60
- /**
61
- * Displays an error message.
62
- */
63
- static displayError(error, spinner = null) {
64
- if (spinner) {
65
- spinner.fail('Failed to connect to server.');
66
- }
67
- console.error(chalk.red(error.message));
68
- }
69
- /**
70
- * Displays cleanup start.
71
- */
72
- static displayCleanupStart() {
73
- console.log(chalk.red.bold(`\n\n ${lang.t('tunnelShutdown')}\n`));
74
- process.stdout.write(chalk.gray(` ${lang.t('cleaningUp')}`));
75
- }
76
- /**
77
- * Displays cleanup success.
78
- */
79
- static displayCleanupSuccess() {
80
- console.log(chalk.green(lang.t('cleanupDone')));
81
- console.log(chalk.gray(` ${lang.t('subdomainReleased')}\n`));
82
- this.displayGoodbye();
83
- }
84
- /**
85
- * Displays cleanup error.
86
- */
87
- static displayCleanupError() {
88
- console.log(chalk.red(lang.t('cleanupFailed')));
89
- console.log(chalk.gray(` ${lang.t('serverBusy')}\n`));
90
- this.displayGoodbye();
91
- }
92
- /**
93
- * Displays goodbye message.
94
- */
95
- static displayGoodbye() {
96
- console.log(chalk.gray(' ' + '─'.repeat(54) + '\n'));
97
- console.log(chalk.cyan.bold(` ${lang.t('goodbyeTitle')}\n`));
98
- console.log(chalk.gray(` ${lang.t('goodbyeMessage')}\n`));
99
- console.log(chalk.cyan(` ${lang.t('website')}`) + chalk.white(WEBSITE_URL));
100
- console.log(chalk.cyan(` ${lang.t('author')}`) + chalk.white('Nick Pham (https://github.com/tuanngocptn)'));
101
- console.log(chalk.cyan(` ${lang.t('changeLanguage')}`) + chalk.yellow(lang.t('changeLanguageHint')));
102
- console.log();
103
- }
104
- /**
105
- * Displays version information.
106
- */
107
- static displayVersion(current, updateInfo) {
108
- console.log(chalk.cyan.bold(`\n${lang.t('versionTitle', { version: current })}`));
109
- console.log(chalk.gray(`${lang.t('versionSubtitle')}\n`));
110
- if (updateInfo?.shouldUpdate) {
111
- console.log(chalk.yellow(lang.t('versionAvailable', { version: updateInfo.latest })));
112
- console.log(chalk.cyan(lang.t('versionUpdate')) + chalk.white('npm install -g nport@latest\n'));
113
- }
114
- else {
115
- console.log(chalk.green(`${lang.t('versionLatest')}\n`));
116
- }
117
- console.log(chalk.gray(lang.t('learnMore')) + chalk.cyan(`${WEBSITE_URL}\n`));
118
- }
119
- }
120
- //# sourceMappingURL=ui.js.map
package/dist/ui.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts DELETED
@@ -1,16 +0,0 @@
1
- import type { UpdateCheckResult } from './types/index.js';
2
- /**
3
- * Version Manager
4
- *
5
- * Handles version checking and update notifications.
6
- */
7
- export declare class VersionManager {
8
- /**
9
- * Checks the npm registry for available updates.
10
- */
11
- static checkForUpdates(): Promise<UpdateCheckResult | null>;
12
- /**
13
- * Compares two semantic version strings.
14
- */
15
- static compareVersions(v1: string, v2: string): number;
16
- }
package/dist/version.js DELETED
@@ -1,49 +0,0 @@
1
- import axios from 'axios';
2
- import { CONFIG } from './config.js';
3
- import { analytics } from './analytics.js';
4
- /**
5
- * Version Manager
6
- *
7
- * Handles version checking and update notifications.
8
- */
9
- export class VersionManager {
10
- /**
11
- * Checks the npm registry for available updates.
12
- */
13
- static async checkForUpdates() {
14
- try {
15
- const response = await axios.get(`https://registry.npmjs.org/${CONFIG.PACKAGE_NAME}/latest`, { timeout: CONFIG.UPDATE_CHECK_TIMEOUT });
16
- const latestVersion = response.data.version;
17
- const shouldUpdate = this.compareVersions(latestVersion, CONFIG.CURRENT_VERSION) > 0;
18
- if (shouldUpdate) {
19
- analytics.trackUpdateAvailable(CONFIG.CURRENT_VERSION, latestVersion);
20
- }
21
- return {
22
- current: CONFIG.CURRENT_VERSION,
23
- latest: latestVersion,
24
- shouldUpdate,
25
- };
26
- }
27
- catch {
28
- return null;
29
- }
30
- }
31
- /**
32
- * Compares two semantic version strings.
33
- */
34
- static compareVersions(v1, v2) {
35
- const parts1 = v1.split('.').map(Number);
36
- const parts2 = v2.split('.').map(Number);
37
- const maxLength = Math.max(parts1.length, parts2.length);
38
- for (let i = 0; i < maxLength; i++) {
39
- const part1 = parts1[i] || 0;
40
- const part2 = parts2[i] || 0;
41
- if (part1 > part2)
42
- return 1;
43
- if (part1 < part2)
44
- return -1;
45
- }
46
- return 0;
47
- }
48
- }
49
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACzB;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,eAAe;QAC1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,8BAA8B,MAAM,CAAC,YAAY,SAAS,EAC1D,EAAE,OAAO,EAAE,MAAM,CAAC,oBAAoB,EAAE,CACzC,CAAC;YAEF,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAErF,IAAI,YAAY,EAAE,CAAC;gBACjB,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;YACxE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,eAAe;gBAC/B,MAAM,EAAE,aAAa;gBACrB,YAAY;aACb,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,EAAU,EAAE,EAAU;QAC3C,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAEzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAE7B,IAAI,KAAK,GAAG,KAAK;gBAAE,OAAO,CAAC,CAAC;YAC5B,IAAI,KAAK,GAAG,KAAK;gBAAE,OAAO,CAAC,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;CACF"}