@quenty/gameconfig 12.37.0 → 12.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [12.38.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/gameconfig@12.37.0...@quenty/gameconfig@12.38.0) (2026-01-16)
7
+
8
+
9
+ ### Features
10
+
11
+ * Add SimpleEnum package and interface, to simplify enum usage across Nevermore ([d3040d7](https://github.com/Quenty/NevermoreEngine/commit/d3040d7a07ae7b2586bb982399b401fe19f1eb3f))
12
+
13
+
14
+
15
+
16
+
6
17
  # [12.37.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/gameconfig@12.36.1...@quenty/gameconfig@12.37.0) (2026-01-13)
7
18
 
8
19
  **Note:** Version bump only for package @quenty/gameconfig
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/gameconfig",
3
- "version": "12.37.0",
3
+ "version": "12.38.0",
4
4
  "description": "Configuration service to specify Roblox badges, products, and other specific assets.",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -36,19 +36,20 @@
36
36
  "@quenty/binder": "14.28.0",
37
37
  "@quenty/brio": "14.23.0",
38
38
  "@quenty/canceltoken": "11.14.0",
39
- "@quenty/clienttranslator": "14.27.0",
40
- "@quenty/cmdrservice": "13.33.0",
39
+ "@quenty/clienttranslator": "14.28.0",
40
+ "@quenty/cmdrservice": "13.34.0",
41
+ "@quenty/enums": "1.1.0",
41
42
  "@quenty/instanceutils": "13.23.0",
42
43
  "@quenty/loader": "10.9.3",
43
44
  "@quenty/maid": "3.5.3",
44
45
  "@quenty/marketplaceutils": "11.14.0",
45
- "@quenty/observablecollection": "12.28.0",
46
+ "@quenty/observablecollection": "12.29.0",
46
47
  "@quenty/playerutils": "8.25.0",
47
48
  "@quenty/preferredparentutils": "4.4.2",
48
49
  "@quenty/promise": "10.13.0",
49
50
  "@quenty/pseudolocalize": "3.5.2",
50
51
  "@quenty/remotefunctionutils": "10.13.0",
51
- "@quenty/remoting": "12.24.0",
52
+ "@quenty/remoting": "12.25.0",
52
53
  "@quenty/rx": "13.22.0",
53
54
  "@quenty/rxbinderutils": "14.28.0",
54
55
  "@quenty/servicebag": "11.13.6",
@@ -57,5 +58,5 @@
57
58
  "@quenty/table": "3.9.2",
58
59
  "@quenty/valueobject": "13.24.0"
59
60
  },
60
- "gitHead": "fbe4f7a70d781c1b2dd62ec19aec1ce6ce2d742c"
61
+ "gitHead": "8d2e7927e4399b4297a04d474d29bdd85692051d"
61
62
  }
@@ -33,7 +33,7 @@ function GameConfig.new(obj: Instance, serviceBag: ServiceBag.ServiceBag): GameC
33
33
  self._serviceBag = assert(serviceBag, "No serviceBag")
34
34
  self._gameConfigBindersServer = self._serviceBag:GetService(GameConfigBindersServer)
35
35
 
36
- for _, assetType: any in GameConfigAssetTypes do
36
+ for _, assetType: any in GameConfigAssetTypes:GetValues() do
37
37
  GameConfigUtils.getOrCreateAssetFolder(self._obj, assetType)
38
38
  end
39
39
 
@@ -20,7 +20,7 @@ local pluralMap: { [GameConfigAssetTypes.GameConfigAssetType]: string } = {
20
20
  [GameConfigAssetTypes.MEMBERSHIP] = "memberships",
21
21
  }
22
22
 
23
- for _, item: any in GameConfigAssetTypes do
23
+ for _, item: any in GameConfigAssetTypes:GetValues() do
24
24
  assert(pluralMap[item], "Missing plural")
25
25
  end
26
26
 
@@ -31,7 +31,7 @@ end
31
31
  @return boolean
32
32
  ]=]
33
33
  function GameConfigAssetTypeUtils.isAssetType(assetType: any): boolean
34
- return type(assetType) == "string" and pluralMap[assetType :: any] ~= nil
34
+ return GameConfigAssetTypes:IsValue(assetType)
35
35
  end
36
36
 
37
37
  --[=[
@@ -5,7 +5,7 @@
5
5
 
6
6
  local require = require(script.Parent.loader).load(script)
7
7
 
8
- local Table = require("Table")
8
+ local SimpleEnum = require("SimpleEnum")
9
9
 
10
10
  export type GameConfigAssetType =
11
11
  "badge"
@@ -17,38 +17,27 @@ export type GameConfigAssetType =
17
17
  | "subscription"
18
18
  | "membership"
19
19
 
20
- export type GameConfigAssetTypes = {
21
- BADGE: "badge",
22
- PRODUCT: "product",
23
- PASS: "pass",
24
- ASSET: "asset",
25
- BUNDLE: "bundle",
26
- PLACE: "place",
27
- SUBSCRIPTION: "subscription",
28
- MEMBERSHIP: "membership",
29
- }
30
-
31
- return Table.readonly({
20
+ return SimpleEnum.new({
32
21
  --[=[
33
22
  Specifies the asset is of type badge
34
23
  @prop BADGE string
35
24
  @within GameConfigAssetTypes
36
25
  ]=]
37
- BADGE = "badge",
26
+ BADGE = "badge" :: "badge",
38
27
 
39
28
  --[=[
40
29
  Specifies the asset is of type product
41
30
  @prop PRODUCT string
42
31
  @within GameConfigAssetTypes
43
32
  ]=]
44
- PRODUCT = "product",
33
+ PRODUCT = "product" :: "product",
45
34
 
46
35
  --[=[
47
36
  Specifies the asset is of type pass
48
37
  @prop PASS string
49
38
  @within GameConfigAssetTypes
50
39
  ]=]
51
- PASS = "pass",
40
+ PASS = "pass" :: "pass",
52
41
 
53
42
  --[=[
54
43
  Specifies the asset is of type asset. This is basically anything in Roblox's asset id system.
@@ -57,7 +46,7 @@ return Table.readonly({
57
46
  @prop ASSET string
58
47
  @within GameConfigAssetTypes
59
48
  ]=]
60
- ASSET = "asset",
49
+ ASSET = "asset" :: "asset",
61
50
 
62
51
  --[=[
63
52
  Bundle asset type
@@ -65,26 +54,26 @@ return Table.readonly({
65
54
  @prop BUNDLE string
66
55
  @within GameConfigAssetTypes
67
56
  ]=]
68
- BUNDLE = "bundle",
57
+ BUNDLE = "bundle" :: "bundle",
69
58
 
70
59
  --[=[
71
60
  Specifies the asset is of type place
72
61
  @prop PLACE string
73
62
  @within GameConfigAssetTypes
74
63
  ]=]
75
- PLACE = "place",
64
+ PLACE = "place" :: "place",
76
65
 
77
66
  --[=[
78
67
  Specifies the asset is of type subscription
79
68
  @prop SUBSCRIPTION string
80
69
  @within GameConfigAssetTypes
81
70
  ]=]
82
- SUBSCRIPTION = "subscription",
71
+ SUBSCRIPTION = "subscription" :: "subscription",
83
72
 
84
73
  --[=[
85
74
  Specifies the asset is of type membership (Roblox Premium)
86
75
  @prop MEMBERSHIP string
87
76
  @within GameConfigAssetTypes
88
77
  ]=]
89
- MEMBERSHIP = "membership",
90
- } :: GameConfigAssetTypes)
78
+ MEMBERSHIP = "membership" :: "membership",
79
+ })