Compare commits
No commits in common. "5592084868d11c0d4b5575919df728c995ca82ce" and "071f2782928c459fdeae1a085807f37fef8f61d8" have entirely different histories.
5592084868
...
071f278292
1
.gitignore
vendored
1
.gitignore
vendored
@ -11,4 +11,3 @@
|
|||||||
|
|
||||||
#!.yarn/cache
|
#!.yarn/cache
|
||||||
.pnp.*
|
.pnp.*
|
||||||
node_modules
|
|
@ -1,6 +0,0 @@
|
|||||||
/node_modules
|
|
||||||
package*.json
|
|
||||||
.gitignore
|
|
||||||
*.local
|
|
||||||
*_local
|
|
||||||
__test__
|
|
@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"useTabs": true,
|
|
||||||
"tabWidth": 2,
|
|
||||||
"singleQuote": true,
|
|
||||||
"trailingComma": "none",
|
|
||||||
"printWidth": 100
|
|
||||||
}
|
|
@ -1 +1,15 @@
|
|||||||
export {AppRoutes} from './routes'
|
export function helloWorld() {
|
||||||
|
console.log("Hello World!");
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 将数字格式化为美式金额表示法
|
||||||
|
* 将金额格式化为两位小数,需要处理千分位格式
|
||||||
|
* @param amount - 需要格式化的数字金额
|
||||||
|
* @returns 返回格式化后的金额字符串,保留2位小数
|
||||||
|
* @example
|
||||||
|
* formatMoney(1234.5) // 返回 "1,234.50"
|
||||||
|
* formatMoney(1000000) // 返回 "1,000,000.00"
|
||||||
|
*/
|
||||||
|
export function formatMoney(amount: number) {
|
||||||
|
return new Intl.NumberFormat('en-US', { style: 'decimal', minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(amount);
|
||||||
|
}
|
@ -1,6 +0,0 @@
|
|||||||
import React from 'react'
|
|
||||||
export default class About extends React.Component {
|
|
||||||
render() {
|
|
||||||
return <h1>About</h1>
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
export default function Home() {
|
|
||||||
return (<h1>Home</h1>)
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
import { Route, Routes, BrowserRouter } from "react-router-dom";
|
|
||||||
|
|
||||||
import Home from '../pages/home';
|
|
||||||
import About from '../pages/about';
|
|
||||||
|
|
||||||
export const AppRoutes = () => (<Routes>
|
|
||||||
<Route path="/" element={<Home />} />
|
|
||||||
<Route path="ablout" element={<About />} />
|
|
||||||
</Routes>)
|
|
||||||
|
|
||||||
const AppBrowserRouterRouter = () => (
|
|
||||||
<BrowserRouter>
|
|
||||||
<AppRoutes />
|
|
||||||
</BrowserRouter>
|
|
||||||
);
|
|
||||||
|
|
||||||
export default AppBrowserRouterRouter;
|
|
@ -1,15 +0,0 @@
|
|||||||
export function helloWorld() {
|
|
||||||
console.log("Hello World!");
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* 将数字格式化为美式金额表示法
|
|
||||||
* 将金额格式化为两位小数,需要处理千分位格式
|
|
||||||
* @param amount - 需要格式化的数字金额
|
|
||||||
* @returns 返回格式化后的金额字符串,保留2位小数
|
|
||||||
* @example
|
|
||||||
* formatMoney(1234.5) // 返回 "1,234.50"
|
|
||||||
* formatMoney(1000000) // 返回 "1,000,000.00"
|
|
||||||
*/
|
|
||||||
export function formatMoney(amount: number) {
|
|
||||||
return new Intl.NumberFormat('en-US', { style: 'decimal', minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(amount);
|
|
||||||
}
|
|
2011
package-lock.json
generated
2011
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
10
package.json
10
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "packages",
|
"name": "packages",
|
||||||
"version": "0.0.4",
|
"version": "0.0.1",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"author": "callmeyan <me@xiaoyan.me>",
|
"author": "callmeyan <me@xiaoyan.me>",
|
||||||
@ -21,15 +21,9 @@
|
|||||||
"clean": "git clean -xdf dist",
|
"clean": "git clean -xdf dist",
|
||||||
"test": "bun test"
|
"test": "bun test"
|
||||||
},
|
},
|
||||||
|
"packageManager": "yarn@4.5.2",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/react": "^19.1.2",
|
|
||||||
"tsup": "^8.4.0",
|
"tsup": "^8.4.0",
|
||||||
"typescript": "^5.8.3"
|
"typescript": "^5.8.3"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"react": "^19.1.0",
|
|
||||||
"react-dom": "^19.1.0",
|
|
||||||
"react-router-dom": "^7.5.1",
|
|
||||||
"zustand": "^5.0.3"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// index.test.ts
|
// index.test.ts
|
||||||
import { formatMoney } from '../libs/utils/index';
|
import { formatMoney } from '../libs/index';
|
||||||
|
|
||||||
describe('FormatMoneyTest', () => {
|
describe('FormatMoneyTest', () => {
|
||||||
test('should format positive integer correctly', () => {
|
test('should format positive integer correctly', () => {
|
@ -1,26 +0,0 @@
|
|||||||
{
|
|
||||||
"compilerOptions": {
|
|
||||||
"target": "ES2020",
|
|
||||||
"useDefineForClassFields": true,
|
|
||||||
"module": "ESNext",
|
|
||||||
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
|
||||||
"skipLibCheck": true,
|
|
||||||
|
|
||||||
/* Bundler mode */
|
|
||||||
"moduleResolution": "bundler",
|
|
||||||
"allowImportingTsExtensions": true,
|
|
||||||
"isolatedModules": true,
|
|
||||||
"moduleDetection": "force",
|
|
||||||
"noEmit": true,
|
|
||||||
"jsx": "react-jsx",
|
|
||||||
"jsxImportSource": "react",
|
|
||||||
|
|
||||||
/* Linting */
|
|
||||||
"strict": true,
|
|
||||||
"noUnusedLocals": true,
|
|
||||||
"noUnusedParameters": true,
|
|
||||||
"noFallthroughCasesInSwitch": true,
|
|
||||||
"noUncheckedSideEffectImports": true
|
|
||||||
},
|
|
||||||
"include": ["libs", "tests"]
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user