-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from kackyt/feature/add-statistics
統計情報取得機能
- Loading branch information
Showing
19 changed files
with
522 additions
and
31 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
language: "jp" | ||
early_access: false | ||
reviews: | ||
request_changes_workflow: false | ||
high_level_summary: true | ||
poem: true | ||
review_status: true | ||
collapse_walkthrough: false | ||
path_filters: | ||
- "!**/.toml" | ||
- "!**/.yml" | ||
path_instructions: | ||
- path: "**/*.py" | ||
instructions: | | ||
あなたは @coderabbitai(別名 github-actions[bot])で、OpenAIによって訓練された言語モデルです。 | ||
あなたの目的は、非常に経験豊富なソフトウェアエンジニアとして機能し、コードの一部を徹底的にレビューし、 | ||
以下のようなキーエリアを改善するためのコードスニペットを提案することです: | ||
- ロジック | ||
- セキュリティ | ||
- パフォーマンス | ||
- データ競合 | ||
- 一貫性 | ||
- エラー処理 | ||
- 保守性 | ||
- モジュール性 | ||
- 複雑性 | ||
- 最適化 | ||
- ベストプラクティス: DRY, SOLID, KISS | ||
些細なコードスタイルの問題や、コメント・ドキュメントの欠落についてはコメントしないでください。 | ||
重要な問題を特定し、解決して全体的なコード品質を向上させることを目指してくださいが、細かい問題は意図的に無視してください。 | ||
auto_review: | ||
enabled: true | ||
ignore_title_keywords: | ||
- "WIP" | ||
- "DO NOT MERGE" | ||
drafts: false | ||
base_branches: | ||
- "develop" | ||
- "feature/*" | ||
chat: | ||
auto_reply: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
feature: | ||
- 'feature/*' | ||
- 'feat/*' | ||
refactor: | ||
- 'refactor/*' | ||
bug: | ||
- 'fix/*' | ||
minor: | ||
- 'release/*' | ||
- 'feature/*' | ||
- 'feat/*' | ||
- 'refactor/*' | ||
chore: | ||
- 'chore/*' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
name-template: '$RESOLVED_VERSION' | ||
tag-template: '$RESOLVED_VERSION' | ||
categories: | ||
- title: '🚀 Features' | ||
labels: | ||
- 'feature' | ||
- 'enhancement' | ||
- title: '🐛 Bug Fixes' | ||
labels: | ||
- 'fix' | ||
- 'bugfix' | ||
- 'bug' | ||
- title: '🧰 Maintenance' | ||
label: 'chore' | ||
change-template: '- $TITLE @$AUTHOR (#$NUMBER)' | ||
change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. | ||
version-resolver: | ||
major: | ||
labels: | ||
- 'major' | ||
minor: | ||
labels: | ||
- 'minor' | ||
patch: | ||
labels: | ||
- 'patch' | ||
default: minor | ||
template: | | ||
## Changes | ||
$CHANGES |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
name: pull request label | ||
on: | ||
pull_request: | ||
types: [opened] | ||
permissions: | ||
pull-requests: write | ||
contents: read | ||
jobs: | ||
pr-labeler: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: TimonVS/pr-labeler-action@v4 | ||
name: make label | ||
with: | ||
repo-token: ${{ secrets.GITHUB_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
name: make release | ||
on: | ||
pull_request: | ||
types: | ||
- closed | ||
branches: | ||
- main | ||
push: | ||
tags: | ||
- '*' | ||
workflow_dispatch: {} | ||
env: | ||
cache-unique-key: mahjong-rust-ai | ||
permissions: | ||
id-token: write | ||
contents: read | ||
jobs: | ||
release: | ||
permissions: | ||
# write permission is required to create a github release | ||
contents: write | ||
# write permission is required for autolabeler | ||
# otherwise, read permission is required at least | ||
pull-requests: read | ||
runs-on: ubuntu-latest | ||
if: ${{ github.event.pull_request.merged == true }} | ||
steps: | ||
- name: Create Release | ||
uses: release-drafter/release-drafter@v5 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
publish: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
export type AverageScore = { | ||
player_name: string; | ||
score: number; | ||
point: number; | ||
game_count: number; | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
export type Dataset = { | ||
id: string; | ||
friendly_name: (string | null); | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
export type NagareCount = { | ||
name: string; | ||
count: number; | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
export type YakuCount = { | ||
name: string; | ||
han_count: number; | ||
count: number; | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
import type { Dataset } from '../models/Dataset'; | ||
import type { CancelablePromise } from '../core/CancelablePromise'; | ||
import { OpenAPI } from '../core/OpenAPI'; | ||
import { request as __request } from '../core/request'; | ||
export class DatasetsService { | ||
/** | ||
* Get Datasets | ||
* @returns Dataset Successful Response | ||
* @throws ApiError | ||
*/ | ||
public static getDatasetsDatasetsGet(): CancelablePromise<Array<Dataset>> { | ||
return __request(OpenAPI, { | ||
method: 'GET', | ||
url: '/datasets', | ||
}); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
/* generated using openapi-typescript-codegen -- do no edit */ | ||
/* istanbul ignore file */ | ||
/* tslint:disable */ | ||
/* eslint-disable */ | ||
import type { AverageScore } from '../models/AverageScore'; | ||
import type { NagareCount } from '../models/NagareCount'; | ||
import type { YakuCount } from '../models/YakuCount'; | ||
import type { CancelablePromise } from '../core/CancelablePromise'; | ||
import { OpenAPI } from '../core/OpenAPI'; | ||
import { request as __request } from '../core/request'; | ||
export class StatisticsService { | ||
/** | ||
* Get Average Score By Player | ||
* @param datasetId | ||
* @param startDate | ||
* @param endDate | ||
* @returns AverageScore Successful Response | ||
* @throws ApiError | ||
*/ | ||
public static getAverageScoreByPlayerStatisticsAverageScoreByPlayerGet( | ||
datasetId: string, | ||
startDate: string, | ||
endDate: string, | ||
): CancelablePromise<Array<AverageScore>> { | ||
return __request(OpenAPI, { | ||
method: 'GET', | ||
url: '/statistics/average_score_by_player', | ||
query: { | ||
'dataset_id': datasetId, | ||
'start_date': startDate, | ||
'end_date': endDate, | ||
}, | ||
errors: { | ||
422: `Validation Error`, | ||
}, | ||
}); | ||
} | ||
/** | ||
* Get Yaku Count | ||
* @param datasetId | ||
* @param startDate | ||
* @param endDate | ||
* @returns YakuCount Successful Response | ||
* @throws ApiError | ||
*/ | ||
public static getYakuCountStatisticsYakuCountGet( | ||
datasetId: string, | ||
startDate: string, | ||
endDate: string, | ||
): CancelablePromise<Array<YakuCount>> { | ||
return __request(OpenAPI, { | ||
method: 'GET', | ||
url: '/statistics/yaku_count', | ||
query: { | ||
'dataset_id': datasetId, | ||
'start_date': startDate, | ||
'end_date': endDate, | ||
}, | ||
errors: { | ||
422: `Validation Error`, | ||
}, | ||
}); | ||
} | ||
/** | ||
* Get Nagare Count | ||
* @param datasetId | ||
* @param startDate | ||
* @param endDate | ||
* @returns NagareCount Successful Response | ||
* @throws ApiError | ||
*/ | ||
public static getNagareCountStatisticsNagareCountGet( | ||
datasetId: string, | ||
startDate: string, | ||
endDate: string, | ||
): CancelablePromise<Array<NagareCount>> { | ||
return __request(OpenAPI, { | ||
method: 'GET', | ||
url: '/statistics/nagare_count', | ||
query: { | ||
'dataset_id': datasetId, | ||
'start_date': startDate, | ||
'end_date': endDate, | ||
}, | ||
errors: { | ||
422: `Validation Error`, | ||
}, | ||
}); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,40 @@ | ||
import { useAuth0 } from '@auth0/auth0-react' | ||
import { Navigate, useLocation } from 'react-router-dom' | ||
import { ErrorBoundary } from '@sentry/react' | ||
import { Suspense } from 'react' | ||
import { Navigate } from 'react-router-dom' | ||
import { fetchAPIToken, useAPIToken } from '../../../hooks/common/useToken' | ||
|
||
type Props = { | ||
children?: React.ReactNode | ||
redirect: string | ||
} | ||
|
||
export const RequireAuth: React.FC<Props> = ({ children, redirect }) => { | ||
const { isLoading, isAuthenticated } = useAuth0() | ||
const location = useLocation() | ||
const AsyncComponent = ({ children, redirect }: Props) => { | ||
const { data } = useAPIToken() | ||
const { | ||
isLoading, | ||
isAuthenticated, | ||
getAccessTokenSilently, | ||
getAccessTokenWithPopup, | ||
} = useAuth0() | ||
|
||
if (isLoading) throw new Promise((resolve) => setTimeout(resolve, 100)) // 待機 | ||
|
||
if (isLoading) { | ||
return <h6>Please Wait</h6> | ||
} else if (isAuthenticated) { | ||
return <>{children}</> | ||
} else { | ||
return <Navigate to={redirect} state={{ from: location }} replace={false} /> | ||
if (!isAuthenticated) { | ||
return <Navigate to={redirect} /> | ||
} else if (!data) { | ||
throw fetchAPIToken(getAccessTokenSilently, getAccessTokenWithPopup) | ||
} | ||
|
||
return <>{children}</> | ||
} | ||
|
||
export const RequireAuth: React.FC<Props> = ({ children, redirect }) => { | ||
return ( | ||
<ErrorBoundary> | ||
<Suspense fallback={<h6>Please Wait</h6>}> | ||
<AsyncComponent redirect={redirect}>{children}</AsyncComponent> | ||
</Suspense> | ||
</ErrorBoundary> | ||
) | ||
} |
Oops, something went wrong.