Compare commits

...

172 Commits

Author SHA1 Message Date
1db7736e5c
Updated 2023-01-20 16:09:37 +07:00
Sambo Chea
37263f92b8
Merge pull request #83 from CUBETIQ/renovate/web-vitals-3.x
Update dependency web-vitals to v3
2023-01-20 16:09:00 +07:00
Sambo Chea
9a90baf2f0
Merge pull request #71 from CUBETIQ/renovate/testing-library-react-13.x
Update dependency @testing-library/react to v13
2023-01-20 16:08:49 +07:00
renovate[bot]
157d0929c1
Update dependency @testing-library/react to v13 2023-01-20 09:08:37 +00:00
Sambo Chea
5621146feb
Merge pull request #74 from CUBETIQ/renovate/node-18.x
Update dependency @types/node to v18
2023-01-20 16:08:22 +07:00
Sambo Chea
520d447766
Merge pull request #76 from CUBETIQ/renovate/react-dom-18.x
Update dependency @types/react-dom to v18
2023-01-20 16:08:12 +07:00
Sambo Chea
123136de96
Merge pull request #84 from CUBETIQ/renovate/major-react-monorepo
Update react monorepo to v18 (major)
2023-01-20 16:07:53 +07:00
Sambo Chea
3caebe6315
Merge pull request #70 from CUBETIQ/renovate/craco-craco-7.x
Update dependency @craco/craco to v7
2023-01-20 16:07:40 +07:00
Sambo Chea
e6cc88e627
Merge pull request #77 from CUBETIQ/renovate/antd-5.x
Update dependency antd to v5
2023-01-20 16:07:29 +07:00
Sambo Chea
41210a4108
Merge pull request #85 from CUBETIQ/renovate/spring-boot
Update plugin org.springframework.boot to v3.0.2
2023-01-20 16:07:11 +07:00
renovate[bot]
c3a47cd719
Update plugin org.springframework.boot to v3.0.2 2023-01-20 06:17:05 +00:00
renovate[bot]
baf5fbe884
Update react monorepo to v18 2023-01-19 12:31:45 +00:00
renovate[bot]
e55f6e7313
Update dependency web-vitals to v3 2023-01-19 08:51:27 +00:00
renovate[bot]
418d11c4c2
Update dependency antd to v5 2023-01-19 08:50:48 +00:00
renovate[bot]
535bc77c1d
Update dependency @craco/craco to v7 2023-01-19 08:49:17 +00:00
renovate[bot]
ecdf29c810
Update dependency @types/react-dom to v18 2023-01-19 08:47:34 +00:00
Sambo Chea
0cc9b360a0
Merge pull request #82 from CUBETIQ/renovate/com.netflix.dgs.codegen-5.x
Update plugin com.netflix.dgs.codegen to v5.6.6
2023-01-19 15:46:23 +07:00
Sambo Chea
3146b7d8ff
Merge pull request #58 from CUBETIQ/dependabot/gradle/plugin.spring-1.8.0
Bump plugin.spring from 1.7.22 to 1.8.0
2023-01-19 15:46:00 +07:00
Sambo Chea
2fbfa4c7ea
Merge pull request #69 from CUBETIQ/renovate/org.jetbrains.kotlin.plugin.spring-1.x
Update plugin org.jetbrains.kotlin.plugin.spring to v1.8.0
2023-01-19 15:45:50 +07:00
renovate[bot]
09ea46894b
Update plugin com.netflix.dgs.codegen to v5.6.6 2023-01-19 08:45:38 +00:00
Sambo Chea
95c611be06
Merge pull request #78 from CUBETIQ/renovate/craco-less-2.x
Update dependency craco-less to v2
2023-01-19 15:45:24 +07:00
Sambo Chea
46cb29e7a7
Merge pull request #79 from CUBETIQ/renovate/graphql-16.x
Update dependency graphql to v16
2023-01-19 15:45:15 +07:00
Sambo Chea
3fbc171e08
Merge pull request #80 from CUBETIQ/renovate/react-scripts-5.x
Update dependency react-scripts to v5
2023-01-19 15:45:03 +07:00
Sambo Chea
e7aed8d14c
Merge pull request #81 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-6.0.0
Bump graphql-dgs-platform-dependencies from 5.5.1 to 6.0.0
2023-01-19 15:44:38 +07:00
dependabot[bot]
11c8096f2b
Bump graphql-dgs-platform-dependencies from 5.5.1 to 6.0.0
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.5.1 to 6.0.0.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.5.1...v6.0.0)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-18 02:05:08 +00:00
renovate[bot]
739d5cdd86
Update dependency react-scripts to v5 2023-01-17 11:11:01 +00:00
renovate[bot]
b952580683
Update dependency graphql to v16 2023-01-17 07:37:43 +00:00
renovate[bot]
b811b18f1c
Update dependency craco-less to v2 2023-01-17 07:37:17 +00:00
renovate[bot]
0891a75e43
Update dependency @types/node to v18 2023-01-17 04:57:10 +00:00
renovate[bot]
4809d49b3a
Update plugin org.jetbrains.kotlin.plugin.spring to v1.8.0 2023-01-17 04:55:26 +00:00
dependabot[bot]
26cd3a85fe
Bump plugin.spring from 1.7.22 to 1.8.0
Bumps [plugin.spring](https://github.com/JetBrains/kotlin) from 1.7.22 to 1.8.0.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.22...v1.8.0)

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-17 04:54:34 +00:00
Sambo Chea
0e243c440e
Merge pull request #65 from CUBETIQ/renovate/subscriptions-transport-ws-0.x
Update dependency subscriptions-transport-ws to ^0.11.0
2023-01-17 11:53:35 +07:00
Sambo Chea
41644e84bf
Merge pull request #64 from CUBETIQ/renovate/gradle-7.x
Update dependency gradle to v7.6
2023-01-17 11:53:17 +07:00
Sambo Chea
518e4cfc24
Merge pull request #59 from CUBETIQ/dependabot/gradle/jvm-1.8.0
Bump jvm from 1.7.22 to 1.8.0
2023-01-17 11:53:03 +07:00
Sambo Chea
87caf3be2e
Merge pull request #73 from CUBETIQ/renovate/major-jest-monorepo
Update dependency @types/jest to v29
2023-01-17 11:52:50 +07:00
Sambo Chea
1520e9e745
Merge pull request #75 from CUBETIQ/renovate/react-18.x
Update dependency @types/react to v18
2023-01-17 11:52:33 +07:00
renovate[bot]
1877057899
Update dependency @types/react to v18 2023-01-17 02:37:45 +00:00
dependabot[bot]
2126df3465
Bump jvm from 1.7.22 to 1.8.0
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.7.22 to 1.8.0.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.22...v1.8.0)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-17 02:37:17 +00:00
Sambo Chea
1b5a079fa0
Merge pull request #68 from CUBETIQ/renovate/org.jetbrains.kotlin.plugin.jpa-1.x
Update plugin org.jetbrains.kotlin.plugin.jpa to v1.8.0
2023-01-17 09:36:34 +07:00
renovate[bot]
c23021cb8f
Update dependency @types/jest to v29 2023-01-16 19:00:11 +00:00
renovate[bot]
7c7f1fbdcf
Update plugin org.jetbrains.kotlin.plugin.jpa to v1.8.0 2023-01-16 07:05:54 +00:00
renovate[bot]
9ee1372270
Update dependency subscriptions-transport-ws to ^0.11.0 2023-01-16 03:39:41 +00:00
renovate[bot]
3122d70c89
Update dependency gradle to v7.6 2023-01-16 03:39:13 +00:00
Sambo Chea
248261b485
Merge pull request #61 from CUBETIQ/renovate/configure
Configure Renovate
2023-01-16 10:34:54 +07:00
Sambo Chea
20dac86216
Merge pull request #62 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.6.5
Bump com.netflix.dgs.codegen from 5.6.3 to 5.6.5
2023-01-16 10:34:46 +07:00
Sambo Chea
3a9c751eae
Merge pull request #63 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.5.1
Bump graphql-dgs-platform-dependencies from 5.5.0 to 5.5.1
2023-01-16 10:34:36 +07:00
dependabot[bot]
c89ec71238
Bump graphql-dgs-platform-dependencies from 5.5.0 to 5.5.1
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.5.0 to 5.5.1.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.5.0...v5.5.1)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 02:43:11 +00:00
dependabot[bot]
6bcd43c884
Bump com.netflix.dgs.codegen from 5.6.3 to 5.6.5
Bumps com.netflix.dgs.codegen from 5.6.3 to 5.6.5.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-10 02:05:51 +00:00
renovate[bot]
2715899bb6
Add renovate.json 2023-01-05 16:30:23 +00:00
Sambo Chea
ce4ee166eb
Merge pull request #57 from CUBETIQ/dependabot/gradle/org.springframework.boot-3.0.1
Bump org.springframework.boot from 3.0.0 to 3.0.1
2022-12-23 14:16:30 +07:00
dependabot[bot]
95a9b0bdc6
Bump org.springframework.boot from 3.0.0 to 3.0.1
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 02:07:39 +00:00
Sambo Chea
12861d22e1
Merge pull request #56 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.5.0
Bump graphql-dgs-platform-dependencies from 5.4.5 to 5.5.0
2022-12-07 20:17:47 +07:00
dependabot[bot]
04314b73e6
Bump graphql-dgs-platform-dependencies from 5.4.5 to 5.5.0
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.4.5 to 5.5.0.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.4.5...v5.5.0)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-07 02:07:03 +00:00
fc2e9d8358
Updated the dgs framework 2022-12-06 08:24:33 +07:00
49023d2237
Completed upgrade to spring boot 3.x 2022-12-05 21:31:54 +07:00
f52cdf4237
Updated 2022-12-05 21:04:43 +07:00
Sambo Chea
c6c1d67dc1
Merge pull request #54 from CUBETIQ/dependabot/gradle/plugin.spring-1.7.22
Bump plugin.spring from 1.7.21 to 1.7.22
2022-12-05 20:53:05 +07:00
Sambo Chea
461b91eb7a
Merge pull request #51 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.6.3
Bump com.netflix.dgs.codegen from 5.6.0 to 5.6.3
2022-12-05 20:52:54 +07:00
dependabot[bot]
1934c64ed3
Bump plugin.spring from 1.7.21 to 1.7.22
Bumps [plugin.spring](https://github.com/JetBrains/kotlin) from 1.7.21 to 1.7.22.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.21...v1.7.22)

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-05 13:52:50 +00:00
dependabot[bot]
927bcbf9e3
Bump com.netflix.dgs.codegen from 5.6.0 to 5.6.3
Bumps com.netflix.dgs.codegen from 5.6.0 to 5.6.3.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-05 13:52:48 +00:00
Sambo Chea
2aefd32ae2
Merge pull request #52 from CUBETIQ/dependabot/gradle/org.springframework.boot-3.0.0
Bump org.springframework.boot from 2.7.5 to 3.0.0
2022-12-05 20:52:37 +07:00
Sambo Chea
3a60535018
Merge pull request #53 from CUBETIQ/dependabot/gradle/jvm-1.7.22
Bump jvm from 1.7.21 to 1.7.22
2022-12-05 20:52:27 +07:00
Sambo Chea
020ef1f3ee
Merge pull request #55 from CUBETIQ/dependabot/gradle/plugin.jpa-1.7.22
Bump plugin.jpa from 1.7.21 to 1.7.22
2022-12-05 20:52:08 +07:00
dependabot[bot]
c565f6a109
Bump plugin.jpa from 1.7.21 to 1.7.22
Bumps [plugin.jpa](https://github.com/JetBrains/kotlin) from 1.7.21 to 1.7.22.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.21...v1.7.22)

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-29 02:12:19 +00:00
dependabot[bot]
3141d79f10
Bump jvm from 1.7.21 to 1.7.22
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.7.21 to 1.7.22.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.21...v1.7.22)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-29 02:10:27 +00:00
dependabot[bot]
4d4e147e4d
Bump org.springframework.boot from 2.7.5 to 3.0.0
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.5 to 3.0.0.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.5...v3.0.0)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-25 02:10:09 +00:00
Sambo Chea
d069f966aa
Merge pull request #47 from CUBETIQ/dependabot/gradle/plugin.spring-1.7.21
Bump plugin.spring from 1.7.10 to 1.7.21
2022-11-09 20:06:45 +07:00
dependabot[bot]
c15c745657
Bump plugin.spring from 1.7.10 to 1.7.21
Bumps [plugin.spring](https://github.com/JetBrains/kotlin) from 1.7.10 to 1.7.21.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-09 13:03:54 +00:00
Sambo Chea
ba218d15ca
Merge pull request #46 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.4.3
Bump graphql-dgs-platform-dependencies from 5.4.1 to 5.4.3
2022-11-09 20:02:33 +07:00
Sambo Chea
75f8d25cee
Merge pull request #48 from CUBETIQ/dependabot/gradle/jvm-1.7.21
Bump jvm from 1.7.20 to 1.7.21
2022-11-09 20:02:17 +07:00
Sambo Chea
7294abaa13
Merge pull request #49 from CUBETIQ/dependabot/gradle/plugin.jpa-1.7.21
Bump plugin.jpa from 1.7.20 to 1.7.21
2022-11-09 20:02:07 +07:00
dependabot[bot]
7958a2ebc9
Bump plugin.jpa from 1.7.20 to 1.7.21
Bumps [plugin.jpa](https://github.com/JetBrains/kotlin) from 1.7.20 to 1.7.21.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-09 02:09:58 +00:00
dependabot[bot]
95d4623ea9
Bump jvm from 1.7.20 to 1.7.21
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.7.20 to 1.7.21.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-09 02:08:32 +00:00
dependabot[bot]
668635bc23
Bump graphql-dgs-platform-dependencies from 5.4.1 to 5.4.3
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.4.1 to 5.4.3.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.4.1...v5.4.3)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-08 02:12:46 +00:00
Sambo Chea
79d1170e92
Merge pull request #45 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.6.0
Bump com.netflix.dgs.codegen from 5.4.0 to 5.6.0
2022-11-03 18:39:02 +07:00
dependabot[bot]
66ab0b04c7
Bump com.netflix.dgs.codegen from 5.4.0 to 5.6.0
Bumps com.netflix.dgs.codegen from 5.4.0 to 5.6.0.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-01 02:54:31 +00:00
Sambo Chea
61c9a13e0d
Merge pull request #41 from CUBETIQ/dependabot/gradle/io.spring.dependency-management-1.1.0
Bump io.spring.dependency-management from 1.0.14.RELEASE to 1.1.0
2022-10-21 21:14:21 +07:00
dependabot[bot]
6010aae6d5
Bump io.spring.dependency-management from 1.0.14.RELEASE to 1.1.0
Bumps [io.spring.dependency-management](https://github.com/spring-gradle-plugins/dependency-management-plugin) from 1.0.14.RELEASE to 1.1.0.
- [Release notes](https://github.com/spring-gradle-plugins/dependency-management-plugin/releases)
- [Commits](https://github.com/spring-gradle-plugins/dependency-management-plugin/compare/v1.0.14.RELEASE...v1.1.0)

---
updated-dependencies:
- dependency-name: io.spring.dependency-management
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-21 13:24:33 +00:00
Sambo Chea
c9aad65b66
Merge pull request #42 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.4.1
Bump graphql-dgs-platform-dependencies from 5.3.0 to 5.4.1
2022-10-21 20:23:52 +07:00
Sambo Chea
6a7464fc06
Merge pull request #43 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.5
Bump org.springframework.boot from 2.7.4 to 2.7.5
2022-10-21 20:23:32 +07:00
dependabot[bot]
5fad521b55
Bump org.springframework.boot from 2.7.4 to 2.7.5
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.4 to 2.7.5.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.4...v2.7.5)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-21 03:01:55 +00:00
dependabot[bot]
de4d24025b
Bump graphql-dgs-platform-dependencies from 5.3.0 to 5.4.1
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.3.0 to 5.4.1.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.3.0...v5.4.1)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-20 02:32:15 +00:00
Sambo Chea
3c020ab48d
Merge pull request #38 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.3.0
Bump graphql-dgs-platform-dependencies from 5.2.4 to 5.3.0
2022-10-10 20:33:36 +07:00
Sambo Chea
9df67c9939
Merge pull request #39 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.4.0
Bump com.netflix.dgs.codegen from 5.3.1 to 5.4.0
2022-10-10 20:33:11 +07:00
dependabot[bot]
57b8b5e567
Bump com.netflix.dgs.codegen from 5.3.1 to 5.4.0
Bumps com.netflix.dgs.codegen from 5.3.1 to 5.4.0.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 02:32:47 +00:00
dependabot[bot]
4f3a4ac905
Bump graphql-dgs-platform-dependencies from 5.2.4 to 5.3.0
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.2.4 to 5.3.0.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.2.4...v5.3.0)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 02:49:51 +00:00
Sambo Chea
2a2fbd611e
Merge pull request #36 from CUBETIQ/dependabot/gradle/jvm-1.7.20
Bump jvm from 1.7.10 to 1.7.20
2022-09-30 10:34:05 +07:00
Sambo Chea
16999cc450
Merge pull request #37 from CUBETIQ/dependabot/gradle/plugin.jpa-1.7.20
Bump plugin.jpa from 1.7.10 to 1.7.20
2022-09-30 10:33:57 +07:00
dependabot[bot]
d92cf2e6ab
Bump plugin.jpa from 1.7.10 to 1.7.20
Bumps [plugin.jpa](https://github.com/JetBrains/kotlin) from 1.7.10 to 1.7.20.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.10...v1.7.20)

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 02:41:08 +00:00
dependabot[bot]
10c0eaf59b
Bump jvm from 1.7.10 to 1.7.20
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.7.10 to 1.7.20.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.10...v1.7.20)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 02:40:30 +00:00
Sambo Chea
65842985ae
Merge pull request #33 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.4
Bump org.springframework.boot from 2.7.3 to 2.7.4
2022-09-28 19:38:04 +07:00
Sambo Chea
39738ea7b8
Merge pull request #34 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.2.4
Bump graphql-dgs-platform-dependencies from 5.2.2 to 5.2.4
2022-09-28 19:37:20 +07:00
dependabot[bot]
cc66752337
Bump graphql-dgs-platform-dependencies from 5.2.2 to 5.2.4
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.2.2 to 5.2.4.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.2.2...v5.2.4)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 02:40:01 +00:00
dependabot[bot]
58e862800f
Bump org.springframework.boot from 2.7.3 to 2.7.4
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 02:39:57 +00:00
Sambo Chea
238be97112
Merge pull request #32 from CUBETIQ/dependabot/gradle/io.spring.dependency-management-1.0.14.RELEASE
Bump io.spring.dependency-management from 1.0.13.RELEASE to 1.0.14.RELEASE
2022-09-22 11:09:39 +07:00
dependabot[bot]
8e54474a9e
Bump io.spring.dependency-management
Bumps [io.spring.dependency-management](https://github.com/spring-gradle-plugins/dependency-management-plugin) from 1.0.13.RELEASE to 1.0.14.RELEASE.
- [Release notes](https://github.com/spring-gradle-plugins/dependency-management-plugin/releases)
- [Commits](https://github.com/spring-gradle-plugins/dependency-management-plugin/compare/v1.0.13.RELEASE...v1.0.14.RELEASE)

---
updated-dependencies:
- dependency-name: io.spring.dependency-management
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-22 02:47:48 +00:00
Sambo Chea
6643c811f8
Merge pull request #30 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.3.1
Bump com.netflix.dgs.codegen from 5.2.6 to 5.3.1
2022-09-21 09:46:11 +07:00
Sambo Chea
60adbf6eb2
Merge pull request #31 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.2.2
Bump graphql-dgs-platform-dependencies from 5.2.1 to 5.2.2
2022-09-21 09:46:02 +07:00
dependabot[bot]
a2e272e781
Bump graphql-dgs-platform-dependencies from 5.2.1 to 5.2.2
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.2.1 to 5.2.2.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.2.1...v5.2.2)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-21 02:45:00 +00:00
dependabot[bot]
7526cc66ff
Bump com.netflix.dgs.codegen from 5.2.6 to 5.3.1
Bumps com.netflix.dgs.codegen from 5.2.6 to 5.3.1.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 02:50:00 +00:00
Sambo Chea
2b82268329
Merge pull request #28 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.3
Bump org.springframework.boot from 2.7.2 to 2.7.3
2022-08-31 12:16:13 +07:00
Sambo Chea
b4a8dcff34
Merge pull request #29 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.2.1
Bump graphql-dgs-platform-dependencies from 5.1.1 to 5.2.1
2022-08-31 12:16:07 +07:00
dependabot[bot]
8b67cc0f95
Bump graphql-dgs-platform-dependencies from 5.1.1 to 5.2.1
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.1.1 to 5.2.1.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.1.1...v5.2.1)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-31 02:35:42 +00:00
dependabot[bot]
495c1034a7
Bump org.springframework.boot from 2.7.2 to 2.7.3
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.2...v2.7.3)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-19 02:25:59 +00:00
Sambo Chea
8513a5fcfe
Merge pull request #27 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.2.6
Bump com.netflix.dgs.codegen from 5.2.5 to 5.2.6
2022-08-16 11:26:26 +07:00
Sambo Chea
9fbc86b919
Merge pull request #26 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.1.1
Bump graphql-dgs-platform-dependencies from 5.1.0 to 5.1.1
2022-08-16 11:26:19 +07:00
dependabot[bot]
0dff314ec5
Bump com.netflix.dgs.codegen from 5.2.5 to 5.2.6
Bumps com.netflix.dgs.codegen from 5.2.5 to 5.2.6.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-16 02:36:01 +00:00
dependabot[bot]
e41006a446
Bump graphql-dgs-platform-dependencies from 5.1.0 to 5.1.1
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.1.0 to 5.1.1.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.1.0...v5.1.1)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-16 02:36:00 +00:00
Sambo Chea
8a04c76fa7
Merge pull request #25 from CUBETIQ/dependabot/gradle/io.spring.dependency-management-1.0.13.RELEASE
Bump io.spring.dependency-management from 1.0.12.RELEASE to 1.0.13.RELEASE
2022-08-11 11:08:40 +07:00
dependabot[bot]
2cd79cfde7
Bump io.spring.dependency-management
Bumps [io.spring.dependency-management](https://github.com/spring-gradle-plugins/dependency-management-plugin) from 1.0.12.RELEASE to 1.0.13.RELEASE.
- [Release notes](https://github.com/spring-gradle-plugins/dependency-management-plugin/releases)
- [Commits](https://github.com/spring-gradle-plugins/dependency-management-plugin/compare/v1.0.12.RELEASE...v1.0.13.RELEASE)

---
updated-dependencies:
- dependency-name: io.spring.dependency-management
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-11 02:50:54 +00:00
Sambo Chea
f832c2b51e
Merge pull request #24 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.1.0
Bump graphql-dgs-platform-dependencies from 5.0.5 to 5.1.0
2022-08-10 09:43:03 +07:00
dependabot[bot]
a1cea270e6
Bump graphql-dgs-platform-dependencies from 5.0.5 to 5.1.0
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.0.5 to 5.1.0.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.0.5...v5.1.0)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-10 02:35:32 +00:00
Sambo Chea
6b89b3b07b
Merge pull request #23 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.2
Bump org.springframework.boot from 2.7.1 to 2.7.2
2022-07-22 11:19:03 +07:00
dependabot[bot]
98dd1624fb
Bump org.springframework.boot from 2.7.1 to 2.7.2
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.1...v2.7.2)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-22 02:42:15 +00:00
Sambo Chea
125be3ac17
Merge pull request #22 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.2.5
Bump com.netflix.dgs.codegen from 5.2.4 to 5.2.5
2022-07-21 11:11:10 +07:00
dependabot[bot]
064c65bf78
Bump com.netflix.dgs.codegen from 5.2.4 to 5.2.5
Bumps com.netflix.dgs.codegen from 5.2.4 to 5.2.5.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 02:52:37 +00:00
Sambo Chea
2f5d0f0f01
Merge pull request #21 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.2.4
Bump com.netflix.dgs.codegen from 5.2.3 to 5.2.4
2022-07-11 15:43:56 +07:00
dependabot[bot]
5d75b10451
Bump com.netflix.dgs.codegen from 5.2.3 to 5.2.4
Bumps com.netflix.dgs.codegen from 5.2.3 to 5.2.4.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 02:30:14 +00:00
Sambo Chea
ad056ce150
Merge pull request #17 from CUBETIQ/dependabot/gradle/plugin.jpa-1.7.10
Bump plugin.jpa from 1.7.0 to 1.7.10
2022-07-08 12:53:02 +07:00
dependabot[bot]
68410976fa
Bump plugin.jpa from 1.7.0 to 1.7.10
Bumps [plugin.jpa](https://github.com/JetBrains/kotlin) from 1.7.0 to 1.7.10.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-08 05:52:55 +00:00
Sambo Chea
52fe27f997
Merge pull request #19 from CUBETIQ/dependabot/gradle/plugin.spring-1.7.10
Bump plugin.spring from 1.7.0 to 1.7.10
2022-07-08 12:52:13 +07:00
dependabot[bot]
40b3a75d0c
Bump plugin.spring from 1.7.0 to 1.7.10
Bumps [plugin.spring](https://github.com/JetBrains/kotlin) from 1.7.0 to 1.7.10.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-08 05:51:43 +00:00
Sambo Chea
682ec654fb
Merge pull request #18 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.2.3
Bump com.netflix.dgs.codegen from 5.1.17 to 5.2.3
2022-07-08 12:51:23 +07:00
Sambo Chea
104546c534
Merge pull request #20 from CUBETIQ/dependabot/gradle/jvm-1.7.10
Bump jvm from 1.7.0 to 1.7.10
2022-07-08 12:51:06 +07:00
dependabot[bot]
9e8da2e833
Bump jvm from 1.7.0 to 1.7.10
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.7.0 to 1.7.10.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/commits)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-08 02:44:07 +00:00
dependabot[bot]
ef81b01870
Bump com.netflix.dgs.codegen from 5.1.17 to 5.2.3
Bumps com.netflix.dgs.codegen from 5.1.17 to 5.2.3.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-08 02:42:35 +00:00
Sambo Chea
fab96fe26a
Merge pull request #15 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.0.5
Bump graphql-dgs-platform-dependencies from 5.0.4 to 5.0.5
2022-07-05 16:13:33 +07:00
dependabot[bot]
a62fb0f6a0
Bump graphql-dgs-platform-dependencies from 5.0.4 to 5.0.5
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.0.4 to 5.0.5.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.0.4...v5.0.5)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 02:56:15 +00:00
Sambo Chea
5e5d7d79dd
Merge pull request #14 from CUBETIQ/dependabot/gradle/io.spring.dependency-management-1.0.12.RELEASE
Bump io.spring.dependency-management from 1.0.11.RELEASE to 1.0.12.RELEASE
2022-07-01 14:49:30 +07:00
dependabot[bot]
08a549c3d1
Bump io.spring.dependency-management
Bumps [io.spring.dependency-management](https://github.com/spring-gradle-plugins/dependency-management-plugin) from 1.0.11.RELEASE to 1.0.12.RELEASE.
- [Release notes](https://github.com/spring-gradle-plugins/dependency-management-plugin/releases)
- [Commits](https://github.com/spring-gradle-plugins/dependency-management-plugin/compare/v1.0.11.RELEASE...v1.0.12.RELEASE)

---
updated-dependencies:
- dependency-name: io.spring.dependency-management
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 02:48:39 +00:00
Sambo Chea
121e8a0cd9
Merge pull request #13 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.1
Bump org.springframework.boot from 2.7.0 to 2.7.1
2022-06-24 10:54:30 +07:00
dependabot[bot]
b2cd6d4741
Bump org.springframework.boot from 2.7.0 to 2.7.1
Bumps [org.springframework.boot](https://github.com/spring-projects/spring-boot) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.7.0...v2.7.1)

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-24 02:40:08 +00:00
Sambo Chea
be2a718c0a
Merge pull request #12 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.0.4
Bump graphql-dgs-platform-dependencies from 5.0.3 to 5.0.4
2022-06-16 10:32:45 +07:00
dependabot[bot]
ecf8a7eb22
Bump graphql-dgs-platform-dependencies from 5.0.3 to 5.0.4
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.0.3 to 5.0.4.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.0.3...v5.0.4)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-16 02:38:57 +00:00
Sambo Chea
1da2a00161
Merge pull request #8 from CUBETIQ/dependabot/gradle/plugin.spring-1.7.0
Bump plugin.spring from 1.6.21 to 1.7.0
2022-06-13 19:06:10 +07:00
dependabot[bot]
20d9f7b7b0
Bump plugin.spring from 1.6.21 to 1.7.0
Bumps [plugin.spring](https://github.com/JetBrains/kotlin) from 1.6.21 to 1.7.0.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.0/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.6.21...v1.7.0)

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-13 01:49:31 +00:00
Sambo Chea
e199da8f4f
Update README.md 2022-06-13 08:17:27 +07:00
Sambo Chea
56104abfa2
Merge pull request #9 from CUBETIQ/dependabot/gradle/jvm-1.7.0
Bump jvm from 1.6.21 to 1.7.0
2022-06-13 08:16:56 +07:00
Sambo Chea
40902467dc
Merge pull request #11 from CUBETIQ/dependabot/gradle/plugin.jpa-1.7.0
Bump plugin.jpa from 1.6.21 to 1.7.0
2022-06-13 08:16:50 +07:00
Sambo Chea
5686764e04
Merge pull request #10 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.0.3
Bump graphql-dgs-platform-dependencies from 5.0.2 to 5.0.3
2022-06-13 08:09:36 +07:00
dependabot[bot]
97250acacf
Bump plugin.jpa from 1.6.21 to 1.7.0
Bumps [plugin.jpa](https://github.com/JetBrains/kotlin) from 1.6.21 to 1.7.0.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.0/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.6.21...v1.7.0)

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 02:45:57 +00:00
dependabot[bot]
3b106a4362
Bump graphql-dgs-platform-dependencies from 5.0.2 to 5.0.3
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.0.2...v5.0.3)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 02:45:23 +00:00
dependabot[bot]
82cf0f56ac
Bump jvm from 1.6.21 to 1.7.0
Bumps [jvm](https://github.com/JetBrains/kotlin) from 1.6.21 to 1.7.0.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.0/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.6.21...v1.7.0)

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 02:45:16 +00:00
Sambo Chea
8da48bdf71
Merge pull request #7 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.0.2
Bump graphql-dgs-platform-dependencies from 5.0.1 to 5.0.2
2022-06-06 10:33:08 +07:00
dependabot[bot]
9886869d8e
Bump graphql-dgs-platform-dependencies from 5.0.1 to 5.0.2
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v5.0.1...v5.0.2)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-06 02:42:55 +00:00
Sambo Chea
4104ceeaa4
Merge pull request #6 from CUBETIQ/dependabot/gradle/com.netflix.graphql.dgs-graphql-dgs-platform-dependencies-5.0.1
Bump graphql-dgs-platform-dependencies from 4.10.4 to 5.0.1
2022-05-30 11:42:48 +07:00
dependabot[bot]
e078c91206
Bump graphql-dgs-platform-dependencies from 4.10.4 to 5.0.1
Bumps [graphql-dgs-platform-dependencies](https://github.com/Netflix/dgs-framework) from 4.10.4 to 5.0.1.
- [Release notes](https://github.com/Netflix/dgs-framework/releases)
- [Commits](https://github.com/Netflix/dgs-framework/compare/v4.10.4...v5.0.1)

---
updated-dependencies:
- dependency-name: com.netflix.graphql.dgs:graphql-dgs-platform-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 02:42:06 +00:00
feedc82a80
Updated spring and dgs 2022-05-27 12:30:12 +07:00
Sambo Chea
ae023ee293
Merge pull request #1 from CUBETIQ/dependabot/gradle/plugin.jpa-1.6.21
Bump plugin.jpa from 1.5.21 to 1.6.21
2022-05-27 09:07:15 +07:00
Sambo Chea
442560ebb0
Merge pull request #3 from CUBETIQ/dependabot/gradle/jvm-1.6.21
Bump jvm from 1.5.21 to 1.6.21
2022-05-27 09:07:07 +07:00
dependabot[bot]
77c3c35c80
Bump plugin.jpa from 1.5.21 to 1.6.21
Bumps plugin.jpa from 1.5.21 to 1.6.21.

---
updated-dependencies:
- dependency-name: plugin.jpa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 02:07:03 +00:00
dependabot[bot]
1c33e5546c
Bump jvm from 1.5.21 to 1.6.21
Bumps jvm from 1.5.21 to 1.6.21.

---
updated-dependencies:
- dependency-name: jvm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 02:06:43 +00:00
Sambo Chea
12c1041847
Merge pull request #2 from CUBETIQ/dependabot/gradle/com.netflix.dgs.codegen-5.1.17
Bump com.netflix.dgs.codegen from 5.0.5 to 5.1.17
2022-05-27 09:06:31 +07:00
Sambo Chea
108a6df9f8
Merge pull request #4 from CUBETIQ/dependabot/gradle/plugin.spring-1.6.21
Bump plugin.spring from 1.5.21 to 1.6.21
2022-05-27 09:06:17 +07:00
Sambo Chea
241d2e1232
Merge pull request #5 from CUBETIQ/dependabot/gradle/org.springframework.boot-2.7.0
Bump org.springframework.boot from 2.5.3 to 2.7.0
2022-05-27 09:06:09 +07:00
dependabot[bot]
84809af27b
Bump org.springframework.boot from 2.5.3 to 2.7.0
Bumps org.springframework.boot from 2.5.3 to 2.7.0.

---
updated-dependencies:
- dependency-name: org.springframework.boot
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 02:05:22 +00:00
dependabot[bot]
076c7bdac0
Bump plugin.spring from 1.5.21 to 1.6.21
Bumps plugin.spring from 1.5.21 to 1.6.21.

---
updated-dependencies:
- dependency-name: plugin.spring
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 02:05:20 +00:00
dependabot[bot]
ad35f40612
Bump com.netflix.dgs.codegen from 5.0.5 to 5.1.17
Bumps com.netflix.dgs.codegen from 5.0.5 to 5.1.17.

---
updated-dependencies:
- dependency-name: com.netflix.dgs.codegen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 02:05:18 +00:00
Sambo Chea
8d8a5ecddd
Create dependabot.yml 2022-05-27 09:05:03 +07:00
ea9c700f37 Task: Add query for account with completable future and want to test with flux and fetch accounts with subscriptions 2021-08-08 19:48:50 +07:00
bfff91a8df Task: Add Ant Design and Craco for react scripts ejected 2021-08-08 19:08:10 +07:00
96781943e4 Updated readme 2021-08-08 19:00:13 +07:00
ceaacc9685 Task: Completed login and get token from user and able to change user password by username and updated the security filters and add auth service and auth details. And more add login mutation in resolver 2021-08-08 18:55:52 +07:00
9202c52640 Task: Add security configuration and implement for auth service and configs 2021-08-08 17:40:08 +07:00
0c2669d153 Task: Add and updated module for security in graphql demo 2021-08-08 13:23:01 +07:00
94552197dc Task: Add cubetiq security jwt module 2021-08-08 12:39:19 +07:00
32f356569d Task: Upgraded the dgs graphql to submodules and parent modules for extends projects 2021-08-08 12:33:34 +07:00
83477a9946 Task: Changed types for DgsConstants support 2021-08-08 11:51:24 +07:00
b1d9f8eba6 Updated and add dgs websocket 2021-08-08 11:01:26 +07:00
53d35264e4 Task: Fixed websocket for subscriptions in DGS framework and add netflix dgs subscription websocket autoconfigure 2021-08-08 11:00:39 +07:00
8660f35410 Task: Changed the client to frontend package in graphq demo 2021-08-08 10:39:48 +07:00
626f8b9fc5 Task: Add Netflix DGS framework and DGS codegen for GraphQL and still issued with subscriptions that not work on server and add some configurations and add webflux included web starter and removed all graphql kickstart and add frontend client with apollo client and react in typescript for graphql demo 2021-08-07 19:56:39 +07:00
78 changed files with 12771 additions and 249 deletions

11
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "gradle" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "daily"

26
.gitignore vendored
View File

@ -1,4 +1,4 @@
HELP.md ../HELP.md
.gradle .gradle
build/ build/
!gradle/wrapper/gradle-wrapper.jar !gradle/wrapper/gradle-wrapper.jar
@ -35,3 +35,27 @@ out/
### VS Code ### ### VS Code ###
.vscode/ .vscode/
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

8
.gitmodules vendored Normal file
View File

@ -0,0 +1,8 @@
[submodule "cubetiq-security-core"]
path = cubetiq-security-core
url = https://git.cubetiqs.com/cubetiq/cubetiq-security-core.git
branch = main
[submodule "cubetiq-security-web"]
path = cubetiq-security-web
url = https://git.cubetiqs.com/cubetiq/cubetiq-security-web.git
branch = main

View File

@ -1,7 +1,7 @@
# GraphQL & Spring Boot (Demo Project) # GraphQL & Spring Boot (Demo Project)
- Spring Boot (2.6) - Spring Boot
- GraphQL (11) - DGS Framework
- Kotlin (1.5.21) - Kotlin
# Contributors # Contributors
- Sambo Chea <sombochea@cubetiqs.com> - Sambo Chea <sombochea@cubetiqs.com>

View File

@ -1,53 +1,45 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins { plugins {
id("org.springframework.boot") version "2.6.0-SNAPSHOT" id("org.springframework.boot") version "3.0.2" apply false
id("io.spring.dependency-management") version "1.0.11.RELEASE" id("io.spring.dependency-management") version "1.1.0" apply false
kotlin("jvm") version "1.5.21" kotlin("jvm") version "1.8.0" apply false
kotlin("plugin.spring") version "1.5.21" kotlin("plugin.spring") version "1.8.0" apply false
kotlin("plugin.jpa") version "1.5.21" kotlin("plugin.jpa") version "1.8.0" apply false
id("com.netflix.dgs.codegen") version "5.6.6" apply false
} }
group = "com.cubetiqs" allprojects {
version = "0.0.1-SNAPSHOT" repositories {
java.sourceCompatibility = JavaVersion.VERSION_11 mavenCentral()
}
repositories { group = "com.cubetiqs"
maven { url = uri("https://m.ctdn.net") } version = "0.0.1-SNAPSHOT"
}
extra["graphqlVersion"] = "11.0.0" val javaVersion = "17"
dependencies { tasks.withType<JavaCompile> {
implementation("com.graphql-java:graphql-java-extended-scalars:16.0.0") sourceCompatibility = javaVersion
implementation("com.graphql-java-kickstart:graphql-spring-boot-starter:${property("graphqlVersion")}") targetCompatibility = javaVersion
implementation("com.graphql-java-kickstart:playground-spring-boot-starter:${property("graphqlVersion")}") }
implementation("com.graphql-java-kickstart:voyager-spring-boot-starter:${property("graphqlVersion")}")
implementation("org.springframework.boot:spring-boot-starter-actuator") tasks.withType<KotlinCompile> {
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-webflux")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("io.projectreactor.kotlin:reactor-kotlin-extensions")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
developmentOnly("org.springframework.boot:spring-boot-devtools")
runtimeOnly("org.postgresql:postgresql")
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("io.projectreactor:reactor-test")
testImplementation("com.graphql-java-kickstart:graphql-spring-boot-starter-test:${property("graphqlVersion")}")
}
tasks.withType<KotlinCompile> {
kotlinOptions { kotlinOptions {
freeCompilerArgs = listOf("-Xjsr305=strict") freeCompilerArgs = listOf("-Xjsr305=strict")
jvmTarget = "11" jvmTarget = javaVersion
}
} }
} }
tasks.withType<Test> { subprojects {
useJUnitPlatform() apply {
plugin("io.spring.dependency-management")
}
the<io.spring.gradle.dependencymanagement.dsl.DependencyManagementExtension>().apply {
imports {
mavenBom(org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES)
}
}
} }

23
client/.gitignore vendored Normal file
View File

@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

3
client/README.md Normal file
View File

@ -0,0 +1,3 @@
# React Client App
- Apollo Client
- GraphQL

17
client/craco.config.js Normal file
View File

@ -0,0 +1,17 @@
const CracoLessPlugin = require('craco-less');
module.exports = {
plugins: [
{
plugin: CracoLessPlugin,
options: {
lessLoaderOptions: {
lessOptions: {
modifyVars: { '@primary-color': '#7c2cdb' },
javascriptEnabled: true,
},
},
},
},
],
};

51
client/package.json Normal file
View File

@ -0,0 +1,51 @@
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"@apollo/client": "^3.4.5",
"antd": "^5.0.0",
"graphql": "^16.0.0",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"subscriptions-transport-ws": "^0.11.0",
"web-vitals": "^3.0.0"
},
"scripts": {
"start": "craco start",
"build": "craco build",
"test": "craco test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"@craco/craco": "^7.0.0",
"craco-less": "^2.0.0",
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^12.1.10",
"@types/jest": "^29.0.0",
"@types/node": "^18.0.0",
"@types/react": "^18.0.0",
"@types/react-dom": "^18.0.0",
"react-scripts": "5.0.1",
"typescript": "^4.1.2"
}
}

BIN
client/public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

43
client/public/index.html Normal file
View File

@ -0,0 +1,43 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

BIN
client/public/logo192.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

BIN
client/public/logo512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -0,0 +1,25 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

3
client/public/robots.txt Normal file
View File

@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:

1
client/src/App.less Normal file
View File

@ -0,0 +1 @@
@import '~antd/dist/antd.less';

99
client/src/App.tsx Normal file
View File

@ -0,0 +1,99 @@
import React from 'react';
import './App.less';
import {gql, useQuery, useSubscription} from "@apollo/client";
import { Table } from 'antd';
interface User {
id: number
code: string
name: string
}
interface Account {
id: number
code: string
balance: number
user: User
}
interface AccountResult {
fetchAccounts: Array<Account>
}
const ACCOUNTS = gql`
{
fetchAccounts {
id
code
balance
user {
code
name
}
}
}
`
const SUB_ACCOUNTS = gql`
subscription {
fetchAccounts {
id
code
balance
user {
code
name
}
}
}
`
const HELLO = gql`
subscription {
hello
}
`
const accountColumns = [
{
title: "Account ID",
dataIndex: "id",
key: "id",
},
{
title: "Account Code",
dataIndex: "code",
key: "code",
},
{
title: "User",
dataIndex: ["user", "name"],
key: "user.name",
}
]
function App() {
// const {error, loading, data} = useQuery<AccountResult>(ACCOUNTS)
const {error, loading, data} = useSubscription<AccountResult>(SUB_ACCOUNTS)
// const {error, loading, data} = useSubscription(HELLO)
console.log(data)
return (
<>
<h1>Accounts</h1>
{
loading || !data ? <p>Loading...</p> :
// data.fetchAccounts.map(account => (
// <>
// <div>Account ID: {account.id}</div>
// <div>Account Code: {account.code}</div>
// <div>Account User: {account.user.name}</div>
// </>
// )
// )
<Table dataSource={data.fetchAccounts} columns={accountColumns}/>
// <p>{`${data.hello}`}</p>
}
</>
);
}
export default App;

0
client/src/index.less Normal file
View File

54
client/src/index.tsx Normal file
View File

@ -0,0 +1,54 @@
import React from 'react';
import ReactDOM from 'react-dom';
import './index.less';
import App from './App';
import reportWebVitals from './reportWebVitals';
import {split, HttpLink, ApolloClient, InMemoryCache} from '@apollo/client';
import {ApolloProvider} from '@apollo/client/react';
import {getMainDefinition} from '@apollo/client/utilities';
import {WebSocketLink} from '@apollo/client/link/ws';
const APP_HOST = process.env.APP_HOST || 'localhost:8081'
const httpLink = new HttpLink({
uri: `http://${APP_HOST}/graphql`
});
const wsLink = new WebSocketLink({
uri: `ws://${APP_HOST}/subscriptions`,
options: {
reconnect: true
}
});
const splitLink = split(
({query}) => {
const definition = getMainDefinition(query);
return (
definition.kind === 'OperationDefinition' &&
definition.operation === 'subscription'
);
},
wsLink,
httpLink,
);
const client = new ApolloClient({
link: splitLink,
cache: new InMemoryCache()
});
ReactDOM.render(
<React.StrictMode>
<ApolloProvider client={client}>
<App/>
</ApolloProvider>
</React.StrictMode>,
document.getElementById('root')
);
// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();

1
client/src/react-app-env.d.ts vendored Normal file
View File

@ -0,0 +1 @@
/// <reference types="react-scripts" />

View File

@ -0,0 +1,15 @@
import { ReportHandler } from 'web-vitals';
const reportWebVitals = (onPerfEntry?: ReportHandler) => {
if (onPerfEntry && onPerfEntry instanceof Function) {
import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
getCLS(onPerfEntry);
getFID(onPerfEntry);
getFCP(onPerfEntry);
getLCP(onPerfEntry);
getTTFB(onPerfEntry);
});
}
};
export default reportWebVitals;

5
client/src/setupTests.ts Normal file
View File

@ -0,0 +1,5 @@
// jest-dom adds custom jest matchers for asserting on DOM nodes.
// allows you to do things like:
// expect(element).toHaveTextContent(/react/i)
// learn more: https://github.com/testing-library/jest-dom
import '@testing-library/jest-dom';

26
client/tsconfig.json Normal file
View File

@ -0,0 +1,26 @@
{
"compilerOptions": {
"target": "es5",
"lib": [
"dom",
"dom.iterable",
"esnext"
],
"allowJs": true,
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx"
},
"include": [
"src"
]
}

11721
client/yarn.lock Normal file

File diff suppressed because it is too large Load Diff

1
cubetiq-security-core Submodule

@ -0,0 +1 @@
Subproject commit 612bafe9af476798a40a536c82112c63c8627f4f

1
cubetiq-security-web Submodule

@ -0,0 +1 @@
Subproject commit 62d0e718e59af79db15871bde67affd8c38b15e5

37
dgs-graphql/.gitignore vendored Normal file
View File

@ -0,0 +1,37 @@
../HELP.md
.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
### VS Code ###
.vscode/

View File

@ -0,0 +1,43 @@
plugins {
id("org.springframework.boot")
id("io.spring.dependency-management")
kotlin("jvm")
kotlin("plugin.spring")
kotlin("plugin.jpa")
id("com.netflix.dgs.codegen")
}
dependencies {
api(project(":cubetiq-security-web"))
implementation(platform("com.netflix.graphql.dgs:graphql-dgs-platform-dependencies:6.0.0"))
implementation("com.netflix.graphql.dgs:graphql-dgs-spring-boot-starter")
runtimeOnly("com.netflix.graphql.dgs:graphql-dgs-subscriptions-websockets-autoconfigure")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-actuator")
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-webflux")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("io.projectreactor.kotlin:reactor-kotlin-extensions")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
developmentOnly("org.springframework.boot:spring-boot-devtools")
runtimeOnly("org.postgresql:postgresql")
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("io.projectreactor:reactor-test")
}
tasks.withType<Test> {
useJUnitPlatform()
}
tasks.withType<com.netflix.graphql.dgs.codegen.gradle.GenerateJavaTask> {
packageName = "com.cubetiqs.graphql.demo.dgmodel"
schemaPaths = mutableListOf("${projectDir}/src/main/resources/schema")
generateClient = true
}

View File

@ -0,0 +1,20 @@
package com.cubetiqs.graphql.demo
import com.cubetiqs.sp.security.util.PasswordUtils
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
import org.springframework.security.crypto.password.PasswordEncoder
@SpringBootApplication
class GraphqlDemoApplication @Autowired constructor(
passwordEncoder: PasswordEncoder,
) {
init {
PasswordUtils.setEncoder(passwordEncoder)
}
}
fun main(args: Array<String>) {
runApplication<GraphqlDemoApplication>(*args)
}

View File

@ -0,0 +1,6 @@
package com.cubetiqs.graphql.demo.config
import org.springframework.context.annotation.Configuration
@Configuration
class GraphQLConfig

View File

@ -1,8 +1,10 @@
package com.cubetiqs.graphql.demo.config package com.cubetiqs.graphql.demo.config
import org.springframework.context.annotation.Configuration import org.springframework.context.annotation.Configuration
import org.springframework.scheduling.annotation.EnableAsync
import org.springframework.transaction.annotation.EnableTransactionManagement import org.springframework.transaction.annotation.EnableTransactionManagement
@Configuration @Configuration
@EnableTransactionManagement @EnableTransactionManagement
@EnableAsync
class ManagementConfig class ManagementConfig

View File

@ -0,0 +1,17 @@
package com.cubetiqs.graphql.demo.config
import org.springframework.context.annotation.Configuration
import org.springframework.web.servlet.config.annotation.CorsRegistry
import org.springframework.web.servlet.config.annotation.EnableWebMvc
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer
@Configuration
@EnableWebMvc
class WebConfig : WebMvcConfigurer {
override fun addCorsMappings(corsRegistry: CorsRegistry) {
corsRegistry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("*")
.maxAge(3600)
}
}

View File

@ -0,0 +1,44 @@
package com.cubetiqs.graphql.demo.config
import com.cubetiqs.graphql.demo.security.AuthService
import com.cubetiqs.sp.security.EnableCubetiqSecurityModule
import com.cubetiqs.sp.security.jwt.CubetiqJwtProperties
import com.cubetiqs.sp.security.jwt.JwtSecurityConfigurer
import com.cubetiqs.sp.security.support.AuthenticationExceptionEntryPoint
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity
import org.springframework.security.config.annotation.web.builders.HttpSecurity
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity
import org.springframework.security.config.http.SessionCreationPolicy
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
import org.springframework.security.crypto.password.PasswordEncoder
import org.springframework.security.web.SecurityFilterChain
@Configuration
@EnableWebSecurity
@EnableMethodSecurity(prePostEnabled = true)
@EnableCubetiqSecurityModule
class WebSecurityConfig @Autowired constructor(
private val authService: AuthService,
private val cubetiqJwtProperties: CubetiqJwtProperties,
) {
@Bean
fun passwordEncoder(): PasswordEncoder {
return BCryptPasswordEncoder(10)
}
@Bean
fun filterChain(http: HttpSecurity): SecurityFilterChain {
http.csrf().disable().sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
http.exceptionHandling().authenticationEntryPoint(AuthenticationExceptionEntryPoint())
http.apply(JwtSecurityConfigurer(authService, cubetiqJwtProperties))
http.authorizeHttpRequests().anyRequest().permitAll()
return http.build()
}
}

View File

@ -0,0 +1,8 @@
package com.cubetiqs.graphql.demo.context
import com.netflix.graphql.dgs.DgsComponent
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS)
@DgsComponent
annotation class GMutation

View File

@ -0,0 +1,8 @@
package com.cubetiqs.graphql.demo.context
import com.netflix.graphql.dgs.DgsComponent
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS)
@DgsComponent
annotation class GQuery

View File

@ -0,0 +1,8 @@
package com.cubetiqs.graphql.demo.context
import com.netflix.graphql.dgs.DgsComponent
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS)
@DgsComponent
annotation class GSubscription

View File

@ -2,8 +2,8 @@ package com.cubetiqs.graphql.demo.domain
import org.springframework.data.jpa.domain.support.AuditingEntityListener import org.springframework.data.jpa.domain.support.AuditingEntityListener
import java.io.Serializable import java.io.Serializable
import javax.persistence.EntityListeners import jakarta.persistence.EntityListeners
import javax.persistence.MappedSuperclass import jakarta.persistence.MappedSuperclass
@MappedSuperclass @MappedSuperclass
@EntityListeners(AuditingEntityListener::class) @EntityListeners(AuditingEntityListener::class)

View File

@ -8,7 +8,7 @@ import org.springframework.data.annotation.CreatedDate
import org.springframework.data.annotation.LastModifiedDate import org.springframework.data.annotation.LastModifiedDate
import java.math.BigDecimal import java.math.BigDecimal
import java.util.* import java.util.*
import javax.persistence.* import jakarta.persistence.*
@Entity @Entity
@Table(name = "accounts", indexes = [ @Table(name = "accounts", indexes = [

View File

@ -1,9 +1,9 @@
package com.cubetiqs.graphql.demo.domain.account package com.cubetiqs.graphql.demo.domain.account
import java.util.* import java.util.*
import javax.persistence.PostPersist import jakarta.persistence.PostPersist
import javax.persistence.PrePersist import jakarta.persistence.PrePersist
import javax.persistence.PreUpdate import jakarta.persistence.PreUpdate
class AccountEntityListener { class AccountEntityListener {
@PrePersist @PrePersist

View File

@ -7,7 +7,7 @@ import org.hibernate.Hibernate
import org.springframework.data.annotation.CreatedDate import org.springframework.data.annotation.CreatedDate
import org.springframework.data.annotation.LastModifiedDate import org.springframework.data.annotation.LastModifiedDate
import java.util.* import java.util.*
import javax.persistence.* import jakarta.persistence.*
@Entity @Entity
@Table( @Table(

View File

@ -1,8 +1,8 @@
package com.cubetiqs.graphql.demo.domain.user package com.cubetiqs.graphql.demo.domain.user
import java.util.* import java.util.*
import javax.persistence.PrePersist import jakarta.persistence.PrePersist
import javax.persistence.PreUpdate import jakarta.persistence.PreUpdate
class UserEntityListener { class UserEntityListener {
@PrePersist @PrePersist

View File

@ -0,0 +1,13 @@
package com.cubetiqs.graphql.demo.repository
import com.cubetiqs.graphql.demo.domain.account.Account
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.scheduling.annotation.Async
import org.springframework.stereotype.Repository
import java.util.concurrent.CompletableFuture
@Repository
interface AccountRepository : JpaRepository<Account, Long> {
@Async
fun readAllBy(): CompletableFuture<Collection<Account>>
}

View File

@ -6,6 +6,7 @@ import org.springframework.data.domain.Pageable
import org.springframework.data.jpa.repository.JpaRepository import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.data.jpa.repository.Query import org.springframework.data.jpa.repository.Query
import org.springframework.stereotype.Repository import org.springframework.stereotype.Repository
import java.util.*
@Repository @Repository
interface UserRepository : JpaRepository<User, Long> { interface UserRepository : JpaRepository<User, Long> {
@ -14,4 +15,7 @@ interface UserRepository : JpaRepository<User, Long> {
@Query("select (count(u) > 0) from User u where u.username = ?1") @Query("select (count(u) > 0) from User u where u.username = ?1")
fun existsAllByUsername(username: String): Boolean fun existsAllByUsername(username: String): Boolean
@Query("select u from User u where u.username = ?1")
fun queryByUsername(username: String): Optional<User>
} }

View File

@ -1,25 +1,31 @@
package com.cubetiqs.graphql.demo.resolver.mutation package com.cubetiqs.graphql.demo.resolver.mutation
import com.cubetiqs.graphql.demo.context.GMutation import com.cubetiqs.graphql.demo.context.GMutation
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.cubetiqs.graphql.demo.domain.account.Account import com.cubetiqs.graphql.demo.domain.account.Account
import com.cubetiqs.graphql.demo.domain.account.AccountInput import com.cubetiqs.graphql.demo.domain.account.AccountInput
import com.cubetiqs.graphql.demo.domain.account.AccountMapper import com.cubetiqs.graphql.demo.domain.account.AccountMapper
import com.cubetiqs.graphql.demo.repository.AccountRepository import com.cubetiqs.graphql.demo.repository.AccountRepository
import com.cubetiqs.graphql.demo.repository.UserRepository import com.cubetiqs.graphql.demo.repository.UserRepository
import graphql.kickstart.tools.GraphQLMutationResolver import com.netflix.graphql.dgs.DgsMutation
import org.springframework.beans.factory.annotation.Autowired import org.springframework.beans.factory.annotation.Autowired
import org.springframework.transaction.annotation.Propagation import org.springframework.transaction.annotation.Propagation
import org.springframework.transaction.annotation.Transactional import org.springframework.transaction.annotation.Transactional
@GMutation @GMutation
class AccountMutationResolver @Autowired constructor( class AccountMutationResolver {
private val accountRepository: AccountRepository, @Autowired
private val userRepository: UserRepository, private lateinit var accountRepository: AccountRepository
) : GraphQLMutationResolver {
@Autowired
private lateinit var userRepository: UserRepository
@DgsMutation(field = DgsConstants.MUTATION.OpenAccount)
@Transactional(propagation = Propagation.REQUIRES_NEW) @Transactional(propagation = Propagation.REQUIRES_NEW)
fun openAccount(input: AccountInput): Account { fun openAccount(input: AccountInput): Account {
val account = AccountMapper.fromInputToAccount(input) val account = AccountMapper.fromInputToAccount(input)
val user = userRepository.findById(input.userId ?: 0).orElse(null) ?: throw Exception("User not found to open an account!") val user = userRepository.findById(input.userId ?: 0).orElse(null)
?: throw Exception("User not found to open an account!")
account.user = user account.user = user
return accountRepository.save(account) return accountRepository.save(account)
} }

View File

@ -0,0 +1,25 @@
package com.cubetiqs.graphql.demo.resolver.mutation
import com.cubetiqs.graphql.demo.context.GMutation
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.cubetiqs.graphql.demo.dgmodel.types.LoginResponse
import com.cubetiqs.graphql.demo.security.AuthService
import com.cubetiqs.sp.security.jwt.util.JwtTokenUtils
import com.netflix.graphql.dgs.DgsMutation
import org.springframework.beans.factory.annotation.Autowired
@GMutation
class LoginMutationResolver {
@Autowired
private lateinit var authService: AuthService
@DgsMutation(field = DgsConstants.MUTATION.Login)
fun login(username: String, password: String): LoginResponse {
val auth = authService.login(username, password)
val token = JwtTokenUtils.createTokens(auth)
return LoginResponse(
accessToken = token.accessToken,
refreshToken = token.refreshToken,
)
}
}

View File

@ -1,11 +1,15 @@
package com.cubetiqs.graphql.demo.resolver.mutation package com.cubetiqs.graphql.demo.resolver.mutation
import com.cubetiqs.graphql.demo.context.GMutation import com.cubetiqs.graphql.demo.context.GMutation
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.cubetiqs.graphql.demo.dgmodel.types.UserChangePasswordInput
import com.cubetiqs.graphql.demo.domain.user.User import com.cubetiqs.graphql.demo.domain.user.User
import com.cubetiqs.graphql.demo.domain.user.UserInput import com.cubetiqs.graphql.demo.domain.user.UserInput
import com.cubetiqs.graphql.demo.domain.user.UserMapper import com.cubetiqs.graphql.demo.domain.user.UserMapper
import com.cubetiqs.graphql.demo.repository.UserRepository import com.cubetiqs.graphql.demo.repository.UserRepository
import graphql.kickstart.tools.GraphQLMutationResolver import com.cubetiqs.sp.security.util.PasswordUtils
import com.netflix.graphql.dgs.DgsMutation
import com.netflix.graphql.dgs.exceptions.DgsEntityNotFoundException
import org.springframework.beans.factory.annotation.Autowired import org.springframework.beans.factory.annotation.Autowired
import org.springframework.transaction.annotation.Propagation import org.springframework.transaction.annotation.Propagation
import org.springframework.transaction.annotation.Transactional import org.springframework.transaction.annotation.Transactional
@ -13,12 +17,20 @@ import org.springframework.transaction.annotation.Transactional
@GMutation @GMutation
class UserMutationResolver @Autowired constructor( class UserMutationResolver @Autowired constructor(
private val userRepository: UserRepository, private val userRepository: UserRepository,
) : GraphQLMutationResolver { ) {
@DgsMutation(field = DgsConstants.MUTATION.CreateUser)
@Transactional(propagation = Propagation.REQUIRES_NEW) @Transactional(propagation = Propagation.REQUIRES_NEW)
fun createUser(input: UserInput): User { fun createUser(input: UserInput): User {
if (userRepository.existsAllByUsername(input.username ?: "")) throw Exception("Username has been already existed!") if (userRepository.existsAllByUsername(input.username ?: "")) throw DgsEntityNotFoundException("Username has been already existed!")
val user = UserMapper.fromInputToUser(input) val user = UserMapper.fromInputToUser(input)
return userRepository.save(user) return userRepository.save(user)
} }
@DgsMutation(field = DgsConstants.MUTATION.ChangeUserPassword)
fun changePassword(input: UserChangePasswordInput): User {
val user = userRepository.queryByUsername(input.username).orElse(null) ?: throw DgsEntityNotFoundException("User not found!")
user.password = PasswordUtils.encode(input.password)
return userRepository.save(user)
}
} }

View File

@ -1,16 +1,18 @@
package com.cubetiqs.graphql.demo.resolver.query package com.cubetiqs.graphql.demo.resolver.query
import com.cubetiqs.graphql.demo.context.GQuery import com.cubetiqs.graphql.demo.context.GQuery
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.cubetiqs.graphql.demo.domain.account.Account import com.cubetiqs.graphql.demo.domain.account.Account
import com.cubetiqs.graphql.demo.repository.AccountRepository import com.cubetiqs.graphql.demo.repository.AccountRepository
import graphql.kickstart.tools.GraphQLQueryResolver import com.netflix.graphql.dgs.DgsQuery
import org.springframework.beans.factory.annotation.Autowired import org.springframework.beans.factory.annotation.Autowired
import org.springframework.data.domain.Pageable import org.springframework.data.domain.Pageable
@GQuery @GQuery
class AccountQueryResolver @Autowired constructor( class AccountQueryResolver @Autowired constructor(
private val accountRepository: AccountRepository, private val accountRepository: AccountRepository,
) : GraphQLQueryResolver { ) {
@DgsQuery(field = DgsConstants.QUERY.FetchAccounts)
fun fetchAccounts(): Collection<Account> { fun fetchAccounts(): Collection<Account> {
val accounts = accountRepository.findAll(Pageable.unpaged()) val accounts = accountRepository.findAll(Pageable.unpaged())
return accounts.content return accounts.content

View File

@ -0,0 +1,22 @@
package com.cubetiqs.graphql.demo.resolver.query
import com.cubetiqs.graphql.demo.context.GQuery
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.netflix.graphql.dgs.DgsQuery
import org.springframework.security.access.prepost.PreAuthorize
import reactor.core.publisher.Mono
import java.util.concurrent.CompletableFuture
@GQuery
class HelloQueryResolver {
@DgsQuery(field = "hello")
fun hello(): CompletableFuture<String> {
return Mono.just("Hello Query...!").toFuture()
}
@PreAuthorize("hasAnyRole('ADMIN')")
@DgsQuery(field = DgsConstants.QUERY.HelloByName)
fun helloByName(name: String): CompletableFuture<String> {
return Mono.just("Hello $name...!").toFuture()
}
}

View File

@ -1,16 +1,18 @@
package com.cubetiqs.graphql.demo.resolver.query package com.cubetiqs.graphql.demo.resolver.query
import com.cubetiqs.graphql.demo.context.GQuery import com.cubetiqs.graphql.demo.context.GQuery
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
import com.cubetiqs.graphql.demo.domain.user.User import com.cubetiqs.graphql.demo.domain.user.User
import com.cubetiqs.graphql.demo.repository.UserRepository import com.cubetiqs.graphql.demo.repository.UserRepository
import graphql.kickstart.tools.GraphQLQueryResolver import com.netflix.graphql.dgs.DgsQuery
import org.springframework.beans.factory.annotation.Autowired import org.springframework.beans.factory.annotation.Autowired
import org.springframework.data.domain.Pageable import org.springframework.data.domain.Pageable
@GQuery @GQuery
class UserQueryResolver @Autowired constructor( class UserQueryResolver @Autowired constructor(
private val userRepository: UserRepository, private val userRepository: UserRepository,
) : GraphQLQueryResolver { ) {
@DgsQuery(field = DgsConstants.QUERY.FetchUsers)
fun fetchUsers(): Collection<User> { fun fetchUsers(): Collection<User> {
val users = userRepository.queryAllByEnabledIsTrue(Pageable.unpaged()) val users = userRepository.queryAllByEnabledIsTrue(Pageable.unpaged())
return users.content return users.content

View File

@ -0,0 +1,34 @@
package com.cubetiqs.graphql.demo.resolver.subscription
import com.cubetiqs.graphql.demo.context.GSubscription
import com.cubetiqs.graphql.demo.domain.account.Account
import com.cubetiqs.graphql.demo.repository.AccountRepository
import com.netflix.graphql.dgs.DgsSubscription
import graphql.schema.DataFetchingEnvironment
import kotlinx.coroutines.reactor.awaitSingle
import org.reactivestreams.Publisher
import org.springframework.beans.factory.annotation.Autowired
import reactor.core.publisher.Flux
import reactor.core.publisher.Mono
import reactor.kotlin.core.publisher.toFlux
import reactor.kotlin.core.publisher.toMono
import java.time.Duration
@GSubscription
class HelloSubscriptionResolver {
@Autowired
private lateinit var accountRepository: AccountRepository
@DgsSubscription(field = "hello")
fun hello(env: DataFetchingEnvironment): Publisher<Int> {
return Flux.range(1, 10).delayElements(Duration.ofSeconds(1))
}
@DgsSubscription(field = "fetchAccounts")
fun fetchAccounts(env: DataFetchingEnvironment): Publisher<Collection<Account>> {
return Flux.generate<Collection<Account>?> { sink ->
sink.next(accountRepository.findAll())
}.delayElements(Duration.ofSeconds(1))
// return Mono.fromFuture(accounts).toFlux().delayElements(Duration.ofSeconds(1))
}
}

View File

@ -0,0 +1,65 @@
package com.cubetiqs.graphql.demo.security
import com.cubetiqs.graphql.demo.domain.user.User
import com.cubetiqs.sp.security.jwt.util.JwtTokenUtils
import com.cubetiqs.sp.security.util.PasswordUtils
import org.springframework.security.core.GrantedAuthority
import org.springframework.security.core.authority.SimpleGrantedAuthority
import org.springframework.security.core.userdetails.UserDetails
data class AuthDetails(
private var code: String? = null,
private var name: String? = null,
private var username: String? = null,
private var password: String? = null,
private var authorities: Collection<String>? = null,
private var enabled: Boolean? = null,
) : UserDetails {
override fun getAuthorities(): MutableCollection<out GrantedAuthority> {
return authorities?.map { SimpleGrantedAuthority(it) }?.toMutableList() ?: mutableListOf(
SimpleGrantedAuthority(
"USER"
)
)
}
override fun getPassword(): String {
return password ?: ""
}
override fun getUsername(): String {
return username ?: ""
}
override fun isAccountNonExpired(): Boolean {
return true
}
override fun isAccountNonLocked(): Boolean {
return true
}
override fun isCredentialsNonExpired(): Boolean {
return true
}
override fun isEnabled(): Boolean {
return enabled ?: false
}
fun isPasswordValid(password: String): Boolean {
return PasswordUtils.matches(password, this.getPassword())
}
companion object {
fun fromUser(user: User): AuthDetails {
return AuthDetails(
code = user.code,
name = user.name,
username = user.username,
password = user.password,
enabled = user.enabled,
)
}
}
}

View File

@ -0,0 +1,32 @@
package com.cubetiqs.graphql.demo.security
import com.cubetiqs.graphql.demo.repository.UserRepository
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.security.access.AccessDeniedException
import org.springframework.security.core.userdetails.UserDetails
import org.springframework.security.core.userdetails.UserDetailsService
import org.springframework.stereotype.Service
@Service
class AuthService : UserDetailsService {
@Autowired
private lateinit var userRepository: UserRepository
private fun findAuthDetailsByUsername(username: String): AuthDetails {
val user = userRepository.queryByUsername(username).orElse(null) ?: throw Exception("User not found!")
return AuthDetails.fromUser(user)
}
override fun loadUserByUsername(username: String?): UserDetails {
return findAuthDetailsByUsername(username ?: "")
}
fun login(username: String, password: String): AuthDetails {
val auth = findAuthDetailsByUsername(username)
if (auth.isPasswordValid(password)) {
return auth
} else {
throw AccessDeniedException("Username and password is incorrect!")
}
}
}

View File

@ -0,0 +1 @@
application-local.yml

View File

@ -3,6 +3,8 @@ server:
# Spring Boot # Spring Boot
spring: spring:
profiles:
active: ${APP_PROFILE:}
datasource: datasource:
url: jdbc:postgresql://${DB_HOST:localhost}:5432/${DB_NAME:graphql-demo} url: jdbc:postgresql://${DB_HOST:localhost}:5432/${DB_NAME:graphql-demo}
username: ${DB_USER:your-username} username: ${DB_USER:your-username}
@ -17,7 +19,8 @@ spring:
properties: properties:
hibernate: hibernate:
enable_lazy_load_no_trans: ${HIBERNATE_LAZY_NO_TRANS:true} enable_lazy_load_no_trans: ${HIBERNATE_LAZY_NO_TRANS:true}
main:
allow-bean-definition-overriding: true
# Spring Boot Actuator # Spring Boot Actuator
management: management:
endpoints: endpoints:
@ -25,15 +28,9 @@ management:
exposure: exposure:
include: health,info,metrics include: health,info,metrics
# GraphQL Voyager # DGS GraphQL
voyager: dgs:
graphql:
graphiql:
enabled: true enabled: true
cdn: path: /graphiql
enabled: false
# GraphQL Playground
graphql:
playground:
enabled: true
cdn:
enabled: false

View File

@ -0,0 +1,26 @@
enum AccountType {
BASIC
PREMIUM
BUSINESS
}
enum AccountCurrency {
USD
KHR
}
type Account {
id: ID
code: String
balance: Float
currentBalance: Float
type: AccountType
currency: AccountCurrency
user: User!
}
input AccountInput {
userId: Int
type: AccountType
currency: AccountCurrency
}

View File

@ -0,0 +1,16 @@
input ExpenseFilter {
isIncome: Boolean
}
type Expense {
id: ID
description: String
amount: Int
isIncome: Boolean
}
type ExpensePage {
list: [Expense]
totalPages: Int
currentPage: Int
}

View File

@ -0,0 +1,26 @@
type Query {
hello: String
helloByName(name: String!): String
fetchUsers: [User]!
fetchAccounts: [Account]!
fetchExpenses(filter: ExpenseFilter, pageNumber: Int, pageSize: Int) : ExpensePage
}
type Subscription {
hello: Int
fetchAccounts: [Account]
}
type Mutation {
login(username: String!, password: String!): LoginResponse
createUser(input: UserInput): User!
changeUserPassword(input: UserChangePasswordInput): User!
openAccount(input: AccountInput): Account!
}

View File

@ -0,0 +1,24 @@
type User {
id: ID
code: String
username: String
name: String
enabled: Boolean
}
input UserInput {
username: String
password: String
name: String
enabled: Boolean
}
type LoginResponse {
accessToken: String
refreshToken: String
}
input UserChangePasswordInput {
username: String!
password: String!
}

View File

@ -0,0 +1,55 @@
package com.cubetiqs.graphql.demo
import com.cubetiqs.graphql.demo.resolver.subscription.HelloSubscriptionResolver
import com.netflix.graphql.dgs.DgsQueryExecutor
import com.netflix.graphql.dgs.autoconfig.DgsAutoConfiguration
import graphql.ExecutionResult
import org.junit.jupiter.api.Test
import org.reactivestreams.Publisher
import org.reactivestreams.Subscriber
import org.reactivestreams.Subscription
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.test.context.SpringBootTest
@SpringBootTest(
classes = [
DgsAutoConfiguration::class,
HelloSubscriptionResolver::class,
]
)
class GraphqlDemoApplicationTests {
@Autowired
lateinit var dgsQueryExecutor: DgsQueryExecutor
@Test
fun helloSubscription() {
dgsQueryExecutor.execute(
"""
subscription {
hello
}
""".trimIndent()
)
.getData<Publisher<ExecutionResult>>()
.subscribe(object : Subscriber<ExecutionResult> {
override fun onSubscribe(s: Subscription) {
s.request(2)
}
override fun onNext(t: ExecutionResult) {
println(t.getData<Any?>())
}
override fun onError(t: Throwable?) {
}
override fun onComplete() {
println("Hello World")
}
}
)
}
}

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

6
renovate.json Normal file
View File

@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base"
]
}

View File

@ -1,8 +1,3 @@
pluginManagement { rootProject.name = "spring-graphql-demo"
repositories {
maven { url = uri("https://repo.spring.io/milestone") } include("cubetiq-security-core", "cubetiq-security-web", "dgs-graphql")
maven { url = uri("https://repo.spring.io/snapshot") }
gradlePluginPortal()
}
}
rootProject.name = "graphql-demo"

View File

@ -1,11 +0,0 @@
package com.cubetiqs.graphql.demo
import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
@SpringBootApplication
class GraphqlDemoApplication
fun main(args: Array<String>) {
runApplication<GraphqlDemoApplication>(*args)
}

View File

@ -1,15 +0,0 @@
package com.cubetiqs.graphql.demo.config
import graphql.scalars.ExtendedScalars
import graphql.schema.idl.RuntimeWiring
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
@Configuration
class GraphQLConfig {
@Bean
fun extendsScalars(): RuntimeWiring.Builder {
return RuntimeWiring.newRuntimeWiring()
.scalar(ExtendedScalars.DateTime)
}
}

View File

@ -1,12 +0,0 @@
package com.cubetiqs.graphql.demo.context
import org.springframework.core.annotation.AliasFor
import org.springframework.stereotype.Component
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS)
@Component
annotation class GMutation(
@get:AliasFor(annotation = Component::class)
val value: String = "",
)

View File

@ -1,12 +0,0 @@
package com.cubetiqs.graphql.demo.context
import org.springframework.core.annotation.AliasFor
import org.springframework.stereotype.Component
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.CLASS)
@Component
annotation class GQuery(
@get:AliasFor(annotation = Component::class)
val value: String = "",
)

View File

@ -1,8 +0,0 @@
package com.cubetiqs.graphql.demo.repository
import com.cubetiqs.graphql.demo.domain.account.Account
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Repository
@Repository
interface AccountRepository : JpaRepository<Account, Long>

View File

@ -1,13 +0,0 @@
package com.cubetiqs.graphql.demo.resolver.query
import com.cubetiqs.graphql.demo.context.GQuery
import graphql.kickstart.tools.GraphQLQueryResolver
import reactor.core.publisher.Mono
import java.util.concurrent.CompletableFuture
@GQuery
class HelloQueryResolver : GraphQLQueryResolver {
fun hello(): CompletableFuture<String> {
return Mono.just("Hello Query...!").toFuture()
}
}

View File

@ -1,15 +0,0 @@
package com.cubetiqs.graphql.demo.resolver.subscription
import graphql.kickstart.tools.GraphQLSubscriptionResolver
import graphql.schema.DataFetchingEnvironment
import org.reactivestreams.Publisher
import org.springframework.stereotype.Service
import reactor.core.publisher.Flux
import java.time.Duration
@Service
class HelloSubscriptionResolver : GraphQLSubscriptionResolver {
fun hello(env: DataFetchingEnvironment): Publisher<Int> {
return Flux.range(1, 10).delayElements(Duration.ofSeconds(1))
}
}

View File

@ -1,59 +0,0 @@
enum AccountType {
BASIC
PREMIUM
BUSINESS
}
enum AccountCurrency {
USD
KHR
}
type User {
id: ID
code: String
username: String
name: String
enabled: Boolean
}
type Account {
id: ID
code: String
balance: Float
currentBalance: Float
type: AccountType
currency: AccountCurrency
user: User!
}
input UserInput {
username: String
password: String
name: String
enabled: Boolean
}
input AccountInput {
userId: Int
type: AccountType
currency: AccountCurrency
}
type Query {
hello: String
fetchUsers: [User]!
fetchAccounts: [Account]!
}
type Subscription {
hello: Int
}
type Mutation {
createUser(input: UserInput): User!
openAccount(input: AccountInput): Account!
}

View File

@ -1,13 +0,0 @@
package com.cubetiqs.graphql.demo
import org.junit.jupiter.api.Test
import org.springframework.boot.test.context.SpringBootTest
@SpringBootTest
class GraphqlDemoApplicationTests {
@Test
fun contextLoads() {
}
}