@gongxh/bit-core 0.0.3 → 0.0.6

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 ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 bit老宫
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,75 +1,194 @@
1
1
  # bit-core
2
- bit-framework库的核心部分
3
2
 
4
- #### 版本支持
5
- - creator 3.7之前的版本理论上也支持,未测试
6
- - creator 3.7+ 支持
7
- - creator 3.8+ 支持
3
+ Bit Framework 的核心库,为 Cocos Creator 3.x 游戏开发提供基础功能支持。
8
4
 
9
- > 此项目是框架源码,不是creator项目
10
- >
11
- > demo见最下方仓库地址
5
+ ## 简介
12
6
 
13
- ## 安装bit-core
7
+ `bit-core` 是 Bit Framework 的核心库,包含平台检测、时间工具、定时器系统、数据结构、日志工具等核心功能,是整个框架的基石。所有其他模块都依赖于 `bit-core`。
14
8
 
15
- 项目已发布到 `npm`, 安装方法如下:
9
+ **核心特性**:
10
+ - ⏰ 完整的时间处理系统(网络时间同步、格式化、时长计算)
11
+ - ⏲️ 高性能全局定时器(延迟、循环、暂停/恢复)
12
+ - 🖥️ 自动平台检测(Android、iOS、HarmonyOS、小游戏、浏览器)
13
+ - 📐 屏幕适配信息(屏幕尺寸、安全区)
14
+ - 🧩 模块系统基类
15
+ - 🛠️ 实用工具集(版本比较、URL 处理、JSON 校验)
16
+ - 📊 高效数据结构(二叉堆、链表、栈)
17
+ - 📝 统一日志系统
18
+ - 🔧 完整的 TypeScript 类型定义
16
19
 
17
- ```bash
18
- npm install bit-core
19
- ```
20
+ **版本支持**:
21
+ - Cocos Creator 3.7+ ✅
22
+ - Cocos Creator 3.8+ ✅
20
23
 
21
- > 如果连不上npm, 可使用国内镜像 比如: 淘宝、腾讯、华为
24
+ ## 安装
22
25
 
23
26
  ```bash
24
- # 官方
25
- npm set registry https://registry.npmjs.org
26
- # 中国镜像站(用这个就行)
27
- npm set registry https://registry.npmmirror.com/
28
- #腾讯
29
- npm set registry https://mirrors.cloud.tencent.com/npm/
30
- # 华为
31
- npm set registry https://repo.huaweicloud.com/repository/npm/
32
- # 阿里
33
- npm set registry https://npm.aliyun.com
27
+ npm install @gongxh/bit-core
34
28
  ```
35
29
 
