refactor
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
"hono": "^4.8.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"typescript": "^5"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"types": ["bun"],
|
||||
"rootDir": "src",
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
"zod": "^4.4.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"drizzle-kit": "^0.31.1",
|
||||
"typescript": "^5"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { mkdirSync } from 'node:fs'
|
||||
import { dirname, resolve } from 'node:path'
|
||||
|
||||
export type ServerConfig = {
|
||||
export interface ServerConfig {
|
||||
port: number
|
||||
databasePath: string
|
||||
corsOrigin: string
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { ServerConfig } from './config'
|
||||
import type { Db } from './db'
|
||||
|
||||
export type AppBindings = {
|
||||
export interface AppBindings {
|
||||
Variables: {
|
||||
db: Db
|
||||
config: ServerConfig
|
||||
|
||||
@@ -14,7 +14,7 @@ import {
|
||||
import { randomId } from '../security/crypto'
|
||||
import { deleteSecret, saveSecret } from '../security/keyring'
|
||||
|
||||
export type StoredSbiPasskeySecret = {
|
||||
export interface StoredSbiPasskeySecret {
|
||||
credential: PlaintextStoredWebAuthnCredential
|
||||
tradePassword?: string
|
||||
deviceId?: string
|
||||
|
||||
@@ -32,7 +32,7 @@ const requireAuthenticated = (auth: AuthContext) => {
|
||||
|
||||
const ORDER_SUBMIT_TICKET_TTL_MS = 10 * 60 * 1000
|
||||
|
||||
type OrderSubmitTicket = {
|
||||
interface OrderSubmitTicket {
|
||||
passkeyId: string
|
||||
estimateMethod: RpcMethod
|
||||
submitMethod: RpcMethod
|
||||
|
||||
@@ -11,14 +11,14 @@ import {
|
||||
import { invokeSbiMethod, isRpcMethod, isTradingMethod, RPC_METHODS } from './methods'
|
||||
import { connectSbi } from './sbi-session'
|
||||
|
||||
type JsonRpcRequest = {
|
||||
interface JsonRpcRequest {
|
||||
jsonrpc?: '2.0'
|
||||
id?: string | number | null
|
||||
method?: string
|
||||
params?: unknown
|
||||
}
|
||||
|
||||
type RpcSocketState = {
|
||||
interface RpcSocketState {
|
||||
client?: SbiClientMethods
|
||||
sbiPasskeyId?: string
|
||||
apiKeyId?: string
|
||||
@@ -26,7 +26,7 @@ type RpcSocketState = {
|
||||
boardPollingSubscriptions: Map<string, AbortController>
|
||||
}
|
||||
|
||||
type BoardPollingParams = {
|
||||
interface BoardPollingParams {
|
||||
issueCode: string
|
||||
market: MarketCode
|
||||
intervalSeconds?: number
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { Db } from '../db'
|
||||
import { apiKeys } from '../db/schema'
|
||||
import { randomId, randomToken, sha256 } from './crypto'
|
||||
|
||||
export type ApiKeySettings = {
|
||||
export interface ApiKeySettings {
|
||||
maxTradesPerHour?: number | null
|
||||
maxTradesPer6Hours?: number | null
|
||||
maxTradesPerDay?: number | null
|
||||
|
||||
@@ -5,7 +5,7 @@ import type { RpcMethod } from '../rpc/methods'
|
||||
|
||||
type WindowName = '1h' | '3h' | '1d'
|
||||
|
||||
type TradeLimitInput = {
|
||||
interface TradeLimitInput {
|
||||
apiKeyId: string
|
||||
params: unknown
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"types": ["bun"],
|
||||
"rootDir": "src",
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
"vue-router": "^5.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@tailwindcss/vite": "^4.3.1",
|
||||
"@types/d3": "^7.4.3",
|
||||
"@vitejs/plugin-vue": "^6.0.7",
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
export type AuthStatus = {
|
||||
export interface AuthStatus {
|
||||
configured: boolean
|
||||
authenticated: boolean
|
||||
}
|
||||
|
||||
export type ApiKey = {
|
||||
export interface ApiKey {
|
||||
id: string
|
||||
label: string
|
||||
maxTradesPerHour?: number | null
|
||||
@@ -30,7 +30,7 @@ export type ApiKeySettings = Pick<
|
||||
| 'scopes'
|
||||
>
|
||||
|
||||
export type SbiPasskey = {
|
||||
export interface SbiPasskey {
|
||||
id: string
|
||||
label: string
|
||||
createdAt: string
|
||||
|
||||
@@ -2,7 +2,7 @@ import { ArrowLeftRight, History, Settings, WalletCards } from 'lucide-vue-next'
|
||||
import type { Component } from 'vue'
|
||||
import type { RouteName } from '../router'
|
||||
|
||||
export type PageMeta = {
|
||||
export interface PageMeta {
|
||||
title: string
|
||||
icon: Component
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ import { ref } from 'vue'
|
||||
import type { ApiKeySettings } from '../../api'
|
||||
import { defaultApiKeyPolicy } from '../auth/api-key-policy'
|
||||
|
||||
export type OAuthApprovalState = {
|
||||
export interface OAuthApprovalState {
|
||||
active: boolean
|
||||
clientId: string
|
||||
clientName: string
|
||||
|
||||
@@ -45,19 +45,19 @@ import { currency, currencyForMarket } from '../../utils/format'
|
||||
import RealtimePriceChart from './RealtimePriceChart.vue'
|
||||
|
||||
type StockInfoTab = 'detail' | 'holding'
|
||||
type CashOrderAccountTypeOption = {
|
||||
interface CashOrderAccountTypeOption {
|
||||
label: string
|
||||
value: CashOrderAccountType
|
||||
}
|
||||
type CashOrderMarketOption = {
|
||||
interface CashOrderMarketOption {
|
||||
label: string
|
||||
value: CashOrderMarket
|
||||
}
|
||||
type CashOrderTermOption = {
|
||||
interface CashOrderTermOption {
|
||||
label: string
|
||||
value: CashOrderTerm
|
||||
}
|
||||
type CashOrderDateOption = {
|
||||
interface CashOrderDateOption {
|
||||
label: string
|
||||
value: string
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ import type {
|
||||
import { currency } from '../../utils/format'
|
||||
|
||||
export type RecordLike = Record<string, unknown>
|
||||
type IssueLike = {
|
||||
interface IssueLike {
|
||||
code: string
|
||||
market: string
|
||||
name: string
|
||||
|
||||
@@ -54,27 +54,27 @@ import {
|
||||
type RecordLike,
|
||||
} from './trading-data'
|
||||
|
||||
type RpcResolver = {
|
||||
interface RpcResolver {
|
||||
resolve: (value: unknown) => void
|
||||
reject: (reason: Error) => void
|
||||
}
|
||||
|
||||
type CashOrderTermOption = {
|
||||
interface CashOrderTermOption {
|
||||
label: string
|
||||
value: CashOrderTerm
|
||||
}
|
||||
|
||||
type CashOrderAccountTypeOption = {
|
||||
interface CashOrderAccountTypeOption {
|
||||
label: string
|
||||
value: CashOrderAccountType
|
||||
}
|
||||
|
||||
type CashOrderMarketOption = {
|
||||
interface CashOrderMarketOption {
|
||||
label: string
|
||||
value: CashOrderMarket
|
||||
}
|
||||
|
||||
type CashOrderDateOption = {
|
||||
interface CashOrderDateOption {
|
||||
label: string
|
||||
value: string
|
||||
}
|
||||
|
||||
@@ -27,13 +27,13 @@ export type CashOrderTriggerZone = 'above' | 'below'
|
||||
export type ChartMode = 'line' | 'box'
|
||||
export type ChartRange = '1D' | '3D' | '3M' | '1Y' | 'ALL'
|
||||
|
||||
export type RpcMessage = {
|
||||
export interface RpcMessage {
|
||||
id: number
|
||||
method: string
|
||||
params?: unknown
|
||||
}
|
||||
|
||||
export type OrderPreview = {
|
||||
export interface OrderPreview {
|
||||
issue: {
|
||||
code: string
|
||||
market: string
|
||||
@@ -50,7 +50,7 @@ export type OrderPreview = {
|
||||
message?: string
|
||||
}
|
||||
|
||||
export type JsonRpcResponse = {
|
||||
export interface JsonRpcResponse {
|
||||
id?: number
|
||||
method?: string
|
||||
params?: unknown
|
||||
@@ -60,7 +60,7 @@ export type JsonRpcResponse = {
|
||||
}
|
||||
}
|
||||
|
||||
export type RealtimePricePoint = {
|
||||
export interface RealtimePricePoint {
|
||||
at: string
|
||||
price: number
|
||||
open?: number
|
||||
@@ -70,12 +70,12 @@ export type RealtimePricePoint = {
|
||||
volume?: number | null
|
||||
}
|
||||
|
||||
export type ChartNotice = {
|
||||
export interface ChartNotice {
|
||||
title: string
|
||||
detail?: string
|
||||
}
|
||||
|
||||
export type MarketIndex = {
|
||||
export interface MarketIndex {
|
||||
code?: string
|
||||
name: string
|
||||
value: number | null
|
||||
@@ -88,7 +88,7 @@ export type MarketIndex = {
|
||||
timestamp?: string
|
||||
}
|
||||
|
||||
export type Stock = {
|
||||
export interface Stock {
|
||||
code: string
|
||||
name: string
|
||||
symbol: string
|
||||
@@ -115,7 +115,7 @@ export type Stock = {
|
||||
}
|
||||
}
|
||||
|
||||
export type OrderRow = {
|
||||
export interface OrderRow {
|
||||
id: string
|
||||
code: string
|
||||
date: string
|
||||
@@ -143,7 +143,7 @@ export type OrderDetail = OrderRow & {
|
||||
accountInformation?: string
|
||||
}
|
||||
|
||||
export type TradeRecordRow = {
|
||||
export interface TradeRecordRow {
|
||||
id: string
|
||||
code: string
|
||||
stock: string
|
||||
@@ -158,7 +158,7 @@ export type TradeRecordRow = {
|
||||
settlementCurrencyCode?: string
|
||||
}
|
||||
|
||||
export type Position = {
|
||||
export interface Position {
|
||||
code: string
|
||||
name: string
|
||||
market: string
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"lib": ["ESNext", "DOM", "DOM.Iterable"],
|
||||
"types": ["vite/client"],
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"": {
|
||||
"name": "csbi",
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"vite-plus": "^0.1.24",
|
||||
},
|
||||
@@ -19,6 +20,7 @@
|
||||
"hono": "^4.8.3",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"typescript": "^5",
|
||||
},
|
||||
@@ -36,6 +38,7 @@
|
||||
"zod": "^4.4.3",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"drizzle-kit": "^0.31.1",
|
||||
"typescript": "^5",
|
||||
@@ -54,6 +57,7 @@
|
||||
"vue-router": "^5.1.0",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@tailwindcss/vite": "^4.3.1",
|
||||
"@types/d3": "^7.4.3",
|
||||
"@vitejs/plugin-vue": "^6.0.7",
|
||||
@@ -68,6 +72,7 @@
|
||||
"iconv-lite": "^0.7.2",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -77,13 +82,14 @@
|
||||
"packages/mnie-cli": {
|
||||
"name": "@repo/mnie-cli",
|
||||
"bin": {
|
||||
"mnie": "./src/index.ts",
|
||||
"mnie": "./dist/index.mjs",
|
||||
},
|
||||
"dependencies": {
|
||||
"@napi-rs/keyring": "^1.2.0",
|
||||
"@repo/mnie-sdk": "workspace:*",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -96,6 +102,7 @@
|
||||
"@repo/mnie-types": "workspace:*",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -105,12 +112,17 @@
|
||||
"packages/mnie-types": {
|
||||
"name": "@repo/mnie-types",
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "^5",
|
||||
},
|
||||
},
|
||||
"packages/tsconfig": {
|
||||
"name": "@repo/tsconfig",
|
||||
"version": "0.0.0",
|
||||
},
|
||||
},
|
||||
"packages": {
|
||||
"@babel/generator": ["@babel/[email protected]", "", { "dependencies": { "@babel/parser": "^8.0.0", "@babel/types": "^8.0.0", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "@types/jsesc": "^2.5.0", "jsesc": "^3.0.2" } }, "sha512-NT9NrVwJsbSV6Y2FSstWa71EETOnzrjkL5/wX3D2mYHtKM+qvqB1DvR4D0Setb/gDBsHzRICifwEWMO8CnTF6g=="],
|
||||
@@ -371,6 +383,8 @@
|
||||
|
||||
"@repo/mnie-ui": ["@repo/mnie-ui@workspace:apps/mnie-ui"],
|
||||
|
||||
"@repo/tsconfig": ["@repo/tsconfig@workspace:packages/tsconfig"],
|
||||
|
||||
"@rolldown/binding-android-arm64": ["@rolldown/[email protected]", "", { "os": "android", "cpu": "arm64" }, "sha512-454rs7jHngixp/NMxd5srYD57OnzSlZ/eFTETjORQHLwJG1lRtmNOJcBerZlfu4GjKqeq8aCCIQrMdHyhI51Hw=="],
|
||||
|
||||
"@rolldown/binding-darwin-arm64": ["@rolldown/[email protected]", "", { "os": "darwin", "cpu": "arm64" }, "sha512-PcAhP+ynjURNyy8SKGl5DQP94aGuB/7JrXJb/t7P+hanXvQVMWzUvRRhBAcg/lNRadBhoUPqSoP4xw5tR/KBEA=="],
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
"typecheck": "vp run typecheck:all"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest",
|
||||
"vite-plus": "^0.1.24"
|
||||
},
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"iconv-lite": "^0.7.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -99,7 +99,7 @@ export const SBI_SERVER_ERROR_MESSAGES: Record<string, string> = {
|
||||
E_0083: 'An error occurred. Wait a while and try again.',
|
||||
}
|
||||
|
||||
export type SbiServerErrorOptions = {
|
||||
export interface SbiServerErrorOptions {
|
||||
code: string
|
||||
status?: string
|
||||
serverMessage?: string
|
||||
|
||||
@@ -125,7 +125,7 @@ const CHART_DEFAULT_UNITS = {
|
||||
} as const satisfies Record<ChartPeriod, number>
|
||||
const CHART_MINUTE_UNITS = new Set([1, 5, 10, 15])
|
||||
|
||||
type MtsHeader = {
|
||||
interface MtsHeader {
|
||||
sessionId: string
|
||||
trCode: string
|
||||
resultCode: string
|
||||
@@ -134,7 +134,7 @@ type MtsHeader = {
|
||||
maintenance: string
|
||||
}
|
||||
|
||||
type MtsResponse = {
|
||||
interface MtsResponse {
|
||||
status: number
|
||||
requestUrl: string
|
||||
header: MtsHeader
|
||||
@@ -142,14 +142,14 @@ type MtsResponse = {
|
||||
text: string
|
||||
}
|
||||
|
||||
type FixedField = {
|
||||
interface FixedField {
|
||||
width: number
|
||||
value?: string | number | null
|
||||
align?: 'left' | 'right'
|
||||
pad?: string
|
||||
}
|
||||
|
||||
type OrderPreviewInput = {
|
||||
interface OrderPreviewInput {
|
||||
issueCode: string
|
||||
market?: MarketCode
|
||||
side: TradeSide
|
||||
@@ -157,7 +157,7 @@ type OrderPreviewInput = {
|
||||
price?: number
|
||||
}
|
||||
|
||||
type CashPreOrderInfo = {
|
||||
interface CashPreOrderInfo {
|
||||
issueCode?: string
|
||||
market?: string
|
||||
issueName?: string
|
||||
@@ -170,7 +170,7 @@ const cashCorrectionPreviewInput = {
|
||||
|
||||
type TradeAuthenticationStatus = 'success' | 'needDial' | 'excessivelyRequested' | 'unexpected'
|
||||
|
||||
type TradeAuthenticationInfo = {
|
||||
interface TradeAuthenticationInfo {
|
||||
status: TradeAuthenticationStatus
|
||||
statusCode: string
|
||||
telNo?: string
|
||||
@@ -258,7 +258,7 @@ const publicDomesticMarket = (market: string | undefined, methodName: string) =>
|
||||
return publicMarket
|
||||
}
|
||||
|
||||
type IzanagiIssueSearchItem = {
|
||||
interface IzanagiIssueSearchItem {
|
||||
stockName?: string | null
|
||||
stockCode?: string | null
|
||||
mkt?: string | null
|
||||
@@ -269,7 +269,7 @@ type IzanagiIssueSearchItem = {
|
||||
hitString?: string | null
|
||||
}
|
||||
|
||||
type IzanagiIssueSearchResponse = {
|
||||
interface IzanagiIssueSearchResponse {
|
||||
status?: string | null
|
||||
stocks?: IzanagiIssueSearchItem[] | null
|
||||
}
|
||||
@@ -4100,7 +4100,7 @@ const isCashPreOrderInput = (
|
||||
options: StockOrderPreOrderInput,
|
||||
): options is CashOrderOptions | CashOrderPreOrderOptions => 'kind' in options
|
||||
|
||||
type AppStockOrderTrinOptions = {
|
||||
interface AppStockOrderTrinOptions {
|
||||
issueCode: string
|
||||
market: string
|
||||
quantity: number
|
||||
@@ -4122,7 +4122,7 @@ type AppStockOrderTrinOptions = {
|
||||
methodName: string
|
||||
}
|
||||
|
||||
type OmitConfirmationOption = {
|
||||
interface OmitConfirmationOption {
|
||||
omitConfirmation?: boolean
|
||||
}
|
||||
|
||||
|
||||
@@ -24,24 +24,24 @@ import type {
|
||||
} from '../types'
|
||||
import type { SbiClientMethods } from '../methods/types'
|
||||
|
||||
type PasskeyLoginStart = {
|
||||
interface PasskeyLoginStart {
|
||||
url: string
|
||||
privateKeyPem: string
|
||||
publicKey: string
|
||||
}
|
||||
|
||||
type PasskeyAccessToken = {
|
||||
interface PasskeyAccessToken {
|
||||
callbackUrl: string
|
||||
accessToken: string
|
||||
}
|
||||
|
||||
type CredentialRequest = {
|
||||
interface CredentialRequest {
|
||||
challenge: string
|
||||
rpId: string
|
||||
csrfToken?: string
|
||||
}
|
||||
|
||||
type SbiEndpointConfig = {
|
||||
interface SbiEndpointConfig {
|
||||
authBaseUrl: string
|
||||
mtsBaseUrl: string
|
||||
izanagiBaseUrl?: string
|
||||
|
||||
@@ -4,7 +4,7 @@ export type WebAuthnUserVerification = 'required' | 'preferred' | 'discouraged'
|
||||
|
||||
export type WebAuthnTransport = 'ble' | 'hybrid' | 'internal' | 'nfc' | 'usb'
|
||||
|
||||
export type WebAuthnJwk = {
|
||||
export interface WebAuthnJwk {
|
||||
kty: string
|
||||
crv?: string
|
||||
x?: string
|
||||
@@ -17,7 +17,7 @@ export type WebAuthnJwk = {
|
||||
[key: string]: unknown
|
||||
}
|
||||
|
||||
export type StoredWebAuthnCredentialSecret = {
|
||||
export interface StoredWebAuthnCredentialSecret {
|
||||
privateKey: {
|
||||
format: 'jwk'
|
||||
jwk: WebAuthnJwk
|
||||
@@ -29,7 +29,7 @@ export type StoredWebAuthnCredentialSecret = {
|
||||
}
|
||||
}
|
||||
|
||||
export type StoredWebAuthnCredential = {
|
||||
export interface StoredWebAuthnCredential {
|
||||
version: 1
|
||||
kind: 'webauthn-credential'
|
||||
provider: 'sbi-sec'
|
||||
@@ -76,7 +76,7 @@ export type PlaintextStoredWebAuthnCredential = Omit<StoredWebAuthnCredential, '
|
||||
secretPlaintext: StoredWebAuthnCredentialSecret
|
||||
}
|
||||
|
||||
export type PasskeyLoginResponse = {
|
||||
export interface PasskeyLoginResponse {
|
||||
type: 'passkey-login-response'
|
||||
requestUrl: string
|
||||
status: number
|
||||
@@ -90,7 +90,7 @@ export type PasskeyLoginResponse = {
|
||||
} | null
|
||||
}
|
||||
|
||||
export type ForeignStockEndpointConfig = {
|
||||
export interface ForeignStockEndpointConfig {
|
||||
baseUrl?: string
|
||||
restUrl: string
|
||||
graphqlBffUrl: string
|
||||
@@ -98,7 +98,7 @@ export type ForeignStockEndpointConfig = {
|
||||
userAgent?: string
|
||||
}
|
||||
|
||||
export type ForeignStockSession = {
|
||||
export interface ForeignStockSession {
|
||||
endpoints: ForeignStockEndpointConfig
|
||||
ssoToken?: string
|
||||
sessionId?: string
|
||||
@@ -108,14 +108,14 @@ export type ForeignStockSession = {
|
||||
loginAuthenticated?: boolean
|
||||
}
|
||||
|
||||
export type MainSiteAuthCache = {
|
||||
export interface MainSiteAuthCache {
|
||||
baseUrl: string
|
||||
assetsUrl: string
|
||||
cookieHeader: string
|
||||
authenticatedAt: string
|
||||
}
|
||||
|
||||
export type MainSiteSession = {
|
||||
export interface MainSiteSession {
|
||||
baseUrl?: string
|
||||
etGatePath?: string
|
||||
assetsValuationsPath?: string
|
||||
@@ -127,7 +127,7 @@ export type MainSiteSession = {
|
||||
authPromise?: Promise<MainSiteAuthCache>
|
||||
}
|
||||
|
||||
export type SbiSession = {
|
||||
export interface SbiSession {
|
||||
mtsBaseUrl: string
|
||||
izanagiBaseUrl?: string
|
||||
foreignStock?: ForeignStockSession
|
||||
@@ -139,7 +139,7 @@ export type SbiSession = {
|
||||
tradeAuthentication?: SbiTradeAuthenticationOptions
|
||||
}
|
||||
|
||||
export type LoginWithPasskeyOptions = {
|
||||
export interface LoginWithPasskeyOptions {
|
||||
passkeyCredential: PlaintextStoredWebAuthnCredential
|
||||
authBaseUrl?: string
|
||||
mtsBaseUrl?: string
|
||||
@@ -159,13 +159,13 @@ export type LoginWithPasskeyOptions = {
|
||||
mainSiteExchangeOrderCompletePath?: string
|
||||
}
|
||||
|
||||
export type SbiClientOptions = {
|
||||
export interface SbiClientOptions {
|
||||
tradePassword?: string
|
||||
deviceId?: string
|
||||
tradeAuthentication?: SbiTradeAuthenticationOptions
|
||||
}
|
||||
|
||||
export type SbiTradeAuthenticationRequest = {
|
||||
export interface SbiTradeAuthenticationRequest {
|
||||
type: 'phone'
|
||||
telNo?: string
|
||||
phoneNo?: string
|
||||
@@ -173,7 +173,7 @@ export type SbiTradeAuthenticationRequest = {
|
||||
authLimitTime?: string
|
||||
}
|
||||
|
||||
export type SbiTradeAuthenticationOptions = {
|
||||
export interface SbiTradeAuthenticationOptions {
|
||||
onRequired?: (request: SbiTradeAuthenticationRequest) => void | Promise<void>
|
||||
confirmAttempts?: number
|
||||
confirmIntervalMs?: number
|
||||
@@ -189,24 +189,24 @@ export type WatchlistId = string
|
||||
export type PositionId = string
|
||||
export type ThemeId = string
|
||||
|
||||
export type CurrencyAmount = {
|
||||
export interface CurrencyAmount {
|
||||
value: number | null
|
||||
text: string
|
||||
currency: 'JPY' | 'USD'
|
||||
}
|
||||
|
||||
export type PercentValue = {
|
||||
export interface PercentValue {
|
||||
value: number | null
|
||||
text: string
|
||||
}
|
||||
|
||||
export type SignedTextValue = {
|
||||
export interface SignedTextValue {
|
||||
value: number | null
|
||||
text: string
|
||||
sign?: 'positive' | 'negative' | 'zero'
|
||||
}
|
||||
|
||||
export type AccountAssetsValuationSummary = {
|
||||
export interface AccountAssetsValuationSummary {
|
||||
assetsErrorType: unknown
|
||||
valuation: number | null
|
||||
netChange: number | null
|
||||
@@ -223,7 +223,7 @@ export type AccountAssetsValuationDetail = AccountAssetsValuationSummary & {
|
||||
compositionRatio: number | null
|
||||
}
|
||||
|
||||
export type AccountAssetsValuations = {
|
||||
export interface AccountAssetsValuations {
|
||||
fetchedAt: string
|
||||
summary: AccountAssetsValuationSummary
|
||||
summaryWithoutDeposit: AccountAssetsValuationSummary
|
||||
@@ -276,7 +276,7 @@ export type IsaAccountType =
|
||||
| 'nisaTradePermitted'
|
||||
| 'unknown'
|
||||
|
||||
export type IssueRef = {
|
||||
export interface IssueRef {
|
||||
code: IssueCode
|
||||
market?: MarketCode
|
||||
name?: string
|
||||
@@ -292,7 +292,7 @@ export type IssueSearchItem = IssueRef & {
|
||||
|
||||
export type IssueSearchStatus = 'success' | 'searchError' | 'tooManyResults' | 'unknown'
|
||||
|
||||
export type IssueSearchResult = {
|
||||
export interface IssueSearchResult {
|
||||
status?: string
|
||||
statusText: IssueSearchStatus
|
||||
issues: IssueSearchItem[]
|
||||
@@ -300,7 +300,7 @@ export type IssueSearchResult = {
|
||||
|
||||
export type ChartPeriod = 'minute' | 'day' | 'week' | 'month'
|
||||
|
||||
export type ChartPrice = {
|
||||
export interface ChartPrice {
|
||||
dateTime: string
|
||||
open: CurrencyAmount
|
||||
high: CurrencyAmount
|
||||
@@ -309,7 +309,7 @@ export type ChartPrice = {
|
||||
volume?: number | null
|
||||
}
|
||||
|
||||
export type IssueChart = {
|
||||
export interface IssueChart {
|
||||
issue: IssueRef
|
||||
period: ChartPeriod
|
||||
unit: number
|
||||
@@ -322,13 +322,13 @@ export type IssueChart = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type SessionInfo = {
|
||||
export interface SessionInfo {
|
||||
sessionId: string
|
||||
loginType: LoginType
|
||||
resultCode: string
|
||||
}
|
||||
|
||||
export type AccountProfile = {
|
||||
export interface AccountProfile {
|
||||
session: SessionInfo
|
||||
branchCode?: string
|
||||
butenCode?: string
|
||||
@@ -391,7 +391,7 @@ export type AccountProfile = {
|
||||
}
|
||||
}
|
||||
|
||||
export type BuyingPower = {
|
||||
export interface BuyingPower {
|
||||
cashBuyingPower?: CurrencyAmount
|
||||
marginBuyingPower?: CurrencyAmount
|
||||
withdrawableAmount?: CurrencyAmount
|
||||
@@ -403,7 +403,7 @@ export type BuyingPower = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type CollateralRatioRecord = {
|
||||
export interface CollateralRatioRecord {
|
||||
marginRequirements?: CurrencyAmount
|
||||
referenceMarginRequirements?: CurrencyAmount
|
||||
collateralRatioCash?: CurrencyAmount
|
||||
@@ -420,7 +420,7 @@ export type CollateralRatioRecord = {
|
||||
minimumCollateral?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type CashPosition = {
|
||||
export interface CashPosition {
|
||||
issue: IssueRef
|
||||
accountType?: AccountType
|
||||
depositType?: DepositType
|
||||
@@ -449,7 +449,7 @@ export type CashPosition = {
|
||||
accountInformation?: string
|
||||
}
|
||||
|
||||
export type CashPositionList = {
|
||||
export interface CashPositionList {
|
||||
positions: CashPosition[]
|
||||
index?: number
|
||||
totalCount?: number
|
||||
@@ -461,7 +461,7 @@ export type CashPositionList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type MarginPosition = {
|
||||
export interface MarginPosition {
|
||||
id?: PositionId
|
||||
issue: IssueRef
|
||||
side: MarginTradeSide
|
||||
@@ -503,7 +503,7 @@ export type MarginPosition = {
|
||||
bargainMarket?: string
|
||||
}
|
||||
|
||||
export type MarginPositionList = {
|
||||
export interface MarginPositionList {
|
||||
positions: MarginPosition[]
|
||||
index?: number
|
||||
totalCount?: number
|
||||
@@ -515,7 +515,7 @@ export type MarginPositionList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type ProfitLossSummary = {
|
||||
export interface ProfitLossSummary {
|
||||
cash?: SignedTextValue
|
||||
margin?: SignedTextValue
|
||||
total?: SignedTextValue
|
||||
@@ -523,7 +523,7 @@ export type ProfitLossSummary = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type Quote = {
|
||||
export interface Quote {
|
||||
issue: IssueRef
|
||||
price?: CurrencyAmount
|
||||
change?: SignedTextValue
|
||||
@@ -539,12 +539,12 @@ export type Quote = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type BoardPriceLevel = {
|
||||
export interface BoardPriceLevel {
|
||||
price: CurrencyAmount
|
||||
quantity?: number | null
|
||||
}
|
||||
|
||||
export type Board = {
|
||||
export interface Board {
|
||||
issue: IssueRef
|
||||
bids: BoardPriceLevel[]
|
||||
asks: BoardPriceLevel[]
|
||||
@@ -552,7 +552,7 @@ export type Board = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type MarketIndex = {
|
||||
export interface MarketIndex {
|
||||
code?: string
|
||||
categoryCode?: string
|
||||
name: string
|
||||
@@ -568,13 +568,13 @@ export type MarketIndex = {
|
||||
previousClose?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type DomesticMarket = {
|
||||
export interface DomesticMarket {
|
||||
status?: string
|
||||
indexes: MarketIndex[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type RankingItem = {
|
||||
export interface RankingItem {
|
||||
rank: number
|
||||
issue: IssueRef
|
||||
value?: number | string | null
|
||||
@@ -585,14 +585,14 @@ export type RankingItem = {
|
||||
colorFlag?: string
|
||||
}
|
||||
|
||||
export type Ranking = {
|
||||
export interface Ranking {
|
||||
items: RankingItem[]
|
||||
category?: string
|
||||
updatedAt?: string
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type NewsItem = {
|
||||
export interface NewsItem {
|
||||
id?: string
|
||||
title: string
|
||||
source?: string
|
||||
@@ -606,26 +606,26 @@ export type NewsItem = {
|
||||
pnac?: string
|
||||
}
|
||||
|
||||
export type NewsList = {
|
||||
export interface NewsList {
|
||||
items: NewsItem[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type WatchlistItem = {
|
||||
export interface WatchlistItem {
|
||||
issue: IssueRef
|
||||
sortOrder?: number
|
||||
memo?: string
|
||||
quote?: Quote
|
||||
}
|
||||
|
||||
export type Watchlist = {
|
||||
export interface Watchlist {
|
||||
id: WatchlistId
|
||||
name: string
|
||||
items: WatchlistItem[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type Order = {
|
||||
export interface Order {
|
||||
id: OrderId
|
||||
issue: IssueRef
|
||||
side: TradeSide
|
||||
@@ -655,13 +655,13 @@ export type Order = {
|
||||
correctable?: boolean
|
||||
}
|
||||
|
||||
export type OrderList = {
|
||||
export interface OrderList {
|
||||
orders: Order[]
|
||||
hasMore?: boolean
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type TradeRecord = {
|
||||
export interface TradeRecord {
|
||||
id: string
|
||||
issue: IssueRef
|
||||
tradeRecordTypeCode?: string
|
||||
@@ -678,13 +678,13 @@ export type TradeRecord = {
|
||||
marginCloseLimitType?: string
|
||||
}
|
||||
|
||||
export type TradeRecordList = {
|
||||
export interface TradeRecordList {
|
||||
records: TradeRecord[]
|
||||
hasMore?: boolean
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type OrderCorrectionPreOrderDetail = {
|
||||
export interface OrderCorrectionPreOrderDetail {
|
||||
exchangeName?: string
|
||||
marketLoanKbn?: string
|
||||
marketIppanLoanKbn?: string
|
||||
@@ -697,7 +697,7 @@ export type OrderCorrectionPreOrderDetail = {
|
||||
volumeText?: string
|
||||
}
|
||||
|
||||
export type OrderCorrectionPreOrder = {
|
||||
export interface OrderCorrectionPreOrder {
|
||||
issue: IssueRef
|
||||
tradeTitle?: string
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
@@ -753,7 +753,7 @@ export type OrderCorrectionPreOrder = {
|
||||
exchangeList?: string
|
||||
}
|
||||
|
||||
export type OrderPreview = {
|
||||
export interface OrderPreview {
|
||||
issue: IssueRef
|
||||
side: TradeSide
|
||||
quantity?: number
|
||||
@@ -768,12 +768,12 @@ export type OrderPreview = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type StockOrderPreOrderPriceStep = {
|
||||
export interface StockOrderPreOrderPriceStep {
|
||||
from?: CurrencyAmount
|
||||
to?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type StockOrderPreOrderPaymentLimit = {
|
||||
export interface StockOrderPreOrderPaymentLimit {
|
||||
text?: string
|
||||
code?: string
|
||||
}
|
||||
@@ -787,7 +787,7 @@ export type StockOrderPreOrderMarginTradeType =
|
||||
| 'day'
|
||||
| 'hyper'
|
||||
|
||||
export type StockOrderPreOrder = {
|
||||
export interface StockOrderPreOrder {
|
||||
issue: IssueRef
|
||||
tradeTitle?: string
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
@@ -850,7 +850,7 @@ export type StockOrderPreOrder = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type OrderReceipt = {
|
||||
export interface OrderReceipt {
|
||||
accepted: boolean
|
||||
orderId?: OrderId
|
||||
acceptedAt?: string
|
||||
@@ -863,7 +863,7 @@ export type ExchangeSpecificMethod = 'foreign' | 'domestic'
|
||||
export type ExchangeAccountKind = 'GENERAL' | 'JR_NISA'
|
||||
export type ExchangeSellMethod = 'SELL_PART' | 'SELL_ALL'
|
||||
|
||||
export type ExchangeOrderPreview = {
|
||||
export interface ExchangeOrderPreview {
|
||||
currencyCode: string
|
||||
currencyName?: string
|
||||
side: ExchangeOrderSide
|
||||
@@ -882,7 +882,7 @@ export type ExchangeOrderPreview = {
|
||||
csrfToken: string
|
||||
}
|
||||
|
||||
export type ExchangeOrderReceipt = {
|
||||
export interface ExchangeOrderReceipt {
|
||||
accepted: boolean
|
||||
currencyCode?: string
|
||||
side?: ExchangeOrderSide
|
||||
@@ -891,7 +891,7 @@ export type ExchangeOrderReceipt = {
|
||||
rawTitle?: string
|
||||
}
|
||||
|
||||
export type ExchangeRateInfo = {
|
||||
export interface ExchangeRateInfo {
|
||||
currencyCode: string
|
||||
side: ExchangeOrderSide
|
||||
referenceExchangeRate?: string
|
||||
@@ -910,7 +910,7 @@ export type ExchangeRateInfo = {
|
||||
raw: Record<string, unknown>
|
||||
}
|
||||
|
||||
export type ThemeInvestment = {
|
||||
export interface ThemeInvestment {
|
||||
id: ThemeId
|
||||
name: string
|
||||
issues: ThemeInvestmentIssue[]
|
||||
@@ -933,7 +933,7 @@ export type ThemeInvestmentIssue = IssueRef & {
|
||||
tradeTime?: string
|
||||
}
|
||||
|
||||
export type ThemeInvestmentList = {
|
||||
export interface ThemeInvestmentList {
|
||||
themes: ThemeInvestment[]
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
isaBuyLimit?: CurrencyAmount
|
||||
@@ -944,7 +944,7 @@ export type ThemeInvestmentList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type SbiMethodError = {
|
||||
export interface SbiMethodError {
|
||||
status?: string
|
||||
code?: string
|
||||
message?: string
|
||||
|
||||
@@ -1,29 +1,4 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
// Environment setup & latest features
|
||||
"lib": ["ESNext"],
|
||||
"target": "ESNext",
|
||||
"module": "Preserve",
|
||||
"moduleDetection": "force",
|
||||
"jsx": "react-jsx",
|
||||
"allowJs": true,
|
||||
|
||||
// Bundler mode
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noEmit": true,
|
||||
|
||||
// Best practices
|
||||
"strict": true,
|
||||
"skipLibCheck": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
"noImplicitOverride": true,
|
||||
|
||||
// Some stricter flags (disabled by default)
|
||||
"noUnusedLocals": false,
|
||||
"noUnusedParameters": false,
|
||||
"noPropertyAccessFromIndexSignature": false
|
||||
}
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"include": ["src/**/*.ts"]
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
"@repo/mnie-sdk": "workspace:*"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -7,14 +7,14 @@ import { homedir } from 'node:os'
|
||||
import { dirname, join } from 'node:path'
|
||||
import { createMnieClient } from '@repo/mnie-sdk'
|
||||
|
||||
type Profile = {
|
||||
interface Profile {
|
||||
origin: string
|
||||
apiKeyStorage: 'file' | 'keyring'
|
||||
apiKey?: string
|
||||
keyringAccount?: string
|
||||
}
|
||||
|
||||
type ProfilesFile = {
|
||||
interface ProfilesFile {
|
||||
defaultProfile?: string
|
||||
profiles: Record<string, Profile>
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"include": ["src/**/*.ts"]
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"name": "@repo/mnie-sdk",
|
||||
"private": true,
|
||||
"name": "mnie",
|
||||
"type": "module",
|
||||
"module": "./dist/index.mjs",
|
||||
"types": "./src/index.ts",
|
||||
@@ -19,6 +18,7 @@
|
||||
"@repo/mnie-types": "workspace:*"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import type { SbiClientMethods } from '@repo/mnie-types'
|
||||
|
||||
export type MnieSdkOptions = {
|
||||
export interface MnieSdkOptions {
|
||||
origin: string
|
||||
apiKey: string
|
||||
WebSocket?: typeof WebSocket
|
||||
}
|
||||
|
||||
export type JsonRpcError = {
|
||||
export interface JsonRpcError {
|
||||
code: number
|
||||
message: string
|
||||
}
|
||||
@@ -17,14 +17,14 @@ export type MnieClient = SbiClientMethods & {
|
||||
close(): void
|
||||
}
|
||||
|
||||
type JsonRpcResponse = {
|
||||
interface JsonRpcResponse {
|
||||
jsonrpc?: '2.0'
|
||||
id?: string | number | null
|
||||
result?: unknown
|
||||
error?: JsonRpcError
|
||||
}
|
||||
|
||||
type PendingCall = {
|
||||
interface PendingCall {
|
||||
resolve: (value: unknown) => void
|
||||
reject: (error: Error) => void
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"include": ["src/**/*.ts"]
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
"typecheck": "tsc"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/tsconfig": "workspace:*",
|
||||
"@types/bun": "latest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -42,21 +42,21 @@ import type {
|
||||
Watchlist,
|
||||
} from './types'
|
||||
|
||||
export type PagingOptions = {
|
||||
export interface PagingOptions {
|
||||
/** Start index for the result list. Defaults to the first item when omitted. */
|
||||
index?: number
|
||||
/** Maximum number of items to fetch. Uses the implementation default when omitted. */
|
||||
limit?: number
|
||||
}
|
||||
|
||||
export type DateRangeOptions = {
|
||||
export interface DateRangeOptions {
|
||||
/** Start date for the inquiry range. */
|
||||
from?: string
|
||||
/** End date for the inquiry range. */
|
||||
to?: string
|
||||
}
|
||||
|
||||
export type IssueOptions = {
|
||||
export interface IssueOptions {
|
||||
/** Issue code to request. */
|
||||
issueCode: IssueCode
|
||||
/** Market code to request. */
|
||||
@@ -79,7 +79,7 @@ export type IssueChartOptions = IssueOptions & {
|
||||
count?: number
|
||||
}
|
||||
|
||||
export type IssueSearchOptions = {
|
||||
export interface IssueSearchOptions {
|
||||
/** Search text, such as an issue code, name, or keyword. */
|
||||
query: string
|
||||
/** Market code to search. */
|
||||
@@ -118,7 +118,7 @@ export type OrderInquiryOptions = PagingOptions &
|
||||
status?: OrderStatus
|
||||
}
|
||||
|
||||
export type OrderDetailOptions = {
|
||||
export interface OrderDetailOptions {
|
||||
/** Order number shown in order inquiry. */
|
||||
orderNumber?: string
|
||||
/** Order ID from order inquiry. For US stocks this is often `orderSubNo`. */
|
||||
@@ -149,7 +149,7 @@ export type BoardOptions = IssueOptions & {
|
||||
| 'marginCloseSell'
|
||||
}
|
||||
|
||||
export type StockOrderBaseOptions = {
|
||||
export interface StockOrderBaseOptions {
|
||||
/** Issue code to order. */
|
||||
issueCode: IssueCode
|
||||
/** Market code to order on. */
|
||||
@@ -185,7 +185,7 @@ export type CashOrderTriggerZone = 'above' | 'below'
|
||||
|
||||
export type CashOrderMethod = 'normal' | 'stop' | 'oco'
|
||||
|
||||
export type StockOrderMarginPosition = {
|
||||
export interface StockOrderMarginPosition {
|
||||
/** Open trade date from the margin position record, in yyyyMMdd or yyyy-MM-dd format. */
|
||||
openTradeDate: string
|
||||
/** Open price from the margin position record. Raw strings are accepted to preserve APK values. */
|
||||
@@ -284,7 +284,7 @@ export type MarginClosePositionOrder =
|
||||
|
||||
export type ActualDeliveryKind = 'genbiki' | 'genwatashi'
|
||||
|
||||
export type ActualDeliveryOrderOptions = {
|
||||
export interface ActualDeliveryOrderOptions {
|
||||
/** Issue code to deliver. */
|
||||
issueCode: IssueCode
|
||||
/** Market code for the issue. */
|
||||
@@ -339,7 +339,7 @@ export type PlaceActualDeliveryOrderOptions = ActualDeliveryOrderOptions & {
|
||||
allowTrading?: true
|
||||
}
|
||||
|
||||
export type OrderCorrectionOptions = {
|
||||
export interface OrderCorrectionOptions {
|
||||
/** Order number shown in order inquiry. Required by the mobile pre-correction route. */
|
||||
orderNumber?: string
|
||||
/** Order ID to correct. */
|
||||
@@ -397,7 +397,7 @@ export type PlaceOrderCorrectionOptions = OrderCorrectionOptions & {
|
||||
allowTrading?: true
|
||||
}
|
||||
|
||||
export type OrderCancelOptions = {
|
||||
export interface OrderCancelOptions {
|
||||
/** Order number shown in order inquiry. */
|
||||
orderNumber: string
|
||||
/** Original order ID shown in order inquiry. */
|
||||
@@ -419,7 +419,7 @@ export type PlaceOrderCancelOptions = OrderCancelOptions & {
|
||||
allowTrading?: true
|
||||
}
|
||||
|
||||
export type ExchangeOrderOptions = {
|
||||
export interface ExchangeOrderOptions {
|
||||
/** Currency code, such as USD. */
|
||||
currencyCode: string
|
||||
/** Buy or sell the foreign currency. */
|
||||
@@ -438,7 +438,7 @@ export type ExchangeOrderOptions = {
|
||||
tradePassword?: string
|
||||
}
|
||||
|
||||
export type ExchangeRateOptions = {
|
||||
export interface ExchangeRateOptions {
|
||||
/** Currency code, such as USD. */
|
||||
currencyCode: string
|
||||
/** Buy or sell the foreign currency. */
|
||||
@@ -513,7 +513,7 @@ export type PlaceIfdOrderOptions = IfdOrderOptions & {
|
||||
allowTrading?: true
|
||||
}
|
||||
|
||||
export type ThemeInvestmentOrderOptions = {
|
||||
export interface ThemeInvestmentOrderOptions {
|
||||
/** Theme ID for the theme investment order. */
|
||||
themeId: ThemeId
|
||||
/** Theme set year/month (`theme_set_yyyymm`) from the mobile APK handoff. */
|
||||
@@ -532,21 +532,21 @@ export type ThemeInvestmentOrderOptions = {
|
||||
amount?: number
|
||||
}
|
||||
|
||||
export type ThemeInvestmentOrderComponent = {
|
||||
export interface ThemeInvestmentOrderComponent {
|
||||
/** Component stock issue code. */
|
||||
issueCode: IssueCode
|
||||
/** Component order quantity. */
|
||||
quantity: number | string
|
||||
}
|
||||
|
||||
export type ThemeInvestmentPreOrderComponent = {
|
||||
export interface ThemeInvestmentPreOrderComponent {
|
||||
/** Component stock issue code selected by the mobile theme investment flow. */
|
||||
issueCode: IssueCode
|
||||
/** Component order quantity from the mobile handoff, when already selected. */
|
||||
quantity?: number | string
|
||||
}
|
||||
|
||||
export type ThemeInvestmentPreOrderOptions = {
|
||||
export interface ThemeInvestmentPreOrderOptions {
|
||||
/** Theme ID for the theme investment order target. */
|
||||
themeId: ThemeId
|
||||
/** Theme name from the mobile theme investment flow, when available. */
|
||||
@@ -562,12 +562,12 @@ export type PlaceThemeInvestmentOrderOptions = ThemeInvestmentOrderOptions & {
|
||||
allowTrading?: true
|
||||
}
|
||||
|
||||
export type AccountPowerOptions = {
|
||||
export interface AccountPowerOptions {
|
||||
/** Fetches margin-account collateral details. Disable this for accounts without margin trading. */
|
||||
includeMarginAccount?: boolean
|
||||
}
|
||||
|
||||
export type ProfitLossOptions = {
|
||||
export interface ProfitLossOptions {
|
||||
/** Market to fetch profit/loss for. Omit for domestic cash/margin summary. */
|
||||
market?: MarketCode
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ export type WebAuthnUserVerification = 'required' | 'preferred' | 'discouraged'
|
||||
|
||||
export type WebAuthnTransport = 'ble' | 'hybrid' | 'internal' | 'nfc' | 'usb'
|
||||
|
||||
export type WebAuthnJwk = {
|
||||
export interface WebAuthnJwk {
|
||||
kty: string
|
||||
crv?: string
|
||||
x?: string
|
||||
@@ -17,7 +17,7 @@ export type WebAuthnJwk = {
|
||||
[key: string]: unknown
|
||||
}
|
||||
|
||||
export type StoredWebAuthnCredentialSecret = {
|
||||
export interface StoredWebAuthnCredentialSecret {
|
||||
privateKey: {
|
||||
format: 'jwk'
|
||||
jwk: WebAuthnJwk
|
||||
@@ -29,7 +29,7 @@ export type StoredWebAuthnCredentialSecret = {
|
||||
}
|
||||
}
|
||||
|
||||
export type StoredWebAuthnCredential = {
|
||||
export interface StoredWebAuthnCredential {
|
||||
version: 1
|
||||
kind: 'webauthn-credential'
|
||||
provider: 'sbi-sec'
|
||||
@@ -76,7 +76,7 @@ export type PlaintextStoredWebAuthnCredential = Omit<StoredWebAuthnCredential, '
|
||||
secretPlaintext: StoredWebAuthnCredentialSecret
|
||||
}
|
||||
|
||||
export type PasskeyLoginResponse = {
|
||||
export interface PasskeyLoginResponse {
|
||||
type: 'passkey-login-response'
|
||||
requestUrl: string
|
||||
status: number
|
||||
@@ -90,7 +90,7 @@ export type PasskeyLoginResponse = {
|
||||
} | null
|
||||
}
|
||||
|
||||
export type ForeignStockEndpointConfig = {
|
||||
export interface ForeignStockEndpointConfig {
|
||||
baseUrl?: string
|
||||
restUrl: string
|
||||
graphqlBffUrl: string
|
||||
@@ -98,7 +98,7 @@ export type ForeignStockEndpointConfig = {
|
||||
userAgent?: string
|
||||
}
|
||||
|
||||
export type ForeignStockSession = {
|
||||
export interface ForeignStockSession {
|
||||
endpoints: ForeignStockEndpointConfig
|
||||
ssoToken?: string
|
||||
sessionId?: string
|
||||
@@ -108,14 +108,14 @@ export type ForeignStockSession = {
|
||||
loginAuthenticated?: boolean
|
||||
}
|
||||
|
||||
export type MainSiteAuthCache = {
|
||||
export interface MainSiteAuthCache {
|
||||
baseUrl: string
|
||||
assetsUrl: string
|
||||
cookieHeader: string
|
||||
authenticatedAt: string
|
||||
}
|
||||
|
||||
export type MainSiteSession = {
|
||||
export interface MainSiteSession {
|
||||
baseUrl?: string
|
||||
etGatePath?: string
|
||||
assetsValuationsPath?: string
|
||||
@@ -127,7 +127,7 @@ export type MainSiteSession = {
|
||||
authPromise?: Promise<MainSiteAuthCache>
|
||||
}
|
||||
|
||||
export type SbiSession = {
|
||||
export interface SbiSession {
|
||||
mtsBaseUrl: string
|
||||
izanagiBaseUrl?: string
|
||||
foreignStock?: ForeignStockSession
|
||||
@@ -139,7 +139,7 @@ export type SbiSession = {
|
||||
tradeAuthentication?: SbiTradeAuthenticationOptions
|
||||
}
|
||||
|
||||
export type LoginWithPasskeyOptions = {
|
||||
export interface LoginWithPasskeyOptions {
|
||||
passkeyCredential: PlaintextStoredWebAuthnCredential
|
||||
authBaseUrl?: string
|
||||
mtsBaseUrl?: string
|
||||
@@ -159,13 +159,13 @@ export type LoginWithPasskeyOptions = {
|
||||
mainSiteExchangeOrderCompletePath?: string
|
||||
}
|
||||
|
||||
export type SbiClientOptions = {
|
||||
export interface SbiClientOptions {
|
||||
tradePassword?: string
|
||||
deviceId?: string
|
||||
tradeAuthentication?: SbiTradeAuthenticationOptions
|
||||
}
|
||||
|
||||
export type SbiTradeAuthenticationRequest = {
|
||||
export interface SbiTradeAuthenticationRequest {
|
||||
type: 'phone'
|
||||
telNo?: string
|
||||
phoneNo?: string
|
||||
@@ -173,7 +173,7 @@ export type SbiTradeAuthenticationRequest = {
|
||||
authLimitTime?: string
|
||||
}
|
||||
|
||||
export type SbiTradeAuthenticationOptions = {
|
||||
export interface SbiTradeAuthenticationOptions {
|
||||
onRequired?: (request: SbiTradeAuthenticationRequest) => void | Promise<void>
|
||||
confirmAttempts?: number
|
||||
confirmIntervalMs?: number
|
||||
@@ -189,24 +189,24 @@ export type WatchlistId = string
|
||||
export type PositionId = string
|
||||
export type ThemeId = string
|
||||
|
||||
export type CurrencyAmount = {
|
||||
export interface CurrencyAmount {
|
||||
value: number | null
|
||||
text: string
|
||||
currency: 'JPY' | 'USD'
|
||||
}
|
||||
|
||||
export type PercentValue = {
|
||||
export interface PercentValue {
|
||||
value: number | null
|
||||
text: string
|
||||
}
|
||||
|
||||
export type SignedTextValue = {
|
||||
export interface SignedTextValue {
|
||||
value: number | null
|
||||
text: string
|
||||
sign?: 'positive' | 'negative' | 'zero'
|
||||
}
|
||||
|
||||
export type AccountAssetsValuationSummary = {
|
||||
export interface AccountAssetsValuationSummary {
|
||||
assetsErrorType: unknown
|
||||
valuation: number | null
|
||||
netChange: number | null
|
||||
@@ -223,7 +223,7 @@ export type AccountAssetsValuationDetail = AccountAssetsValuationSummary & {
|
||||
compositionRatio: number | null
|
||||
}
|
||||
|
||||
export type AccountAssetsValuations = {
|
||||
export interface AccountAssetsValuations {
|
||||
fetchedAt: string
|
||||
summary: AccountAssetsValuationSummary
|
||||
summaryWithoutDeposit: AccountAssetsValuationSummary
|
||||
@@ -276,7 +276,7 @@ export type IsaAccountType =
|
||||
| 'nisaTradePermitted'
|
||||
| 'unknown'
|
||||
|
||||
export type IssueRef = {
|
||||
export interface IssueRef {
|
||||
code: IssueCode
|
||||
market?: MarketCode
|
||||
name?: string
|
||||
@@ -292,7 +292,7 @@ export type IssueSearchItem = IssueRef & {
|
||||
|
||||
export type IssueSearchStatus = 'success' | 'searchError' | 'tooManyResults' | 'unknown'
|
||||
|
||||
export type IssueSearchResult = {
|
||||
export interface IssueSearchResult {
|
||||
status?: string
|
||||
statusText: IssueSearchStatus
|
||||
issues: IssueSearchItem[]
|
||||
@@ -300,7 +300,7 @@ export type IssueSearchResult = {
|
||||
|
||||
export type ChartPeriod = 'minute' | 'day' | 'week' | 'month'
|
||||
|
||||
export type ChartPrice = {
|
||||
export interface ChartPrice {
|
||||
dateTime: string
|
||||
open: CurrencyAmount
|
||||
high: CurrencyAmount
|
||||
@@ -309,7 +309,7 @@ export type ChartPrice = {
|
||||
volume?: number | null
|
||||
}
|
||||
|
||||
export type IssueChart = {
|
||||
export interface IssueChart {
|
||||
issue: IssueRef
|
||||
period: ChartPeriod
|
||||
unit: number
|
||||
@@ -322,13 +322,13 @@ export type IssueChart = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type SessionInfo = {
|
||||
export interface SessionInfo {
|
||||
sessionId: string
|
||||
loginType: LoginType
|
||||
resultCode: string
|
||||
}
|
||||
|
||||
export type AccountProfile = {
|
||||
export interface AccountProfile {
|
||||
session: SessionInfo
|
||||
branchCode?: string
|
||||
butenCode?: string
|
||||
@@ -391,7 +391,7 @@ export type AccountProfile = {
|
||||
}
|
||||
}
|
||||
|
||||
export type BuyingPower = {
|
||||
export interface BuyingPower {
|
||||
cashBuyingPower?: CurrencyAmount
|
||||
marginBuyingPower?: CurrencyAmount
|
||||
withdrawableAmount?: CurrencyAmount
|
||||
@@ -403,7 +403,7 @@ export type BuyingPower = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type CollateralRatioRecord = {
|
||||
export interface CollateralRatioRecord {
|
||||
marginRequirements?: CurrencyAmount
|
||||
referenceMarginRequirements?: CurrencyAmount
|
||||
collateralRatioCash?: CurrencyAmount
|
||||
@@ -420,7 +420,7 @@ export type CollateralRatioRecord = {
|
||||
minimumCollateral?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type CashPosition = {
|
||||
export interface CashPosition {
|
||||
issue: IssueRef
|
||||
accountType?: AccountType
|
||||
depositType?: DepositType
|
||||
@@ -449,7 +449,7 @@ export type CashPosition = {
|
||||
accountInformation?: string
|
||||
}
|
||||
|
||||
export type CashPositionList = {
|
||||
export interface CashPositionList {
|
||||
positions: CashPosition[]
|
||||
index?: number
|
||||
totalCount?: number
|
||||
@@ -461,7 +461,7 @@ export type CashPositionList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type MarginPosition = {
|
||||
export interface MarginPosition {
|
||||
id?: PositionId
|
||||
issue: IssueRef
|
||||
side: MarginTradeSide
|
||||
@@ -503,7 +503,7 @@ export type MarginPosition = {
|
||||
bargainMarket?: string
|
||||
}
|
||||
|
||||
export type MarginPositionList = {
|
||||
export interface MarginPositionList {
|
||||
positions: MarginPosition[]
|
||||
index?: number
|
||||
totalCount?: number
|
||||
@@ -515,7 +515,7 @@ export type MarginPositionList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type ProfitLossSummary = {
|
||||
export interface ProfitLossSummary {
|
||||
cash?: SignedTextValue
|
||||
margin?: SignedTextValue
|
||||
total?: SignedTextValue
|
||||
@@ -523,7 +523,7 @@ export type ProfitLossSummary = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type Quote = {
|
||||
export interface Quote {
|
||||
issue: IssueRef
|
||||
price?: CurrencyAmount
|
||||
change?: SignedTextValue
|
||||
@@ -539,12 +539,12 @@ export type Quote = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type BoardPriceLevel = {
|
||||
export interface BoardPriceLevel {
|
||||
price: CurrencyAmount
|
||||
quantity?: number | null
|
||||
}
|
||||
|
||||
export type Board = {
|
||||
export interface Board {
|
||||
issue: IssueRef
|
||||
bids: BoardPriceLevel[]
|
||||
asks: BoardPriceLevel[]
|
||||
@@ -552,7 +552,7 @@ export type Board = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type MarketIndex = {
|
||||
export interface MarketIndex {
|
||||
code?: string
|
||||
categoryCode?: string
|
||||
name: string
|
||||
@@ -568,13 +568,13 @@ export type MarketIndex = {
|
||||
previousClose?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type DomesticMarket = {
|
||||
export interface DomesticMarket {
|
||||
status?: string
|
||||
indexes: MarketIndex[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type RankingItem = {
|
||||
export interface RankingItem {
|
||||
rank: number
|
||||
issue: IssueRef
|
||||
value?: number | string | null
|
||||
@@ -585,14 +585,14 @@ export type RankingItem = {
|
||||
colorFlag?: string
|
||||
}
|
||||
|
||||
export type Ranking = {
|
||||
export interface Ranking {
|
||||
items: RankingItem[]
|
||||
category?: string
|
||||
updatedAt?: string
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type NewsItem = {
|
||||
export interface NewsItem {
|
||||
id?: string
|
||||
title: string
|
||||
source?: string
|
||||
@@ -606,26 +606,26 @@ export type NewsItem = {
|
||||
pnac?: string
|
||||
}
|
||||
|
||||
export type NewsList = {
|
||||
export interface NewsList {
|
||||
items: NewsItem[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type WatchlistItem = {
|
||||
export interface WatchlistItem {
|
||||
issue: IssueRef
|
||||
sortOrder?: number
|
||||
memo?: string
|
||||
quote?: Quote
|
||||
}
|
||||
|
||||
export type Watchlist = {
|
||||
export interface Watchlist {
|
||||
id: WatchlistId
|
||||
name: string
|
||||
items: WatchlistItem[]
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type Order = {
|
||||
export interface Order {
|
||||
id: OrderId
|
||||
issue: IssueRef
|
||||
side: TradeSide
|
||||
@@ -655,13 +655,13 @@ export type Order = {
|
||||
correctable?: boolean
|
||||
}
|
||||
|
||||
export type OrderList = {
|
||||
export interface OrderList {
|
||||
orders: Order[]
|
||||
hasMore?: boolean
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type TradeRecord = {
|
||||
export interface TradeRecord {
|
||||
id: string
|
||||
issue: IssueRef
|
||||
tradeRecordTypeCode?: string
|
||||
@@ -678,13 +678,13 @@ export type TradeRecord = {
|
||||
marginCloseLimitType?: string
|
||||
}
|
||||
|
||||
export type TradeRecordList = {
|
||||
export interface TradeRecordList {
|
||||
records: TradeRecord[]
|
||||
hasMore?: boolean
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type OrderCorrectionPreOrderDetail = {
|
||||
export interface OrderCorrectionPreOrderDetail {
|
||||
exchangeName?: string
|
||||
marketLoanKbn?: string
|
||||
marketIppanLoanKbn?: string
|
||||
@@ -697,7 +697,7 @@ export type OrderCorrectionPreOrderDetail = {
|
||||
volumeText?: string
|
||||
}
|
||||
|
||||
export type OrderCorrectionPreOrder = {
|
||||
export interface OrderCorrectionPreOrder {
|
||||
issue: IssueRef
|
||||
tradeTitle?: string
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
@@ -753,7 +753,7 @@ export type OrderCorrectionPreOrder = {
|
||||
exchangeList?: string
|
||||
}
|
||||
|
||||
export type OrderPreview = {
|
||||
export interface OrderPreview {
|
||||
issue: IssueRef
|
||||
side: TradeSide
|
||||
quantity?: number
|
||||
@@ -768,12 +768,12 @@ export type OrderPreview = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type StockOrderPreOrderPriceStep = {
|
||||
export interface StockOrderPreOrderPriceStep {
|
||||
from?: CurrencyAmount
|
||||
to?: CurrencyAmount
|
||||
}
|
||||
|
||||
export type StockOrderPreOrderPaymentLimit = {
|
||||
export interface StockOrderPreOrderPaymentLimit {
|
||||
text?: string
|
||||
code?: string
|
||||
}
|
||||
@@ -787,7 +787,7 @@ export type StockOrderPreOrderMarginTradeType =
|
||||
| 'day'
|
||||
| 'hyper'
|
||||
|
||||
export type StockOrderPreOrder = {
|
||||
export interface StockOrderPreOrder {
|
||||
issue: IssueRef
|
||||
tradeTitle?: string
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
@@ -850,7 +850,7 @@ export type StockOrderPreOrder = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type OrderReceipt = {
|
||||
export interface OrderReceipt {
|
||||
accepted: boolean
|
||||
orderId?: OrderId
|
||||
acceptedAt?: string
|
||||
@@ -863,7 +863,7 @@ export type ExchangeSpecificMethod = 'foreign' | 'domestic'
|
||||
export type ExchangeAccountKind = 'GENERAL' | 'JR_NISA'
|
||||
export type ExchangeSellMethod = 'SELL_PART' | 'SELL_ALL'
|
||||
|
||||
export type ExchangeOrderPreview = {
|
||||
export interface ExchangeOrderPreview {
|
||||
currencyCode: string
|
||||
currencyName?: string
|
||||
side: ExchangeOrderSide
|
||||
@@ -882,7 +882,7 @@ export type ExchangeOrderPreview = {
|
||||
csrfToken: string
|
||||
}
|
||||
|
||||
export type ExchangeOrderReceipt = {
|
||||
export interface ExchangeOrderReceipt {
|
||||
accepted: boolean
|
||||
currencyCode?: string
|
||||
side?: ExchangeOrderSide
|
||||
@@ -891,7 +891,7 @@ export type ExchangeOrderReceipt = {
|
||||
rawTitle?: string
|
||||
}
|
||||
|
||||
export type ExchangeRateInfo = {
|
||||
export interface ExchangeRateInfo {
|
||||
currencyCode: string
|
||||
side: ExchangeOrderSide
|
||||
referenceExchangeRate?: string
|
||||
@@ -910,7 +910,7 @@ export type ExchangeRateInfo = {
|
||||
raw: Record<string, unknown>
|
||||
}
|
||||
|
||||
export type ThemeInvestment = {
|
||||
export interface ThemeInvestment {
|
||||
id: ThemeId
|
||||
name: string
|
||||
issues: ThemeInvestmentIssue[]
|
||||
@@ -933,7 +933,7 @@ export type ThemeInvestmentIssue = IssueRef & {
|
||||
tradeTime?: string
|
||||
}
|
||||
|
||||
export type ThemeInvestmentList = {
|
||||
export interface ThemeInvestmentList {
|
||||
themes: ThemeInvestment[]
|
||||
buyingPowerTotal?: CurrencyAmount
|
||||
isaBuyLimit?: CurrencyAmount
|
||||
@@ -944,7 +944,7 @@ export type ThemeInvestmentList = {
|
||||
error?: SbiMethodError
|
||||
}
|
||||
|
||||
export type SbiMethodError = {
|
||||
export interface SbiMethodError {
|
||||
status?: string
|
||||
code?: string
|
||||
message?: string
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
"extends": "@repo/tsconfig/tsconfig.json",
|
||||
"include": ["src/**/*.ts"]
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"name": "@repo/tsconfig",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"files": [
|
||||
"tsconfig.json"
|
||||
],
|
||||
"exports": {
|
||||
"./tsconfig.json": "./tsconfig.json"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"lib": ["ESNext"],
|
||||
"target": "ESNext",
|
||||
"module": "Preserve",
|
||||
"moduleDetection": "force",
|
||||
"jsx": "react-jsx",
|
||||
"allowJs": true,
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noEmit": true,
|
||||
"strict": true,
|
||||
"skipLibCheck": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
"noImplicitOverride": true,
|
||||
"noUnusedLocals": false,
|
||||
"noUnusedParameters": false,
|
||||
"noPropertyAccessFromIndexSignature": false
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
import { mkdirSync, readdirSync, readFileSync, statSync, writeFileSync } from 'node:fs'
|
||||
import { join, relative } from 'node:path'
|
||||
|
||||
type ApiClass = {
|
||||
interface ApiClass {
|
||||
file: string
|
||||
packageName: string | null
|
||||
className: string | null
|
||||
@@ -15,7 +15,7 @@ type ApiClass = {
|
||||
responseReads: Array<{ line: number; setter: string | null; width: number }>
|
||||
}
|
||||
|
||||
type Finding = {
|
||||
interface Finding {
|
||||
generatedAt: string
|
||||
input: {
|
||||
jadx: string
|
||||
|
||||
+1
-27
@@ -1,29 +1,3 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
// Environment setup & latest features
|
||||
"lib": ["ESNext"],
|
||||
"target": "ESNext",
|
||||
"module": "Preserve",
|
||||
"moduleDetection": "force",
|
||||
"jsx": "react-jsx",
|
||||
"allowJs": true,
|
||||
|
||||
// Bundler mode
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noEmit": true,
|
||||
|
||||
// Best practices
|
||||
"strict": true,
|
||||
"skipLibCheck": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
"noImplicitOverride": true,
|
||||
|
||||
// Some stricter flags (disabled by default)
|
||||
"noUnusedLocals": false,
|
||||
"noUnusedParameters": false,
|
||||
"noPropertyAccessFromIndexSignature": false
|
||||
}
|
||||
"extends": "@repo/tsconfig/tsconfig.json"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user