fynixui 1.0.10
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/LICENSE +21 -0
- package/dist/context/context.d.ts +19 -0
- package/dist/context/context.d.ts.map +1 -0
- package/dist/context/context.js +4 -0
- package/dist/context/context.js.map +7 -0
- package/dist/custom/button.d.ts +2 -0
- package/dist/custom/button.d.ts.map +1 -0
- package/dist/custom/button.js +4 -0
- package/dist/custom/button.js.map +7 -0
- package/dist/custom/index.d.ts +3 -0
- package/dist/custom/index.d.ts.map +1 -0
- package/dist/custom/index.js +2 -0
- package/dist/custom/index.js.map +7 -0
- package/dist/custom/path.d.ts +14 -0
- package/dist/custom/path.d.ts.map +1 -0
- package/dist/custom/path.js +20 -0
- package/dist/custom/path.js.map +7 -0
- package/dist/error/errorOverlay.d.ts +3 -0
- package/dist/error/errorOverlay.d.ts.map +1 -0
- package/dist/error/errorOverlay.js +84 -0
- package/dist/error/errorOverlay.js.map +7 -0
- package/dist/fynix/index.d.ts +6 -0
- package/dist/fynix/index.d.ts.map +1 -0
- package/dist/fynix/index.js +5 -0
- package/dist/fynix/index.js.map +7 -0
- package/dist/hooks/nixAsync.d.ts +20 -0
- package/dist/hooks/nixAsync.d.ts.map +1 -0
- package/dist/hooks/nixAsync.js +114 -0
- package/dist/hooks/nixAsync.js.map +7 -0
- package/dist/hooks/nixAsyncCache.d.ts +19 -0
- package/dist/hooks/nixAsyncCache.d.ts.map +1 -0
- package/dist/hooks/nixAsyncCache.js +137 -0
- package/dist/hooks/nixAsyncCache.js.map +7 -0
- package/dist/hooks/nixAsyncDebounce.d.ts +22 -0
- package/dist/hooks/nixAsyncDebounce.d.ts.map +1 -0
- package/dist/hooks/nixAsyncDebounce.js +77 -0
- package/dist/hooks/nixAsyncDebounce.js.map +7 -0
- package/dist/hooks/nixAsyncQuery.d.ts +16 -0
- package/dist/hooks/nixAsyncQuery.d.ts.map +1 -0
- package/dist/hooks/nixAsyncQuery.js +87 -0
- package/dist/hooks/nixAsyncQuery.js.map +7 -0
- package/dist/hooks/nixCallback.d.ts +2 -0
- package/dist/hooks/nixCallback.d.ts.map +1 -0
- package/dist/hooks/nixCallback.js +34 -0
- package/dist/hooks/nixCallback.js.map +7 -0
- package/dist/hooks/nixComputed.d.ts +16 -0
- package/dist/hooks/nixComputed.d.ts.map +1 -0
- package/dist/hooks/nixComputed.js +175 -0
- package/dist/hooks/nixComputed.js.map +7 -0
- package/dist/hooks/nixDebounce.d.ts +11 -0
- package/dist/hooks/nixDebounce.d.ts.map +1 -0
- package/dist/hooks/nixDebounce.js +55 -0
- package/dist/hooks/nixDebounce.js.map +7 -0
- package/dist/hooks/nixEffect.d.ts +4 -0
- package/dist/hooks/nixEffect.d.ts.map +1 -0
- package/dist/hooks/nixEffect.js +75 -0
- package/dist/hooks/nixEffect.js.map +7 -0
- package/dist/hooks/nixFor.d.ts +13 -0
- package/dist/hooks/nixFor.d.ts.map +1 -0
- package/dist/hooks/nixFor.js +43 -0
- package/dist/hooks/nixFor.js.map +7 -0
- package/dist/hooks/nixForm.d.ts +33 -0
- package/dist/hooks/nixForm.d.ts.map +1 -0
- package/dist/hooks/nixForm.js +123 -0
- package/dist/hooks/nixForm.js.map +7 -0
- package/dist/hooks/nixFormAsync.d.ts +42 -0
- package/dist/hooks/nixFormAsync.d.ts.map +1 -0
- package/dist/hooks/nixFormAsync.js +169 -0
- package/dist/hooks/nixFormAsync.js.map +7 -0
- package/dist/hooks/nixInterval.d.ts +2 -0
- package/dist/hooks/nixInterval.d.ts.map +1 -0
- package/dist/hooks/nixInterval.js +23 -0
- package/dist/hooks/nixInterval.js.map +7 -0
- package/dist/hooks/nixLazy.d.ts +8 -0
- package/dist/hooks/nixLazy.d.ts.map +1 -0
- package/dist/hooks/nixLazy.js +58 -0
- package/dist/hooks/nixLazy.js.map +7 -0
- package/dist/hooks/nixLazyAsync.d.ts +10 -0
- package/dist/hooks/nixLazyAsync.d.ts.map +1 -0
- package/dist/hooks/nixLazyAsync.js +71 -0
- package/dist/hooks/nixLazyAsync.js.map +7 -0
- package/dist/hooks/nixLazyFormAsync.d.ts +50 -0
- package/dist/hooks/nixLazyFormAsync.d.ts.map +1 -0
- package/dist/hooks/nixLazyFormAsync.js +221 -0
- package/dist/hooks/nixLazyFormAsync.js.map +7 -0
- package/dist/hooks/nixLocalStorage.d.ts +8 -0
- package/dist/hooks/nixLocalStorage.d.ts.map +1 -0
- package/dist/hooks/nixLocalStorage.js +136 -0
- package/dist/hooks/nixLocalStorage.js.map +7 -0
- package/dist/hooks/nixMemo.d.ts +2 -0
- package/dist/hooks/nixMemo.d.ts.map +1 -0
- package/dist/hooks/nixMemo.js +30 -0
- package/dist/hooks/nixMemo.js.map +7 -0
- package/dist/hooks/nixPrevious.d.ts +2 -0
- package/dist/hooks/nixPrevious.d.ts.map +1 -0
- package/dist/hooks/nixPrevious.js +15 -0
- package/dist/hooks/nixPrevious.js.map +7 -0
- package/dist/hooks/nixRef.d.ts +4 -0
- package/dist/hooks/nixRef.d.ts.map +1 -0
- package/dist/hooks/nixRef.js +17 -0
- package/dist/hooks/nixRef.js.map +7 -0
- package/dist/hooks/nixState.d.ts +15 -0
- package/dist/hooks/nixState.d.ts.map +1 -0
- package/dist/hooks/nixState.js +127 -0
- package/dist/hooks/nixState.js.map +7 -0
- package/dist/hooks/nixStore.d.ts +10 -0
- package/dist/hooks/nixStore.d.ts.map +1 -0
- package/dist/hooks/nixStore.js +103 -0
- package/dist/hooks/nixStore.js.map +7 -0
- package/dist/package.json +221 -0
- package/dist/plugins/vite-plugin-res.d.ts +38 -0
- package/dist/plugins/vite-plugin-res.d.ts.map +1 -0
- package/dist/plugins/vite-plugin-res.js +106 -0
- package/dist/plugins/vite-plugin-res.js.map +7 -0
- package/dist/router/router.d.ts +48 -0
- package/dist/router/router.d.ts.map +1 -0
- package/dist/router/router.js +872 -0
- package/dist/router/router.js.map +7 -0
- package/dist/runtime.d.ts +124 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +1361 -0
- package/dist/runtime.js.map +7 -0
- package/package.json +254 -0
- package/types/fnx.d.ts +34 -0
- package/types/fynix-ui.d.ts +323 -0
- package/types/global.d.ts +279 -0
- package/types/index.d.ts +37 -0
- package/types/jsx.d.ts +993 -0
- package/types/vite-env.d.ts +545 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../plugins/vite-plugin-res.ts"],
|
|
4
|
+
"sourcesContent": ["import { transform, type TransformOptions } from \"esbuild\";\r\nimport type { HmrContext, ViteDevServer } from \"vite\";\r\nimport { normalizePath } from \"vite\";\r\n\r\n/**\r\n * Vite plugin options for Fynix\r\n */\r\ninterface FynixPluginOptions {\r\n /**\r\n * JSX factory function name\r\n * @default \"Fynix\"\r\n */\r\n jsxFactory?: string;\r\n\r\n /**\r\n * JSX fragment factory name\r\n * @default \"Fynix.Fragment\"\r\n */\r\n jsxFragment?: string;\r\n\r\n /**\r\n * File extensions to transform\r\n * @default [\".ts\", \".js\", \".jsx\", \".tsx\", \".fnx\"]\r\n */\r\n include?: string[];\r\n\r\n /**\r\n * Paths to exclude from transformation\r\n * @default [\"node_modules\"]\r\n */\r\n exclude?: string[];\r\n\r\n /**\r\n * Enable source maps\r\n * @default true\r\n */\r\n sourcemap?: boolean;\r\n\r\n /**\r\n * Custom esbuild transform options\r\n */\r\n esbuildOptions?: Partial<TransformOptions>;\r\n}\r\n\r\n/**\r\n * Extended context type that includes Vite's transform context methods\r\n */\r\ninterface TransformContext {\r\n addWatchFile?: (id: string) => void;\r\n}\r\n\r\n/**\r\n * Vite plugin for Fynix framework\r\n * Transforms JSX/TSX files using esbuild with custom JSX pragma\r\n */\r\nexport default function fynixPlugin(options: FynixPluginOptions = {}) {\r\n const {\r\n jsxFactory = \"Fynix\",\r\n jsxFragment = \"Fynix.Fragment\",\r\n include = [\".ts\", \".js\", \".jsx\", \".tsx\", \".fnx\"],\r\n exclude = [\"node_modules\"],\r\n sourcemap = true,\r\n esbuildOptions = {},\r\n } = options;\r\n\r\n let viteServer: ViteDevServer | null = null;\r\n\r\n return {\r\n name: \"vite-plugin-fynix\",\r\n enforce: \"pre\" as const,\r\n\r\n /**\r\n * Capture the Vite dev server instance for sending\r\n * WebSocket messages (error overlays, reloads, etc.)\r\n */\r\n configureServer(server: ViteDevServer) {\r\n viteServer = server;\r\n },\r\n\r\n async transform(code: string, id: string) {\r\n const normalizedId = normalizePath(id);\r\n const shouldExclude = exclude.some((pattern) =>\r\n normalizedId.includes(pattern)\r\n );\r\n if (shouldExclude) return null;\r\n const shouldInclude = include.some((ext) => normalizedId.endsWith(ext));\r\n if (!shouldInclude) return null;\r\n\r\n // Type-safe way to access Vite context methods\r\n const ctx = this as unknown as TransformContext;\r\n if (typeof ctx.addWatchFile === \"function\") {\r\n ctx.addWatchFile(id);\r\n }\r\n\r\n try {\r\n let loader: TransformOptions[\"loader\"] = \"tsx\";\r\n if (normalizedId.endsWith(\".ts\") || normalizedId.endsWith(\".fnx\")) {\r\n loader = \"tsx\";\r\n } else if (normalizedId.endsWith(\".tsx\")) {\r\n loader = \"tsx\";\r\n } else if (normalizedId.endsWith(\".jsx\")) {\r\n loader = \"jsx\";\r\n } else if (normalizedId.endsWith(\".js\")) {\r\n loader = \"jsx\";\r\n }\r\n\r\n const result = await transform(code, {\r\n loader,\r\n jsxFactory,\r\n jsxFragment,\r\n sourcemap,\r\n sourcefile: id,\r\n target: \"esnext\",\r\n format: \"esm\",\r\n ...esbuildOptions,\r\n });\r\n\r\n return {\r\n code: result.code,\r\n map: result.map || null,\r\n };\r\n } catch (error) {\r\n const err = error as Error;\r\n\r\n // Send error overlay to the browser via WebSocket\r\n // This shows the red error overlay in the browser instead of just logging to terminal\r\n if (viteServer) {\r\n viteServer.ws.send({\r\n type: \"error\",\r\n err: {\r\n message: err.message,\r\n stack: err.stack || \"\",\r\n plugin: \"vite-plugin-fynix\",\r\n id,\r\n },\r\n });\r\n }\r\n\r\n // Log to terminal as well\r\n console.error(`\\x1b[32m[vite-plugin-fynix]\\x1b[0m \\x1b[31mFailed to transform ${id}:\\x1b[0m`);\r\n console.error(err.message);\r\n\r\n // Return null instead of throwing so Vite's HMR pipeline\r\n // stays intact and can recover when the error is fixed\r\n return null;\r\n }\r\n },\r\n\r\n handleHotUpdate(ctx: HmrContext) {\r\n const { file, server } = ctx;\r\n const normalizedFile = normalizePath(file);\r\n const shouldReload = include.some((ext) => normalizedFile.endsWith(ext));\r\n\r\n if (shouldReload) {\r\n console.log(\r\n `\\x1b[32m[vite-plugin-fynix]\\x1b[0m HMR: full-reload triggered by ${normalizedFile}`\r\n );\r\n server.ws.send({\r\n type: \"full-reload\",\r\n path: \"*\",\r\n });\r\n return [];\r\n }\r\n\r\n return undefined;\r\n },\r\n\r\n config() {\r\n return {\r\n esbuild: false as const,\r\n optimizeDeps: {\r\n include: [\"fynixui\"],\r\n esbuildOptions: {\r\n jsx: \"transform\",\r\n jsxFactory,\r\n jsxFragment,\r\n },\r\n },\r\n resolve: {\r\n extensions: [\".fnx\", \".ts\", \".tsx\", \".js\", \".jsx\", \".json\"],\r\n },\r\n };\r\n },\r\n\r\n buildStart() {\r\n console.log(\r\n `\\x1b[32m[vite-plugin-fynix]\\x1b[0m Initialized with JSX factory: ${jsxFactory}`\r\n );\r\n },\r\n };\r\n}\r\n\r\n/**\r\n * Named export for convenience\r\n */\r\nexport { fynixPlugin };\r\n\r\n/**\r\n * Export types for TypeScript users\r\n */\r\nexport type { FynixPluginOptions };\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
interface NestedRoute {
|
|
2
|
+
path: string;
|
|
3
|
+
component: ComponentFunction;
|
|
4
|
+
children?: NestedRoute[];
|
|
5
|
+
layout?: ComponentFunction;
|
|
6
|
+
keepAlive?: boolean;
|
|
7
|
+
}
|
|
8
|
+
interface ComponentFunction {
|
|
9
|
+
(props: any): any;
|
|
10
|
+
}
|
|
11
|
+
interface RouteComponent {
|
|
12
|
+
(props: any): any;
|
|
13
|
+
props?: Record<string, any> | (() => Record<string, any>);
|
|
14
|
+
meta?: RouteMeta | ((params: Record<string, string>) => RouteMeta);
|
|
15
|
+
}
|
|
16
|
+
interface RouteMeta {
|
|
17
|
+
title?: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
keywords?: string;
|
|
20
|
+
twitterCard?: string;
|
|
21
|
+
ogTitle?: string;
|
|
22
|
+
ogDescription?: string;
|
|
23
|
+
ogImage?: string;
|
|
24
|
+
}
|
|
25
|
+
interface DynamicRoute {
|
|
26
|
+
pattern: string;
|
|
27
|
+
regex: RegExp;
|
|
28
|
+
component: RouteComponent;
|
|
29
|
+
params: string[];
|
|
30
|
+
}
|
|
31
|
+
interface FynixRouter {
|
|
32
|
+
mountRouter(selector?: string): void;
|
|
33
|
+
navigate(path: string, props?: Record<string, any>): void;
|
|
34
|
+
replace(path: string, props?: Record<string, any>): void;
|
|
35
|
+
back(): void;
|
|
36
|
+
cleanup(): void;
|
|
37
|
+
routes: Record<string, RouteComponent>;
|
|
38
|
+
dynamicRoutes: DynamicRoute[];
|
|
39
|
+
preloadRoute?(path: string): Promise<void>;
|
|
40
|
+
clearCache?(): void;
|
|
41
|
+
enableNestedRouting?(routes: NestedRoute[]): void;
|
|
42
|
+
}
|
|
43
|
+
declare function createFynix(): FynixRouter;
|
|
44
|
+
export { createFynix };
|
|
45
|
+
export default createFynix;
|
|
46
|
+
export declare function setLinkProps(key: string, props: Record<string, any>): void;
|
|
47
|
+
export declare function clearLinkProps(key: string): void;
|
|
48
|
+
//# sourceMappingURL=router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../router/router.ts"],"names":[],"mappings":"AA2DA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,iBAAiB,CAAC;IAC7B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,iBAAiB;IACzB,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAAC;CACnB;AAED,UAAU,cAAc;IACtB,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC;CACpE;AAED,UAAU,SAAS;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAaD,UAAU,WAAW;IACnB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC1D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACzD,IAAI,IAAI,IAAI,CAAC;IACb,OAAO,IAAI,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACvC,aAAa,EAAE,YAAY,EAAE,CAAC;IAE9B,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,UAAU,CAAC,IAAI,IAAI,CAAC;IACpB,mBAAmB,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;CACnD;AA0pBD,iBAAS,WAAW,IAAI,WAAW,CAmjBlC;AAGD,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,eAAe,WAAW,CAAC;AAM3B,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAqB1E;AAKD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAoBhD"}
|