@vibecodeapp/sdk 0.2.1 → 0.4.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.
- package/dist/dev/StatusBar.web.d.ts +24 -0
- package/dist/dev/StatusBar.web.d.ts.map +1 -0
- package/dist/dev/StatusBar.web.js +40 -0
- package/dist/dev/StatusBar.web.js.map +1 -0
- package/dist/dev/VibeDevWrapper.d.ts +1 -0
- package/dist/dev/VibeDevWrapper.d.ts.map +1 -1
- package/dist/dev/VibeDevWrapper.js +3 -2
- package/dist/dev/VibeDevWrapper.js.map +1 -1
- package/dist/dev/error-boundry/ErrorBoundary.d.ts +8 -0
- package/dist/dev/error-boundry/ErrorBoundary.d.ts.map +1 -0
- package/dist/dev/error-boundry/ErrorBoundary.js +5 -0
- package/dist/dev/error-boundry/ErrorBoundary.js.map +1 -0
- package/dist/dev/error-boundry/ErrorBoundary.web.d.ts +17 -0
- package/dist/dev/error-boundry/ErrorBoundary.web.d.ts.map +1 -0
- package/dist/dev/error-boundry/ErrorBoundary.web.js +68 -0
- package/dist/dev/error-boundry/ErrorBoundary.web.js.map +1 -0
- package/dist/dev/safe-inserts/safe-insets.d.ts.map +1 -0
- package/dist/dev/safe-inserts/safe-insets.js.map +1 -0
- package/dist/dev/{safe-insets.web.d.ts → safe-inserts/safe-insets.web.d.ts} +1 -1
- package/dist/dev/safe-inserts/safe-insets.web.d.ts.map +1 -0
- package/dist/dev/{safe-insets.web.js → safe-inserts/safe-insets.web.js} +1 -11
- package/dist/dev/{safe-insets.web.js.map → safe-inserts/safe-insets.web.js.map} +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/polyfills/fetch.web.d.ts.map +1 -1
- package/dist/polyfills/fetch.web.js +16 -6
- package/dist/polyfills/fetch.web.js.map +1 -1
- package/dist/polyfills/maps.web.d.ts +1 -1
- package/dist/polyfills/maps.web.d.ts.map +1 -1
- package/dist/polyfills/maps.web.js.map +1 -1
- package/dist/polyfills/refresh-control-component.d.ts +1 -1
- package/dist/polyfills/refresh-control-component.d.ts.map +1 -1
- package/dist/polyfills/refresh-control-component.js +6 -1
- package/dist/polyfills/refresh-control-component.js.map +1 -1
- package/metro/index.cjs +24 -0
- package/metro/transformer.cjs +1 -1
- package/package.json +3 -2
- package/dist/dev/safe-insets.d.ts.map +0 -1
- package/dist/dev/safe-insets.js.map +0 -1
- package/dist/dev/safe-insets.web.d.ts.map +0 -1
- /package/dist/dev/{safe-insets.d.ts → safe-inserts/safe-insets.d.ts} +0 -0
- /package/dist/dev/{safe-insets.js → safe-inserts/safe-insets.js} +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web version of StatusBar - posts color to parent iframe
|
|
3
|
+
*
|
|
4
|
+
* On web, StatusBar doesn't render anything visible.
|
|
5
|
+
* It just posts the status bar color to the parent iframe.
|
|
6
|
+
*/
|
|
7
|
+
type StatusBarStyle = 'auto' | 'inverted' | 'light' | 'dark';
|
|
8
|
+
type StatusBarAnimation = 'none' | 'fade' | 'slide';
|
|
9
|
+
interface StatusBarProps {
|
|
10
|
+
style?: StatusBarStyle;
|
|
11
|
+
animated?: boolean;
|
|
12
|
+
hidden?: boolean;
|
|
13
|
+
backgroundColor?: string;
|
|
14
|
+
translucent?: boolean;
|
|
15
|
+
networkActivityIndicatorVisible?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function StatusBar({ style }: StatusBarProps): null;
|
|
18
|
+
export declare const setStatusBarStyle: (style: StatusBarStyle, _animated?: boolean) => void;
|
|
19
|
+
export declare const setStatusBarHidden: (_hidden: boolean, _animation?: StatusBarAnimation) => void;
|
|
20
|
+
export declare const setStatusBarBackgroundColor: (_backgroundColor: string, _animated?: boolean) => void;
|
|
21
|
+
export declare const setStatusBarNetworkActivityIndicatorVisible: (_visible: boolean) => void;
|
|
22
|
+
export declare const setStatusBarTranslucent: (_translucent: boolean) => void;
|
|
23
|
+
export type { StatusBarStyle, StatusBarAnimation, StatusBarProps };
|
|
24
|
+
//# sourceMappingURL=StatusBar.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusBar.web.d.ts","sourceRoot":"","sources":["../../src/dev/StatusBar.web.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,KAAK,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAA;AAC5D,KAAK,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAEnD,UAAU,cAAc;IACvB,KAAK,CAAC,EAAE,cAAc,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,+BAA+B,CAAC,EAAE,OAAO,CAAA;CACzC;AA0BD,wBAAgB,SAAS,CAAC,EAAE,KAAc,EAAE,EAAE,cAAc,QAM3D;AAGD,eAAO,MAAM,iBAAiB,GAAI,OAAO,cAAc,EAAE,YAAY,OAAO,SAE3E,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC9B,SAAS,OAAO,EAChB,aAAa,kBAAkB,SACzB,CAAA;AAEP,eAAO,MAAM,2BAA2B,GACvC,kBAAkB,MAAM,EACxB,YAAY,OAAO,SACb,CAAA;AAEP,eAAO,MAAM,2CAA2C,GACvD,UAAU,OAAO,SACX,CAAA;AAEP,eAAO,MAAM,uBAAuB,GAAI,cAAc,OAAO,SAAO,CAAA;AAEpE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web version of StatusBar - posts color to parent iframe
|
|
3
|
+
*
|
|
4
|
+
* On web, StatusBar doesn't render anything visible.
|
|
5
|
+
* It just posts the status bar color to the parent iframe.
|
|
6
|
+
*/
|
|
7
|
+
import { useEffect } from 'react';
|
|
8
|
+
function postColorToParent(color) {
|
|
9
|
+
try {
|
|
10
|
+
if (typeof window !== 'undefined' &&
|
|
11
|
+
window.parent &&
|
|
12
|
+
window.parent !== window) {
|
|
13
|
+
window.parent.postMessage({ type: 'vibecode:statusbar:color', color, timestamp: Date.now() }, '*');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
// Silently fail
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function styleToColor(style = 'auto') {
|
|
21
|
+
if (style === 'dark') {
|
|
22
|
+
return '#000000';
|
|
23
|
+
}
|
|
24
|
+
return '#FFFFFF';
|
|
25
|
+
}
|
|
26
|
+
export function StatusBar({ style = 'auto' }) {
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
postColorToParent(styleToColor(style));
|
|
29
|
+
}, [style]);
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
// No-op functions for web
|
|
33
|
+
export const setStatusBarStyle = (style, _animated) => {
|
|
34
|
+
postColorToParent(styleToColor(style));
|
|
35
|
+
};
|
|
36
|
+
export const setStatusBarHidden = (_hidden, _animation) => { };
|
|
37
|
+
export const setStatusBarBackgroundColor = (_backgroundColor, _animated) => { };
|
|
38
|
+
export const setStatusBarNetworkActivityIndicatorVisible = (_visible) => { };
|
|
39
|
+
export const setStatusBarTranslucent = (_translucent) => { };
|
|
40
|
+
//# sourceMappingURL=StatusBar.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusBar.web.js","sourceRoot":"","sources":["../../src/dev/StatusBar.web.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAcjC,SAAS,iBAAiB,CAAC,KAAa;IACvC,IAAI,CAAC;QACJ,IACC,OAAO,MAAM,KAAK,WAAW;YAC7B,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM,KAAK,MAAM,EACvB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,WAAW,CACxB,EAAE,IAAI,EAAE,0BAA0B,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAClE,GAAG,CACH,CAAA;QACF,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,gBAAgB;IACjB,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,QAAwB,MAAM;IACnD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,SAAS,CAAA;IACjB,CAAC;IACD,OAAO,SAAS,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,EAAkB;IAC3D,SAAS,CAAC,GAAG,EAAE;QACd,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAA;IACvC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,0BAA0B;AAC1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAqB,EAAE,SAAmB,EAAE,EAAE;IAC/E,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAA;AACvC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CACjC,OAAgB,EAChB,UAA+B,EAC9B,EAAE,GAAE,CAAC,CAAA;AAEP,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAC1C,gBAAwB,EACxB,SAAmB,EAClB,EAAE,GAAE,CAAC,CAAA;AAEP,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAC1D,QAAiB,EAChB,EAAE,GAAE,CAAC,CAAA;AAEP,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,YAAqB,EAAE,EAAE,GAAE,CAAC,CAAA"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Automatically wraps the root layout with necessary providers.
|
|
5
5
|
* Currently includes VibeSafeInsets for safe area handling on web.
|
|
6
|
+
* VibeErrorBoundary for error reporting on web.
|
|
6
7
|
*/
|
|
7
8
|
import type { PropsWithChildren } from 'react';
|
|
8
9
|
export declare function VibeDevWrapper({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VibeDevWrapper.d.ts","sourceRoot":"","sources":["../../src/dev/VibeDevWrapper.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"VibeDevWrapper.d.ts","sourceRoot":"","sources":["../../src/dev/VibeDevWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAI9C,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAQ7D"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { VibeErrorBoundary } from './error-boundry/ErrorBoundary';
|
|
3
|
+
import { VibeSafeInsets } from './safe-inserts/safe-insets';
|
|
3
4
|
export function VibeDevWrapper({ children }) {
|
|
4
|
-
return _jsx(VibeSafeInsets, { children: children });
|
|
5
|
+
return (_jsx(VibeErrorBoundary, { children: _jsx(VibeSafeInsets, { children: children }) }));
|
|
5
6
|
}
|
|
6
7
|
//# sourceMappingURL=VibeDevWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VibeDevWrapper.js","sourceRoot":"","sources":["../../src/dev/VibeDevWrapper.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"VibeDevWrapper.js","sourceRoot":"","sources":["../../src/dev/VibeDevWrapper.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC7D,OAAO,CACN,KAAC,iBAAiB,cACjB,KAAC,cAAc,cACb,QAAQ,GACO,GACE,CACpB,CAAA;AACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native version of ErrorBoundary - pass-through
|
|
3
|
+
*
|
|
4
|
+
* On native platforms, this is a no-op that just renders children.
|
|
5
|
+
*/
|
|
6
|
+
import type { PropsWithChildren } from 'react';
|
|
7
|
+
export declare function VibeErrorBoundary({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=ErrorBoundary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../src/dev/error-boundry/ErrorBoundary.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAE9C,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAEhE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.js","sourceRoot":"","sources":["../../../src/dev/error-boundry/ErrorBoundary.tsx"],"names":[],"mappings":";AAQA,MAAM,UAAU,iBAAiB,CAAC,EAAE,QAAQ,EAAqB;IAChE,OAAO,4BAAG,QAAQ,GAAI,CAAA;AACvB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web version of ErrorBoundary - posts errors to parent iframe
|
|
3
|
+
*
|
|
4
|
+
* Catches React errors and global errors, sends them to parent via postMessage.
|
|
5
|
+
* No fallback UI - just reports errors and continues rendering.
|
|
6
|
+
* Hides Expo's error overlay by removing it when it appears.
|
|
7
|
+
*/
|
|
8
|
+
import React from 'react';
|
|
9
|
+
interface Props {
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export declare class VibeErrorBoundary extends React.Component<Props> {
|
|
13
|
+
componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
|
|
14
|
+
render(): React.ReactNode;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=ErrorBoundary.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.web.d.ts","sourceRoot":"","sources":["../../../src/dev/error-boundry/ErrorBoundary.web.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AAsEzB,UAAU,KAAK;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACzB;AAED,qBAAa,iBAAkB,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;IAC5D,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;IAI1D,MAAM;CAGN"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web version of ErrorBoundary - posts errors to parent iframe
|
|
3
|
+
*
|
|
4
|
+
* Catches React errors and global errors, sends them to parent via postMessage.
|
|
5
|
+
* No fallback UI - just reports errors and continues rendering.
|
|
6
|
+
* Hides Expo's error overlay by removing it when it appears.
|
|
7
|
+
*/
|
|
8
|
+
import React from 'react';
|
|
9
|
+
// Hide Expo's error overlay by removing it when it appears
|
|
10
|
+
if (typeof window !== 'undefined' && typeof MutationObserver !== 'undefined') {
|
|
11
|
+
const observer = new MutationObserver((mutations) => {
|
|
12
|
+
for (const mutation of mutations) {
|
|
13
|
+
mutation.addedNodes.forEach((node) => {
|
|
14
|
+
if (node instanceof HTMLElement && node.id === 'error-overlay') {
|
|
15
|
+
node.remove();
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
observer.observe(document.body, { childList: true });
|
|
21
|
+
}
|
|
22
|
+
function sendErrorToParent(error, errorInfo) {
|
|
23
|
+
try {
|
|
24
|
+
if (typeof window !== 'undefined' &&
|
|
25
|
+
window.parent &&
|
|
26
|
+
window.parent !== window) {
|
|
27
|
+
const err = error;
|
|
28
|
+
window.parent.postMessage({
|
|
29
|
+
type: 'vibecode:error',
|
|
30
|
+
error: {
|
|
31
|
+
message: err?.message || String(error) || 'Unknown error',
|
|
32
|
+
stack: err?.stack,
|
|
33
|
+
componentStack: errorInfo?.componentStack,
|
|
34
|
+
timestamp: Date.now(),
|
|
35
|
+
},
|
|
36
|
+
}, '*');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
// Silently fail
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// Global error listeners
|
|
44
|
+
if (typeof window !== 'undefined') {
|
|
45
|
+
window.addEventListener('error', (event) => {
|
|
46
|
+
event.preventDefault();
|
|
47
|
+
sendErrorToParent(event.error ?? { message: event.message });
|
|
48
|
+
}, true);
|
|
49
|
+
window.addEventListener('unhandledrejection', (event) => {
|
|
50
|
+
event.preventDefault();
|
|
51
|
+
sendErrorToParent(event.reason);
|
|
52
|
+
}, true);
|
|
53
|
+
// Override console.error to intercept errors before they trigger the overlay
|
|
54
|
+
const originalConsoleError = console.error;
|
|
55
|
+
console.error = (...args) => {
|
|
56
|
+
sendErrorToParent(args.map((a) => String(a)).join(' '));
|
|
57
|
+
originalConsoleError.apply(console, args);
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
export class VibeErrorBoundary extends React.Component {
|
|
61
|
+
componentDidCatch(error, errorInfo) {
|
|
62
|
+
sendErrorToParent(error, errorInfo);
|
|
63
|
+
}
|
|
64
|
+
render() {
|
|
65
|
+
return this.props.children;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=ErrorBoundary.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.web.js","sourceRoot":"","sources":["../../../src/dev/error-boundry/ErrorBoundary.web.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,2DAA2D;AAC3D,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,gBAAgB,KAAK,WAAW,EAAE,CAAC;IAC9E,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,SAAS,EAAE,EAAE;QACnD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAClC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACpC,IAAI,IAAI,YAAY,WAAW,IAAI,IAAI,CAAC,EAAE,KAAK,eAAe,EAAE,CAAC;oBAChE,IAAI,CAAC,MAAM,EAAE,CAAA;gBACd,CAAC;YACF,CAAC,CAAC,CAAA;QACH,CAAC;IACF,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACrD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc,EAAE,SAA2B;IACrE,IAAI,CAAC;QACJ,IACC,OAAO,MAAM,KAAK,WAAW;YAC7B,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM,KAAK,MAAM,EACvB,CAAC;YACF,MAAM,GAAG,GAAG,KAAqB,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,WAAW,CACxB;gBACC,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACN,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,eAAe;oBACzD,KAAK,EAAE,GAAG,EAAE,KAAK;oBACjB,cAAc,EAAE,SAAS,EAAE,cAAc;oBACzC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACrB;aACD,EACD,GAAG,CACH,CAAA;QACF,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,gBAAgB;IACjB,CAAC;AACF,CAAC;AAED,yBAAyB;AACzB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACnC,MAAM,CAAC,gBAAgB,CACtB,OAAO,EACP,CAAC,KAAK,EAAE,EAAE;QACT,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,iBAAiB,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7D,CAAC,EACD,IAAI,CACJ,CAAA;IAED,MAAM,CAAC,gBAAgB,CACtB,oBAAoB,EACpB,CAAC,KAAK,EAAE,EAAE;QACT,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAChC,CAAC,EACD,IAAI,CACJ,CAAA;IAED,6EAA6E;IAC7E,MAAM,oBAAoB,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE;QACtC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QACvD,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAA;AACF,CAAC;AAMD,MAAM,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAgB;IAC5D,iBAAiB,CAAC,KAAY,EAAE,SAA0B;QACzD,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IACpC,CAAC;IAED,MAAM;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC3B,CAAC;CACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe-insets.d.ts","sourceRoot":"","sources":["../../../src/dev/safe-inserts/safe-insets.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAE9C,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAE7D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe-insets.js","sourceRoot":"","sources":["../../../src/dev/safe-inserts/safe-insets.tsx"],"names":[],"mappings":";AASA,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC7D,OAAO,4BAAG,QAAQ,GAAI,CAAA;AACvB,CAAC"}
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* Provides SafeAreaInsetsContext for web applications running in a WebView.
|
|
5
5
|
* Listens for postMessage events to receive safe area insets from the parent frame.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import type { PropsWithChildren } from 'react';
|
|
8
8
|
export declare function VibeSafeInsets({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
//# sourceMappingURL=safe-insets.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe-insets.web.d.ts","sourceRoot":"","sources":["../../../src/dev/safe-inserts/safe-insets.web.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAW9C,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA6B7D"}
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
/**
|
|
3
|
-
* Web version of VibeSafeInsets
|
|
4
|
-
*
|
|
5
|
-
* Provides SafeAreaInsetsContext for web applications running in a WebView.
|
|
6
|
-
* Listens for postMessage events to receive safe area insets from the parent frame.
|
|
7
|
-
*/
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
2
|
import { useEffect, useState } from 'react';
|
|
9
|
-
import { Platform } from 'react-native';
|
|
10
3
|
import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
|
|
11
4
|
const DEFAULT_IPHONE_LIKE_WEB_INSETS = {
|
|
12
5
|
top: 44,
|
|
@@ -15,9 +8,6 @@ const DEFAULT_IPHONE_LIKE_WEB_INSETS = {
|
|
|
15
8
|
left: 0,
|
|
16
9
|
};
|
|
17
10
|
export function VibeSafeInsets({ children }) {
|
|
18
|
-
if (Platform.OS !== 'web') {
|
|
19
|
-
return _jsx(_Fragment, { children: children });
|
|
20
|
-
}
|
|
21
11
|
const [insets, setInsets] = useState(DEFAULT_IPHONE_LIKE_WEB_INSETS);
|
|
22
12
|
useEffect(() => {
|
|
23
13
|
const handleMessage = (event) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-insets.web.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"safe-insets.web.js","sourceRoot":"","sources":["../../../src/dev/safe-inserts/safe-insets.web.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,MAAM,8BAA8B,GAAG;IACtC,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,CAAC;CACP,CAAA;AAED,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC7D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,8BAA8B,CAAC,CAAA;IAEpE,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,aAAa,GAAG,CAAC,KAAmB,EAAE,EAAE;YAC7C,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,yBAAyB,EAAE,CAAC;gBACpD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;gBACtD,IACC,OAAO,GAAG,KAAK,QAAQ;oBACvB,OAAO,KAAK,KAAK,QAAQ;oBACzB,OAAO,MAAM,KAAK,QAAQ;oBAC1B,OAAO,IAAI,KAAK,QAAQ,EACvB,CAAC;oBACF,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;gBACxC,CAAC;YACF,CAAC;QACF,CAAC,CAAA;QAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;QACjD,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAA;QAE7D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAClE,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACN,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YAC3C,QAAQ,GACuB,CACjC,CAAA;AACF,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Vibecode SDK - AI-powered mobile app builder toolkit
|
|
3
3
|
*
|
|
4
|
+
* The fetch proxy polyfill is auto-injected via Metro's getModulesRunBeforeMainModule.
|
|
5
|
+
* No manual import required when using withVibecodeMetro in metro.config.js.
|
|
6
|
+
*
|
|
4
7
|
* @packageDocumentation
|
|
5
8
|
*/
|
|
6
|
-
|
|
7
|
-
export { VibeSafeInsets } from './dev/safe-insets';
|
|
9
|
+
export { VibeSafeInsets } from './dev/safe-inserts/safe-insets';
|
|
8
10
|
export { VibeDevWrapper } from './dev/VibeDevWrapper';
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Vibecode SDK - AI-powered mobile app builder toolkit
|
|
3
3
|
*
|
|
4
|
+
* The fetch proxy polyfill is auto-injected via Metro's getModulesRunBeforeMainModule.
|
|
5
|
+
* No manual import required when using withVibecodeMetro in metro.config.js.
|
|
6
|
+
*
|
|
4
7
|
* @packageDocumentation
|
|
5
8
|
*/
|
|
6
|
-
|
|
7
|
-
// This side-effect import installs the proxied fetch globally
|
|
8
|
-
import './polyfills/fetch.web';
|
|
9
|
-
export { VibeSafeInsets } from './dev/safe-insets';
|
|
9
|
+
export { VibeSafeInsets } from './dev/safe-inserts/safe-insets';
|
|
10
10
|
export { VibeDevWrapper } from './dev/VibeDevWrapper';
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.web.d.ts","sourceRoot":"","sources":["../../src/polyfills/fetch.web.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"fetch.web.d.ts","sourceRoot":"","sources":["../../src/polyfills/fetch.web.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkFH;;;GAGG;AACH,wBAAsB,KAAK,CAC1B,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GAChB,OAAO,CAAC,QAAQ,CAAC,CAiDnB"}
|
|
@@ -6,6 +6,11 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Auto-configures on import - no manual setup required.
|
|
8
8
|
*/
|
|
9
|
+
// Symbol to mark that we've already initialized (prevents double-init)
|
|
10
|
+
const VIBECODE_FETCH_INSTALLED = Symbol.for('vibecode.fetch.installed');
|
|
11
|
+
// Check if already initialized to prevent double-wrapping
|
|
12
|
+
const alreadyInstalled = typeof globalThis !== 'undefined' &&
|
|
13
|
+
globalThis[VIBECODE_FETCH_INSTALLED];
|
|
9
14
|
// Constants
|
|
10
15
|
const PROXY_HOST = 'proxy.vibecodeapp.com';
|
|
11
16
|
const DOMAINS_API_URL = 'https://proxy.vibecodeapp.com/v1/domains';
|
|
@@ -25,8 +30,10 @@ const DEFAULT_PROXIED_DOMAINS = [
|
|
|
25
30
|
'api.resend.com',
|
|
26
31
|
'www.alphavantage.co',
|
|
27
32
|
];
|
|
28
|
-
// Store the original fetch before we do anything
|
|
29
|
-
const originalFetch =
|
|
33
|
+
// Store the original fetch before we do anything (only if not already installed)
|
|
34
|
+
const originalFetch = alreadyInstalled
|
|
35
|
+
? globalThis.fetch
|
|
36
|
+
: globalThis.fetch;
|
|
30
37
|
// Proxy configuration
|
|
31
38
|
const proxiedDomains = new Set(DEFAULT_PROXIED_DOMAINS);
|
|
32
39
|
/**
|
|
@@ -149,12 +156,15 @@ async function fetchAndAddDomains() {
|
|
|
149
156
|
* Install the proxied fetch as the global fetch.
|
|
150
157
|
*/
|
|
151
158
|
function installGlobalFetch() {
|
|
152
|
-
if (typeof globalThis !== 'undefined') {
|
|
159
|
+
if (typeof globalThis !== 'undefined' && !alreadyInstalled) {
|
|
153
160
|
;
|
|
154
161
|
globalThis.fetch = fetch;
|
|
162
|
+
globalThis[VIBECODE_FETCH_INSTALLED] = true;
|
|
155
163
|
}
|
|
156
164
|
}
|
|
157
|
-
// Auto-initialize on import
|
|
158
|
-
|
|
159
|
-
|
|
165
|
+
// Auto-initialize on import (skips if already done)
|
|
166
|
+
if (!alreadyInstalled) {
|
|
167
|
+
installGlobalFetch();
|
|
168
|
+
fetchAndAddDomains();
|
|
169
|
+
}
|
|
160
170
|
//# sourceMappingURL=fetch.web.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.web.js","sourceRoot":"","sources":["../../src/polyfills/fetch.web.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,YAAY;AACZ,MAAM,UAAU,GAAG,uBAAuB,CAAA;AAC1C,MAAM,eAAe,GAAG,0CAA0C,CAAA;AAElE,kCAAkC;AAClC,MAAM,uBAAuB,GAAG;IAC/B,eAAe;IACf,gBAAgB;IAChB,mBAAmB;IACnB,UAAU;IACV,yCAAyC;IACzC,mCAAmC;IACnC,mBAAmB;IACnB,cAAc;IACd,wBAAwB;IACxB,oBAAoB;IACpB,iBAAiB;IACjB,gBAAgB;IAChB,qBAAqB;CACrB,CAAA;AAED,
|
|
1
|
+
{"version":3,"file":"fetch.web.js","sourceRoot":"","sources":["../../src/polyfills/fetch.web.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import React from 'react';
|
|
5
5
|
export declare const PROVIDER_GOOGLE = "google";
|
|
6
6
|
export declare const PROVIDER_DEFAULT: undefined;
|
|
7
|
-
declare const MapView: React.ForwardRefExoticComponent<Omit<
|
|
7
|
+
declare const MapView: React.ForwardRefExoticComponent<Omit<Record<string, unknown>, "ref"> & React.RefAttributes<unknown>>;
|
|
8
8
|
export declare const Marker: any, Callout: any, Polyline: any, Polygon: any, Circle: any, Overlay: any, Heatmap: any, UrlTile: any, WMSTile: any, LocalTile: any;
|
|
9
9
|
export default MapView;
|
|
10
10
|
//# sourceMappingURL=maps.web.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maps.web.d.ts","sourceRoot":"","sources":["../../src/polyfills/maps.web.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,eAAe,WAAW,CAAA;AACvC,eAAO,MAAM,gBAAgB,WAAY,CAAA;AAKzC,QAAA,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"maps.web.d.ts","sourceRoot":"","sources":["../../src/polyfills/maps.web.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,eAAe,WAAW,CAAA;AACvC,eAAO,MAAM,gBAAgB,WAAY,CAAA;AAKzC,QAAA,MAAM,OAAO,sGAOX,CAAA;AAUF,eAAO,MACN,MAAM,OACN,OAAO,OACP,QAAQ,OACR,OAAO,OACP,MAAM,OACN,OAAO,OACP,OAAO,OACP,OAAO,OACP,OAAO,OACP,SAAS,KACC,CAAA;AAEX,eAAe,OAAO,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maps.web.js","sourceRoot":"","sources":["../../src/polyfills/maps.web.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc;AACd,OAAO,UAAU,EAAE,KAAK,OAAO,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAA;AACvC,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAA;AAEzC,MAAM,mBAAmB,GAAI,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"maps.web.js","sourceRoot":"","sources":["../../src/polyfills/maps.web.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc;AACd,OAAO,UAAU,EAAE,KAAK,OAAO,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAA;AACvC,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAA;AAEzC,MAAM,mBAAmB,GAAI,OAAO,CAAC,GAA0C;KAC7E,+BAA+B,CAAA;AAEjC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,KAA8B,EAAE,GAAG,EAAE,EAAE;IACxE,OAAO,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE;QACtC,GAAG;QACH,gBAAgB,EAAE,mBAAmB;QACrC,GAAG,KAAK;QACR,QAAQ,EAAE,eAAe;KACzB,CAAC,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA;AAE/B,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;IACtB,GAAG,OAAO;IACV,eAAe;IACf,gBAAgB;CAChB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACZ,MAAM,EACN,OAAO,EACP,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,EACP,SAAS,GACT,GAAG,OAAO,CAAA;AAEX,eAAe,OAAO,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-control-component.d.ts","sourceRoot":"","sources":["../../src/polyfills/refresh-control-component.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAkD,MAAM,OAAO,CAAA;AAUtE,UAAU,sBAAsB;IAC/B,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,KAAK,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"refresh-control-component.d.ts","sourceRoot":"","sources":["../../src/polyfills/refresh-control-component.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAkD,MAAM,OAAO,CAAA;AAUtE,UAAU,sBAAsB;IAC/B,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACzC,UAAU,EACV,SAAS,EACT,MAAM,EACN,KAAK,EACL,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,OAAO,GACP,EAAE,sBAAsB,2CA2JxB"}
|
|
@@ -74,7 +74,7 @@ export default function WebRefreshControl({ refreshing, tintColor, colors, style
|
|
|
74
74
|
onPanResponderRelease: onPanResponderFinish,
|
|
75
75
|
onPanResponderTerminate: onPanResponderFinish,
|
|
76
76
|
}));
|
|
77
|
-
const refreshIndicatorColor = useMemo(() => (tintColor ? tintColor : colors
|
|
77
|
+
const refreshIndicatorColor = useMemo(() => (tintColor ? tintColor : colors?.length ? colors[0] : null), [colors, tintColor]);
|
|
78
78
|
const containerStyle = useMemo(() => [
|
|
79
79
|
style,
|
|
80
80
|
// @ts-expect-error - overflowY is valid on web
|
|
@@ -95,11 +95,14 @@ export default function WebRefreshControl({ refreshing, tintColor, colors, style
|
|
|
95
95
|
// This is messing with react-native-web's internal implementation
|
|
96
96
|
// Will probably break if anything changes on their end
|
|
97
97
|
const AnimatedContentContainer = useMemo(() => {
|
|
98
|
+
// biome-ignore lint/suspicious/noExplicitAny: Required for react-native-web internals
|
|
98
99
|
const childElement = children;
|
|
99
100
|
if (!childElement?.props?.children?.type)
|
|
100
101
|
return null;
|
|
102
|
+
// biome-ignore lint/suspicious/noExplicitAny: Required for react-native-web internals
|
|
101
103
|
return withAnimated((childProps) => React.createElement(childElement.props.children.type, childProps));
|
|
102
104
|
}, [children]);
|
|
105
|
+
// biome-ignore lint/suspicious/noExplicitAny: Required for react-native-web internals
|
|
103
106
|
const childElement = children;
|
|
104
107
|
const newContentContainerStyle = useMemo(() => [
|
|
105
108
|
childElement?.props?.children?.props?.style,
|
|
@@ -111,8 +114,10 @@ export default function WebRefreshControl({ refreshing, tintColor, colors, style
|
|
|
111
114
|
const newChildren = React.cloneElement(childElement, {}, _jsxs(_Fragment, { children: [_jsx(Animated.View, { style: indicatorTransformStyle, children: _jsx(ActivityIndicator, { color: refreshIndicatorColor || '#999999', size: "small" }) }), _jsx(AnimatedContentContainer, { ...childElement.props.children.props, style: newContentContainerStyle })] }));
|
|
112
115
|
return (_jsx(View, { ref: containerRef, style: containerStyle, ...panResponder.current.panHandlers, children: newChildren }));
|
|
113
116
|
}
|
|
117
|
+
// biome-ignore lint/suspicious/noExplicitAny: Required for react-native-web internals
|
|
114
118
|
function withAnimated(WrappedComponent) {
|
|
115
119
|
const displayName = WrappedComponent.displayName || WrappedComponent.name || 'Component';
|
|
120
|
+
// biome-ignore lint/suspicious/noExplicitAny: Required for react-native-web internals
|
|
116
121
|
class WithAnimated extends React.Component {
|
|
117
122
|
render() {
|
|
118
123
|
return _jsx(WrappedComponent, { ...this.props });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-control-component.js","sourceRoot":"","sources":["../../src/polyfills/refresh-control-component.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,cAAc;AACd,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACtE,+DAA+D;AAC/D,0DAA0D;AAC1D,OAAO,EACN,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACZ,IAAI,GACJ,MAAM,kBAAkB,CAAA;AAazB,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACzC,UAAU,EACV,SAAS,EACT,MAAM,EACN,KAAK,EACL,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,OAAO,GACiB;IACxB,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;IACtC,SAAS,CAAC,GAAG,EAAE;QACd,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;IACjC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,SAAS,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAC7B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEb,MAAM,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"refresh-control-component.js","sourceRoot":"","sources":["../../src/polyfills/refresh-control-component.tsx"],"names":[],"mappings":"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"}
|
package/metro/index.cjs
CHANGED
|
@@ -65,12 +65,28 @@ function createCacheStores(options = {}) {
|
|
|
65
65
|
* @param {number} [options.httpMaxConcurrent] - Max concurrent requests
|
|
66
66
|
* @returns {Object} Enhanced Metro config
|
|
67
67
|
*/
|
|
68
|
+
// Path to the fetch polyfill that auto-initializes the proxy
|
|
69
|
+
const fetchPolyfillPath = path.resolve(distPath, 'polyfills/fetch.web.js')
|
|
70
|
+
|
|
68
71
|
function withVibecodeMetro(config, options = {}) {
|
|
69
72
|
const originalResolveRequest = config.resolver?.resolveRequest
|
|
73
|
+
const originalGetModulesRunBeforeMainModule =
|
|
74
|
+
config.serializer?.getModulesRunBeforeMainModule
|
|
70
75
|
const enableCache = options.enableCache !== false
|
|
71
76
|
|
|
72
77
|
const result = {
|
|
73
78
|
...config,
|
|
79
|
+
serializer: {
|
|
80
|
+
...config.serializer,
|
|
81
|
+
// Inject the fetch polyfill to run before the main module on web
|
|
82
|
+
getModulesRunBeforeMainModule: (entryFilePath) => {
|
|
83
|
+
const originalModules = originalGetModulesRunBeforeMainModule
|
|
84
|
+
? originalGetModulesRunBeforeMainModule(entryFilePath)
|
|
85
|
+
: []
|
|
86
|
+
// Add our fetch polyfill to run before the app starts
|
|
87
|
+
return [...originalModules, fetchPolyfillPath]
|
|
88
|
+
},
|
|
89
|
+
},
|
|
74
90
|
transformer: {
|
|
75
91
|
...config.transformer,
|
|
76
92
|
babelTransformerPath: require.resolve('./transformer.cjs'),
|
|
@@ -135,6 +151,14 @@ function withVibecodeMetro(config, options = {}) {
|
|
|
135
151
|
}
|
|
136
152
|
}
|
|
137
153
|
|
|
154
|
+
// Override expo-status-bar on web to post status bar color to parent iframe
|
|
155
|
+
if (moduleName === 'expo-status-bar' && platform === 'web') {
|
|
156
|
+
return {
|
|
157
|
+
filePath: path.resolve(distPath, 'dev/StatusBar.web.js'),
|
|
158
|
+
type: 'sourceFile',
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
138
162
|
if (originalResolveRequest) {
|
|
139
163
|
return originalResolveRequest(context, moduleName, platform)
|
|
140
164
|
}
|
package/metro/transformer.cjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibecodeapp/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "SDK for Vibecodeapp.com - Web polyfills and Metro configuration for React Native",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -57,7 +57,8 @@
|
|
|
57
57
|
"react-native-web": "*",
|
|
58
58
|
"react-native-safe-area-context": "^5.6.2",
|
|
59
59
|
"react-native-svg-transformer": "*",
|
|
60
|
-
"metro-cache": "*"
|
|
60
|
+
"metro-cache": "*",
|
|
61
|
+
"expo-status-bar": "*"
|
|
61
62
|
},
|
|
62
63
|
"type": "module"
|
|
63
64
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safe-insets.d.ts","sourceRoot":"","sources":["../../src/dev/safe-insets.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAE9C,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAE7D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safe-insets.js","sourceRoot":"","sources":["../../src/dev/safe-insets.tsx"],"names":[],"mappings":";AASA,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC7D,OAAO,4BAAG,QAAQ,GAAI,CAAA;AACvB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safe-insets.web.d.ts","sourceRoot":"","sources":["../../src/dev/safe-insets.web.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAWnE,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAiC7D"}
|
|
File without changes
|
|
File without changes
|