react-native-flux-desktop 0.1.3 → 0.1.5

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/README.md CHANGED
@@ -143,6 +143,7 @@ Component families are split into independently published packages, all taking t
143
143
  | **react-native-flux-desktop-dev** | Developer / diagnostic components (CodeBlock / Markdown / JsonViewer / DiffViewer / Terminal / MemMonitor …) | core + chart |
144
144
  | **react-native-flux-desktop-web3** | Web3 / crypto UI (CoinIcon / Address / TokenPrice / NFTCard …) | core |
145
145
  | **react-native-flux-desktop-webview** | Optional WebView (Chromium / WebView2, view-only + JS bridge; ships its own `.node`) | core |
146
+ | **react-native-flux-desktop-ffi** | Optional native-library calls (`libloading` + `libffi`: declarative signatures → call any C-ABI DLL/dylib/.so export; ships its own `.node`) | core (optional) |
146
147
  | **react-native-flux-desktop-packer** | Packaging CLI (`flux-pack`: Go launcher + `go:embed` → self-contained `.exe`) | devDependency |
147
148
  | **react-native-flux-desktop-gallery** | Runnable demo showcase app (100+ demos) consuming all of the above — [view demos here](https://github.com/keyonByIos/react-native-flux-desktop-gallery) | all packages |
148
149
 
package/README.zh-CN.md CHANGED
@@ -143,6 +143,7 @@ DPR(分辨率倍数)可封顶以控成本;GPU 模式下窗口尺寸恒绑
143
143
  | **react-native-flux-desktop-dev** | 开发者 / 诊断组件(CodeBlock / Markdown / JsonViewer / DiffViewer / Terminal / MemMonitor …) | core + chart |
144
144
  | **react-native-flux-desktop-web3** | Web3 / 加密 UI(CoinIcon / Address / TokenPrice / NFTCard …) | core |
145
145
  | **react-native-flux-desktop-webview** | 可选 WebView(Chromium / WebView2,view-only + JS 双向桥;自带 `.node`) | core |
146
+ | **react-native-flux-desktop-ffi** | 可选原生库调用(`libloading` + `libffi`:声明式签名 → 调用任意 C ABI 的 DLL/dylib/so 导出;自带 `.node`) | core(可选) |
146
147
  | **react-native-flux-desktop-packer** | 打包 CLI(`flux-pack`:Go launcher + `go:embed` → 自包含 `.exe`) | devDependency |
147
148
  | **react-native-flux-desktop-gallery** | 可运行的 demo 展示应用(100+ 个)消费以上全部包 —— [在此查看示例](https://github.com/keyonByIos/react-native-flux-desktop-gallery) | 全部包 |
148
149
 
@@ -24,8 +24,8 @@ export type { TrayEvent, TrayOptions, TrayRect } from './app/tray';
24
24
  export { scheduleFrame } from './frame/scheduler';
25
25
  export { registerFonts } from './paint/fonts';
26
26
  export { preloadImage, preloadImages, isImageReady, imageCacheStats, customBitmapStats, getPaintDpr, dropCachedCanvas, putCachedCanvas } from './paint/painter';
27
- export { SystemStats, systemStats } from './system';
28
- export type { MemoryUsage, MemoryUsageMB, ImageCacheStat, WindowMemStat, SystemSnapshot } from './system';
27
+ export { SystemStats, systemStats, systemConstants, systemConstantsJSON } from './system';
28
+ export type { MemoryUsage, MemoryUsageMB, ImageCacheStat, WindowMemStat, SystemSnapshot, SystemConstants, CpuSummary } from './system';
29
29
  export { acquireSingleInstance, releaseSingleInstance, isSingleInstanceEnforced, onSecondInstance, } from './window/instance';
30
30
  export type { SingleInstanceOptions, SecondInstancePayload } from './window/instance';
31
31
  export { configureLogger, loggerConfig, logOverview, readLogTail, readLogEntries, logsDir, enableConsoleCapture } from './log';
package/dist/src/index.js CHANGED
@@ -1 +1,170 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,r,t,n){void 0===n&&(n=t);var o=Object.getOwnPropertyDescriptor(r,t);o&&!("get"in o?!r.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,n,o)}:function(e,r,t,n){void 0===n&&(n=t),e[n]=r[t]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,r){Object.defineProperty(e,"default",{enumerable:!0,value:r})}:function(e,r){e.default=r}),__exportStar=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||__createBinding(r,e,t)},__importStar=this&&this.__importStar||function(){var e=function(r){return e=Object.getOwnPropertyNames||function(e){var r=[];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[r.length]=t);return r},e(r)};return function(r){if(r&&r.__esModule)return r;var t={};if(null!=r)for(var n=e(r),o=0;o<n.length;o++)"default"!==n[o]&&__createBinding(t,r,n[o]);return __setModuleDefault(t,r),t}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.SystemStats=exports.putCachedCanvas=exports.dropCachedCanvas=exports.getPaintDpr=exports.customBitmapStats=exports.imageCacheStats=exports.isImageReady=exports.preloadImages=exports.preloadImage=exports.registerFonts=exports.scheduleFrame=exports.Application=exports.appContainer=exports.getActiveHost=exports.hotReload=exports.grabAll=exports.render=exports.Window=exports.ScrollView=exports.Pressable=exports.Image=exports.Text=exports.View=exports.kv=exports.generate=exports.readability=exports.isValidColor=exports.transparentColor=exports.fade=exports.darken=exports.lighten=exports.mix=exports.hsvToRgb=exports.rgbToHsv=exports.rgbToHex=exports.parse=exports.useAnimationEnabled=exports.useTimezone=exports.useConfig=exports.defaultConfig=exports.ConfigContext=exports.buildComponentTokens=exports.buildAliasToken=exports.defaultSeed=exports.defaultTheme=exports.createTheme=exports.useToken=exports.ThemeContext=exports.ConfigProvider=exports.FluxProvider=void 0,exports.setActiveEditable=exports.forgetEditable=exports.listFontFamilies=exports.SANS_FAMILY=exports.MONO_FAMILY=exports.writeClipboard=exports.isDarkTheme=exports.easeOutCubic=exports.styleAt=exports.presets=exports.runSequence=exports.useTransition=exports.Transition=exports.StaggerItem=exports.Stagger=exports.useFlip=exports.Flip=exports.useTransformTween=exports.useSpring=exports.useMotionValue=exports.RotateIn=exports.ScaleIn=exports.MoveIn=exports.useEnter=exports.FadeIn=exports.Easing=exports.subscribe=exports.useTween=exports.useAnimation=exports.enableConsoleCapture=exports.logsDir=exports.readLogEntries=exports.readLogTail=exports.logOverview=exports.loggerConfig=exports.configureLogger=exports.onSecondInstance=exports.isSingleInstanceEnforced=exports.releaseSingleInstance=exports.acquireSingleInstance=exports.systemStats=void 0,__exportStar(require("./types"),exports),__exportStar(require("./ui"),exports),__exportStar(require("./pro"),exports),__exportStar(require("./chart"),exports),__exportStar(require("./web3"),exports),__exportStar(require("./io"),exports),__exportStar(require("./dev"),exports);var theme_1=require("./theme");Object.defineProperty(exports,"FluxProvider",{enumerable:!0,get:function(){return theme_1.FluxProvider}}),Object.defineProperty(exports,"ConfigProvider",{enumerable:!0,get:function(){return theme_1.ConfigProvider}}),Object.defineProperty(exports,"ThemeContext",{enumerable:!0,get:function(){return theme_1.ThemeContext}}),Object.defineProperty(exports,"useToken",{enumerable:!0,get:function(){return theme_1.useToken}}),Object.defineProperty(exports,"createTheme",{enumerable:!0,get:function(){return theme_1.createTheme}}),Object.defineProperty(exports,"defaultTheme",{enumerable:!0,get:function(){return theme_1.defaultTheme}}),Object.defineProperty(exports,"defaultSeed",{enumerable:!0,get:function(){return theme_1.defaultSeed}}),Object.defineProperty(exports,"buildAliasToken",{enumerable:!0,get:function(){return theme_1.buildAliasToken}}),Object.defineProperty(exports,"buildComponentTokens",{enumerable:!0,get:function(){return theme_1.buildComponentTokens}}),Object.defineProperty(exports,"ConfigContext",{enumerable:!0,get:function(){return theme_1.ConfigContext}}),Object.defineProperty(exports,"defaultConfig",{enumerable:!0,get:function(){return theme_1.defaultConfig}}),Object.defineProperty(exports,"useConfig",{enumerable:!0,get:function(){return theme_1.useConfig}}),Object.defineProperty(exports,"useTimezone",{enumerable:!0,get:function(){return theme_1.useTimezone}}),Object.defineProperty(exports,"useAnimationEnabled",{enumerable:!0,get:function(){return theme_1.useAnimationEnabled}}),__exportStar(require("./utils/timezone"),exports);var color_1=require("./utils/color");Object.defineProperty(exports,"parse",{enumerable:!0,get:function(){return color_1.parse}}),Object.defineProperty(exports,"rgbToHex",{enumerable:!0,get:function(){return color_1.rgbToHex}}),Object.defineProperty(exports,"rgbToHsv",{enumerable:!0,get:function(){return color_1.rgbToHsv}}),Object.defineProperty(exports,"hsvToRgb",{enumerable:!0,get:function(){return color_1.hsvToRgb}}),Object.defineProperty(exports,"mix",{enumerable:!0,get:function(){return color_1.mix}}),Object.defineProperty(exports,"lighten",{enumerable:!0,get:function(){return color_1.lighten}}),Object.defineProperty(exports,"darken",{enumerable:!0,get:function(){return color_1.darken}}),Object.defineProperty(exports,"fade",{enumerable:!0,get:function(){return color_1.fade}}),Object.defineProperty(exports,"transparentColor",{enumerable:!0,get:function(){return color_1.transparentColor}}),Object.defineProperty(exports,"isValidColor",{enumerable:!0,get:function(){return color_1.isValidColor}}),Object.defineProperty(exports,"readability",{enumerable:!0,get:function(){return color_1.readability}}),Object.defineProperty(exports,"generate",{enumerable:!0,get:function(){return color_1.generate}}),exports.kv=__importStar(require("./app/db"));var components_1=require("./components");Object.defineProperty(exports,"View",{enumerable:!0,get:function(){return components_1.View}}),Object.defineProperty(exports,"Text",{enumerable:!0,get:function(){return components_1.Text}}),Object.defineProperty(exports,"Image",{enumerable:!0,get:function(){return components_1.Image}}),Object.defineProperty(exports,"Pressable",{enumerable:!0,get:function(){return components_1.Pressable}}),Object.defineProperty(exports,"ScrollView",{enumerable:!0,get:function(){return components_1.ScrollView}}),Object.defineProperty(exports,"Window",{enumerable:!0,get:function(){return components_1.Window}});var renderer_1=require("./renderer");Object.defineProperty(exports,"render",{enumerable:!0,get:function(){return renderer_1.render}}),Object.defineProperty(exports,"grabAll",{enumerable:!0,get:function(){return renderer_1.grabAll}}),Object.defineProperty(exports,"hotReload",{enumerable:!0,get:function(){return renderer_1.hotReload}});var reconciler_1=require("./reconciler");Object.defineProperty(exports,"getActiveHost",{enumerable:!0,get:function(){return reconciler_1.getActiveHost}});var reconciler_2=require("./reconciler");Object.defineProperty(exports,"appContainer",{enumerable:!0,get:function(){return reconciler_2.appContainer}});var app_1=require("./app");Object.defineProperty(exports,"Application",{enumerable:!0,get:function(){return app_1.Application}});var scheduler_1=require("./frame/scheduler");Object.defineProperty(exports,"scheduleFrame",{enumerable:!0,get:function(){return scheduler_1.scheduleFrame}});var fonts_1=require("./paint/fonts");Object.defineProperty(exports,"registerFonts",{enumerable:!0,get:function(){return fonts_1.registerFonts}});var painter_1=require("./paint/painter");Object.defineProperty(exports,"preloadImage",{enumerable:!0,get:function(){return painter_1.preloadImage}}),Object.defineProperty(exports,"preloadImages",{enumerable:!0,get:function(){return painter_1.preloadImages}}),Object.defineProperty(exports,"isImageReady",{enumerable:!0,get:function(){return painter_1.isImageReady}}),Object.defineProperty(exports,"imageCacheStats",{enumerable:!0,get:function(){return painter_1.imageCacheStats}}),Object.defineProperty(exports,"customBitmapStats",{enumerable:!0,get:function(){return painter_1.customBitmapStats}}),Object.defineProperty(exports,"getPaintDpr",{enumerable:!0,get:function(){return painter_1.getPaintDpr}}),Object.defineProperty(exports,"dropCachedCanvas",{enumerable:!0,get:function(){return painter_1.dropCachedCanvas}}),Object.defineProperty(exports,"putCachedCanvas",{enumerable:!0,get:function(){return painter_1.putCachedCanvas}});var system_1=require("./system");Object.defineProperty(exports,"SystemStats",{enumerable:!0,get:function(){return system_1.SystemStats}}),Object.defineProperty(exports,"systemStats",{enumerable:!0,get:function(){return system_1.systemStats}});var instance_1=require("./window/instance");Object.defineProperty(exports,"acquireSingleInstance",{enumerable:!0,get:function(){return instance_1.acquireSingleInstance}}),Object.defineProperty(exports,"releaseSingleInstance",{enumerable:!0,get:function(){return instance_1.releaseSingleInstance}}),Object.defineProperty(exports,"isSingleInstanceEnforced",{enumerable:!0,get:function(){return instance_1.isSingleInstanceEnforced}}),Object.defineProperty(exports,"onSecondInstance",{enumerable:!0,get:function(){return instance_1.onSecondInstance}});var log_1=require("./log");Object.defineProperty(exports,"configureLogger",{enumerable:!0,get:function(){return log_1.configureLogger}}),Object.defineProperty(exports,"loggerConfig",{enumerable:!0,get:function(){return log_1.loggerConfig}}),Object.defineProperty(exports,"logOverview",{enumerable:!0,get:function(){return log_1.logOverview}}),Object.defineProperty(exports,"readLogTail",{enumerable:!0,get:function(){return log_1.readLogTail}}),Object.defineProperty(exports,"readLogEntries",{enumerable:!0,get:function(){return log_1.readLogEntries}}),Object.defineProperty(exports,"logsDir",{enumerable:!0,get:function(){return log_1.logsDir}}),Object.defineProperty(exports,"enableConsoleCapture",{enumerable:!0,get:function(){return log_1.enableConsoleCapture}});var anim_1=require("./anim");Object.defineProperty(exports,"useAnimation",{enumerable:!0,get:function(){return anim_1.useAnimation}}),Object.defineProperty(exports,"useTween",{enumerable:!0,get:function(){return anim_1.useTween}}),Object.defineProperty(exports,"subscribe",{enumerable:!0,get:function(){return anim_1.subscribe}}),Object.defineProperty(exports,"Easing",{enumerable:!0,get:function(){return anim_1.Easing}}),Object.defineProperty(exports,"FadeIn",{enumerable:!0,get:function(){return anim_1.FadeIn}}),Object.defineProperty(exports,"useEnter",{enumerable:!0,get:function(){return anim_1.useEnter}}),Object.defineProperty(exports,"MoveIn",{enumerable:!0,get:function(){return anim_1.MoveIn}}),Object.defineProperty(exports,"ScaleIn",{enumerable:!0,get:function(){return anim_1.ScaleIn}}),Object.defineProperty(exports,"RotateIn",{enumerable:!0,get:function(){return anim_1.RotateIn}}),Object.defineProperty(exports,"useMotionValue",{enumerable:!0,get:function(){return anim_1.useMotionValue}}),Object.defineProperty(exports,"useSpring",{enumerable:!0,get:function(){return anim_1.useSpring}}),Object.defineProperty(exports,"useTransformTween",{enumerable:!0,get:function(){return anim_1.useTransformTween}}),Object.defineProperty(exports,"Flip",{enumerable:!0,get:function(){return anim_1.Flip}}),Object.defineProperty(exports,"useFlip",{enumerable:!0,get:function(){return anim_1.useFlip}}),Object.defineProperty(exports,"Stagger",{enumerable:!0,get:function(){return anim_1.Stagger}}),Object.defineProperty(exports,"StaggerItem",{enumerable:!0,get:function(){return anim_1.StaggerItem}}),Object.defineProperty(exports,"Transition",{enumerable:!0,get:function(){return anim_1.Transition}}),Object.defineProperty(exports,"useTransition",{enumerable:!0,get:function(){return anim_1.useTransition}}),Object.defineProperty(exports,"runSequence",{enumerable:!0,get:function(){return anim_1.runSequence}}),Object.defineProperty(exports,"presets",{enumerable:!0,get:function(){return anim_1.presets}}),Object.defineProperty(exports,"styleAt",{enumerable:!0,get:function(){return anim_1.styleAt}});var easing_1=require("./anim/easing");Object.defineProperty(exports,"easeOutCubic",{enumerable:!0,get:function(){return easing_1.easeOutCubic}});var shared_1=require("./theme/themes/shared");Object.defineProperty(exports,"isDarkTheme",{enumerable:!0,get:function(){return shared_1.isDarkTheme}});var clipboard_1=require("./window/clipboard");Object.defineProperty(exports,"writeClipboard",{enumerable:!0,get:function(){return clipboard_1.writeClipboard}});var fonts_2=require("./paint/fonts");Object.defineProperty(exports,"MONO_FAMILY",{enumerable:!0,get:function(){return fonts_2.MONO_FAMILY}}),Object.defineProperty(exports,"SANS_FAMILY",{enumerable:!0,get:function(){return fonts_2.SANS_FAMILY}}),Object.defineProperty(exports,"listFontFamilies",{enumerable:!0,get:function(){return fonts_2.listFontFamilies}});var textinput_1=require("./events/textinput");Object.defineProperty(exports,"forgetEditable",{enumerable:!0,get:function(){return textinput_1.forgetEditable}}),Object.defineProperty(exports,"setActiveEditable",{enumerable:!0,get:function(){return textinput_1.setActiveEditable}});
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.SystemStats = exports.putCachedCanvas = exports.dropCachedCanvas = exports.getPaintDpr = exports.customBitmapStats = exports.imageCacheStats = exports.isImageReady = exports.preloadImages = exports.preloadImage = exports.registerFonts = exports.scheduleFrame = exports.Application = exports.appContainer = exports.getActiveHost = exports.hotReload = exports.grabAll = exports.render = exports.Window = exports.ScrollView = exports.Pressable = exports.Image = exports.Text = exports.View = exports.kv = exports.generate = exports.readability = exports.isValidColor = exports.transparentColor = exports.fade = exports.darken = exports.lighten = exports.mix = exports.hsvToRgb = exports.rgbToHsv = exports.rgbToHex = exports.parse = exports.useAnimationEnabled = exports.useTimezone = exports.useConfig = exports.defaultConfig = exports.ConfigContext = exports.buildComponentTokens = exports.buildAliasToken = exports.defaultSeed = exports.defaultTheme = exports.createTheme = exports.useToken = exports.ThemeContext = exports.ConfigProvider = exports.FluxProvider = void 0;
40
+ exports.setActiveEditable = exports.forgetEditable = exports.listFontFamilies = exports.SANS_FAMILY = exports.MONO_FAMILY = exports.writeClipboard = exports.isDarkTheme = exports.easeOutCubic = exports.styleAt = exports.presets = exports.runSequence = exports.useTransition = exports.Transition = exports.StaggerItem = exports.Stagger = exports.useFlip = exports.Flip = exports.useTransformTween = exports.useSpring = exports.useMotionValue = exports.RotateIn = exports.ScaleIn = exports.MoveIn = exports.useEnter = exports.FadeIn = exports.Easing = exports.subscribe = exports.useTween = exports.useAnimation = exports.enableConsoleCapture = exports.logsDir = exports.readLogEntries = exports.readLogTail = exports.logOverview = exports.loggerConfig = exports.configureLogger = exports.onSecondInstance = exports.isSingleInstanceEnforced = exports.releaseSingleInstance = exports.acquireSingleInstance = exports.systemConstantsJSON = exports.systemConstants = exports.systemStats = void 0;
41
+ __exportStar(require("./types"), exports);
42
+ __exportStar(require("./ui"), exports);
43
+ __exportStar(require("./pro"), exports);
44
+ __exportStar(require("./chart"), exports);
45
+ __exportStar(require("./web3"), exports);
46
+ __exportStar(require("./io"), exports);
47
+ __exportStar(require("./dev"), exports);
48
+ var theme_1 = require("./theme");
49
+ Object.defineProperty(exports, "FluxProvider", { enumerable: true, get: function () { return theme_1.FluxProvider; } });
50
+ Object.defineProperty(exports, "ConfigProvider", { enumerable: true, get: function () { return theme_1.ConfigProvider; } });
51
+ Object.defineProperty(exports, "ThemeContext", { enumerable: true, get: function () { return theme_1.ThemeContext; } });
52
+ Object.defineProperty(exports, "useToken", { enumerable: true, get: function () { return theme_1.useToken; } });
53
+ Object.defineProperty(exports, "createTheme", { enumerable: true, get: function () { return theme_1.createTheme; } });
54
+ Object.defineProperty(exports, "defaultTheme", { enumerable: true, get: function () { return theme_1.defaultTheme; } });
55
+ Object.defineProperty(exports, "defaultSeed", { enumerable: true, get: function () { return theme_1.defaultSeed; } });
56
+ Object.defineProperty(exports, "buildAliasToken", { enumerable: true, get: function () { return theme_1.buildAliasToken; } });
57
+ Object.defineProperty(exports, "buildComponentTokens", { enumerable: true, get: function () { return theme_1.buildComponentTokens; } });
58
+ Object.defineProperty(exports, "ConfigContext", { enumerable: true, get: function () { return theme_1.ConfigContext; } });
59
+ Object.defineProperty(exports, "defaultConfig", { enumerable: true, get: function () { return theme_1.defaultConfig; } });
60
+ Object.defineProperty(exports, "useConfig", { enumerable: true, get: function () { return theme_1.useConfig; } });
61
+ Object.defineProperty(exports, "useTimezone", { enumerable: true, get: function () { return theme_1.useTimezone; } });
62
+ Object.defineProperty(exports, "useAnimationEnabled", { enumerable: true, get: function () { return theme_1.useAnimationEnabled; } });
63
+ __exportStar(require("./utils/timezone"), exports);
64
+ // 对外补齐:颜色工具(demo 里的 fade/generate/readability 等)、KV 存储命名空间(sys-kv demo)
65
+ var color_1 = require("./utils/color");
66
+ Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return color_1.parse; } });
67
+ Object.defineProperty(exports, "rgbToHex", { enumerable: true, get: function () { return color_1.rgbToHex; } });
68
+ Object.defineProperty(exports, "rgbToHsv", { enumerable: true, get: function () { return color_1.rgbToHsv; } });
69
+ Object.defineProperty(exports, "hsvToRgb", { enumerable: true, get: function () { return color_1.hsvToRgb; } });
70
+ Object.defineProperty(exports, "mix", { enumerable: true, get: function () { return color_1.mix; } });
71
+ Object.defineProperty(exports, "lighten", { enumerable: true, get: function () { return color_1.lighten; } });
72
+ Object.defineProperty(exports, "darken", { enumerable: true, get: function () { return color_1.darken; } });
73
+ Object.defineProperty(exports, "fade", { enumerable: true, get: function () { return color_1.fade; } });
74
+ Object.defineProperty(exports, "transparentColor", { enumerable: true, get: function () { return color_1.transparentColor; } });
75
+ Object.defineProperty(exports, "isValidColor", { enumerable: true, get: function () { return color_1.isValidColor; } });
76
+ Object.defineProperty(exports, "readability", { enumerable: true, get: function () { return color_1.readability; } });
77
+ Object.defineProperty(exports, "generate", { enumerable: true, get: function () { return color_1.generate; } });
78
+ exports.kv = __importStar(require("./app/db"));
79
+ var components_1 = require("./components");
80
+ Object.defineProperty(exports, "View", { enumerable: true, get: function () { return components_1.View; } });
81
+ Object.defineProperty(exports, "Text", { enumerable: true, get: function () { return components_1.Text; } });
82
+ Object.defineProperty(exports, "Image", { enumerable: true, get: function () { return components_1.Image; } });
83
+ Object.defineProperty(exports, "Pressable", { enumerable: true, get: function () { return components_1.Pressable; } });
84
+ Object.defineProperty(exports, "ScrollView", { enumerable: true, get: function () { return components_1.ScrollView; } });
85
+ Object.defineProperty(exports, "Window", { enumerable: true, get: function () { return components_1.Window; } });
86
+ var renderer_1 = require("./renderer");
87
+ Object.defineProperty(exports, "render", { enumerable: true, get: function () { return renderer_1.render; } });
88
+ Object.defineProperty(exports, "grabAll", { enumerable: true, get: function () { return renderer_1.grabAll; } });
89
+ Object.defineProperty(exports, "hotReload", { enumerable: true, get: function () { return renderer_1.hotReload; } });
90
+ var reconciler_1 = require("./reconciler");
91
+ Object.defineProperty(exports, "getActiveHost", { enumerable: true, get: function () { return reconciler_1.getActiveHost; } });
92
+ var reconciler_2 = require("./reconciler");
93
+ Object.defineProperty(exports, "appContainer", { enumerable: true, get: function () { return reconciler_2.appContainer; } });
94
+ // 全局 Application 单例:窗口注册表 + 系统配置(Application.config) + 用户存储(Application.user) + 模态门控(任意处 import { Application } 可用)
95
+ // 注:antd 风格的 <App> 包裹组件(App.useApp 全局调 message/modal/notification)经 './ui' 透传导出。
96
+ var app_1 = require("./app");
97
+ Object.defineProperty(exports, "Application", { enumerable: true, get: function () { return app_1.Application; } });
98
+ var scheduler_1 = require("./frame/scheduler");
99
+ Object.defineProperty(exports, "scheduleFrame", { enumerable: true, get: function () { return scheduler_1.scheduleFrame; } });
100
+ var fonts_1 = require("./paint/fonts");
101
+ Object.defineProperty(exports, "registerFonts", { enumerable: true, get: function () { return fonts_1.registerFonts; } });
102
+ var painter_1 = require("./paint/painter");
103
+ Object.defineProperty(exports, "preloadImage", { enumerable: true, get: function () { return painter_1.preloadImage; } });
104
+ Object.defineProperty(exports, "preloadImages", { enumerable: true, get: function () { return painter_1.preloadImages; } });
105
+ Object.defineProperty(exports, "isImageReady", { enumerable: true, get: function () { return painter_1.isImageReady; } });
106
+ Object.defineProperty(exports, "imageCacheStats", { enumerable: true, get: function () { return painter_1.imageCacheStats; } });
107
+ Object.defineProperty(exports, "customBitmapStats", { enumerable: true, get: function () { return painter_1.customBitmapStats; } });
108
+ Object.defineProperty(exports, "getPaintDpr", { enumerable: true, get: function () { return painter_1.getPaintDpr; } });
109
+ Object.defineProperty(exports, "dropCachedCanvas", { enumerable: true, get: function () { return painter_1.dropCachedCanvas; } });
110
+ Object.defineProperty(exports, "putCachedCanvas", { enumerable: true, get: function () { return painter_1.putCachedCanvas; } });
111
+ // 系统运行时取数门面(内存/图片缓存/逐窗面/帧率/GC):单例 systemStats 任意处即时快照,或自建面板
112
+ // 另导出 systemConstants:进程启动即定的静态环境常量(平台/架构/OS/用户/硬件容量/Node 版本/时区),纯 os+process、只读冻结
113
+ var system_1 = require("./system");
114
+ Object.defineProperty(exports, "SystemStats", { enumerable: true, get: function () { return system_1.SystemStats; } });
115
+ Object.defineProperty(exports, "systemStats", { enumerable: true, get: function () { return system_1.systemStats; } });
116
+ Object.defineProperty(exports, "systemConstants", { enumerable: true, get: function () { return system_1.systemConstants; } });
117
+ Object.defineProperty(exports, "systemConstantsJSON", { enumerable: true, get: function () { return system_1.systemConstantsJSON; } });
118
+ // 单实例锁 + 次实例唤起:生产环境保证全局只跑一个进程,开发环境放行可多开(入口建窗前调 acquireSingleInstance);
119
+ // 主实例起本地 IPC(命名管道/unix socket),次实例抢锁失败时通知主实例 → onSecondInstance 回调(上层 wakeMainWindow 唤老窗)。
120
+ var instance_1 = require("./window/instance");
121
+ Object.defineProperty(exports, "acquireSingleInstance", { enumerable: true, get: function () { return instance_1.acquireSingleInstance; } });
122
+ Object.defineProperty(exports, "releaseSingleInstance", { enumerable: true, get: function () { return instance_1.releaseSingleInstance; } });
123
+ Object.defineProperty(exports, "isSingleInstanceEnforced", { enumerable: true, get: function () { return instance_1.isSingleInstanceEnforced; } });
124
+ Object.defineProperty(exports, "onSecondInstance", { enumerable: true, get: function () { return instance_1.onSecondInstance; } });
125
+ // 日志系统:入口按 app.json.logger 调 configureLogger;用户日志走 App.log.init/write;
126
+ // 以下为查看/配置接口。系统日志写点(sysLog)属核心内部专用,不对外导出(用户不可写系统日志)。
127
+ var log_1 = require("./log");
128
+ Object.defineProperty(exports, "configureLogger", { enumerable: true, get: function () { return log_1.configureLogger; } });
129
+ Object.defineProperty(exports, "loggerConfig", { enumerable: true, get: function () { return log_1.loggerConfig; } });
130
+ Object.defineProperty(exports, "logOverview", { enumerable: true, get: function () { return log_1.logOverview; } });
131
+ Object.defineProperty(exports, "readLogTail", { enumerable: true, get: function () { return log_1.readLogTail; } });
132
+ Object.defineProperty(exports, "readLogEntries", { enumerable: true, get: function () { return log_1.readLogEntries; } });
133
+ Object.defineProperty(exports, "logsDir", { enumerable: true, get: function () { return log_1.logsDir; } });
134
+ Object.defineProperty(exports, "enableConsoleCapture", { enumerable: true, get: function () { return log_1.enableConsoleCapture; } });
135
+ var anim_1 = require("./anim");
136
+ Object.defineProperty(exports, "useAnimation", { enumerable: true, get: function () { return anim_1.useAnimation; } });
137
+ Object.defineProperty(exports, "useTween", { enumerable: true, get: function () { return anim_1.useTween; } });
138
+ Object.defineProperty(exports, "subscribe", { enumerable: true, get: function () { return anim_1.subscribe; } });
139
+ Object.defineProperty(exports, "Easing", { enumerable: true, get: function () { return anim_1.Easing; } });
140
+ Object.defineProperty(exports, "FadeIn", { enumerable: true, get: function () { return anim_1.FadeIn; } });
141
+ Object.defineProperty(exports, "useEnter", { enumerable: true, get: function () { return anim_1.useEnter; } });
142
+ Object.defineProperty(exports, "MoveIn", { enumerable: true, get: function () { return anim_1.MoveIn; } });
143
+ Object.defineProperty(exports, "ScaleIn", { enumerable: true, get: function () { return anim_1.ScaleIn; } });
144
+ Object.defineProperty(exports, "RotateIn", { enumerable: true, get: function () { return anim_1.RotateIn; } });
145
+ Object.defineProperty(exports, "useMotionValue", { enumerable: true, get: function () { return anim_1.useMotionValue; } });
146
+ Object.defineProperty(exports, "useSpring", { enumerable: true, get: function () { return anim_1.useSpring; } });
147
+ Object.defineProperty(exports, "useTransformTween", { enumerable: true, get: function () { return anim_1.useTransformTween; } });
148
+ Object.defineProperty(exports, "Flip", { enumerable: true, get: function () { return anim_1.Flip; } });
149
+ Object.defineProperty(exports, "useFlip", { enumerable: true, get: function () { return anim_1.useFlip; } });
150
+ Object.defineProperty(exports, "Stagger", { enumerable: true, get: function () { return anim_1.Stagger; } });
151
+ Object.defineProperty(exports, "StaggerItem", { enumerable: true, get: function () { return anim_1.StaggerItem; } });
152
+ Object.defineProperty(exports, "Transition", { enumerable: true, get: function () { return anim_1.Transition; } });
153
+ Object.defineProperty(exports, "useTransition", { enumerable: true, get: function () { return anim_1.useTransition; } });
154
+ Object.defineProperty(exports, "runSequence", { enumerable: true, get: function () { return anim_1.runSequence; } });
155
+ Object.defineProperty(exports, "presets", { enumerable: true, get: function () { return anim_1.presets; } });
156
+ Object.defineProperty(exports, "styleAt", { enumerable: true, get: function () { return anim_1.styleAt; } });
157
+ var easing_1 = require("./anim/easing");
158
+ Object.defineProperty(exports, "easeOutCubic", { enumerable: true, get: function () { return easing_1.easeOutCubic; } });
159
+ // 组件族拆独立包补齐:pro/web3/dev 独立包经裸包名回取的核心符号(原经深层相对路径直连,拆包后统一走 barrel)
160
+ var shared_1 = require("./theme/themes/shared");
161
+ Object.defineProperty(exports, "isDarkTheme", { enumerable: true, get: function () { return shared_1.isDarkTheme; } });
162
+ var clipboard_1 = require("./window/clipboard");
163
+ Object.defineProperty(exports, "writeClipboard", { enumerable: true, get: function () { return clipboard_1.writeClipboard; } });
164
+ var fonts_2 = require("./paint/fonts");
165
+ Object.defineProperty(exports, "MONO_FAMILY", { enumerable: true, get: function () { return fonts_2.MONO_FAMILY; } });
166
+ Object.defineProperty(exports, "SANS_FAMILY", { enumerable: true, get: function () { return fonts_2.SANS_FAMILY; } });
167
+ Object.defineProperty(exports, "listFontFamilies", { enumerable: true, get: function () { return fonts_2.listFontFamilies; } });
168
+ var textinput_1 = require("./events/textinput");
169
+ Object.defineProperty(exports, "forgetEditable", { enumerable: true, get: function () { return textinput_1.forgetEditable; } });
170
+ Object.defineProperty(exports, "setActiveEditable", { enumerable: true, get: function () { return textinput_1.setActiveEditable; } });
@@ -0,0 +1,98 @@
1
+ /** CPU 概要(取首个物理核的型号/标称频率 + 逻辑核总数) */
2
+ export interface CpuSummary {
3
+ /** CPU 型号字符串(多核取第一个) */
4
+ model: string;
5
+ /** 标称主频(MHz,取第一个核;部分平台为 0) */
6
+ speedMHz: number;
7
+ /** 逻辑核心数 */
8
+ cores: number;
9
+ }
10
+ /** 系统静态常量的完整结构(字段均只读) */
11
+ export interface SystemConstants {
12
+ /** Node 平台标识:'win32' | 'darwin' | 'linux' | 'freebsd' | ... */
13
+ platform: string;
14
+ /** 人类可读平台名:Windows / macOS / Linux / FreeBSD / ... */
15
+ platformName: string;
16
+ /** CPU 架构:'x64' | 'arm64' | 'ia32' | ... */
17
+ arch: string;
18
+ /** 位宽:32 或 64(由 arch 推断,未知为 0) */
19
+ bits: number;
20
+ /** 是否 Windows */
21
+ isWindows: boolean;
22
+ /** 是否 macOS */
23
+ isMacOS: boolean;
24
+ /** 是否 Linux */
25
+ isLinux: boolean;
26
+ /** 是否类 Unix(darwin / linux / freebsd / sunos 等,非 win32) */
27
+ isUnix: boolean;
28
+ /** os.type():'Windows_NT' | 'Darwin' | 'Linux' | ... */
29
+ osType: string;
30
+ /** os.release():操作系统版本号(如 '10.0.22631' / '23.5.0' / '6.8.0-...') */
31
+ osRelease: string;
32
+ /** os.endianness():'LE' | 'BE' */
33
+ endianness: string;
34
+ /** 主机名(计算机名) */
35
+ hostname: string;
36
+ /** 当前用户名 */
37
+ username: string;
38
+ /** 用户主目录 */
39
+ homedir: string;
40
+ /** 系统临时目录 */
41
+ tmpdir: string;
42
+ /** 默认 shell(取不到为空串) */
43
+ shell: string;
44
+ /** POSIX uid(Windows 下通常为 -1 / 0,不代表无权限) */
45
+ uid: number;
46
+ /** POSIX gid(Windows 下通常为 -1 / 0) */
47
+ gid: number;
48
+ /** CPU 概要(型号 / 主频 / 核数) */
49
+ cpu: CpuSummary;
50
+ /** 逻辑核心总数 */
51
+ cpuCount: number;
52
+ /** 整机物理内存总字节 */
53
+ totalMemBytes: number;
54
+ /** 整机物理内存总量(GB,1GB=1024^3) */
55
+ totalMemGB: number;
56
+ /** process.version,如 'v20.11.1' */
57
+ nodeVersion: string;
58
+ /** Node 主版本号 */
59
+ nodeMajor: number;
60
+ /** Node 次版本号 */
61
+ nodeMinor: number;
62
+ /** Node 修订号 */
63
+ nodePatch: number;
64
+ /** V8 引擎版本 */
65
+ v8Version: string;
66
+ /** libuv 版本 */
67
+ uvVersion: string;
68
+ /** N-API 支持版本 */
69
+ napiVersion: string;
70
+ /** OpenSSL 版本(无则空串) */
71
+ opensslVersion: string;
72
+ /** 模块 ABI 版本(加载原生 addon 需匹配) */
73
+ modulesVersion: string;
74
+ /** process.versions 全量映射(各依赖组件版本) */
75
+ versions: Record<string, string>;
76
+ /** 当前进程 pid */
77
+ pid: number;
78
+ /** 父进程 ppid */
79
+ ppid: number;
80
+ /** 可执行文件路径(dev 下为 node,打包后为 app.exe) */
81
+ execPath: string;
82
+ /** 进程标题(process.title) */
83
+ title: string;
84
+ /** 启动参数 argv */
85
+ argv: string[];
86
+ /** IANA 时区名,如 'Asia/Shanghai' */
87
+ timezone: string;
88
+ /** UTC 相对本地的偏移(分钟,同 getTimezoneOffset 语义) */
89
+ timezoneOffsetMin: number;
90
+ /** BCP-47 区域,如 'zh-CN' */
91
+ locale: string;
92
+ /** 首选语言(读不到回退 locale) */
93
+ language: string;
94
+ }
95
+ /** 系统静态常量单例(模块加载时算一次并冻结,之后只读)。 */
96
+ export declare const systemConstants: SystemConstants;
97
+ /** 便捷:把常量表输出为缩进 JSON 字符串(demo 展示 / 复制到剪贴板用)。 */
98
+ export declare function systemConstantsJSON(indent?: number): string;
@@ -0,0 +1 @@
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,s,t,n){void 0===n&&(n=t);var o=Object.getOwnPropertyDescriptor(s,t);o&&!("get"in o?!s.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return s[t]}}),Object.defineProperty(e,n,o)}:function(e,s,t,n){void 0===n&&(n=t),e[n]=s[t]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,s){Object.defineProperty(e,"default",{enumerable:!0,value:s})}:function(e,s){e.default=s}),__importStar=this&&this.__importStar||function(){var e=function(s){return e=Object.getOwnPropertyNames||function(e){var s=[];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(s[s.length]=t);return s},e(s)};return function(s){if(s&&s.__esModule)return s;var t={};if(null!=s)for(var n=e(s),o=0;o<n.length;o++)"default"!==n[o]&&__createBinding(t,s,n[o]);return __setModuleDefault(t,s),t}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.systemConstants=void 0,exports.systemConstantsJSON=systemConstantsJSON;const os=__importStar(require("os")),GB=1073741824;function safe(e,s){try{const t=e();return null==t?s:t}catch{return s}}function inferBits(e){return/^(x64|x86_64|arm64|aarch64|ppc64|s390x|riscv64|loong64)$/.test(e)?64:/^(ia32|x86|arm|armv7l|ppc|mips|s390|riscv32)$/.test(e)?32:0}const PLATFORM_NAMES={aix:"AIX",android:"Android",darwin:"macOS",freebsd:"FreeBSD",haiku:"Haiku",linux:"Linux",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows",cygwin:"Windows (Cygwin)",netbsd:"NetBSD"};function parseNodeVersion(e){const s=/^v?(\d+)\.(\d+)\.(\d+)/.exec(e);return s?{major:Number(s[1]),minor:Number(s[2]),patch:Number(s[3])}:{major:0,minor:0,patch:0}}function build(){const e=safe(()=>os.cpus(),[]),s=e[0],t=safe(()=>os.userInfo(),void 0),n=safe(()=>process.versions,{}),o=parseNodeVersion(process.version),r=safe(()=>Intl.DateTimeFormat().resolvedOptions(),{timeZone:"",locale:""}),i=process.platform;return Object.freeze({platform:i,platformName:PLATFORM_NAMES[i]??i,arch:process.arch,bits:inferBits(process.arch),isWindows:"win32"===i,isMacOS:"darwin"===i,isLinux:"linux"===i,isUnix:"win32"!==i,osType:safe(()=>os.type(),""),osRelease:safe(()=>os.release(),""),endianness:safe(()=>os.endianness(),""),hostname:safe(()=>os.hostname(),""),username:safe(()=>t?t.username:"",""),homedir:safe(()=>os.homedir(),""),tmpdir:safe(()=>os.tmpdir(),""),shell:safe(()=>t&&t.shell||"",""),uid:safe(()=>t?t.uid:-1,-1),gid:safe(()=>t?t.gid:-1,-1),cpu:Object.freeze({model:s?s.model:"",speedMHz:s?s.speed:0,cores:e.length}),cpuCount:e.length,totalMemBytes:safe(()=>os.totalmem(),0),totalMemGB:Number((safe(()=>os.totalmem(),0)/GB).toFixed(2)),nodeVersion:process.version,nodeMajor:o.major,nodeMinor:o.minor,nodePatch:o.patch,v8Version:n.v8??"",uvVersion:n.uv??"",napiVersion:n.napi??"",opensslVersion:n.openssl??"",modulesVersion:n.modules??"",versions:Object.freeze({...n}),pid:process.pid,ppid:safe(()=>process.ppid,0),execPath:safe(()=>process.execPath,""),title:safe(()=>process.title,""),argv:safe(()=>[...process.argv],[]),timezone:r.timeZone||process.env.TZ||"",timezoneOffsetMin:safe(()=>(new Date).getTimezoneOffset(),0),locale:r.locale||"",language:process.env.LANGUAGE||process.env.LC_ALL||process.env.LANG||r.locale||""})}function systemConstantsJSON(e=2){return JSON.stringify(exports.systemConstants,null,e)}exports.systemConstants=build();
@@ -1,2 +1,4 @@
1
1
  export { SystemStats, systemStats } from './stats';
2
2
  export type { MemoryUsage, MemoryUsageMB, ImageCacheStat, WindowMemStat, SystemSnapshot, } from './stats';
3
+ export { systemConstants, systemConstantsJSON } from './constants';
4
+ export type { SystemConstants, CpuSummary } from './constants';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.systemStats=exports.SystemStats=void 0;var stats_1=require("./stats");Object.defineProperty(exports,"SystemStats",{enumerable:!0,get:function(){return stats_1.SystemStats}}),Object.defineProperty(exports,"systemStats",{enumerable:!0,get:function(){return stats_1.systemStats}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.systemConstantsJSON=exports.systemConstants=exports.systemStats=exports.SystemStats=void 0;var stats_1=require("./stats");Object.defineProperty(exports,"SystemStats",{enumerable:!0,get:function(){return stats_1.SystemStats}}),Object.defineProperty(exports,"systemStats",{enumerable:!0,get:function(){return stats_1.systemStats}});var constants_1=require("./constants");Object.defineProperty(exports,"systemConstants",{enumerable:!0,get:function(){return constants_1.systemConstants}}),Object.defineProperty(exports,"systemConstantsJSON",{enumerable:!0,get:function(){return constants_1.systemConstantsJSON}});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-flux-desktop",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "Self-contained desktop render stack Compiled distribution.",
5
5
  "license": "MIT",
6
6
  "author": "keyon",