@linktr.ee/linkapp 0.0.28 → 0.0.29
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/sdk/index.d.ts +4 -4
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +4 -4
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/send-message.d.ts +2 -2
- package/dist/sdk/send-message.js +2 -2
- package/dist/sdk/{use-open-popup.d.ts → use-expand-link-app.d.ts} +4 -4
- package/dist/sdk/use-expand-link-app.d.ts.map +1 -0
- package/dist/sdk/{use-open-popup.js → use-expand-link-app.js} +5 -5
- package/dist/sdk/use-expand-link-app.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/components/ThemeStyle.d.ts +0 -30
- package/dist/components/ThemeStyle.d.ts.map +0 -1
- package/dist/components/ThemeStyle.js +0 -33
- package/dist/components/ThemeStyle.js.map +0 -1
- package/dist/components/index.d.ts +0 -1
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js +0 -3
- package/dist/components/index.js.map +0 -1
- package/dist/lib/utils/init-git.d.ts +0 -2
- package/dist/lib/utils/init-git.d.ts.map +0 -1
- package/dist/lib/utils/init-git.js +0 -34
- package/dist/lib/utils/init-git.js.map +0 -1
- package/dist/lib/utils/install-dependencies.d.ts +0 -2
- package/dist/lib/utils/install-dependencies.d.ts.map +0 -1
- package/dist/lib/utils/install-dependencies.js +0 -20
- package/dist/lib/utils/install-dependencies.js.map +0 -1
- package/dist/lib/vite/config-factory.d.ts +0 -12
- package/dist/lib/vite/config-factory.d.ts.map +0 -1
- package/dist/lib/vite/config-factory.js +0 -63
- package/dist/lib/vite/config-factory.js.map +0 -1
- package/dist/lib/vite/plugins/asset-versioning.d.ts +0 -11
- package/dist/lib/vite/plugins/asset-versioning.d.ts.map +0 -1
- package/dist/lib/vite/plugins/asset-versioning.js +0 -52
- package/dist/lib/vite/plugins/asset-versioning.js.map +0 -1
- package/dist/lib/vite/plugins/copy-public.d.ts +0 -12
- package/dist/lib/vite/plugins/copy-public.d.ts.map +0 -1
- package/dist/lib/vite/plugins/copy-public.js +0 -31
- package/dist/lib/vite/plugins/copy-public.js.map +0 -1
- package/dist/lib/vite/plugins/route-handler.d.ts +0 -16
- package/dist/lib/vite/plugins/route-handler.d.ts.map +0 -1
- package/dist/lib/vite/plugins/route-handler.js +0 -108
- package/dist/lib/vite/plugins/route-handler.js.map +0 -1
- package/dist/lib/vite/plugins/window-context.d.ts +0 -7
- package/dist/lib/vite/plugins/window-context.d.ts.map +0 -1
- package/dist/lib/vite/plugins/window-context.js +0 -68
- package/dist/lib/vite/plugins/window-context.js.map +0 -1
- package/dist/sdk/use-open-popup.d.ts.map +0 -1
- package/dist/sdk/use-open-popup.js.map +0 -1
package/dist/sdk/index.d.ts
CHANGED
|
@@ -3,19 +3,19 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @example
|
|
5
5
|
* ```tsx
|
|
6
|
-
* import {
|
|
6
|
+
* import { useExpandLinkApp } from '@linktr.ee/linkapp/sdk'
|
|
7
7
|
*
|
|
8
8
|
* function FeaturedLayout() {
|
|
9
|
-
* const
|
|
9
|
+
* const expandLinkApp = useExpandLinkApp()
|
|
10
10
|
*
|
|
11
11
|
* return (
|
|
12
|
-
* <button onClick={() =>
|
|
12
|
+
* <button onClick={() => expandLinkApp({ itemId: '123' })}>
|
|
13
13
|
* View More
|
|
14
14
|
* </button>
|
|
15
15
|
* )
|
|
16
16
|
* }
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
|
-
export {
|
|
19
|
+
export { useExpandLinkApp } from './use-expand-link-app.js';
|
|
20
20
|
export { sendMessage } from './send-message.js';
|
|
21
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/sdk/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"}
|
package/dist/sdk/index.js
CHANGED
|
@@ -3,19 +3,19 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @example
|
|
5
5
|
* ```tsx
|
|
6
|
-
* import {
|
|
6
|
+
* import { useExpandLinkApp } from '@linktr.ee/linkapp/sdk'
|
|
7
7
|
*
|
|
8
8
|
* function FeaturedLayout() {
|
|
9
|
-
* const
|
|
9
|
+
* const expandLinkApp = useExpandLinkApp()
|
|
10
10
|
*
|
|
11
11
|
* return (
|
|
12
|
-
* <button onClick={() =>
|
|
12
|
+
* <button onClick={() => expandLinkApp({ itemId: '123' })}>
|
|
13
13
|
* View More
|
|
14
14
|
* </button>
|
|
15
15
|
* )
|
|
16
16
|
* }
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
|
-
export {
|
|
19
|
+
export { useExpandLinkApp } from './use-expand-link-app.js';
|
|
20
20
|
export { sendMessage } from './send-message.js';
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
package/dist/sdk/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sends a postMessage from the LinkApp iframe to the parent window
|
|
3
3
|
*
|
|
4
|
-
* @param type - The message type (e.g., '
|
|
4
|
+
* @param type - The message type (e.g., 'EXPAND_LINK_APP')
|
|
5
5
|
* @param payload - The message payload
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```ts
|
|
9
|
-
* sendMessage('
|
|
9
|
+
* sendMessage('EXPAND_LINK_APP', { data: { itemId: '123' } })
|
|
10
10
|
* ```
|
|
11
11
|
*
|
|
12
12
|
* Note: This only works when the LinkApp is embedded in an iframe within Linktree.
|
package/dist/sdk/send-message.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sends a postMessage from the LinkApp iframe to the parent window
|
|
3
3
|
*
|
|
4
|
-
* @param type - The message type (e.g., '
|
|
4
|
+
* @param type - The message type (e.g., 'EXPAND_LINK_APP')
|
|
5
5
|
* @param payload - The message payload
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```ts
|
|
9
|
-
* sendMessage('
|
|
9
|
+
* sendMessage('EXPAND_LINK_APP', { data: { itemId: '123' } })
|
|
10
10
|
* ```
|
|
11
11
|
*
|
|
12
12
|
* Note: This only works when the LinkApp is embedded in an iframe within Linktree.
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
* @example
|
|
7
7
|
* ```tsx
|
|
8
8
|
* function FeaturedLayout() {
|
|
9
|
-
* const
|
|
9
|
+
* const expandLinkApp = useExpandLinkApp()
|
|
10
10
|
*
|
|
11
11
|
* return (
|
|
12
|
-
* <button onClick={() =>
|
|
12
|
+
* <button onClick={() => expandLinkApp({ itemId: '123', view: 'details' })}>
|
|
13
13
|
* View More
|
|
14
14
|
* </button>
|
|
15
15
|
* )
|
|
@@ -19,5 +19,5 @@
|
|
|
19
19
|
* Note: This only works when the LinkApp is embedded in Linktree.
|
|
20
20
|
* The parent window identifies the LinkApp from the iframe's event.source.
|
|
21
21
|
*/
|
|
22
|
-
export declare function
|
|
23
|
-
//# sourceMappingURL=use-
|
|
22
|
+
export declare function useExpandLinkApp(): (data?: Record<string, unknown>) => void;
|
|
23
|
+
//# sourceMappingURL=use-expand-link-app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-expand-link-app.d.ts","sourceRoot":"","sources":["../../src/sdk/use-expand-link-app.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,YACH,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAGnD"}
|
|
@@ -8,10 +8,10 @@ import { sendMessage } from './send-message.js';
|
|
|
8
8
|
* @example
|
|
9
9
|
* ```tsx
|
|
10
10
|
* function FeaturedLayout() {
|
|
11
|
-
* const
|
|
11
|
+
* const expandLinkApp = useExpandLinkApp()
|
|
12
12
|
*
|
|
13
13
|
* return (
|
|
14
|
-
* <button onClick={() =>
|
|
14
|
+
* <button onClick={() => expandLinkApp({ itemId: '123', view: 'details' })}>
|
|
15
15
|
* View More
|
|
16
16
|
* </button>
|
|
17
17
|
* )
|
|
@@ -21,9 +21,9 @@ import { sendMessage } from './send-message.js';
|
|
|
21
21
|
* Note: This only works when the LinkApp is embedded in Linktree.
|
|
22
22
|
* The parent window identifies the LinkApp from the iframe's event.source.
|
|
23
23
|
*/
|
|
24
|
-
export function
|
|
24
|
+
export function useExpandLinkApp() {
|
|
25
25
|
return useCallback((data) => {
|
|
26
|
-
sendMessage('
|
|
26
|
+
sendMessage('EXPAND_LINK_APP', { data });
|
|
27
27
|
}, []);
|
|
28
28
|
}
|
|
29
|
-
//# sourceMappingURL=use-
|
|
29
|
+
//# sourceMappingURL=use-expand-link-app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-expand-link-app.js","sourceRoot":"","sources":["../../src/sdk/use-expand-link-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,WAAW,CAAC,CAAC,IAA8B,EAAE,EAAE;QACpD,WAAW,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,aAAa,GACd,MAAM,2BAA2B,CAAA;AAElC,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,IAAI,CAAC;AAE9C;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,OAAO,2BAA2B,EAAE,YAAY,GAC1G,SAAS,CAAC;AAEZ,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE;QAChB,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAC9C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE;YACP,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;CACH;AAED,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,QAAQ,aAAa;CACtB;AAED,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,KAAK,UAAU;CAChB;AAED,oBAAY,qBAAqB;IAC/B,wBAAwB,6BAA6B;CACtD;AAED,oBAAY,gBAAgB;IAC1B,KAAK,UAAU;CAChB;AAED,oBAAY,UAAU;IACpB,aAAa,gBAAgB;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,gBAAgB,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gCAAgC;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;CAChD;AAED,MAAM,WAAW,YAAY;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,cAAc,CAAC;CACpD;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,gCAAgC,CAAC;IACtD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,cAAc,CAAC,EAAE,eAAe,EAAE,CAAC;IACnC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAGD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,KAAK,CAAC,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,qBAAqB,CAAC;CACtC;AAED;;GAEG;AAEH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { LinkAppTheme } from '../types.js';
|
|
2
|
-
type Props = {
|
|
3
|
-
theme: LinkAppTheme;
|
|
4
|
-
};
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated This component is deprecated and will be removed in a future version.
|
|
7
|
-
* Theme CSS variables are now injected using a CSS-native approach via postMessage.
|
|
8
|
-
* The HTML template includes a listener for THEME_UPDATE messages that injects
|
|
9
|
-
* variables into a <style id="linktree-theme"> element automatically.
|
|
10
|
-
*
|
|
11
|
-
* Migration: Remove <ThemeStyle /> from your code - theme variables are now
|
|
12
|
-
* applied automatically via the HTML script listener.
|
|
13
|
-
*
|
|
14
|
-
* Legacy usage (DO NOT USE IN NEW CODE):
|
|
15
|
-
* ```tsx
|
|
16
|
-
* import { ThemeStyle } from '@linktr.ee/linkapp/components'
|
|
17
|
-
*
|
|
18
|
-
* export default function Layout({ children, theme }: { children: React.ReactNode; theme: LinkAppTheme }) {
|
|
19
|
-
* return (
|
|
20
|
-
* <>
|
|
21
|
-
* <ThemeStyle theme={theme} />
|
|
22
|
-
* {children}
|
|
23
|
-
* </>
|
|
24
|
-
* )
|
|
25
|
-
* }
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export declare const ThemeStyle: ({ theme }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
29
|
-
export {};
|
|
30
|
-
//# sourceMappingURL=ThemeStyle.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeStyle.d.ts","sourceRoot":"","sources":["../../src/components/ThemeStyle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,YAAY,CAAA;CACpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,UAAU,GAAI,WAAW,KAAK,4CAY1C,CAAA"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* @deprecated This component is deprecated and will be removed in a future version.
|
|
4
|
-
* Theme CSS variables are now injected using a CSS-native approach via postMessage.
|
|
5
|
-
* The HTML template includes a listener for THEME_UPDATE messages that injects
|
|
6
|
-
* variables into a <style id="linktree-theme"> element automatically.
|
|
7
|
-
*
|
|
8
|
-
* Migration: Remove <ThemeStyle /> from your code - theme variables are now
|
|
9
|
-
* applied automatically via the HTML script listener.
|
|
10
|
-
*
|
|
11
|
-
* Legacy usage (DO NOT USE IN NEW CODE):
|
|
12
|
-
* ```tsx
|
|
13
|
-
* import { ThemeStyle } from '@linktr.ee/linkapp/components'
|
|
14
|
-
*
|
|
15
|
-
* export default function Layout({ children, theme }: { children: React.ReactNode; theme: LinkAppTheme }) {
|
|
16
|
-
* return (
|
|
17
|
-
* <>
|
|
18
|
-
* <ThemeStyle theme={theme} />
|
|
19
|
-
* {children}
|
|
20
|
-
* </>
|
|
21
|
-
* )
|
|
22
|
-
* }
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export const ThemeStyle = ({ theme }) => {
|
|
26
|
-
const cssVariablesString = Object.entries(theme.cssVariables)
|
|
27
|
-
.map(([key, value]) => ` ${key}: ${value};`)
|
|
28
|
-
.join('\n');
|
|
29
|
-
return (_jsx("style", { children: `:root {
|
|
30
|
-
${cssVariablesString}
|
|
31
|
-
}` }));
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=ThemeStyle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeStyle.js","sourceRoot":"","sources":["../../src/components/ThemeStyle.tsx"],"names":[],"mappings":";AAMA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAS,EAAE,EAAE;IAC7C,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC;SAC1D,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,KAAK,GAAG,CAAC;SAC5C,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,OAAO,CACL,0BACG;EACL,kBAAkB;EAClB,GACU,CACT,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":""}
|
package/dist/components/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";AAAA,+CAA+C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init-git.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/init-git.ts"],"names":[],"mappings":"AAmBA,wBAAsB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBhE"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { spawn } from 'node:child_process';
|
|
2
|
-
async function runGitCommand(args, cwd) {
|
|
3
|
-
return new Promise((resolve) => {
|
|
4
|
-
const child = spawn('git', args, {
|
|
5
|
-
cwd,
|
|
6
|
-
stdio: 'pipe',
|
|
7
|
-
});
|
|
8
|
-
child.on('close', (code) => {
|
|
9
|
-
resolve(code === 0);
|
|
10
|
-
});
|
|
11
|
-
child.on('error', () => {
|
|
12
|
-
resolve(false);
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
export async function initGit(projectPath) {
|
|
17
|
-
// Initialize git repository
|
|
18
|
-
const initSuccess = await runGitCommand(['init'], projectPath);
|
|
19
|
-
if (!initSuccess) {
|
|
20
|
-
throw new Error('Failed to initialize git repository');
|
|
21
|
-
}
|
|
22
|
-
// Stage all files
|
|
23
|
-
const addSuccess = await runGitCommand(['add', '-A'], projectPath);
|
|
24
|
-
if (!addSuccess) {
|
|
25
|
-
// Just skip commit if add fails
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
// Try to create initial commit (optional - may fail if git user not configured)
|
|
29
|
-
const commitSuccess = await runGitCommand(['commit', '-m', 'Initial commit from Create LinkApp'], projectPath);
|
|
30
|
-
if (!commitSuccess) {
|
|
31
|
-
throw new Error('Failed to create initial commit');
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=init-git.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init-git.js","sourceRoot":"","sources":["../../../src/lib/utils/init-git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE1C,KAAK,UAAU,aAAa,CAAC,IAAc,EAAE,GAAW;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE;YAC/B,GAAG;YACH,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAA;QACrB,CAAC,CAAC,CAAA;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,WAAmB;IAC/C,4BAA4B;IAC5B,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAA;IAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IAED,kBAAkB;IAClB,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,WAAW,CAAC,CAAA;IAClE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,gCAAgC;QAChC,OAAM;IACR,CAAC;IAED,gFAAgF;IAChF,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,oCAAoC,CAAC,EAAE,WAAW,CAAC,CAAA;IAC9G,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACpD,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-dependencies.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/install-dependencies.ts"],"names":[],"mappings":"AAEA,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB5E"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { spawn } from 'node:child_process';
|
|
2
|
-
export async function installDependencies(projectPath) {
|
|
3
|
-
return new Promise((resolve, reject) => {
|
|
4
|
-
const child = spawn('npm', ['install'], {
|
|
5
|
-
cwd: projectPath,
|
|
6
|
-
stdio: 'ignore',
|
|
7
|
-
shell: true,
|
|
8
|
-
});
|
|
9
|
-
child.on('close', (code) => {
|
|
10
|
-
if (code === 0) {
|
|
11
|
-
resolve();
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
reject(new Error(`npm install failed with code ${code}`));
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
child.on('error', reject);
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=install-dependencies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-dependencies.js","sourceRoot":"","sources":["../../../src/lib/utils/install-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE1C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,WAAmB;IAC3D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;YACtC,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,IAAI;SACZ,CAAC,CAAA;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,CAAA;YACX,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { InlineConfig } from 'vite';
|
|
2
|
-
interface ViteConfigOptions {
|
|
3
|
-
mode: 'development' | 'production';
|
|
4
|
-
port?: number;
|
|
5
|
-
host?: string;
|
|
6
|
-
open?: boolean;
|
|
7
|
-
sourcemap?: boolean;
|
|
8
|
-
profile?: boolean;
|
|
9
|
-
}
|
|
10
|
-
export declare function createViteConfig(options: ViteConfigOptions): InlineConfig;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=config-factory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-factory.d.ts","sourceRoot":"","sources":["../../../src/lib/vite/config-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAOxC,UAAU,iBAAiB;IACzB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAmEzE"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import react from '@vitejs/plugin-react';
|
|
2
|
-
import { resolve, join } from 'node:path';
|
|
3
|
-
import { assetVersioning } from './plugins/asset-versioning.js';
|
|
4
|
-
import { setupRuntime } from '../utils/setup-runtime.js';
|
|
5
|
-
import { copyPublicDirectory } from './plugins/copy-public.js';
|
|
6
|
-
export function createViteConfig(options) {
|
|
7
|
-
const { mode, port = 3000, host = 'localhost', open = false, sourcemap = false, profile = false } = options;
|
|
8
|
-
const isDev = mode === 'development';
|
|
9
|
-
const projectRoot = process.cwd();
|
|
10
|
-
// Setup runtime files in user's project
|
|
11
|
-
setupRuntime(projectRoot);
|
|
12
|
-
const config = {
|
|
13
|
-
mode,
|
|
14
|
-
base: './',
|
|
15
|
-
root: join(projectRoot, '.linkapp'),
|
|
16
|
-
publicDir: join(projectRoot, 'public'),
|
|
17
|
-
plugins: [react()],
|
|
18
|
-
resolve: {
|
|
19
|
-
alias: {
|
|
20
|
-
'@': resolve(projectRoot),
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
build: {
|
|
24
|
-
outDir: join(projectRoot, 'dist'),
|
|
25
|
-
emptyOutDir: true,
|
|
26
|
-
copyPublicDir: true,
|
|
27
|
-
sourcemap: sourcemap ? 'hidden' : false,
|
|
28
|
-
minify: !isDev,
|
|
29
|
-
rollupOptions: {
|
|
30
|
-
input: join(projectRoot, '.linkapp', 'index.html'),
|
|
31
|
-
output: {
|
|
32
|
-
entryFileNames: '[name].[hash].js',
|
|
33
|
-
chunkFileNames: '[name].[hash].js',
|
|
34
|
-
assetFileNames: '[name].[hash].[ext]',
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
server: {
|
|
39
|
-
port,
|
|
40
|
-
host,
|
|
41
|
-
open,
|
|
42
|
-
cors: true,
|
|
43
|
-
strictPort: false,
|
|
44
|
-
},
|
|
45
|
-
};
|
|
46
|
-
// Add production-only plugins
|
|
47
|
-
if (!isDev) {
|
|
48
|
-
config.plugins?.push(copyPublicDirectory({
|
|
49
|
-
publicDir: join(projectRoot, 'public'),
|
|
50
|
-
outDir: join(projectRoot, 'dist'),
|
|
51
|
-
}), assetVersioning({
|
|
52
|
-
manifestPath: 'build-manifest.json',
|
|
53
|
-
}));
|
|
54
|
-
// Add bundle analyzer if requested
|
|
55
|
-
if (profile) {
|
|
56
|
-
// Note: rollup-plugin-visualizer support disabled in ES module context
|
|
57
|
-
// To enable bundle analysis, use --sourcemap flag and analyze with external tools
|
|
58
|
-
console.warn('⚠️ Bundle profiling is not available in this version. Use --sourcemap flag and analyze with external tools.');
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return config;
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=config-factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-factory.js","sourceRoot":"","sources":["../../../src/lib/vite/config-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,sBAAsB,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAW9D,MAAM,UAAU,gBAAgB,CAAC,OAA0B;IACzD,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,KAAK,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,OAAO,CAAA;IAE3G,MAAM,KAAK,GAAG,IAAI,KAAK,aAAa,CAAA;IACpC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IAEjC,wCAAwC;IACxC,YAAY,CAAC,WAAW,CAAC,CAAA;IAEzB,MAAM,MAAM,GAAiB;QAC3B,IAAI;QACJ,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;QACnC,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;QACtC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;aAC1B;SACF;QACD,KAAK,EAAE;YACL,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;YACjC,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;YACvC,MAAM,EAAE,CAAC,KAAK;YACd,aAAa,EAAE;gBACb,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,YAAY,CAAC;gBAClD,MAAM,EAAE;oBACN,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,qBAAqB;iBACtC;aACF;SACF;QACD,MAAM,EAAE;YACN,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK;SAClB;KACF,CAAA;IAED,8BAA8B;IAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,CAAC,OAAO,EAAE,IAAI,CAClB,mBAAmB,CAAC;YAClB,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;YACtC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;SAClC,CAAC,EACF,eAAe,CAAC;YACd,YAAY,EAAE,qBAAqB;SACpC,CAAC,CACH,CAAA;QAED,mCAAmC;QACnC,IAAI,OAAO,EAAE,CAAC;YACZ,uEAAuE;YACvE,kFAAkF;YAClF,OAAO,CAAC,IAAI,CACV,8GAA8G,CAC/G,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from 'vite';
|
|
2
|
-
interface AssetVersioningOptions {
|
|
3
|
-
manifestPath?: string;
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Vite plugin that creates a build manifest with versioned assets
|
|
7
|
-
* This helps invalidate cache on deployment
|
|
8
|
-
*/
|
|
9
|
-
export declare function assetVersioning(options?: AssetVersioningOptions): Plugin;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=asset-versioning.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"asset-versioning.d.ts","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/asset-versioning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAKlC,UAAU,sBAAsB;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,CAiD5E"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { createHash } from 'node:crypto';
|
|
2
|
-
import { writeFileSync, mkdirSync } from 'node:fs';
|
|
3
|
-
import { join, dirname } from 'node:path';
|
|
4
|
-
/**
|
|
5
|
-
* Vite plugin that creates a build manifest with versioned assets
|
|
6
|
-
* This helps invalidate cache on deployment
|
|
7
|
-
*/
|
|
8
|
-
export function assetVersioning(options = {}) {
|
|
9
|
-
const manifestPath = options.manifestPath || 'build-manifest.json';
|
|
10
|
-
const manifest = {};
|
|
11
|
-
return {
|
|
12
|
-
name: 'linkapp:asset-versioning',
|
|
13
|
-
enforce: 'post',
|
|
14
|
-
generateBundle(_options, bundle) {
|
|
15
|
-
// Collect all asset mappings
|
|
16
|
-
for (const [fileName, asset] of Object.entries(bundle)) {
|
|
17
|
-
if (asset.type === 'asset' || asset.type === 'chunk') {
|
|
18
|
-
// Store original name -> hashed name mapping
|
|
19
|
-
const originalName = fileName.replace(/\.[a-f0-9]+\./, '.');
|
|
20
|
-
manifest[originalName] = fileName;
|
|
21
|
-
// Add metadata
|
|
22
|
-
if (asset.type === 'chunk' && asset.isEntry) {
|
|
23
|
-
manifest[`${originalName}.entry`] = 'true';
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
// Add build timestamp
|
|
28
|
-
manifest['_buildTime'] = new Date().toISOString();
|
|
29
|
-
manifest['_buildHash'] = createHash('sha256').update(JSON.stringify(manifest)).digest('hex').slice(0, 8);
|
|
30
|
-
// Emit manifest file
|
|
31
|
-
this.emitFile({
|
|
32
|
-
type: 'asset',
|
|
33
|
-
fileName: manifestPath,
|
|
34
|
-
source: JSON.stringify(manifest, null, 2),
|
|
35
|
-
});
|
|
36
|
-
},
|
|
37
|
-
closeBundle() {
|
|
38
|
-
// Also write manifest to disk for deployment process
|
|
39
|
-
const outDir = process.env.VITE_OUT_DIR || 'dist';
|
|
40
|
-
const fullPath = join(process.cwd(), outDir, manifestPath);
|
|
41
|
-
try {
|
|
42
|
-
// Ensure the output directory exists
|
|
43
|
-
mkdirSync(dirname(fullPath), { recursive: true });
|
|
44
|
-
writeFileSync(fullPath, JSON.stringify(manifest, null, 2));
|
|
45
|
-
}
|
|
46
|
-
catch (error) {
|
|
47
|
-
console.warn('Failed to write build manifest:', error);
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=asset-versioning.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"asset-versioning.js","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/asset-versioning.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMzC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkC,EAAE;IAClE,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAA;IAClE,MAAM,QAAQ,GAA2B,EAAE,CAAA;IAE3C,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,MAAM;QAEf,cAAc,CAAC,QAAQ,EAAE,MAAM;YAC7B,6BAA6B;YAC7B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACrD,6CAA6C;oBAC7C,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;oBAC3D,QAAQ,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAA;oBAEjC,eAAe;oBACf,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAC5C,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,GAAG,MAAM,CAAA;oBAC5C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,sBAAsB;YACtB,QAAQ,CAAC,YAAY,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;YACjD,QAAQ,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAExG,qBAAqB;YACrB,IAAI,CAAC,QAAQ,CAAC;gBACZ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,YAAY;gBACtB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1C,CAAC,CAAA;QACJ,CAAC;QAED,WAAW;YACT,qDAAqD;YACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,MAAM,CAAA;YACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;YAE1D,IAAI,CAAC;gBACH,qCAAqC;gBACrC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBACjD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAA;YACxD,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from 'vite';
|
|
2
|
-
interface CopyPublicOptions {
|
|
3
|
-
publicDir: string;
|
|
4
|
-
outDir: string;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Vite plugin that ensures public directory files are copied to dist
|
|
8
|
-
* This is a workaround for cases where Vite's copyPublicDir doesn't work as expected
|
|
9
|
-
*/
|
|
10
|
-
export declare function copyPublicDirectory(options: CopyPublicOptions): Plugin;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=copy-public.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"copy-public.d.ts","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/copy-public.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAGlC,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CA0BtE"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { cpSync, existsSync } from 'node:fs';
|
|
2
|
-
/**
|
|
3
|
-
* Vite plugin that ensures public directory files are copied to dist
|
|
4
|
-
* This is a workaround for cases where Vite's copyPublicDir doesn't work as expected
|
|
5
|
-
*/
|
|
6
|
-
export function copyPublicDirectory(options) {
|
|
7
|
-
return {
|
|
8
|
-
name: 'linkapp:copy-public',
|
|
9
|
-
writeBundle() {
|
|
10
|
-
const { publicDir, outDir } = options;
|
|
11
|
-
if (!existsSync(publicDir)) {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
try {
|
|
15
|
-
cpSync(publicDir, outDir, {
|
|
16
|
-
recursive: true,
|
|
17
|
-
force: true,
|
|
18
|
-
filter: (src) => {
|
|
19
|
-
// Skip hidden files and directories
|
|
20
|
-
const basename = src.split('/').pop() || '';
|
|
21
|
-
return !basename.startsWith('.');
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
catch (error) {
|
|
26
|
-
console.warn('Failed to copy public directory:', error);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=copy-public.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"copy-public.js","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/copy-public.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAO5C;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA0B;IAC5D,OAAO;QACL,IAAI,EAAE,qBAAqB;QAE3B,WAAW;YACT,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;YAErC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,OAAM;YACR,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE;oBACxB,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;wBACd,oCAAoC;wBACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAA;wBAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAClC,CAAC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAA;YACzD,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from 'vite';
|
|
2
|
-
interface RouteHandlerOptions {
|
|
3
|
-
userProjectPath: string;
|
|
4
|
-
previewPath: string;
|
|
5
|
-
devServerOrigin: string;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Vite plugin that handles multiple routes in a single dev server
|
|
9
|
-
* Routes:
|
|
10
|
-
* / → Preview UI (linkapp-preview)
|
|
11
|
-
* /classic, /featured, etc. → User layouts (runtime)
|
|
12
|
-
* /layouts.json → JSON endpoint
|
|
13
|
-
*/
|
|
14
|
-
export declare function routeHandler(options: RouteHandlerOptions): Plugin;
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=route-handler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route-handler.d.ts","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/route-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAA;AASjD,UAAU,mBAAmB;IAC3B,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CA6GjE"}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { readFileSync } from 'node:fs';
|
|
2
|
-
import { join, dirname } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { detectLayouts } from '../../build/detect-layouts.js';
|
|
5
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
6
|
-
const __dirname = dirname(__filename);
|
|
7
|
-
/**
|
|
8
|
-
* Vite plugin that handles multiple routes in a single dev server
|
|
9
|
-
* Routes:
|
|
10
|
-
* / → Preview UI (linkapp-preview)
|
|
11
|
-
* /classic, /featured, etc. → User layouts (runtime)
|
|
12
|
-
* /layouts.json → JSON endpoint
|
|
13
|
-
*/
|
|
14
|
-
export function routeHandler(options) {
|
|
15
|
-
const { userProjectPath, previewPath, devServerOrigin } = options;
|
|
16
|
-
// Read HTML templates
|
|
17
|
-
const previewHtmlPath = join(previewPath, 'index.html');
|
|
18
|
-
const runtimeHtmlPath = join(__dirname, '../../../../runtime/index.html');
|
|
19
|
-
return {
|
|
20
|
-
name: 'linkapp:route-handler',
|
|
21
|
-
configureServer(server) {
|
|
22
|
-
// Add middleware before Vite's internal middleware
|
|
23
|
-
server.middlewares.use((req, res, next) => {
|
|
24
|
-
const url = req.url || '/';
|
|
25
|
-
const pathname = url.split('?')[0];
|
|
26
|
-
// Handle /layouts.json endpoint
|
|
27
|
-
if (pathname === '/layouts.json') {
|
|
28
|
-
try {
|
|
29
|
-
const detection = detectLayouts(userProjectPath);
|
|
30
|
-
res.statusCode = 200;
|
|
31
|
-
res.setHeader('Content-Type', 'application/json');
|
|
32
|
-
res.setHeader('Cache-Control', 'no-store');
|
|
33
|
-
res.end(JSON.stringify({
|
|
34
|
-
layouts: detection.layouts,
|
|
35
|
-
devServerUrl: devServerOrigin,
|
|
36
|
-
}));
|
|
37
|
-
}
|
|
38
|
-
catch (error) {
|
|
39
|
-
console.error('Failed to read layouts:', error);
|
|
40
|
-
res.statusCode = 500;
|
|
41
|
-
res.setHeader('Content-Type', 'application/json');
|
|
42
|
-
res.end(JSON.stringify({ error: 'Failed to read layouts' }));
|
|
43
|
-
}
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
// Get available layouts
|
|
47
|
-
let layouts = [];
|
|
48
|
-
try {
|
|
49
|
-
layouts = detectLayouts(userProjectPath).layouts;
|
|
50
|
-
}
|
|
51
|
-
catch (error) {
|
|
52
|
-
console.error('Failed to detect layouts:', error);
|
|
53
|
-
}
|
|
54
|
-
// Check if this is a layout route
|
|
55
|
-
const matchedLayout = layouts.find(layout => pathname === `/${layout.name}`);
|
|
56
|
-
if (matchedLayout) {
|
|
57
|
-
// Serve runtime HTML with layout query param
|
|
58
|
-
try {
|
|
59
|
-
let html = readFileSync(runtimeHtmlPath, 'utf-8');
|
|
60
|
-
// Add layout query param to the script src
|
|
61
|
-
html = html.replace('src="/.linkapp/main.tsx"', `src="/.linkapp/main.tsx?layout=${matchedLayout.name}"`);
|
|
62
|
-
res.statusCode = 200;
|
|
63
|
-
res.setHeader('Content-Type', 'text/html');
|
|
64
|
-
res.end(html);
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
console.error('Failed to serve runtime HTML:', error);
|
|
68
|
-
next();
|
|
69
|
-
}
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
// Serve preview HTML at root
|
|
73
|
-
if (pathname === '/') {
|
|
74
|
-
try {
|
|
75
|
-
// Read preview HTML from linkapp-preview package
|
|
76
|
-
const html = readFileSync(previewHtmlPath, 'utf-8');
|
|
77
|
-
res.statusCode = 200;
|
|
78
|
-
res.setHeader('Content-Type', 'text/html');
|
|
79
|
-
res.end(html);
|
|
80
|
-
}
|
|
81
|
-
catch (error) {
|
|
82
|
-
console.error('Failed to serve preview HTML:', error);
|
|
83
|
-
next();
|
|
84
|
-
}
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
// Let Vite handle everything else
|
|
88
|
-
next();
|
|
89
|
-
});
|
|
90
|
-
},
|
|
91
|
-
// Transform HTML to handle module resolution
|
|
92
|
-
transformIndexHtml: {
|
|
93
|
-
order: 'pre',
|
|
94
|
-
handler(html, ctx) {
|
|
95
|
-
const url = ctx.originalUrl || '/';
|
|
96
|
-
const pathname = url.split('?')[0];
|
|
97
|
-
// For preview route, update paths to use linkapp-preview alias
|
|
98
|
-
if (pathname === '/') {
|
|
99
|
-
return html
|
|
100
|
-
.replace('href="/src/index.css"', 'href="/linkapp-preview/src/index.css"')
|
|
101
|
-
.replace('src="/src/main.tsx"', 'src="/linkapp-preview/src/main.tsx"');
|
|
102
|
-
}
|
|
103
|
-
return html;
|
|
104
|
-
},
|
|
105
|
-
},
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
//# sourceMappingURL=route-handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route-handler.js","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/route-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAE7D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;AAQrC;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,OAA4B;IACvD,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;IAEjE,sBAAsB;IACtB,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IACvD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,gCAAgC,CAAC,CAAA;IAEzE,OAAO;QACL,IAAI,EAAE,uBAAuB;QAE7B,eAAe,CAAC,MAAqB;YACnC,mDAAmD;YACnD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBACxC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAA;gBAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAElC,gCAAgC;gBAChC,IAAI,QAAQ,KAAK,eAAe,EAAE,CAAC;oBACjC,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;wBAChD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;wBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;wBACjD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;wBAC1C,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;4BACb,OAAO,EAAE,SAAS,CAAC,OAAO;4BAC1B,YAAY,EAAE,eAAe;yBAC9B,CAAC,CACH,CAAA;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;wBAC/C,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;wBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;wBACjD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAA;oBAC9D,CAAC;oBACD,OAAM;gBACR,CAAC;gBAED,wBAAwB;gBACxB,IAAI,OAAO,GAAgD,EAAE,CAAA;gBAC7D,IAAI,CAAC;oBACH,OAAO,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC,OAAO,CAAA;gBAClD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;gBACnD,CAAC;gBAED,kCAAkC;gBAClC,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;gBAE5E,IAAI,aAAa,EAAE,CAAC;oBAClB,6CAA6C;oBAC7C,IAAI,CAAC;wBACH,IAAI,IAAI,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;wBAEjD,2CAA2C;wBAC3C,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,0BAA0B,EAC1B,kCAAkC,aAAa,CAAC,IAAI,GAAG,CACxD,CAAA;wBAED,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;wBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;wBAC1C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACf,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;wBACrD,IAAI,EAAE,CAAA;oBACR,CAAC;oBACD,OAAM;gBACR,CAAC;gBAED,6BAA6B;gBAC7B,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACH,iDAAiD;wBACjD,MAAM,IAAI,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;wBAEnD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;wBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;wBAC1C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACf,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;wBACrD,IAAI,EAAE,CAAA;oBACR,CAAC;oBACD,OAAM;gBACR,CAAC;gBAED,kCAAkC;gBAClC,IAAI,EAAE,CAAA;YACR,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,6CAA6C;QAC7C,kBAAkB,EAAE;YAClB,KAAK,EAAE,KAAK;YACZ,OAAO,CAAC,IAAI,EAAE,GAAG;gBACf,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAA;gBAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAElC,+DAA+D;gBAC/D,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;oBACrB,OAAO,IAAI;yBACR,OAAO,CAAC,uBAAuB,EAAE,uCAAuC,CAAC;yBACzE,OAAO,CAAC,qBAAqB,EAAE,qCAAqC,CAAC,CAAA;gBAC1E,CAAC;gBAED,OAAO,IAAI,CAAA;YACb,CAAC;SACF;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from 'vite';
|
|
2
|
-
/**
|
|
3
|
-
* Vite plugin that injects window.linktree context for development
|
|
4
|
-
* In production, this is handled by the parent Linktree frame
|
|
5
|
-
*/
|
|
6
|
-
export declare function windowContext(): Plugin;
|
|
7
|
-
//# sourceMappingURL=window-context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"window-context.d.ts","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/window-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIlC;;;GAGG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAkEtC"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { join } from 'node:path';
|
|
2
|
-
import { pathToFileURL } from 'node:url';
|
|
3
|
-
/**
|
|
4
|
-
* Vite plugin that injects window.linktree context for development
|
|
5
|
-
* In production, this is handled by the parent Linktree frame
|
|
6
|
-
*/
|
|
7
|
-
export function windowContext() {
|
|
8
|
-
return {
|
|
9
|
-
name: 'linkapp:window-context',
|
|
10
|
-
transformIndexHtml: {
|
|
11
|
-
order: 'pre',
|
|
12
|
-
async handler(html) {
|
|
13
|
-
// Only inject in development
|
|
14
|
-
if (process.env.NODE_ENV === 'production') {
|
|
15
|
-
return html;
|
|
16
|
-
}
|
|
17
|
-
try {
|
|
18
|
-
const configPath = join(process.cwd(), 'linkapp.config.ts');
|
|
19
|
-
const configUrl = pathToFileURL(configPath).href;
|
|
20
|
-
// Dynamic import the config
|
|
21
|
-
const { default: config } = await import(configUrl);
|
|
22
|
-
const previewProps = config.previewProps || {};
|
|
23
|
-
// Inject window.linktree with preview props
|
|
24
|
-
const script = `
|
|
25
|
-
<script>
|
|
26
|
-
// Development context - in production this comes from parent frame
|
|
27
|
-
window.linktree = ${JSON.stringify(previewProps, null, 2)};
|
|
28
|
-
|
|
29
|
-
// Apply theme CSS variables
|
|
30
|
-
if (window.linktree?.theme) {
|
|
31
|
-
const theme = window.linktree.theme;
|
|
32
|
-
document.documentElement.style.setProperty('--linktree-bg-color', theme.backgroundColor);
|
|
33
|
-
document.documentElement.style.setProperty('--linktree-text-color', theme.textColor);
|
|
34
|
-
document.documentElement.style.setProperty('--linktree-border-color', theme.borderColor);
|
|
35
|
-
document.documentElement.style.setProperty('--linktree-border-radius', theme.borderRadius);
|
|
36
|
-
}
|
|
37
|
-
</script>`;
|
|
38
|
-
return html.replace('</head>', `${script}</head>`);
|
|
39
|
-
}
|
|
40
|
-
catch (error) {
|
|
41
|
-
console.warn('Failed to load config, using defaults:', error);
|
|
42
|
-
// Fallback to minimal context
|
|
43
|
-
const fallbackScript = `
|
|
44
|
-
<script>
|
|
45
|
-
window.linktree = {
|
|
46
|
-
linkUrl: 'https://example.com',
|
|
47
|
-
theme: {
|
|
48
|
-
textColor: '#000000',
|
|
49
|
-
backgroundColor: '#ffffff',
|
|
50
|
-
borderRadius: '12px',
|
|
51
|
-
borderColor: '#e5e7eb',
|
|
52
|
-
isOutlineStyle: false,
|
|
53
|
-
contrastColor: '#ffffff',
|
|
54
|
-
textHoverColor: '#111827'
|
|
55
|
-
},
|
|
56
|
-
locale: 'en-US',
|
|
57
|
-
currency: 'USD',
|
|
58
|
-
username: 'dev-user',
|
|
59
|
-
viewport: { width: 680, height: 800 }
|
|
60
|
-
};
|
|
61
|
-
</script>`;
|
|
62
|
-
return html.replace('</head>', `${fallbackScript}</head>`);
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
},
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=window-context.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"window-context.js","sourceRoot":"","sources":["../../../../src/lib/vite/plugins/window-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC;;;GAGG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO;QACL,IAAI,EAAE,wBAAwB;QAE9B,kBAAkB,EAAE;YAClB,KAAK,EAAE,KAAK;YACZ,KAAK,CAAC,OAAO,CAAC,IAAI;gBAChB,6BAA6B;gBAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;oBAC1C,OAAO,IAAI,CAAA;gBACb,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAA;oBAC3D,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAA;oBAEhD,4BAA4B;oBAC5B,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAA;oBACnD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAA;oBAE9C,4CAA4C;oBAC5C,MAAM,MAAM,GAAG;;;sBAGH,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;;;;;;;;;;UAUjD,CAAA;oBAEA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,MAAM,SAAS,CAAC,CAAA;gBACpD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAA;oBAE7D,8BAA8B;oBAC9B,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;UAkBvB,CAAA;oBAEA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,cAAc,SAAS,CAAC,CAAA;gBAC5D,CAAC;YACH,CAAC;SACF;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-open-popup.d.ts","sourceRoot":"","sources":["../../src/sdk/use-open-popup.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,YAAY,YACC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAGnD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-open-popup.js","sourceRoot":"","sources":["../../src/sdk/use-open-popup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,WAAW,CAAC,CAAC,IAA8B,EAAE,EAAE;QACpD,WAAW,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACrC,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC"}
|