36
- # 集成目录
37
- 1. [使用教程 (新手必看)](./docs/Noviciate.md)
38
- 2. [项目配置](./docs/Basic.md)
39
- 3. [UI模块](./docs/UI.md)
40
- 4. [全局计时器](./docs/Timer.md)
41
- 5. [平台工具](./docs/Platform.md)
42
- 6. [屏幕尺寸](./docs/Screen.md)
43
- 7. [小工具](./docs/Tools.md)
44
- 8. [时间](./docs/Time.md)
45
- 9. [小游戏接口封装](./docs/MiniGame.md)
46
- 10. [热更新](./docs/HotUpdate.md)
47
- 11. [条件显示节点 (一般用于UI上的红点)](./docs/Condition.md)
48
- 12. [数据模块](./docs/Data.md)
49
-
50
- # 独立模块目录
51
- 1. [ec模块](https://github.com/Gongxh0901/kunpo-ec)
52
- 2. [ecs模块](https://github.com/Gongxh0901/kunpo-esc)
53
- 3. [网络模块 http和socket](https://github.com/Gongxh0901/bit-core-net)
54
- 4. [四叉树](https://github.com/Gongxh0901/kunpo-quadtree)
55
- 5. [行为树](https://github.com/Gongxh0901/bit-core-behaviortree)
56
- 6. [资源管理](https://github.com/Gongxh0901/bit-core-assets)
57
- 7. [全局事件](https://github.com/Gongxh0901/bit-core-event)
58
- ## 类型支持
59
-
60
- 该库完全使用 TypeScript 编写,提供完整的类型定义文件。
30
+ ## 使用说明
61
31
 
62
- ## 许可证
32
+ ### 时间工具 (Time)
63
33
 
64
- ISC License
34
+ 完整的时间处理工具类,支持网络时间同步。
65
35
 
66
- ## 作者
36
+ **基础方法**:
37
+ - `now()` - 获取当前时间戳(毫秒)
38
+ - `setNetTime(netTime)` - 设置网络时间用于同步
39
+ - `msTos(ms)` / `sToMs(s)` - 毫秒秒互转
40
+
41
+ **时间字段**:
42
+ - `getYear()` / `getMonth()` / `getDay()` - 获取年月日
43
+ - `getHour()` / `getMinute()` / `getSecond()` - 获取时分秒
44
+ - `getWeekDay()` - 获取星期几 (1-7)
45
+
46
+ **时间范围**:
47
+ - `getDayStartTime()` / `getDayEndTime()` - 当天起止时间
48
+ - `getWeekStartTime()` / `getWeekEndTime()` - 本周起止时间
49
+ - `getMonthStartTime()` / `getMonthEndTime()` - 本月起止时间
50
+ - `getYearStartTime()` / `getYearEndTime()` - 本年起止时间
51
+ - `getMonthDays()` - 获取当月天数
52
+
53
+ **时间比较**:
54
+ - `isSameDay()` / `isSameWeek()` / `isSameMonth()` / `isSameYear()` - 时间比较
55
+
56
+ **时间格式化**:
57
+ - `format(timestamp, pattern)` - 通用时间格式化
58
+ - 支持 YYYY/YY, MM/M, DD/D, hh/h, mm/m, ss/s 等占位符
59
+ - `formatTime(timestamp)` - 格式化为 `YYYY-MM-DD hh:mm:ss`
60
+ - `formatTimeChinese(timestamp)` - 格式化为中文
61
+ - `formatDuration(seconds, pattern, options?)` - 时长格式化
62
+ - 支持 DD/D, HH/H, hh/h, MM/M, mm/m, ss/s 等占位符
63
+ - `formatSmart(seconds)` - 智能时长格式化(自动隐藏为0的单位)
64
+ - `formatSmartSimple(seconds)` - 简化智能时长格式化(只显示最大两个单位)
65
+
66
+ ### 全局定时器 (GlobalTimer)
67
+
68
+ 全局定时器系统,支持延迟执行和循环执行。
69
+
70
+ **主要方法**:
71
+ - `startTimer(callback, interval, loop?)` - 启动定时器
72
+ - `callback` - 回调函数
73
+ - `interval` - 时间间隔(秒)
74
+ - `loop` - 循环次数(0:一次, 1~n:n次, -1:无限)
75
+ - 返回定时器 ID
76
+ - `stopTimer(timerId)` - 停止定时器
77
+ - `pauseTimer(timerId)` - 暂停定时器
78
+ - `resumeTimer(timerId)` - 恢复定时器
79
+ - `clearAllTimer()` - 清除所有定时器
80
+
81
+ ### 平台检测 (Platform)
82
+
83
+ 自动识别运行平台,提供平台信息。
84
+
85
+ **平台类型枚举 (PlatformType)**:
86
+ - `Android` / `IOS` / `HarmonyOS` - 原生平台
87
+ - `WX` / `Alipay` / `Bytedance` / `HuaweiQuick` - 小游戏平台
88
+ - `Browser` - 浏览器
89
+
90
+ **平台属性**:
91
+ - `platform` - 当前平台类型
92
+ - `isNative` / `isMobile` / `isNativeMobile` - 平台分类
93
+ - `isAndroid` / `isIOS` / `isHarmonyOS` - 原生平台判断
94
+ - `isWX` / `isAlipay` / `isBytedance` / `isHuaweiQuick` - 小游戏判断
95
+ - `isBrowser` - 浏览器判断
96
+ - `deviceId` - 设备 ID
97
+
98
+ ### 屏幕信息 (Screen)
99
+
100
+ 提供屏幕尺寸和安全区信息。
101
+
102
+ **属性**:
103
+ - `ScreenWidth` / `ScreenHeight` - 屏幕宽高
104
+ - `DesignWidth` / `DesignHeight` - 设计分辨率宽高
105
+ - `SafeAreaHeight` - 安全区外侧高度/宽度
106
+ - `SafeWidth` / `SafeHeight` - 安全区宽高
107
+
108
+ ### 模块基类 (Module)
109
+
110
+ 组织游戏系统的抽象基类。
111
+
112
+ **使用方式**:
113
+ - 继承 `Module` 类
114
+ - 实现 `onInit()` 方法
115
+ - `moduleName` - 模块名称属性
67
116
 
68
- gongxh
117
+ ### 工具类 (Utils)
69
118
 
70
- ## 联系作者
119
+ 实用工具函数集。
71
120
 
72
- * 邮箱: gong.xinhai@163.com
121
+ **主要方法**:
122
+ - `compareVersion(v1, v2)` - 版本号比较
123
+ - 返回值:>0 表示 v1>v2,=0 表示相等,<0 表示 v1<v2
124
+ - `isJsonString(str)` - 判断是否为 JSON 字符串
125
+ - `getUrlParam(url)` - 解析 URL 参数
126
+ - 返回 `{url: string, params: {...}}`
127
+ - `addUrlParam(url, key, value)` - 给 URL 添加参数
128
+
129
+ ### 日志系统
130
+
131
+ 统一的日志输出接口。
132
+
133
+ **日志函数**:
134
+ - `enableDebugMode(enabled)` - 启用/禁用调试模式
135
+ - `debug(...args)` - 调试日志
136
+ - `log(...args)` - 普通日志
137
+ - `info(...args)` - 信息日志
138
+ - `warn(...args)` - 警告日志
139
+ - `error(...args)` - 错误日志
140
+
141
+ ### 数据结构
142
+
143
+ 内置高效的数据结构。
144
+
145
+ **BinaryHeap(二叉堆)**:
146
+ - `new BinaryHeap<T>(compareFn)` - 创建堆
147
+ - `push(value)` / `pop()` / `peek()` - 入堆/出堆/查看堆顶
148
+ - `size()` / `clear()` - 获取大小/清空
149
+
150
+ **LinkedList(链表)**:
151
+ - `append(value)` / `prepend(value)` - 尾部/头部添加
152
+ - `remove(value)` / `find(value)` - 移除/查找
153
+ - `clear()` - 清空
154
+
155
+ **DoublyLinkedList(双向链表)**:
156
+ - 支持双向遍历的链表
157
+
158
+ **Stack(栈)**:
159
+ - `push(value)` / `pop()` / `peek()` - 入栈/出栈/查看栈顶
160
+ - `size()` / `clear()` - 获取大小/清空
161
+
162
+ 详细 API 请查看 `bit-core.d.ts` 类型定义文件。
163
+
164
+ ## 相关模块
165
+
166
+ `bit-core` 是框架的基础库,其他模块都依赖于它:
167
+
168
+ - **bit-event** - 事件系统
169
+ - **bit-ec** - Entity-Component 架构
170
+ - **bit-ecs** - Entity-Component-System 架构
171
+ - **bit-ui** - UI 系统
172
+ - **bit-net** - 网络通信
173
+ - **bit-assets** - 资源管理
174
+ - **bit-quadtree** - 四叉树
175
+ - **bit-behaviortree** - 行为树
176
+ - **bit-condition** - 条件显示系统
177
+ - **bit-minigame** - 小游戏适配
178
+ - **bit-hotupdate** - 热更新
179
+
180
+ 更多信息请参考 [根目录 README](../README.md) 和 [架构文档](../ARCHITECTURE.md)。
181
+
182
+ ## 许可证
183
+
184
+ MIT License
185
+
186
+ ## 作者
187
+
188
+ **bit老宫** (gongxh)
189
+ **邮箱**: gong.xinhai@163.com
73
190
 
74
191
  ## 源码仓库
75
- [bit-core github地址](https://github.com/Gongxh0901/bit-framework)
192
+
193
+ - [GitHub](https://github.com/Gongxh0901/bit-framework)
194
+ - [npm](https://www.npmjs.com/package/@gongxh/bit-core)