Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
313 commits
Select commit Hold shift + click to select a range
fdddaf6
feat: refactor project management modals and queries
WANZARGEN Apr 7, 2025
a7ccc39
refactor: improve state management and user interactions
WANZARGEN Apr 7, 2025
128996a
feat: add project and project group management modals, enhance state …
WANZARGEN Apr 7, 2025
a345e80
feat: enhance ProjectActionDropdownButton and ProjectMoveModal compon…
WANZARGEN Apr 7, 2025
ce44a77
feat: refactor project group mutations and integrate them into modals
WANZARGEN Apr 7, 2025
37dac89
feat: update LSBStarredTree component layout
WANZARGEN Apr 7, 2025
b8b666f
feat: refactor ProjectAndGroupListPanel component and update project …
WANZARGEN Apr 7, 2025
3682d10
feat: enhance ProjectCard and ProjectActionDropdownButton
WANZARGEN Apr 7, 2025
cc19aab
feat: implement useTextEllipsis hook for text overflow detection
WANZARGEN Apr 7, 2025
0edcdc0
feat: add PROJECTS concept and translations for multiple languages
WANZARGEN Apr 7, 2025
b85967c
feat: refactor project management components to use centralized proje…
WANZARGEN Apr 7, 2025
9d0676e
feat: add ProjectDashboard, ProjectDetailTab, and ProjectOverview com…
WANZARGEN Apr 7, 2025
b776f21
Merge pull request #5753 from cloudforet-io/feature-project-landing
piggggggggy Apr 7, 2025
2f92161
Merge branch 'master' into develop
skdud4659 Apr 8, 2025
4c2be0a
Merge remote-tracking branch 'origin/develop' into feature-project-la…
WANZARGEN Apr 8, 2025
7735de8
Merge branch 'feature-project-landing' into feature-integration-proje…
WANZARGEN Apr 8, 2025
135d5d1
feat: move dashboard shared components to correct dir
WANZARGEN Apr 8, 2025
854c52a
fix(tab): update handleSelectTabMenu to include index parameter
WANZARGEN Apr 8, 2025
d6626ec
feat: update ProjectDashboard and ProjectDetailTab components to impr…
WANZARGEN Apr 8, 2025
dee4c26
fix: update ProjectMainPage and ProjectDetailTab components for impro…
WANZARGEN Apr 8, 2025
fc2ebe0
refactor: update import paths for useDashboardWidgetListQuery to shar…
WANZARGEN Apr 8, 2025
9027c68
fix: update ProjectDetailTab component to include unique keys for dyn…
WANZARGEN Apr 8, 2025
c45a020
feat: add cost report and data source APIs with necessary methods
WANZARGEN Apr 8, 2025
3595b5a
feat: enhance workspace home components with new summaries and cost a…
WANZARGEN Apr 9, 2025
618e341
Merge branch 'feature-project-landing' into feature-integration-proje…
WANZARGEN Apr 9, 2025
bfcd24b
feat(project-route): add project dashboard create route & apply route…
piggggggggy Apr 9, 2025
2c13d52
fix(dashboard-shared): separate shared dashboard form dashboards serv…
piggggggggy Apr 9, 2025
bfe8d58
fix(dashboard-create-page): apply dashboard-shared
piggggggggy Apr 9, 2025
40f9590
chore: apply change model to dashboard schema
piggggggggy Apr 9, 2025
ae031dd
fix(dashboard-shared): apply project entry context to create step2
piggggggggy Apr 9, 2025
50282db
feat: update budget schema and create Page (#5757)
seungyeoneeee Apr 9, 2025
5e93382
feat(dashboard-shared): separate dashboard detail from dashboard deta…
piggggggggy Apr 9, 2025
3aa9648
feat(dashboard-shared): remove dashboards service context from dashbo…
piggggggggy Apr 9, 2025
df84c90
feat(dashboard-shared): separate dashboard shared component from dash…
piggggggggy Apr 9, 2025
df37d4e
feat(project-dashboard-create): create page & project dashboard query…
piggggggggy Apr 9, 2025
77d52a5
feat(project-dashboard-tab): create dashboard create button & apply p…
piggggggggy Apr 9, 2025
730bdcd
feat(project-dashboard): create project detail/create components
piggggggggy Apr 9, 2025
7edd0df
chore: small fix
piggggggggy Apr 9, 2025
7fd1c5e
chore: fix wrong query (dashboard list)
piggggggggy Apr 9, 2025
a8aacef
fix(dashboard-manageable): refactoring with changed sharing policy
piggggggggy Apr 9, 2025
2a78f12
chore: small fix
piggggggggy Apr 9, 2025
4fe992f
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 10, 2025
aafb52e
chore: solve lint error
piggggggggy Apr 10, 2025
1340045
chore: add optional chaining
piggggggggy Apr 10, 2025
9433adf
chore: solve widget load bug
piggggggggy Apr 10, 2025
ea258f6
feat: update budget main page as feedback (#5758)
seungyeoneeee Apr 10, 2025
289df54
Merge pull request #5756 from cloudforet-io/feature-project-dashboards
piggggggggy Apr 10, 2025
0aadbf2
fix(dashboard-create): apply changed create field policy
piggggggggy Apr 10, 2025
a25fccb
feat(dashboard-shared): separate dashboard header from dashboard service
piggggggggy Apr 10, 2025
1f48609
feat(dashboard-shared-actions): create dashboard shared actions
piggggggggy Apr 10, 2025
af7b63b
chore: add missing field to dashboard list verb schema
piggggggggy Apr 10, 2025
19b6c19
fix(dashboard-actions-modal): apply dashboard-shared actions to dashb…
piggggggggy Apr 10, 2025
d5be6db
refactor(dashboard-control-menu): refactor dashboard control menu gen…
piggggggggy Apr 10, 2025
5862358
feat: enhance ProjectOverview and summary components
WANZARGEN Apr 10, 2025
344afdc
Merge commit '586235818942c5c211c7848b93ffd3d61f4f11a5' into feature-…
WANZARGEN Apr 10, 2025
3062107
chore: edit dashboard-shared path
piggggggggy Apr 10, 2025
fe5d337
chore: small fix
piggggggggy Apr 10, 2025
f7e0594
chore: apply review (typo)
piggggggggy Apr 10, 2025
1d966e6
chore: solve lint error
piggggggggy Apr 10, 2025
e1569f5
Merge pull request #5759 from cloudforet-io/feature-project-dashboards
piggggggggy Apr 10, 2025
3211ef9
feat(project-folder): create project-dashboard form modal (create, up…
piggggggggy Apr 10, 2025
ff58b51
feat(project-dashboard): create project-dashboard action modals
piggggggggy Apr 10, 2025
61e9e18
feat(project-dashboard): apply action modal
piggggggggy Apr 10, 2025
0e2110b
feat(project-dashboard): create project-dashboard action client state
piggggggggy Apr 10, 2025
741c4d9
chore: small fix
piggggggggy Apr 10, 2025
6d7f1d3
refactor(dashboard-tree-data): optimize dashboard tree data generatio…
piggggggggy Apr 10, 2025
36e1991
feat(folder-delete): create folder delete actions
piggggggggy Apr 10, 2025
47e6732
feat(project-dashboard-clone): create project-dashboard clone action
piggggggggy Apr 10, 2025
e423160
chore: small fix
piggggggggy Apr 10, 2025
9c39a19
feat: implement unified cost API and enhance CostSummary component
WANZARGEN Apr 10, 2025
d0277ab
refactor(workspace-home): remove daily updates handling and related t…
WANZARGEN Apr 10, 2025
a94ee89
refactor: improve layout and styling of summary components
WANZARGEN Apr 10, 2025
0c1a68a
Merge pull request #5760 from cloudforet-io/feature-project-dashboards
piggggggggy Apr 10, 2025
69d7c1e
fix(ProjectMainPage): update condition for rendering project-detail-t…
WANZARGEN Apr 10, 2025
d2d7049
Merge commit '69d7c1e373f764787f4f9defbb92f0d805ca57f5' into feature-…
WANZARGEN Apr 10, 2025
806f3ca
fix(ProjectDetailTab): update handleCreateProjectDashboard to accept …
WANZARGEN Apr 10, 2025
f0080c3
feat(ProjectDetailTab): integrate i18n for tab labels and update Proj…
WANZARGEN Apr 10, 2025
b738dcd
refactor(ProjectMainPage): simplify rendering logic
WANZARGEN Apr 10, 2025
b6f0543
style(ProjectMainPage): add margin-top to project-detail-tab for impr…
WANZARGEN Apr 10, 2025
f99c227
fix(dashboard-vars): create refinedVars composable
piggggggggy Apr 10, 2025
f30723f
refactor(widget-load): optimize widget load query
piggggggggy Apr 10, 2025
ae12887
chore: edit usage of dashboard temp vars
piggggggggy Apr 10, 2025
5620c84
chore: refactor query key composable
piggggggggy Apr 10, 2025
575655d
feat(project-page-context): create project-page-context composable
piggggggggy Apr 10, 2025
0b396f7
fix(p-tab): add missing spec & solve bug
piggggggggy Apr 10, 2025
de8b352
chore: small fix
piggggggggy Apr 10, 2025
6e8afab
chore: remove unnecessary file
skdud4659 Apr 11, 2025
73c2984
Merge pull request #5762 from cloudforet-io/master
skdud4659 Apr 11, 2025
a2dfbba
feat(api-client-templates): add new API client generation rules and t…
WANZARGEN Apr 11, 2025
abf707a
Merge remote-tracking branch 'origin/develop' into feature-integratio…
WANZARGEN Apr 11, 2025
23ae1e8
chore: merge master into develop after 2.0.dev348 version tagging
admin-cloudforet Apr 11, 2025
2077b3c
fix(dashboard-control-menu): create control menu composable
piggggggggy Apr 11, 2025
ef1b237
refactor(dashboard-manageable): refactor and remove query concern
piggggggggy Apr 11, 2025
c6786a6
fix: apply changed composables
piggggggggy Apr 11, 2025
ad2a121
feat(link): add type import for Location from vue-router
WANZARGEN Apr 11, 2025
9808b99
feat(widget-mode): add WidgetMode type and update components to suppo…
WANZARGEN Apr 11, 2025
4e356a5
Merge pull request #5764 from skdud4659/feature/_refactor
skdud4659 Apr 11, 2025
2c52c38
fix(link): import Location type from vue-router
WANZARGEN Apr 11, 2025
a8b439e
refactor(dashboard): refactor dashboard composables and helpers
piggggggggy Apr 11, 2025
c71eb05
chore: edit path
piggggggggy Apr 11, 2025
b8dcf04
Merge remote-tracking branch 'cloudforet-io/develop' into feature-int…
skdud4659 Apr 11, 2025
9e3246a
feat(dashboard-shared): create dashboard contet-entry inject layer
piggggggggy Apr 11, 2025
ee8f86f
fix(dashboard-entry-context): apply entry-context
piggggggggy Apr 11, 2025
031245a
chore: edit helper name more clearly
piggggggggy Apr 11, 2025
4b1fc61
fix(dashboards-lsb): remove dashboard-shared context
piggggggggy Apr 11, 2025
9f7b440
chore: small fix
piggggggggy Apr 11, 2025
be7c104
chore: fix wrong route name
piggggggggy Apr 11, 2025
864beb9
chore: remove unused route
piggggggggy Apr 11, 2025
474c32e
chore(deps-dev): bump vite from 4.5.12 to 4.5.13
dependabot[bot] Apr 11, 2025
91110fa
Merge pull request #5765 from cloudforet-io/dependabot/npm_and_yarn/v…
piggggggggy Apr 12, 2025
cee2746
chore: edit dashboard-shared path and naming
piggggggggy Apr 12, 2025
b8c31b1
chore: apply changed path
piggggggggy Apr 12, 2025
d0e2f6f
chore: small fix
piggggggggy Apr 12, 2025
37ae8db
feat(scoped-query): introduce useScopedQuery for scope-based API acce…
piggggggggy Apr 7, 2025
56c5cb8
chore: apply changed path
piggggggggy Apr 7, 2025
c648d87
chore: add test
piggggggggy Apr 7, 2025
965fe09
chore: small fix
piggggggggy Apr 7, 2025
9279c99
chore: small fix
piggggggggy Apr 7, 2025
c79c980
chore: small fix
piggggggggy Apr 8, 2025
0520c37
fix(dev-log): apply instance context log caching
piggggggggy Apr 8, 2025
3de0c5c
fix(use-scoped-query): improve dev-logger with err.stack and queueMic…
piggggggggy Apr 12, 2025
a87c8a4
fix(dashboard-variable): apply changed store vars policy
piggggggggy Apr 14, 2025
00684aa
chore: separate vars concern from dashboard detail
piggggggggy Apr 14, 2025
6ccd6be
chore: add translation
piggggggggy Apr 14, 2025
aedfe5c
chore: remove log
piggggggggy Apr 14, 2025
552ca88
chore: merge master into develop after 2.0.dev349 version tagging
admin-cloudforet Apr 14, 2025
7a15bcf
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 14, 2025
cc6e8ee
chore: remove test file
piggggggggy Apr 14, 2025
26bdff8
Merge pull request #5754 from cloudforet-io/feature-scoped-query-comp…
piggggggggy Apr 14, 2025
6c1b188
chore: remove unnecessary import (defineEmits) (#5767)
piggggggggy Apr 14, 2025
a457329
Merge remote-tracking branch 'cloudforet-io/develop' into feature-int…
piggggggggy Apr 14, 2025
abd1967
chore: merge master into develop after 2.0.dev350 version tagging
admin-cloudforet Apr 14, 2025
7aefa01
chore: solve conflicts
piggggggggy Apr 14, 2025
da99b18
chore: remove shared dashboard concern from common widget modules
piggggggggy Apr 14, 2025
f5f4779
chore(dashboard-manage-variables): separate portal target
piggggggggy Apr 14, 2025
e1aa1b4
chore: refactor dashboard api composables
piggggggggy Apr 14, 2025
a80a177
fix(git-ignore): add cursor gitignore rule (cursor exception rules)
piggggggggy Apr 14, 2025
36ee82f
feat: update budget main page (#5769)
seungyeoneeee Apr 14, 2025
7f1a454
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 14, 2025
b80b9a7
chore: merge master into develop after 2.0.dev351 version tagging
admin-cloudforet Apr 14, 2025
4bec120
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 14, 2025
8aa3d34
feat: update unifiedCost trend chart at budget create page (#5771)
seungyeoneeee Apr 15, 2025
c608c22
Merge remote-tracking branch 'cloudforet-io/develop' into feature-int…
piggggggggy Apr 15, 2025
1be7088
chore(project-landing): solve lint error (typescript)
piggggggggy Apr 15, 2025
06a17b3
feat: update budget minor changes (#5772)
seungyeoneeee Apr 15, 2025
01992fc
Merge pull request #5773 from cloudforet-io/feature-integration-proje…
piggggggggy Apr 15, 2025
749e011
feat: add and apply hook for handling service navigation by version
skdud4659 Apr 15, 2025
ae631c8
feat(tree-node): add PTreeNode component with stories and helper func…
WANZARGEN Apr 15, 2025
551f318
fix(ProjectDetailTab): update tab key generation for improved rendering
WANZARGEN Apr 15, 2025
819fcc0
feat(PTreeNode): update draggable functionality and improve icon hand…
WANZARGEN Apr 15, 2025
5807cfe
feat(LSBItem): wrap favorite-button in a div for improved styling and…
WANZARGEN Apr 15, 2025
19adad6
refactor: rename files, type names, and refactor
skdud4659 Apr 15, 2025
ac45004
refactor: apply getRouteMetadata at feature configurator
skdud4659 Apr 15, 2025
7280cf2
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 16, 2025
2fc0e30
fix(AccountSummary, AssetSummary): add optional chaining for safe acc…
WANZARGEN Apr 16, 2025
bc0751a
refactor: improve key generation and formatting for better readabilit…
WANZARGEN Apr 16, 2025
5e9d617
feat: service router applied (project) (#5774)
skdud4659 Apr 16, 2025
94bfa70
feat: add budget detail page & fix minor changes (#5775)
seungyeoneeee Apr 16, 2025
b9254e2
fix: do not show project and group list panel when project is selected
WANZARGEN Apr 16, 2025
1401011
feat: add project and project group modals with improved naming and a…
WANZARGEN Apr 16, 2025
8450b3e
fix: use radio buttons for edit access
WANZARGEN Apr 16, 2025
b352ae7
feat: update modals to use new translations
WANZARGEN Apr 16, 2025
f8f0d5a
fix: update translation for group creation to improve clarity
WANZARGEN Apr 16, 2025
b4f788e
fix: conditionally render overview tab based on project or group ID
WANZARGEN Apr 16, 2025
577b1a9
fix: update Korean translations for edit access settings in modals
WANZARGEN Apr 16, 2025
652e2e0
Merge branch 'feature-integration-project-detail' into develop
WANZARGEN Apr 17, 2025
98c74ff
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 17, 2025
be221a3
fix: update condition check for project group creation to use reactiv…
WANZARGEN Apr 17, 2025
96006d6
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 17, 2025
96182e7
fix: fix initiating service account secret type form
yuda110 Apr 17, 2025
f4dc345
Merge pull request #5776 from yuda110/feature/service-account
yuda110 Apr 17, 2025
818bc09
feat(project-dashboard): create project-dashboard-modal-store
piggggggggy Apr 17, 2025
fefb66a
feat(project-dashboard): create project dashboard edit overlay & sepa…
piggggggggy Apr 17, 2025
7ddb168
feat(project-dashboard): create dashboard bundle modals
piggggggggy Apr 17, 2025
32bc183
fix(dashboard-tree): remove dashboard-tree context from dashboard pag…
piggggggggy Apr 17, 2025
a220ef2
chore: small fix
piggggggggy Apr 17, 2025
921450c
fix(project-dashboard): create dashboard edit layout header
piggggggggy Apr 17, 2025
5a91588
Merge pull request #5778 from piggggggggy/project-dashboard-overlay
piggggggggy Apr 17, 2025
0ff3148
chore: solve project-dashboard bugs
piggggggggy Apr 17, 2025
08078a0
chore: small fix
piggggggggy Apr 17, 2025
5ac8914
fix: update project detail tab to watch both project and project grou…
WANZARGEN Apr 17, 2025
501c0ff
fix(CostSummary): refactor cost report config to use computed propert…
WANZARGEN Apr 17, 2025
f3540d4
fix: update components to use toRef for mode prop and improve key bin…
WANZARGEN Apr 17, 2025
ee196dc
feat: update budget main list filter toolset (#5780)
seungyeoneeee Apr 17, 2025
e782d76
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 17, 2025
16f58ca
fix(ProjectAndGroupListPanel): update layout to improve spacing and a…
WANZARGEN Apr 17, 2025
13aa359
fix(use-project-starred-tree): enhance item name retrieval for projec…
WANZARGEN Apr 17, 2025
f86425c
Merge pull request #5779 from piggggggggy/project-dashboard-qa
piggggggggy Apr 17, 2025
f2895a6
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 17, 2025
af9244f
fix(project-modals): add contextKey for tag management and simplify m…
WANZARGEN Apr 17, 2025
003f9a8
fix(ProjectTagsModal): simplify tag saving logic and update modal clo…
WANZARGEN Apr 17, 2025
bb5822f
refactor: update project and group queries to use scoped queries and …
WANZARGEN Apr 17, 2025
93a59ef
fix: correct translation keys for project and group components
WANZARGEN Apr 17, 2025
67746af
Merge commit '93a59ef227871b5a4f1917800b69536eae3dd939' into develop
WANZARGEN Apr 17, 2025
3226c49
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 17, 2025
1baf274
chore(project): apply changed UX writing
piggggggggy Apr 18, 2025
e80c857
chore: solve conflict
piggggggggy Apr 18, 2025
9ea09a1
Merge pull request #5781 from piggggggggy/project-dashboard-qa
piggggggggy Apr 18, 2025
3e09b60
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 18, 2025
3676123
chore: solve dashboard create bug
piggggggggy Apr 18, 2025
9b20c7a
Merge pull request #5782 from piggggggggy/dashboard-create-qa
piggggggggy Apr 18, 2025
a28f45e
feat(CostSummary): add project filter for cost analysis and update li…
WANZARGEN Apr 18, 2025
61ea03b
feat: add filters for service account and asset metric explorer pages
WANZARGEN Apr 18, 2025
2c6c55c
Merge commit '61ea03badc48c7a2fc627f89a18bef955b8f79af' into develop
WANZARGEN Apr 18, 2025
c089d0e
chore(dashboard-qa): small fix
piggggggggy Apr 18, 2025
72fc53b
Merge pull request #5783 from piggggggggy/dashboard-qa
piggggggggy Apr 18, 2025
77e324d
chore(qa): small fix
piggggggggy Apr 18, 2025
f11338e
feat: update all pages with feedback (#5784)
seungyeoneeee Apr 18, 2025
435f713
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 18, 2025
7361b34
chore: add translation
piggggggggy Apr 20, 2025
09a32d0
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 21, 2025
a774e09
feat: update budget languages & pages (minor changes) (#5785)
seungyeoneeee Apr 21, 2025
5550e7d
Merge pull request #5786 from cloudforet-io/feature-service-account-b…
seungyeoneeee Apr 21, 2025
6e1f35e
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 21, 2025
b21921b
fix(dashboard-tree): apply text highlighting UI
piggggggggy Apr 21, 2025
ba591b0
chore: apply changed ux writing (translation)
piggggggggy Apr 21, 2025
effbb61
Merge pull request #5787 from piggggggggy/chore/dashboard-qa
piggggggggy Apr 21, 2025
98d6f14
chore: small fix
piggggggggy Apr 21, 2025
a11b1f5
chore: minor changed (#5788)
skdud4659 Apr 21, 2025
0e467aa
chore(budget-qa): major & minor fix (#5789)
seungyeoneeee Apr 21, 2025
13a2602
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 21, 2025
d685472
chore: fix error when copying dashboards without widgets & etc... (#5…
yuda110 Apr 22, 2025
6394589
refactor: extract internal event (click tree item)
piggggggggy Apr 22, 2025
2401908
chore: small fix
piggggggggy Apr 22, 2025
625d1ad
Merge pull request #5791 from piggggggggy/project-dashboard-qa
piggggggggy Apr 22, 2025
2aa3a1c
refactor: apply tanstack query to dashboard widget
piggggggggy Apr 22, 2025
2cfa3e5
chore: update cursor rule (api-client)
piggggggggy Apr 22, 2025
2dbbed8
chore(budget-qa): fix budget qa (#5794)
seungyeoneeee Apr 22, 2025
8d1a690
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 22, 2025
7c7aba4
feat: update budget create UI about duplicated month (#5795)
seungyeoneeee Apr 22, 2025
d80932a
Merge pull request #5797 from cloudforet-io/feature-service-account-b…
seungyeoneeee Apr 22, 2025
1b47d4d
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 22, 2025
0870bc4
chore(budget-qa): fix critical & major & minor & trivial bugs (#5799)
seungyeoneeee Apr 22, 2025
846411f
chore(budget-qa): fix critical & minor bug (#5800)
seungyeoneeee Apr 22, 2025
ef254f5
fix(dashboard-template): edit wrong query usage
piggggggggy Apr 23, 2025
6bd2f1c
chore: small fix
piggggggggy Apr 23, 2025
33131a6
chore: small fix
piggggggggy Apr 23, 2025
6e08d4c
fix: fix major bug of budget create error (#5802)
seungyeoneeee Apr 23, 2025
6cc146e
Merge pull request #5801 from piggggggggy/dashboard-create-qa
piggggggggy Apr 23, 2025
b0be71f
Merge pull request #5803 from cloudforet-io/feature-service-account-b…
seungyeoneeee Apr 23, 2025
6ca29fe
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 23, 2025
62728db
fix: fix toggle button in project LSB (#5804)
yuda110 Apr 23, 2025
18fccc9
chore(budget-qa): fix major & minor bug (#5805)
seungyeoneeee Apr 23, 2025
6f622a7
Merge pull request #5806 from cloudforet-io/feature-service-account-b…
seungyeoneeee Apr 23, 2025
9b1b772
Merge branch 'develop' into feature-service-account-budget
seungyeoneeee Apr 23, 2025
6bfa8a3
fix: fix major bug about service account manager
seungyeoneeee Apr 23, 2025
b6aaf4d
Merge pull request #5807 from cloudforet-io/feature-service-account-b…
seungyeoneeee Apr 23, 2025
ff8168e
fix(dashboard-tree): apply shared dashboard ux writing
piggggggggy Apr 23, 2025
6162dbc
Merge pull request #5808 from piggggggggy/dashboard-shared-qa
piggggggggy Apr 23, 2025
bd5c69b
fix: use proper value in `useUserInfo` (#5810)
yuda110 Apr 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
138 changes: 138 additions & 0 deletions .cursor/rules/generate-new-api-clients.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
---
description:
globs:
alwaysApply: false
---


## Directory Structure
```
api-clients/
├── _common/
│ ├── composables/
│ │ └── use-api-query-key.ts
│ └── schema/
│ ├── api-verbs/
│ └── model.ts
└── {service-name}/
├── {resource}/
│ ├── composables/
│ │ └── use-{resource}-api.ts
│ └── schema/
│ ├── api-verbs/
│ │ ├── {verb}.ts
│ └── model.ts
└── index.ts
```

## API Client Composable Template
```typescript
// use-{resource}-api.ts template
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';

import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
import type { {Resource}{Verb}Parameters } from '@/api-clients/{service}/{resource}/schema/api-verbs/{verb}';
import type { {Resource}{Verb = list}Parameters } from '@/api-clients/{service}/{resource}/schema/api-verbs/list';
import type { {Resource}Model } from '@/api-clients/{service}/{resource}/schema/model';

export const use{Resource}Api = () => {
// Define API actions
const actions = {
{verb}: SpaceConnector.clientV2.{service}.{resource}.{verb}<{Resource}{Verb}Parameters, {Resource}Model>,
{verb = list}: SpaceConnector.clientV2.{service}.{resource}.list<{Resource}ListParameters, ListResponse<{Resource}Model>>,
// ... other actions
};

return {
{resource}API: actions,
};
};
```

## Schema Templates

### Model Definition
```typescript
// model.ts template
export interface {Resource}Model {
// Define resource properties
resource_id: string;
name: string;
// ... other properties
}
```

### API Verb Parameters
```typescript
// create.ts template example
export interface {Resource}CreateParameters {
// Define create operation parameters
name: string;
// ... other parameters
}

// list.ts template example
export interface {Resource}ListParameters {
query?: {
filter?: Array<{
k: string;
v: any;
o: string;
}>;
// ... other query parameters
};
}
```

## Usage Rules

1. **Naming Conventions**
- Use PascalCase for interface names: `{Resource}Model`, `{Resource}{Verb}Parameters`
- Use camelCase for variables and functions: `use{Resource}Api`
- Follow existing naming patterns in the codebase

2. **Type Safety**
- Always define proper TypeScript interfaces for all parameters and responses
- Use generics with SpaceConnector client methods
- Define all possible API parameters in schema files

3. **Query Key Management**
- Use `useAPIQueryKey` for generating consistent query keys
- Create separate query keys for different operations
- Include contextual information in query keys when needed

4. **Code Organization**
- Keep schema definitions separate from API logic
- Group related files in appropriate directories
- Follow the established directory structure

5. **Documentation**
- Add JSDoc comments for public interfaces and functions
- Document any special behaviors or requirements
- Include examples for complex parameter structures

## Example Usage in Components
```typescript
const { {resource}API } = use{Resource}Api();

const { key, params } = useServiceQueryKey(service, resource, verb, {
params: ...
})

// In composables
const query = useScopedQuery({
queryKey: {resource}QueryKey.value,
queryFn: () => {resource}API.{verb}(params.value),
// ... other options
}, ['WORKSPACE', 'ADMIN']);
```

## Notes
- Always check existing API clients for consistent patterns
- Consider reusability and maintainability
- Follow the service's API documentation for accurate parameter definitions
- Use appropriate error handling and loading states
- Consider implementing proper caching strategies
- Add comments only when it is really complex. (English only)


4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ node_modules.nosync/
*.swp
*.bak

## Cursor rules : Ignore all files in .cursor directory except specific file (rules)
.cursor/*
!.cursor/generate-new-api-clients.mdc

# Turborepo
.turbo
out/
Expand Down
22 changes: 22 additions & 0 deletions apps/mirinae-storybook/mock/vue-router-composables.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
export const useRoute = () => ({
path: '',
hash: '',
query: {},
params: {},
fullPath: '',
matched: [],
});

export const useRouter = () => ({
resolve() {
return {
resolved: {
path: '/',
hash: '#',
matched: [],
name: '',
params: {},
},
};
},
});
1 change: 1 addition & 0 deletions apps/mirinae-storybook/vite.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ export default defineConfig({
alias: {
'@': path.resolve(__dirname, '../../packages/mirinae/src'),
'vue/dist/vue.esm': path.resolve(__dirname, '../../node_modules/vue/dist/vue.esm.js'),
'vue-router/composables': path.resolve(__dirname, './mock/vue-router-composables.ts'),
},
},
optimizeDeps: {
Expand Down
2 changes: 1 addition & 1 deletion apps/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
"postcss-config-custom": "*",
"rollup-plugin-visualizer": "^5.9.0",
"tsconfig": "*",
"vite": "^4.5.11",
"vite": "^4.5.13",
"vite-plugin-stylelint": "^3.3.3",
"vite-plugin-vue-type-imports": "^0.2.4",
"vitest": "^3.0.8",
Expand Down
81 changes: 0 additions & 81 deletions apps/web/src/api-clients/_common/composables/use-scoped-query.ts

This file was deleted.

11 changes: 11 additions & 0 deletions apps/web/src/api-clients/_common/constants/api-doc-constant.ts
Original file line number Diff line number Diff line change
Expand Up @@ -376,6 +376,11 @@ export const API_DOC = {
'list',
],
},
inventory: {
'metric-data': [
'analyze',
],
},
opsflow: {
comment: [
'create',
Expand Down Expand Up @@ -413,5 +418,11 @@ export const API_DOC = {
'update',
],
},
repository: {
'dashboard-template': [
'list',
'register',
],
},
} as const;
export type APIDoc = typeof API_DOC;
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ export interface BudgetUsageAnalyzeResult {
project_id?: string;
workspace_id?: string;
data_source_id?: string;
provider_filter?: {
state?: string;
providers?: string[];
};
// provider_filter?: {
// state?: string;
// providers?: string[];
// };
resource_group: Extract<ResourceGroupType, 'WORKSPACE' | 'PROJECT'>;
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ export interface BudgetUsageListParameters {
data_source_id?: string;
workspace_id?: string;
project_id?: string;
service_account_id?: string;
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ import type { ResourceGroupType } from '@/api-clients/_common/schema/type';
import type { Currency } from '@/store/display/type';


interface ProviderFilter {
providers: string[];
state: 'ENABLED' | 'DISABLED';
}
// interface ProviderFilter {
// providers: string[];
// state: 'ENABLED' | 'DISABLED';
// }

export interface BudgetUsageModel {
budget_id: string;
Expand All @@ -15,11 +15,11 @@ export interface BudgetUsageModel {
cost: number;
limit: number;
currency: Currency;
provider_filter?: ProviderFilter;
data_source_id: string;
resource_group: Extract<ResourceGroupType, 'WORKSPACE'|'PROJECT'>;
project_id: string;
workspace_id: string;
service_account_id: string;
domain_id: string;
updated_at: string;
}
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
import type { Tags } from '@/api-clients/_common/schema/model';
import type { ResourceGroupType } from '@/api-clients/_common/schema/type';
import type {
BudgetNotification, BudgetPlannedLimit, BudgetTimeUnit, ProviderFilter,
BudgetNotification, BudgetPlannedLimit, BudgetTimeUnit,
} from '@/api-clients/cost-analysis/budget/schema/type';

import type { Currency } from '@/store/display/type';

export interface BudgetCreateParameters {
data_source_id: string;
name?: string;
limit?: number;
planned_limits?: BudgetPlannedLimit[];
provider_filter?: ProviderFilter;
currency: Currency;
time_unit: BudgetTimeUnit;
start: string;
end: string;
notifications?: BudgetNotification[];
notification?: BudgetNotification;
tags?: Tags;
resource_group: Extract<ResourceGroupType, 'WORKSPACE'|'PROJECT'>;
workspace_id?: string;
project_id?: string;
service_account_id?: string;
budget_manager_id?: string;
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ import type { BudgetNotification } from '@/api-clients/cost-analysis/budget/sche

export interface BudgetSetNotificationParameters {
budget_id: string;
notifications: BudgetNotification[];
notification: BudgetNotification;
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,8 @@ export interface BudgetUpdateParameters {
name?: string;
limit?: number;
planned_limits?: BudgetPlannedLimit[];
start?: string;
end?: string;
utilization_rate?: number;
tags?: Tags;
}
Loading
Loading