@linktr.ee/linkapp 0.0.21 → 0.0.22

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 (68) hide show
  1. package/dev-server/classic/main.tsx +313 -29
  2. package/dev-server/classic.html +21 -35
  3. package/dev-server/components/SettingsPreview.tsx +330 -0
  4. package/dev-server/components/ui/dialog.tsx +6 -3
  5. package/dev-server/featured/main.tsx +313 -29
  6. package/dev-server/featured.html +21 -35
  7. package/dev-server/index.html +8 -1
  8. package/dev-server/lib/utils.ts +6 -0
  9. package/dev-server/package-lock.json +245 -287
  10. package/dev-server/package.json +5 -1
  11. package/dev-server/postcss.config.mjs +5 -0
  12. package/dev-server/preview/Preview.tsx +95 -69
  13. package/dev-server/preview/preview.css +20 -35
  14. package/dev-server/public/apple-touch-icon.png +0 -0
  15. package/dev-server/public/favicon-96x96.png +0 -0
  16. package/dev-server/public/favicon.ico +0 -0
  17. package/dev-server/public/favicon.svg +6 -0
  18. package/dev-server/public/site.webmanifest +21 -0
  19. package/dev-server/public/web-app-manifest-192x192.png +0 -0
  20. package/dev-server/public/web-app-manifest-512x512.png +0 -0
  21. package/dev-server/vite-env.d.ts +8 -0
  22. package/dev-server/vite.config.ts +5 -0
  23. package/dist/commands/deploy.d.ts.map +1 -1
  24. package/dist/commands/deploy.js +19 -17
  25. package/dist/commands/deploy.js.map +1 -1
  26. package/dist/commands/dev.d.ts.map +1 -1
  27. package/dist/commands/dev.js +110 -2
  28. package/dist/commands/dev.js.map +1 -1
  29. package/dist/commands/test-url-match-rules.js +1 -1
  30. package/dist/commands/test-url-match-rules.js.map +1 -1
  31. package/dist/components/index.d.ts +0 -1
  32. package/dist/components/index.d.ts.map +1 -1
  33. package/dist/components/index.js +2 -1
  34. package/dist/components/index.js.map +1 -1
  35. package/dist/lib/auth/device-flow.d.ts +1 -6
  36. package/dist/lib/auth/device-flow.d.ts.map +1 -1
  37. package/dist/lib/auth/device-flow.js +3 -9
  38. package/dist/lib/auth/device-flow.js.map +1 -1
  39. package/dist/lib/auth/token-storage.d.ts +0 -5
  40. package/dist/lib/auth/token-storage.d.ts.map +1 -1
  41. package/dist/lib/auth/token-storage.js +16 -14
  42. package/dist/lib/auth/token-storage.js.map +1 -1
  43. package/dist/lib/deploy/generate-manifest-files.js +1 -1
  44. package/dist/lib/deploy/generate-manifest-files.js.map +1 -1
  45. package/dist/lib/deploy/pack-project.js +1 -1
  46. package/dist/lib/deploy/pack-project.js.map +1 -1
  47. package/dist/lib/deploy/test-url-match-rules.d.ts +2 -1
  48. package/dist/lib/deploy/test-url-match-rules.d.ts.map +1 -1
  49. package/dist/lib/deploy/test-url-match-rules.js +1 -1
  50. package/dist/lib/deploy/test-url-match-rules.js.map +1 -1
  51. package/dist/lib/deploy/upload.d.ts.map +1 -1
  52. package/dist/lib/deploy/upload.js +7 -3
  53. package/dist/lib/deploy/upload.js.map +1 -1
  54. package/dist/lib/utils/setup-runtime.d.ts.map +1 -1
  55. package/dist/lib/utils/setup-runtime.js +29 -2
  56. package/dist/lib/utils/setup-runtime.js.map +1 -1
  57. package/dist/lib/vite/config-factory.d.ts.map +1 -1
  58. package/dist/lib/vite/config-factory.js +3 -2
  59. package/dist/lib/vite/config-factory.js.map +1 -1
  60. package/dist/schema/config.schema.d.ts +104 -32
  61. package/dist/schema/config.schema.d.ts.map +1 -1
  62. package/dist/schema/config.schema.js +27 -17
  63. package/dist/schema/config.schema.js.map +1 -1
  64. package/dist/types.d.ts +6 -57
  65. package/dist/types.d.ts.map +1 -1
  66. package/dist/types.js.map +1 -1
  67. package/package.json +1 -2
  68. package/runtime/index.html +19 -36
