@ytspar/sweetlink 1.21.0 → 1.23.0

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 (115) hide show
  1. package/README.md +77 -0
  2. package/dist/browser/SweetlinkBridge.d.ts +9 -0
  3. package/dist/browser/SweetlinkBridge.d.ts.map +1 -1
  4. package/dist/browser/SweetlinkBridge.js +73 -20
  5. package/dist/browser/SweetlinkBridge.js.map +1 -1
  6. package/dist/browser/commands/screenshot.d.ts.map +1 -1
  7. package/dist/browser/commands/screenshot.js +16 -7
  8. package/dist/browser/commands/screenshot.js.map +1 -1
  9. package/dist/browser/consoleCapture.js +1 -1
  10. package/dist/browser/consoleCapture.js.map +1 -1
  11. package/dist/browser/earlyConsoleCapture.d.ts +1 -1
  12. package/dist/browser/earlyConsoleCapture.d.ts.map +1 -1
  13. package/dist/browser/screenshotUtils.d.ts +13 -3
  14. package/dist/browser/screenshotUtils.d.ts.map +1 -1
  15. package/dist/browser/screenshotUtils.js +32 -6
  16. package/dist/browser/screenshotUtils.js.map +1 -1
  17. package/dist/cdp.d.ts +1 -0
  18. package/dist/cdp.d.ts.map +1 -1
  19. package/dist/cdp.js +34 -3
  20. package/dist/cdp.js.map +1 -1
  21. package/dist/cli/outputSchemas.d.ts +1 -0
  22. package/dist/cli/outputSchemas.d.ts.map +1 -1
  23. package/dist/cli/outputSchemas.js +1 -0
  24. package/dist/cli/outputSchemas.js.map +1 -1
  25. package/dist/cli/sweetlink-dev.d.ts +5 -2
  26. package/dist/cli/sweetlink-dev.d.ts.map +1 -1
  27. package/dist/cli/sweetlink-dev.js +12 -4
  28. package/dist/cli/sweetlink-dev.js.map +1 -1
  29. package/dist/cli/sweetlink.js +148 -64
  30. package/dist/cli/sweetlink.js.map +1 -1
  31. package/dist/daemon/browser.d.ts +3 -0
  32. package/dist/daemon/browser.d.ts.map +1 -1
  33. package/dist/daemon/browser.js +38 -5
  34. package/dist/daemon/browser.js.map +1 -1
  35. package/dist/daemon/demo.d.ts.map +1 -1
  36. package/dist/daemon/demo.js +3 -19
  37. package/dist/daemon/demo.js.map +1 -1
  38. package/dist/daemon/recording.d.ts +1 -1
  39. package/dist/daemon/recording.d.ts.map +1 -1
  40. package/dist/daemon/recording.js +1 -19
  41. package/dist/daemon/recording.js.map +1 -1
  42. package/dist/daemon/server.d.ts.map +1 -1
  43. package/dist/daemon/server.js +7 -9
  44. package/dist/daemon/server.js.map +1 -1
  45. package/dist/daemon/session.d.ts +8 -1
  46. package/dist/daemon/session.d.ts.map +1 -1
  47. package/dist/daemon/types.d.ts +9 -2
  48. package/dist/daemon/types.d.ts.map +1 -1
  49. package/dist/daemon/types.js.map +1 -1
  50. package/dist/daemon/utils.d.ts +22 -0
  51. package/dist/daemon/utils.d.ts.map +1 -0
  52. package/dist/daemon/utils.js +44 -0
  53. package/dist/daemon/utils.js.map +1 -0
  54. package/dist/daemon/viewer.d.ts.map +1 -1
  55. package/dist/daemon/viewer.js +2 -8
  56. package/dist/daemon/viewer.js.map +1 -1
  57. package/dist/daemon/visualDiff.d.ts +9 -0
  58. package/dist/daemon/visualDiff.d.ts.map +1 -1
  59. package/dist/daemon/visualDiff.js +12 -1
  60. package/dist/daemon/visualDiff.js.map +1 -1
  61. package/dist/index.d.ts +1 -1
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +1 -1
  64. package/dist/index.js.map +1 -1
  65. package/dist/next.d.ts.map +1 -1
  66. package/dist/next.js +16 -1
  67. package/dist/next.js.map +1 -1
  68. package/dist/playwright.d.ts +19 -0
  69. package/dist/playwright.d.ts.map +1 -1
  70. package/dist/playwright.js +119 -12
  71. package/dist/playwright.js.map +1 -1
  72. package/dist/runs.d.ts +15 -3
  73. package/dist/runs.d.ts.map +1 -1
  74. package/dist/runs.js +29 -13
  75. package/dist/runs.js.map +1 -1
  76. package/dist/server/index.d.ts +7 -1
  77. package/dist/server/index.d.ts.map +1 -1
  78. package/dist/server/index.js +56 -16
  79. package/dist/server/index.js.map +1 -1
  80. package/dist/simulator/android.d.ts +6 -0
  81. package/dist/simulator/android.d.ts.map +1 -1
  82. package/dist/simulator/android.js +81 -4
  83. package/dist/simulator/android.js.map +1 -1
  84. package/dist/simulator/androidTaps.d.ts +12 -2
  85. package/dist/simulator/androidTaps.d.ts.map +1 -1
  86. package/dist/simulator/androidTaps.js +57 -11
  87. package/dist/simulator/androidTaps.js.map +1 -1
  88. package/dist/simulator/ios.d.ts +7 -0
  89. package/dist/simulator/ios.d.ts.map +1 -1
  90. package/dist/simulator/ios.js +70 -25
  91. package/dist/simulator/ios.js.map +1 -1
  92. package/dist/term/cast.d.ts +24 -0
  93. package/dist/term/cast.d.ts.map +1 -0
  94. package/dist/term/cast.js +24 -0
  95. package/dist/term/cast.js.map +1 -0
  96. package/dist/term/player.d.ts.map +1 -1
  97. package/dist/term/player.js +36 -14
  98. package/dist/term/player.js.map +1 -1
  99. package/dist/term/recorder.d.ts +7 -0
  100. package/dist/term/recorder.d.ts.map +1 -1
  101. package/dist/term/recorder.js +35 -1
  102. package/dist/term/recorder.js.map +1 -1
  103. package/dist/types.d.ts +37 -1
  104. package/dist/types.d.ts.map +1 -1
  105. package/dist/types.js +127 -0
  106. package/dist/types.js.map +1 -1
  107. package/dist/vite.d.ts +11 -0
  108. package/dist/vite.d.ts.map +1 -1
  109. package/dist/vite.js +20 -1
  110. package/dist/vite.js.map +1 -1
  111. package/package.json +1 -1
  112. package/dist/term/ansi.d.ts +0 -37
  113. package/dist/term/ansi.d.ts.map +0 -1
  114. package/dist/term/ansi.js +0 -205
  115. package/dist/term/ansi.js.map +0 -1
package/dist/types.d.ts CHANGED
@@ -12,11 +12,45 @@ export declare const WS_PORT_OFFSET = 6223;
12
12
  export declare const MAX_PORT_RETRIES = 10;
13
13
  /** Delay between port scan attempts (ms) */
14
14
  export declare const PORT_RETRY_DELAY_MS = 100;
15
+ /** Same-origin WebSocket path used when an app server can proxy Sweetlink. */
16
+ export declare const SWEETLINK_WS_PATH = "/__sweetlink";
17
+ export interface SweetlinkLocationLike {
18
+ protocol: string;
19
+ port: string;
20
+ host?: string;
21
+ }
22
+ export interface SweetlinkRuntimeConfig {
23
+ appPort?: number | string | null;
24
+ wsPort?: number | string | null;
25
+ wsUrl?: string | null;
26
+ wsPath?: string | null;
27
+ }
28
+ export declare function parsePortNumber(value: number | string | null | undefined): number | null;
29
+ export declare function getDefaultPortForProtocol(protocol: string): number | null;
30
+ export declare function resolveAppPortFromLocation(location: SweetlinkLocationLike): number;
31
+ export declare function resolveSweetlinkWsPortForAppPort(appPort: number | null | undefined): number;
32
+ export declare function resolveSweetlinkWsPortFromLocation(location: SweetlinkLocationLike): number;
33
+ /**
34
+ * Read Sweetlink connection hints injected by framework integrations.
35
+ *
36
+ * Vite injects `window.__SWEETLINK__`; Next.js exposes the same values through
37
+ * `NEXT_PUBLIC_SWEETLINK_*` env replacement. Explicit user options should still
38
+ * take precedence over these hints.
39
+ */
40
+ export declare function getSweetlinkRuntimeConfig(globalValue?: unknown): SweetlinkRuntimeConfig;
41
+ export declare function resolveAppPortFromRuntimeConfig(location: SweetlinkLocationLike, config: SweetlinkRuntimeConfig): number;
42
+ export declare function createSameOriginSweetlinkWsUrl(location: SweetlinkLocationLike, path?: string): string | null;
43
+ export declare function isLocalDevelopmentHostname(hostname: string): boolean;
44
+ export declare function parseLocalDevelopmentUrl(value: string | null | undefined): URL | null;
45
+ export declare function isLocalDevelopmentOrigin(origin: string | null | undefined): boolean;
46
+ export declare function resolveAppPortFromLocalUrl(value: string | null | undefined): number | null;
47
+ export declare function localOriginMatchesAppPort(origin: string | null | undefined, appPort: number | null | undefined): boolean;
15
48
  /**
16
49
  * Structure for captured console log entries
17
50
  */