@@ -1,11 +1,55 @@
1
1
  import pc from 'picocolors';
2
2
  import { createServer as createViteServer } from 'vite';
3
- import { dirname, resolve } from 'node:path';
3
+ import { dirname, resolve, join } from 'node:path';
4
4
  import { fileURLToPath } from 'node:url';
5
+ import { existsSync, readFileSync, statSync } from 'node:fs';
5
6
  import { validateLayouts } from '../lib/build/detect-layouts.js';
6
7
  import { loadConfig } from '../lib/config/load-config.js';
7
8
  const __filename = fileURLToPath(import.meta.url);
8
9
  const __dirname = dirname(__filename);
10
+ /**
11
+ * Creates a Vite plugin that watches linkapp.config.ts for changes
12
+ * and triggers a full page reload when the config is updated
13
+ */
14
+ function createConfigWatcherPlugin(userProjectPath, viteServerRef) {
15
+ const configPaths = [
16
+ join(userProjectPath, 'linkapp.config.ts'),
17
+ join(userProjectPath, '.config', 'linkapp.config.ts'),
18
+ ];
19
+ return {
20
+ name: 'linkapp-config-watcher',
21
+ configureServer(server) {
22
+ viteServerRef.current = server;
23
+ // Watch for changes to linkapp.config.ts
24
+ configPaths.forEach((configPath) => {
25
+ if (existsSync(configPath)) {
26
+ server.watcher.add(configPath);
27
+ }
28
+ });
29
+ server.watcher.on('change', (file) => {
30
+ // Check if the changed file is the config file
31
+ if (configPaths.some((configPath) => file === configPath)) {
32
+ console.log(pc.cyan(' ○ linkapp.config.ts changed, reloading...'));
33
+ try {
34
+ // Reload the config to validate it
35
+ loadConfig(userProjectPath);
36
+ // Trigger a full page reload for all connected clients
37
+ // This will cause the server to re-evaluate the config on the next request
38
+ server.ws.send({
39
+ type: 'full-reload',
40
+ path: '*',
41
+ });
42
+ console.log(pc.green(' ✓ Config reloaded'));
43
+ }
44
+ catch (error) {
45
+ console.log(pc.red(' ✗ Failed to reload config'));
46
+ console.log(pc.dim(` ${error instanceof Error ? error.message : error}`));
47
+ }
48
+ }
49
+ });
50
+ },
51
+ };
52
+ }
9
53
  export async function devCommand(options) {
10
54
  const userProjectPath = process.cwd();
11
55
  try {
@@ -19,11 +63,13 @@ export async function devCommand(options) {
19
63
  }
20
64
  process.exit(1);
21
65
  }
22
- // Load config and extract preview_props
66
+ // Load config and extract preview_props and settings
23
67
  let previewProps = {};
68
+ let settingsConfig = {};
24
69
  try {
25
70
  const config = loadConfig(userProjectPath);
26
71
  previewProps = config.preview_props || {};
72
+ settingsConfig = config.settings || {};
27
73
  }
28
74
  catch (error) {
29
75
  console.log(pc.yellow('⚠ Warning: Could not load config, using default preview props'));
@@ -31,10 +77,14 @@ export async function devCommand(options) {
31
77
  }
32
78
  const port = options.port || 3000;
33
79
  const devServerPath = resolve(__dirname, '../../dev-server');
80
+ const userPublicDir = join(userProjectPath, 'public');
81
+ // Create a ref to hold the Vite server instance for the config watcher
82
+ const viteServerRef = { current: null };
34
83
  // Create Vite server - inject preview props directly via define
35
84
  const viteServer = await createViteServer({
36
85
  configFile: resolve(devServerPath, 'vite.config.ts'),
37
86
  root: devServerPath,
87
+ publicDir: userPublicDir,
38
88
  resolve: {
39
89
  alias: {
40
90
  '@': userProjectPath,
@@ -44,6 +94,7 @@ export async function devCommand(options) {
44
94
  },
45
95
  define: {
46
96
  __PREVIEW_PROPS__: JSON.stringify(previewProps),
97
+ __SETTINGS_CONFIG__: JSON.stringify(settingsConfig),
47
98
  },
48
99
  server: {
49
100
  port,
@@ -52,6 +103,63 @@ export async function devCommand(options) {
52
103
  strictPort: false,
53
104
  },
54
105
  logLevel: 'error',
106
+ plugins: [
107
+ // Watch for config changes and reload
108
+ createConfigWatcherPlugin(userProjectPath, viteServerRef),
109
+ // Custom plugin to serve user's public directory
110
+ {
111
+ name: 'serve-user-public',
112
+ configureServer(server) {
113
+ // Only serve if public directory exists
114
+ if (existsSync(userPublicDir)) {
115
+ // Return middleware that runs early in the stack
116
+ return () => {
117
+ server.middlewares.use((req, res, next) => {
118
+ if (!req.url) {
119
+ next();
120
+ return;
121
+ }
122
+ // Parse URL and remove query params
123
+ const url = new URL(req.url, `http://${req.headers.host || 'localhost'}`);
124
+ const pathname = url.pathname;
125
+ // Try to serve file from public directory
126
+ const filePath = join(userPublicDir, pathname);
127
+ try {
128
+ if (existsSync(filePath) && statSync(filePath).isFile()) {
129
+ // Determine content type
130
+ const ext = pathname.split('.').pop()?.toLowerCase();
131
+ const contentTypes = {
132
+ 'png': 'image/png',
133
+ 'jpg': 'image/jpeg',
134
+ 'jpeg': 'image/jpeg',
135
+ 'gif': 'image/gif',
136
+ 'svg': 'image/svg+xml',
137
+ 'webp': 'image/webp',
138
+ 'ico': 'image/x-icon',
139
+ 'json': 'application/json',
140
+ 'txt': 'text/plain',
141
+ 'html': 'text/html',
142
+ 'css': 'text/css',
143
+ 'js': 'application/javascript',
144
+ };
145
+ const contentType = (ext && contentTypes[ext]) || 'application/octet-stream';
146
+ const content = readFileSync(filePath);
147
+ res.setHeader('Content-Type', contentType);
148
+ res.setHeader('Cache-Control', 'no-cache');
149
+ res.end(content);
150
+ return;
151
+ }
152
+ }
153
+ catch (error) {
154
+ // File doesn't exist or error reading, continue to next middleware
155
+ }
156
+ next();
157
+ });
158
+ };
159
+ }
160
+ },
161
+ },
162
+ ],
55
163
  });
56
164
  await viteServer.listen();
57
165
  const readyTime = ((Date.now() - startTime) / 1000).toFixed(1);
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export async function testUrlMatchRulesCommand(url, options) {
13
13
  const accessToken = getToken(config.auth.audience);
14
14
  if (!accessToken) {
15
15
  console.log(pc.red('✗ Not authenticated'));
16
- console.log(pc.dim(` Run: linkapp login${options.qa ? ' --qa' : ''}\n`));
16
+ console.log(pc.dim(` Run: npx @linktr.ee/linkapp login${options.qa ? ' --qa' : ''}\n`));
17
17
  process.exit(1);
18
18
  }
19
19
  // Look up the local url_match_rules.json file
@@ -1 +1 @@
1
- {"version":3,"file":"test-url-match-rules.js","sourceRoot":"","sources":["../../src/commands/test-url-match-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-url-match-rules.js","sourceRoot":"","sources":["../../src/commands/test-url-match-rules.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1 @@
1
- export { ThemeStyle } from './ThemeStyle.js';
2
1
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":""}
@@ -1,2 +1,3 @@
1
- export { ThemeStyle } from './ThemeStyle.js';
1
+ "use strict";
2
+ // export { ThemeStyle } from './ThemeStyle.js'
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";AAAA,+CAA+C"}
@@ -1,15 +1,10 @@
1
- import { BaseClient, DeviceFlowHandle, TokenSet } from 'openid-client';
1
+ import { BaseClient, DeviceFlowHandle, TokenSet } from "openid-client";
2
2
  interface AuthConfig {
3
3
  domain: string;
4
4
  client_id: string;
5
5
  audience: string;
6
6
  }
7
7
  export declare function initiateDeviceFlow(config: AuthConfig): Promise<DeviceFlowHandle<BaseClient>>;
8
- export declare function pollForToken(_config: AuthConfig, _deviceCode: string, _interval: number): Promise<{
9
- access_token: string;
10
- token_type: string;
11
- expires_in?: number;
12
- }>;
13
8
  export declare function pollAccessToken(handle: DeviceFlowHandle<BaseClient>): Promise<TokenSet>;
14
9
  export {};
15
10
  //# sourceMappingURL=device-flow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/device-flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEtF,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAUlG;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAK5E;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAS7F"}
1
+ {"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/device-flow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,EAGhB,QAAQ,EACT,MAAM,eAAe,CAAC;AAEvB,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAUvC;AAED,wBAAsB,eAAe,CACnC,MAAM,EAAE,gBAAgB,CAAC,UAAU,CAAC,GACnC,OAAO,CAAC,QAAQ,CAAC,CASnB"}
@@ -1,18 +1,12 @@
1
- import { errors, Issuer } from 'openid-client';
1
+ import { errors, Issuer, } from "openid-client";
2
2
  export async function initiateDeviceFlow(config) {
3
3
  const { domain, client_id, audience } = config;
4
4
  const auth0Issuer = await Issuer.discover(domain);
5
5
  const client = new auth0Issuer.Client({
6
6
  client_id,
7
- token_endpoint_auth_method: 'none',
7
+ token_endpoint_auth_method: "none",
8
8
  });
9
- return await client.deviceAuthorization({ scope: '', audience });
10
- }
11
- export async function pollForToken(_config, _deviceCode, _interval) {
12
- // For the new implementation, we don't use deviceCode directly
13
- // The device flow handle returned by initiateDeviceFlow contains the poll method
14
- // This function signature is kept for compatibility but should be updated in the caller
15
- throw new Error('This function should not be called directly. Use the DeviceFlowHandle.poll() method instead.');
9
+ return await client.deviceAuthorization({ scope: "", audience });
16
10
  }
17
11
  export async function pollAccessToken(handle) {
18
12
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"device-flow.js","sourceRoot":"","sources":["../../../src/lib/auth/device-flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,MAAM,EAAE,MAAM,EAAY,MAAM,eAAe,CAAA;AAQtF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAkB;IACzD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IAE9C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC;QACpC,SAAS;QACT,0BAA0B,EAAE,MAAM;KACnC,CAAC,CAAA;IAEF,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAmB,EACnB,WAAmB,EACnB,SAAiB;IAEjB,+DAA+D;IAC/D,iFAAiF;IACjF,wFAAwF;IACxF,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAA;AACjH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAoC;IACxE,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;QACvD,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"device-flow.js","sourceRoot":"","sources":["../../../src/lib/auth/device-flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,MAAM,EACN,MAAM,GAEP,MAAM,eAAe,CAAC;AAQvB,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAkB;IAElB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAE/C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC;QACpC,SAAS;QACT,0BAA0B,EAAE,MAAM;KACnC,CAAC,CAAC;IAEH,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAoC;IAEpC,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -1,8 +1,3 @@
1
- /**
2
- * Validates that a JWT token has the correct structure and permissions
3
- * @throws Error if token is invalid or lacks permissions
4
- */
5
- export declare function validateTokenStructure(tokenString: string): void;
6
1
  export declare function saveToken(token: string, audience: string, expiresAt?: number): void;
7
2
  export declare function getToken(audience: string): string | null;
8
3
  export declare function removeToken(audience?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"token-storage.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/token-storage.ts"],"names":[],"mappings":"AAqBA;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAahE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAgBnF;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAwBxD;AAED,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAkBnD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD"}
1
+ {"version":3,"file":"token-storage.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/token-storage.ts"],"names":[],"mappings":"AAgDA,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAgBN;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA4BxD;AAED,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAkBnD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD"}
@@ -1,22 +1,22 @@
1
- import { homedir } from 'node:os';
2
- import { join } from 'node:path';
3
- import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync } from 'node:fs';
4
- import jwt from 'jsonwebtoken';
5
- const CONFIG_DIR = join(homedir(), '.config', 'linkapp');
6
- const TOKEN_FILE = join(CONFIG_DIR, 'auth-token.json');
1
+ import { homedir } from "node:os";
2
+ import { join } from "node:path";
3
+ import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync, } from "node:fs";
4
+ import jwt from "jsonwebtoken";
5
+ const CONFIG_DIR = join(homedir(), ".config", "linkapp");
6
+ const TOKEN_FILE = join(CONFIG_DIR, "auth-token.json");
7
7
  const TOKEN_EXPIRY_THRESHOLD_SECONDS = 60; // Consider tokens as expired within the last 60s of actual expiry
8
8
  /**
9
9
  * Validates that a JWT token has the correct structure and permissions
10
10
  * @throws Error if token is invalid or lacks permissions
11
11
  */
12
- export function validateTokenStructure(tokenString) {
12
+ function validateTokenStructure(tokenString) {
13
13
  const payload = jwt.decode(tokenString, { json: true });
14
14
  if (!payload) {
15
- throw new Error('There was an error parsing the access token, please try logging in again');
15
+ throw new Error("There was an error parsing the access token, please try logging in again");
16
16
  }
17
17
  const permissions = payload.permissions ?? [];
18
18
  if (permissions.length === 0) {
19
- throw new Error('Login request was successful, but the authenticated user does not have appropriate permissions to view or modify LinkApps');
19
+ throw new Error("Login request was successful, but the authenticated user does not have appropriate permissions to view or modify LinkApps");
20
20
  }
21
21
  }
22
22
  export function saveToken(token, audience, expiresAt) {
@@ -31,27 +31,29 @@ export function saveToken(token, audience, expiresAt) {
31
31
  expiresAt,
32
32
  audience,
33
33
  };
34
- writeFileSync(TOKEN_FILE, JSON.stringify(data, null, 2), 'utf-8');
34
+ writeFileSync(TOKEN_FILE, JSON.stringify(data, null, 2), "utf-8");
35
35
  }
36
36
  export function getToken(audience) {
37
37
  if (!existsSync(TOKEN_FILE)) {
38
38
  return null;
39
39
  }
40
40
  try {
41
- const data = JSON.parse(readFileSync(TOKEN_FILE, 'utf-8'));
41
+ const data = JSON.parse(readFileSync(TOKEN_FILE, "utf-8"));
42
42
  // Check if token is for the correct audience
43
43
  if (data.audience !== audience) {
44
44
  return null;
45
45
  }
46
46
  // Check if token is expired (with threshold buffer)
47
- if (data.expiresAt && data.expiresAt - TOKEN_EXPIRY_THRESHOLD_SECONDS < Math.floor(Date.now() / 1000)) {
47
+ if (data.expiresAt &&
48
+ data.expiresAt - TOKEN_EXPIRY_THRESHOLD_SECONDS <
49
+ Math.floor(Date.now() / 1000)) {
48
50
  removeToken();
49
51
  return null;
50
52
  }
51
53
  return data.accessToken;
52
54
  }
53
55
  catch (error) {
54
- console.error('Failed to read token:', error);
56
+ console.error("Failed to read token:", error);
55
57
  return null;
56
58
  }
57
59
  }
@@ -62,7 +64,7 @@ export function removeToken(audience) {
62
64
  // If audience is specified, only remove token if it matches
63
65
  if (audience) {
64
66
  try {
65
- const data = JSON.parse(readFileSync(TOKEN_FILE, 'utf-8'));
67
+ const data = JSON.parse(readFileSync(TOKEN_FILE, "utf-8"));
66
68
  if (data.audience !== audience) {
67
69
  return; // Don't remove token for different audience
68
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"token-storage.js","sourceRoot":"","sources":["../../../src/lib/auth/token-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,GAAG,MAAM,cAAc,CAAA;AAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AACxD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;AACtD,MAAM,8BAA8B,GAAG,EAAE,CAAA,CAAC,kEAAkE;AAc5G;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACxD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAsB,CAAA;IAE5E,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAA;IAC7F,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;IAC7C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,2HAA2H,CAC5H,CAAA;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,QAAgB,EAAE,SAAkB;IAC3E,yDAAyD;IACzD,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAE7B,iCAAiC;IACjC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,IAAI,GAAgB;QACxB,WAAW,EAAE,KAAK;QAClB,SAAS;QACT,QAAQ;KACT,CAAA;IAED,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACvC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAgB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;QAEvE,6CAA6C;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAA;QACb,CAAC;QAED,oDAAoD;QACpD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,GAAG,8BAA8B,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YACtG,WAAW,EAAE,CAAA;YACb,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAM;IACR,CAAC;IAED,4DAA4D;IAC5D,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,IAAI,GAAgB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;YACvE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAM,CAAC,4CAA4C;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8CAA8C;QAChD,CAAC;IACH,CAAC;IAED,UAAU,CAAC,UAAU,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,OAAO,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"token-storage.js","sourceRoot":"","sources":["../../../src/lib/auth/token-storage.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export async function generateManifestFiles(projectPath = process.cwd()) {
23
23
  });
24
24
  const config = jiti(configPath);
25
25
  // Generate manifest.json
26
- // Note: id is kept in config for internal use but NOT sent to the API
26
+ // Note: The LinkApp ID is derived from kebab-case(name) by the backend
27
27
  const manifest = {
28
28
  name: config.manifest.name,
29
29
  tagline: config.manifest.tagline,
@@ -1 +1 @@
1
- {"version":3,"file":"generate-manifest-files.js","sourceRoot":"","sources":["../../../src/lib/deploy/generate-manifest-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-manifest-files.js","sourceRoot":"","sources":["../../../src/lib/deploy/generate-manifest-files.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export async function packProject(options = {}) {
10
10
  const requiredFiles = [configPath];
11
11
  const optionalFiles = ['package.json', 'package-lock.json', 'README.md', 'tsconfig.json', 'yarn.lock'];
12
12
  const requiredDirs = ['app'];
13
- const optionalDirs = ['dist', 'components', 'hooks', 'lib'];
13
+ const optionalDirs = ['components', 'hooks', 'lib', 'public'];
14
14
  // Manifest files from .linkapp directory
15
15
  const linkappDir = join(projectPath, '.linkapp');
16
16
  const manifestFiles = [
@@ -1 +1 @@
1
- {"version":3,"file":"pack-project.js","sourceRoot":"","sources":["../../../src/lib/deploy/pack-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pack-project.js","sourceRoot":"","sources":["../../../src/lib/deploy/pack-project.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- export interface TestUrlMatchRulesResult {
1
+ interface TestUrlMatchRulesResult {
2
2
  success: boolean;
3
3
  [key: string]: any;
4
4
  }
5
5
  export declare function testUrlMatchRules(endpoint: string, url: string, rules: any, accessToken: string): Promise<TestUrlMatchRulesResult>;
6
+ export {};
6
7
  //# sourceMappingURL=test-url-match-rules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-url-match-rules.d.ts","sourceRoot":"","sources":["../../../src/lib/deploy/test-url-match-rules.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,GAAG,EACV,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC,CAsBlC"}
1
+ {"version":3,"file":"test-url-match-rules.d.ts","sourceRoot":"","sources":["../../../src/lib/deploy/test-url-match-rules.ts"],"names":[],"mappings":"AAEA,UAAU,uBAAuB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,GAAG,EACV,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC,CAsBlC"}
@@ -1,4 +1,4 @@
1
- import axios from 'axios';
1
+ import axios from "axios";
2
2
  export async function testUrlMatchRules(endpoint, url, rules, accessToken) {
3
3
  try {
4
4
  const response = await axios.post(`${endpoint}/test-url-match-rules`, {
@@ -1 +1 @@
1
- {"version":3,"file":"test-url-match-rules.js","sourceRoot":"","sources":["../../../src/lib/deploy/test-url-match-rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,GAAW,EACX,KAAU,EACV,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,GAAG,QAAQ,uBAAuB,EAClC;YACE,GAAG;YACH,KAAK;SACN,EACD;YACE,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,WAAW,EAAE;aACvC;SACF,CACF,CAAA;QAED,OAAO,QAAQ,CAAC,IAAI,CAAA;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC5C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAA;QAC1B,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"test-url-match-rules.js","sourceRoot":"","sources":["../../../src/lib/deploy/test-url-match-rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,GAAW,EACX,KAAU,EACV,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,GAAG,QAAQ,uBAAuB,EAClC;YACE,GAAG;YACH,KAAK;SACN,EACD;YACE,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,WAAW,EAAE;aACvC;SACF,CACF,CAAC;QAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC5C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC3B,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/lib/deploy/upload.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAClC;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CA0FlF;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAcjH"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/lib/deploy/upload.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAClC;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CA0FlF;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBjH"}
@@ -19,6 +19,7 @@ export async function uploadAssets(options) {
19
19
  }
20
20
  const form = new FormData();
21
21
  // Add required files with correct content types
22
+ // Note: linkTypeId is read from linkapp.config.ts inside the package, not sent as a form field
22
23
  form.append('package', createReadStream(packagePath), {
23
24
  contentType: 'application/gzip',
24
25
  filename: 'package.tgz',
@@ -54,8 +55,7 @@ export async function uploadAssets(options) {
54
55
  headers['force-update'] = 'true';
55
56
  }
56
57
  const method = options.isUpdate ? 'put' : 'post';
57
- // Use the same base URL for both POST and PUT
58
- // The API determines create vs update based on the request method, not the URL path
58
+ // Use the same URL for both POST and PUT - backend determines create vs update from linkTypeId in form data
59
59
  const url = options.apiUrl;
60
60
  try {
61
61
  const response = await axios[method](url, form, { headers });
@@ -93,7 +93,11 @@ export async function checkLinkAppExists(apiUrl, linkAppId, accessToken) {
93
93
  return response.data?.linkTypeId === linkAppId;
94
94
  }
95
95
  catch (error) {
96
- // Any error (including 404) means the LinkApp doesn't exist or can't be accessed
96
+ // Check if 404 - linkApp with this specific ID doesn't exist
97
+ if (axios.isAxiosError(error) && error.response?.status === 404) {
98
+ return false;
99
+ }
100
+ // For other errors, assume it doesn't exist
97
101
  return false;
98
102
  }
99
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/lib/deploy/upload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/lib/deploy/upload.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-runtime.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/setup-runtime.ts"],"names":[],"mappings":"AA+KA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAyBtD"}
1
+ {"version":3,"file":"setup-runtime.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/setup-runtime.ts"],"names":[],"mappings":"AA0MA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAyBtD"}
@@ -46,10 +46,21 @@ type ExtensionData = {
46
46
  __thumbnail?: string
47
47
  __linkParams?: any
48
48
  __environment?: any
49
+ __layout?: string
50
+ __theme?: {
51
+ cssVariables: Record<string, string>
52
+ }
49
53
  displayType?: string
50
54
  [key: string]: any
51
55
  }
52
56
 
57
+ // Declare global window property for theme application
58
+ declare global {
59
+ interface Window {
60
+ __linkapp_applyTheme?: (variables: Record<string, string>) => void
61
+ }
62
+ }
63
+
53
64
  const rootElement = document.getElementById('root')
54
65
  if (!rootElement) {
55
66
  throw new Error('Root element not found')
@@ -62,6 +73,17 @@ const isInIframe = window.parent !== window
62
73
  const mockContext: ExtensionData = {
63
74
  linkUrl: 'https://example.com/demo',
64
75
  showTitle: true,
76
+ __theme: {
77
+ cssVariables: {
78
+ '--button-style-text': '#000000',
79
+ '--button-style-background': '#ffffff',
80
+ '--button-style-inner-radius': '12px',
81
+ '--button-style-border-color': '#e5e7eb',
82
+ '--button-style-background-hover': '#f3f4f6',
83
+ '--button-style-contrast-color': '#ffffff',
84
+ '--profileBackground': '#ffffff',
85
+ },
86
+ },
65
87
  theme: {
66
88
  cssVariables: {
67
89
  '--button-style-text': '#000000',
@@ -83,9 +105,9 @@ const mockContext: ExtensionData = {
83
105
  }
84
106
 
85
107
  function App({ data }: { data: ExtensionData }) {
86
- // Get layout from query parameter or default to classic
108
+ // Get layout from extension data (production), query parameter (dev), or default to classic
87
109
  const params = new URLSearchParams(window.location.search)
88
- const layoutName = params.get('layout') || 'classic'
110
+ const layoutName = data.__layout || params.get('layout') || 'classic'
89
111
  const LayoutComponent = layouts[layoutName] || layouts.classic
90
112
 
91
113
  if (!LayoutComponent) {
@@ -117,6 +139,11 @@ const postExtensionReadyMessage = () => {
117
139
  }
118
140
 
119
141
  const renderApp = (data: ExtensionData) => {
142
+ // Apply theme CSS variables if provided
143
+ if (data.__theme?.cssVariables && window.__linkapp_applyTheme) {
144
+ window.__linkapp_applyTheme(data.__theme.cssVariables)
145
+ }
146
+
120
147
  const root = createRoot(rootElement)
121
148
  root.render(
122
149
  <StrictMode>