51
+ export type ConsoleLogLevel = 'log' | 'error' | 'warn' | 'info' | 'debug' | 'trace';
18
52
  export interface ConsoleLog {
19
- level: 'log' | 'error' | 'warn' | 'info' | 'debug' | string;
53
+ level: ConsoleLogLevel;
20
54
  message: string;
21
55
  timestamp: number;
22
56
  stack?: string;
@@ -29,6 +63,7 @@ export interface ConsoleLog {
29
63
  export interface ScreenshotCommand {
30
64
  type: 'screenshot';
31
65
  selector?: string;
66
+ hideDevbar?: boolean;
32
67
  options?: Record<string, unknown>;
33
68
  }
34
69
  export interface QueryDomCommand {
@@ -99,6 +134,7 @@ export interface RequestScreenshotCommand {
99
134
  type: 'request-screenshot';
100
135
  requestId?: string;
101
136
  selector?: string;
137
+ hideDevbar?: boolean;
102
138
  format?: 'jpeg' | 'png';
103
139
  quality?: number;
104
140
  scale?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,sDAAsD;AACtD,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,4DAA4D;AAC5D,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC,6DAA6D;AAC7D,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAMvC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,sBAAsB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,0BAA0B,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,gBAAgB,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACxB,iBAAiB,GACjB,eAAe,GACf,cAAc,GACd,aAAa,GACb,iBAAiB,GACjB,yBAAyB,GACzB,qBAAqB,GACrB,6BAA6B,GAC7B,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,iBAAiB,GACjB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,oBAAoB,GACpB,oBAAoB,GACpB,cAAc,GACd,wBAAwB,GACxB,yBAAyB,GACzB,mBAAmB,GACnB,qBAAqB,GACrB,eAAe,GACf,oBAAoB,GACpB,uBAAuB,GACvB,yBAAyB,GACzB,sBAAsB,GACtB,wBAAwB,GACxB,wBAAwB,GACxB,mBAAmB,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,eAAe,GACf,qBAAqB,GACrB,qBAAqB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE;QACJ,GAAG,EAAE,UAAU,EAAE,CAAC;QAClB,MAAM,EAAE,UAAU,EAAE,CAAC;QACrB,QAAQ,EAAE,UAAU,EAAE,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,SAAS,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,YAAY,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAO5E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAWhE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAS9E;AAED;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAcF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAE/E;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAEvF;AAED;;;GAGG;AACH,KAAK,mBAAmB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAa/F;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,GAAG;IAAE,OAAO,EAAE,OAAO,EAAE,CAAA;CAAE,CAEvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,GAAG;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAIpD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,GAAG;IAAE,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAE3E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAIjG;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAItD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -15,6 +15,133 @@ export const WS_PORT_OFFSET = 6223;
15
15
  export const MAX_PORT_RETRIES = 10;
16
16
  /** Delay between port scan attempts (ms) */
17
17
  export const PORT_RETRY_DELAY_MS = 100;
18
+ /** Same-origin WebSocket path used when an app server can proxy Sweetlink. */
19
+ export const SWEETLINK_WS_PATH = '/__sweetlink';
20
+ export function parsePortNumber(value) {
21
+ if (value === null || value === undefined || value === '') {
22
+ return null;
23
+ }
24
+ const parsed = typeof value === 'number' ? value : Number(value);
25
+ return Number.isInteger(parsed) && parsed > 0 && parsed <= 65535 ? parsed : null;
26
+ }
27
+ export function getDefaultPortForProtocol(protocol) {
28
+ if (protocol === 'http:') {
29
+ return 80;
30
+ }
31
+ if (protocol === 'https:') {
32
+ return 443;
33
+ }
34
+ return null;
35
+ }
36
+ export function resolveAppPortFromLocation(location) {
37
+ return parsePortNumber(location.port) ?? getDefaultPortForProtocol(location.protocol) ?? 0;
38
+ }
39
+ export function resolveSweetlinkWsPortForAppPort(appPort) {
40
+ const parsedAppPort = parsePortNumber(appPort);
41
+ return parsedAppPort ? parsedAppPort + WS_PORT_OFFSET : DEFAULT_WS_PORT;
42
+ }
43
+ export function resolveSweetlinkWsPortFromLocation(location) {
44
+ return resolveSweetlinkWsPortForAppPort(resolveAppPortFromLocation(location));
45
+ }
46
+ function getRecord(value) {
47
+ return value && typeof value === 'object' ? value : null;
48
+ }
49
+ function getProcessEnv() {
50
+ if (typeof process === 'undefined')
51
+ return {};
52
+ return process.env;
53
+ }
54
+ function normalizeWsPath(value) {
55
+ if (typeof value !== 'string' || value.trim() === '')
56
+ return null;
57
+ const path = value.trim();
58
+ return path.startsWith('/') ? path : `/${path}`;
59
+ }
60
+ function normalizeWsUrl(value) {
61
+ if (typeof value !== 'string' || value.trim() === '')
62
+ return null;
63
+ try {
64
+ const url = new URL(value);
65
+ return url.protocol === 'ws:' || url.protocol === 'wss:' ? url.toString() : null;
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ }
71
+ /**
72
+ * Read Sweetlink connection hints injected by framework integrations.
73
+ *
74
+ * Vite injects `window.__SWEETLINK__`; Next.js exposes the same values through
75
+ * `NEXT_PUBLIC_SWEETLINK_*` env replacement. Explicit user options should still
76
+ * take precedence over these hints.
77
+ */
78
+ export function getSweetlinkRuntimeConfig(globalValue = globalThis) {
79
+ const globalRecord = getRecord(globalValue);
80
+ const nested = getRecord(globalRecord?.__SWEETLINK__);
81
+ const env = getProcessEnv();
82
+ const appPort = globalRecord?.__SWEETLINK_APP_PORT__ ?? nested?.appPort ?? env.NEXT_PUBLIC_SWEETLINK_APP_PORT;
83
+ const wsPort = globalRecord?.__SWEETLINK_WS_PORT__ ?? nested?.wsPort ?? env.NEXT_PUBLIC_SWEETLINK_WS_PORT;
84
+ return {
85
+ appPort: typeof appPort === 'string' || typeof appPort === 'number' ? appPort : null,
86
+ wsPort: typeof wsPort === 'string' || typeof wsPort === 'number' ? wsPort : null,
87
+ wsUrl: normalizeWsUrl(globalRecord?.__SWEETLINK_WS_URL__ ?? nested?.wsUrl) ??
88
+ normalizeWsUrl(env.NEXT_PUBLIC_SWEETLINK_WS_URL),
89
+ wsPath: normalizeWsPath(globalRecord?.__SWEETLINK_WS_PATH__ ?? nested?.wsPath) ??
90
+ normalizeWsPath(env.NEXT_PUBLIC_SWEETLINK_WS_PATH),
91
+ };
92
+ }
93
+ export function resolveAppPortFromRuntimeConfig(location, config) {
94
+ return parsePortNumber(config.appPort) ?? resolveAppPortFromLocation(location);
95
+ }
96
+ export function createSameOriginSweetlinkWsUrl(location, path = SWEETLINK_WS_PATH) {
97
+ if (!location.host)
98
+ return null;
99
+ const protocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
100
+ return `${protocol}//${location.host}${normalizeWsPath(path) ?? SWEETLINK_WS_PATH}`;
101
+ }
102
+ export function isLocalDevelopmentHostname(hostname) {
103
+ const normalized = hostname.toLowerCase().replace(/\.$/, '');
104
+ return (normalized === 'localhost' ||
105
+ normalized === '127.0.0.1' ||
106
+ normalized === '::1' ||
107
+ normalized === '[::1]' ||
108
+ normalized.endsWith('.localhost') ||
109
+ normalized.endsWith('.test') ||
110
+ normalized.endsWith('.local'));
111
+ }
112
+ export function parseLocalDevelopmentUrl(value) {
113
+ if (!value?.trim()) {
114
+ return null;
115
+ }
116
+ try {
117
+ const url = new URL(value);
118
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
119
+ return null;
120
+ }
121
+ return isLocalDevelopmentHostname(url.hostname) ? url : null;
122
+ }
123
+ catch {
124
+ return null;
125
+ }
126
+ }
127
+ export function isLocalDevelopmentOrigin(origin) {
128
+ const url = parseLocalDevelopmentUrl(origin);
129
+ return Boolean(url && url.pathname === '/' && !url.search && !url.hash && !url.username && !url.password);
130
+ }
131
+ export function resolveAppPortFromLocalUrl(value) {
132
+ const url = parseLocalDevelopmentUrl(value);
133
+ if (!url) {
134
+ return null;
135
+ }
136
+ return parsePortNumber(url.port) ?? getDefaultPortForProtocol(url.protocol);
137
+ }
138
+ export function localOriginMatchesAppPort(origin, appPort) {
139
+ const parsedAppPort = parsePortNumber(appPort);
140
+ const originAppPort = isLocalDevelopmentOrigin(origin)
141
+ ? resolveAppPortFromLocalUrl(origin)
142
+ : null;
143
+ return parsedAppPort !== null && originAppPort === parsedAppPort;
144
+ }
18
145
  // ============================================================================
19
146
  // Type Guards
20
147
  // ============================================================================
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,8CAA8C;AAC9C,+EAA+E;AAE/E,sDAAsD;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,4DAA4D;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC,6DAA6D;AAC7D,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC,4CAA4C;AAC5C,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AA2evC,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,MAAM,IAAI,KAAK;QACf,OAAQ,KAAiC,CAAC,IAAI,KAAK,QAAQ,CAC5D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,IAAI,KAAK;QAChB,SAAS,IAAI,KAAK;QAClB,WAAW,IAAI,KAAK;QACpB,OAAQ,KAAiC,CAAC,KAAK,KAAK,QAAQ;QAC5D,OAAQ,KAAiC,CAAC,OAAO,KAAK,QAAQ;QAC9D,OAAQ,KAAiC,CAAC,SAAS,KAAK,QAAQ,CACjE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,CACL,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAC/B,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;QAClC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAClC,CAAC;AACJ,CAAC;AAcD,SAAS,mBAAmB,CAAC,KAAc;IACzC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,CACL,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;QAClC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAC7B,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAC/B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAQD,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,CACL,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;QAChC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAC3B,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAC7B,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAc;IAEd,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAE,KAAiC,CAAC,OAAO,CAAC,CAAC;AACnG,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAc;IAEd,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAChD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,GAAG,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAc;IAEd,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAE,KAAiC,CAAC,IAAI,CAAC,CAAC;AAChG,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACnE,CAAC;AAED,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,eAAe,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/vite.d.ts CHANGED
@@ -33,6 +33,17 @@ export interface SweetlinkPluginOptions {
33
33
  * Default: false
34
34
  */
35
35
  headed?: boolean;
36
+ /**
37
+ * Expose Sweetlink on the app origin at /__sweetlink.
38
+ * This lets HTTPS local proxies such as Portless use wss://<app>/__sweetlink.
39
+ * Default: true
40
+ */
41
+ sameOrigin?: boolean;
42
+ /**
43
+ * Same-origin WebSocket path. Only used when sameOrigin is enabled.
44
+ * Default: /__sweetlink
45
+ */
46
+ wsPath?: string;
36
47
  }
37
48
  /**
38
49
  * Vite plugin for automatic Sweetlink integration
@@ -1 +1 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAInC,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,CAyDtE;AAGD,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAInC,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,CA+EtE;AAGD,eAAe,SAAS,CAAC"}
package/dist/vite.js CHANGED
@@ -15,11 +15,14 @@
15
15
  * ```
16
16
  */
17
17
  import { closeSweetlink, initSweetlink } from './server/index.js';
18
- import { WS_PORT_OFFSET } from './types.js';
18
+ import { SWEETLINK_WS_PATH, WS_PORT_OFFSET } from './types.js';
19
19
  /**
20
20
  * Vite plugin for automatic Sweetlink integration
21
21
  */
22
22
  export function sweetlink(options = {}) {
23
+ let appPort = 5173;
24
+ let actualWsPort = appPort + WS_PORT_OFFSET;
25
+ const wsPath = options.wsPath ?? SWEETLINK_WS_PATH;
23
26
  return {
24
27
  name: 'sweetlink',
25
28
  apply: 'serve', // Only run in dev mode
@@ -30,12 +33,19 @@ export function sweetlink(options = {}) {
30
33
  await closeSweetlink();
31
34
  const address = viteServer.httpServer?.address();
32
35
  const vitePort = typeof address === 'object' && address ? address.port : 5173;
36
+ appPort = vitePort;
33
37
  // Calculate WebSocket port (matches GlobalDevBar's calculation)
34
38
  const wsPort = options.port ?? vitePort + WS_PORT_OFFSET;
39
+ actualWsPort = wsPort;
35
40
  initSweetlink({
36
41
  port: wsPort,
37
42
  appPort: vitePort,
43
+ appServer: options.sameOrigin === false
44
+ ? undefined
45
+ : viteServer.httpServer,
46
+ wsPath,
38
47
  onReady: (actualPort) => {
48
+ actualWsPort = actualPort;
39
49
  if (actualPort !== wsPort) {
40
50
  console.log(`[Sweetlink] Using port ${actualPort} (${wsPort} was in use)`);
41
51
  }
@@ -61,6 +71,15 @@ export function sweetlink(options = {}) {
61
71
  }
62
72
  });
63
73
  },
74
+ transformIndexHtml() {
75
+ return [
76
+ {
77
+ tag: 'script',
78
+ injectTo: 'head-prepend',
79
+ children: `window.__SWEETLINK__=Object.assign({},window.__SWEETLINK__,{appPort:${appPort},wsPort:${actualWsPort},wsPath:${JSON.stringify(wsPath)}});window.__SWEETLINK_APP_PORT__=${appPort};window.__SWEETLINK_WS_PORT__=${actualWsPort};window.__SWEETLINK_WS_PATH__=${JSON.stringify(wsPath)};`,
80
+ },
81
+ ];
82
+ },
64
83
  buildEnd() {
65
84
  // Clean up on build end (though this mainly matters for serve mode)
66
85
  closeSweetlink();
package/dist/vite.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAwB5C;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,UAAkC,EAAE;IAC5D,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,OAAO,EAAE,uBAAuB;QAEvC,eAAe,CAAC,UAAU;YACxB,4CAA4C;YAC5C,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;gBAClD,0DAA0D;gBAC1D,MAAM,cAAc,EAAE,CAAC;gBAEvB,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;gBACjD,MAAM,QAAQ,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAE9E,gEAAgE;gBAChE,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,GAAG,cAAc,CAAC;gBAEzD,aAAa,CAAC;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,QAAQ;oBACjB,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE;wBACtB,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;4BAC1B,OAAO,CAAC,GAAG,CAAC,0BAA0B,UAAU,KAAK,MAAM,cAAc,CAAC,CAAC;wBAC7E,CAAC;oBACH,CAAC;iBACF,CAAC,CAAC;gBAEH,OAAO,CAAC,GAAG,CAAC,uDAAuD,QAAQ,GAAG,CAAC,CAAC;gBAEhF,kCAAkC;gBAClC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAG,oBAAoB,QAAQ,EAAE,CAAC;oBAC3C,MAAM,CAAC,oBAAoB,CAAC;yBACzB,IAAI,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;wBACzB,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;6BACzD,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;4BACd,OAAO,CAAC,GAAG,CAAC,oCAAoC,KAAK,CAAC,IAAI,aAAa,GAAG,GAAG,CAAC,CAAC;wBACjF,CAAC,CAAC;6BACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;4BACb,OAAO,CAAC,IAAI,CACV,uCAAuC,EACvC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CACzC,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC;yBACD,KAAK,CAAC,GAAG,EAAE;wBACV,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;oBAC1D,CAAC,CAAC,CAAC;gBACP,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,QAAQ;YACN,oEAAoE;YACpE,cAAc,EAAE,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iCAAiC;AACjC,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ytspar/sweetlink",
3
- "version": "1.21.0",
3
+ "version": "1.23.0",
4
4
  "description": "Autonomous development toolkit for AI agents - screenshots, DOM queries, console logs, and JavaScript execution via WebSocket and Chrome DevTools Protocol",
5
5
  "keywords": [
6
6
  "autonomous-development",
@@ -1,37 +0,0 @@
1
- /**
2
- * Minimal ANSI escape parser for the terminal player.
3
- *
4
- * Handles the subset that test runners typically emit:
5
- * - SGR (colour/style) codes: ESC[Nm ESC[N;Nm ESC[N;N;Nm
6
- * - 256-color: ESC[38;5;Nm ESC[48;5;Nm
7
- * - Truecolor: ESC[38;2;R;G;Bm ESC[48;2;R;G;Bm
8
- * - Reset (plain ESC[m, ESC[0m)
9
- * - Erase line (ESC[K) — just clear from cursor to EOL
10
- *
11
- * Cursor-positioning escapes (ESC[NA, ESC[H, etc.) are stripped — the
12
- * player models the screen as a flat scrollback buffer, not a TUI grid.
13
- */
14
- export interface AnsiSpan {
15
- text: string;
16
- /** Inline CSS — passed straight to `style="..."` so the player has no extra deps. */
17
- style: string;
18
- }
19
- /** State carried across a stream of writes (so colour persists between chunks). */
20
- export interface AnsiState {
21
- fg: string | null;
22
- bg: string | null;
23
- bold: boolean;
24
- italic: boolean;
25
- underline: boolean;
26
- dim: boolean;
27
- }
28
- export declare function freshState(): AnsiState;
29
- /**
30
- * Parse a chunk of bytes into HTML-ready spans, advancing `state` so
31
- * subsequent chunks pick up where this one left off.
32
- *
33
- * The returned string is HTML — caller must escape any user data NOT
34
- * coming from the recorded stream (it's intended to be embedded inline).
35
- */
36
- export declare function ansiToHtml(input: string, state: AnsiState): string;
37
- //# sourceMappingURL=ansi.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/term/ansi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;CACf;AAED,mFAAmF;AACnF,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,wBAAgB,UAAU,IAAI,SAAS,CAEtC;AAyHD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAwClE"}
package/dist/term/ansi.js DELETED
@@ -1,205 +0,0 @@
1
- /**
2
- * Minimal ANSI escape parser for the terminal player.
3
- *
4
- * Handles the subset that test runners typically emit:
5
- * - SGR (colour/style) codes: ESC[Nm ESC[N;Nm ESC[N;N;Nm
6
- * - 256-color: ESC[38;5;Nm ESC[48;5;Nm
7
- * - Truecolor: ESC[38;2;R;G;Bm ESC[48;2;R;G;Bm
8
- * - Reset (plain ESC[m, ESC[0m)
9
- * - Erase line (ESC[K) — just clear from cursor to EOL
10
- *
11
- * Cursor-positioning escapes (ESC[NA, ESC[H, etc.) are stripped — the
12
- * player models the screen as a flat scrollback buffer, not a TUI grid.
13
- */
14
- export function freshState() {
15
- return { fg: null, bg: null, bold: false, italic: false, underline: false, dim: false };
16
- }
17
- const BASIC_FG = {
18
- 30: '#000',
19
- 31: '#cd3131',
20
- 32: '#0dbc79',
21
- 33: '#e5e510',
22
- 34: '#2472c8',
23
- 35: '#bc3fbc',
24
- 36: '#11a8cd',
25
- 37: '#e5e5e5',
26
- 90: '#666',
27
- 91: '#f14c4c',
28
- 92: '#23d18b',
29
- 93: '#f5f543',
30
- 94: '#3b8eea',
31
- 95: '#d670d6',
32
- 96: '#29b8db',
33
- 97: '#fff',
34
- };
35
- const BASIC_BG = {
36
- 40: '#000',
37
- 41: '#cd3131',
38
- 42: '#0dbc79',
39
- 43: '#e5e510',
40
- 44: '#2472c8',
41
- 45: '#bc3fbc',
42
- 46: '#11a8cd',
43
- 47: '#e5e5e5',
44
- 100: '#666',
45
- 101: '#f14c4c',
46
- 102: '#23d18b',
47
- 103: '#f5f543',
48
- 104: '#3b8eea',
49
- 105: '#d670d6',
50
- 106: '#29b8db',
51
- 107: '#fff',
52
- };
53
- function color256(n) {
54
- if (n < 16) {
55
- const lut = [
56
- '#000',
57
- '#cd3131',
58
- '#0dbc79',
59
- '#e5e510',
60
- '#2472c8',
61
- '#bc3fbc',
62
- '#11a8cd',
63
- '#e5e5e5',
64
- '#666',
65
- '#f14c4c',
66
- '#23d18b',
67
- '#f5f543',
68
- '#3b8eea',
69
- '#d670d6',
70
- '#29b8db',
71
- '#fff',
72
- ];
73
- return lut[n];
74
- }
75
- if (n < 232) {
76
- const i = n - 16;
77
- const r = Math.floor(i / 36) * 51;
78
- const g = Math.floor((i % 36) / 6) * 51;
79
- const b = (i % 6) * 51;
80
- return `rgb(${r},${g},${b})`;
81
- }
82
- const v = (n - 232) * 10 + 8;
83
- return `rgb(${v},${v},${v})`;
84
- }
85
- function applyParams(state, params) {
86
- let i = 0;
87
- while (i < params.length) {
88
- const p = params[i];
89
- if (p === 0) {
90
- Object.assign(state, freshState());
91
- }
92
- else if (p === 1)
93
- state.bold = true;
94
- else if (p === 2)
95
- state.dim = true;
96
- else if (p === 3)
97
- state.italic = true;
98
- else if (p === 4)
99
- state.underline = true;
100
- else if (p === 22) {
101
- state.bold = false;
102
- state.dim = false;
103
- }
104
- else if (p === 23)
105
- state.italic = false;
106
- else if (p === 24)
107
- state.underline = false;
108
- else if (p === 39)
109
- state.fg = null;
110
- else if (p === 49)
111
- state.bg = null;
112
- else if (BASIC_FG[p])
113
- state.fg = BASIC_FG[p];
114
- else if (BASIC_BG[p])
115
- state.bg = BASIC_BG[p];
116
- else if (p === 38 || p === 48) {
117
- const isFg = p === 38;
118
- const mode = params[i + 1];
119
- if (mode === 5 && params[i + 2] !== undefined) {
120
- const c = color256(params[i + 2]);
121
- if (isFg)
122
- state.fg = c;
123
- else
124
- state.bg = c;
125
- i += 2;
126
- }
127
- else if (mode === 2 && params[i + 4] !== undefined) {
128
- const c = `rgb(${params[i + 2]},${params[i + 3]},${params[i + 4]})`;
129
- if (isFg)
130
- state.fg = c;
131
- else
132
- state.bg = c;
133
- i += 4;
134
- }
135
- }
136
- i++;
137
- }
138
- }
139
- function styleOf(state) {
140
- const parts = [];
141
- if (state.fg)
142
- parts.push(`color:${state.fg}`);
143
- if (state.bg)
144
- parts.push(`background:${state.bg}`);
145
- if (state.bold)
146
- parts.push('font-weight:600');
147
- if (state.italic)
148
- parts.push('font-style:italic');
149
- if (state.underline)
150
- parts.push('text-decoration:underline');
151
- if (state.dim)
152
- parts.push('opacity:0.7');
153
- return parts.join(';');
154
- }
155
- /**
156
- * Parse a chunk of bytes into HTML-ready spans, advancing `state` so
157
- * subsequent chunks pick up where this one left off.
158
- *
159
- * The returned string is HTML — caller must escape any user data NOT
160
- * coming from the recorded stream (it's intended to be embedded inline).
161
- */
162
- export function ansiToHtml(input, state) {
163
- const ESC = '';
164
- let i = 0;
165
- let out = '';
166
- let buffer = '';
167
- const flush = () => {
168
- if (!buffer)
169
- return;
170
- const escaped = buffer.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
171
- const style = styleOf(state);
172
- if (style) {
173
- out += `<span style="${style}">${escaped}</span>`;
174
- }
175
- else {
176
- out += escaped;
177
- }
178
- buffer = '';
179
- };
180
- while (i < input.length) {
181
- const ch = input[i];
182
- if (ch === ESC && input[i + 1] === '[') {
183
- flush();
184
- // Read up to the final byte (a letter)
185
- let j = i + 2;
186
- while (j < input.length && !/[A-Za-z]/.test(input[j]))
187
- j++;
188
- const final = input[j];
189
- const body = input.slice(i + 2, j);
190
- if (final === 'm') {
191
- const params = body.split(';').map((s) => parseInt(s, 10) || 0);
192
- applyParams(state, params.length === 0 ? [0] : params);
193
- }
194
- // K, A, B, C, D, H, J, etc. are ignored (not modeled by the flat scrollback).
195
- i = j + 1;
196
- }
197
- else {
198
- buffer += ch;
199
- i++;
200
- }
201
- }
202
- flush();
203
- return out;
204
- }
205
- //# sourceMappingURL=ansi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/term/ansi.ts"],"names":[],"mappings":"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"}