@rbxts/app-forge 0.6.0-alpha.44 → 0.6.0-alpha.45

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.
@@ -1,2 +1,2 @@
1
1
  import type Types from "./types";
2
- export declare function AppContainer(props: Types.NameProps & Types.MainProps): ScreenGui | Frame;
2
+ export declare function AppContainer(props: Types.Props.Name & Types.Props.Main): ScreenGui | Frame;
@@ -1,13 +1,13 @@
1
1
  import Vide from "@rbxts/vide";
2
2
  import type Types from "./types";
3
3
  import type AppForge from ".";
4
- export declare const AppRegistry: Map<string, Types.AppRegistryAny>;
5
- export declare function App<N extends AppNames>(props: Types.AppRegistryProps<N>): <T extends new (props: Types.MainProps) => Args>(constructor: T) => T;
4
+ export declare const AppRegistry: Map<string, Types.AppRegistry.Static>;
5
+ export declare function App<N extends AppNames>(props: Types.AppRegistry.Props<N>): <T extends new (props: Types.Props.Main) => Args>(constructor: T) => T;
6
6
  export declare abstract class Args {
7
7
  readonly forge: AppForge;
8
- readonly props: Types.ClassProps;
8
+ readonly props: Types.Props.Class;
9
9
  readonly name: AppNames;
10
10
  readonly source: Vide.Source<boolean>;
11
- constructor(props: Types.NameProps & Types.MainProps);
11
+ constructor(props: Types.Props.Name & Types.Props.Main);
12
12
  abstract render(): Vide.Node;
13
13
  }
@@ -2,4 +2,4 @@ import Vide from "@rbxts/vide";
2
2
  import type Types from "./types";
3
3
  import type AppForge from ".";
4
4
  export declare function createSource(name: AppNames, forge: AppForge): typeof Vide.source | undefined;
5
- export declare function Render(props: Types.NameProps & Types.MainProps): Vide.Node;
5
+ export declare function Render(props: Types.Props.Name & Types.Props.Main): Vide.Node;
@@ -10,7 +10,7 @@ export default class AppForge {
10
10
  open(name: AppNames): void;
11
11
  close(name: AppNames): void;
12
12
  toggle(name: AppNames): void;
13
- renderApp(props: Types.NameProps & Types.MainProps): ScreenGui | Frame;
14
- renderApps(props: Types.NameProps & Types.MainProps): (ScreenGui | Frame)[];
15
- renderAll(props: Types.MainProps): (ScreenGui | Frame)[];
13
+ renderApp(props: Types.Props.Name & Types.Props.Main): ScreenGui | Frame;
14
+ renderApps(props: Types.Props.Name & Types.Props.Main): (ScreenGui | Frame)[];
15
+ renderAll(props: Types.Props.Main): (ScreenGui | Frame)[];
16
16
  }
@@ -3,58 +3,62 @@ import type { Args } from "./decorator";
3
3
  import type AppForge from ".";
4
4
 
5
5
  declare namespace Types {
6
- type AppRegistryProps<N extends AppNames> = {
7
- name: N;
8
- visible?: boolean;
9
- rules?: Rules.All<N>;
10
- };
11
-
12
- type NameProps =
13
- | { name?: AppNames; names?: undefined }
14
- | { names?: AppNames[]; name?: undefined };
15
-
16
- type MainProps = {
17
- props: AppProps;
18
- forge: AppForge;
19
- config?: {
20
- px: {
21
- target?: GuiObject | Camera;
22
- resolution?: Vector2;
23
- minScale?: number;
6
+ namespace Props {
7
+ type Name = { name?: AppNames; names?: undefined } | { names?: AppNames[]; name?: undefined };
8
+
9
+ type Main = {
10
+ props: AppProps;
11
+ forge: AppForge;
12
+ config?: {
13
+ px: {
14
+ target?: GuiObject | Camera;
15
+ resolution?: Vector2;
16
+ minScale?: number;
17
+ };
24
18
  };
25
19
  };
26
- };
27
20
 
28
- type ClassProps = AppProps & {
29
- forge: AppForge;
30
- px: typeof import("@rbxts/loners-pretty-vide-utils").px;
31
- };
21
+ type Class = AppProps & {
22
+ forge: AppForge;
23
+ px: typeof import("@rbxts/loners-pretty-vide-utils").px;
24
+ };
25
+ }
32
26
 
33
- type AppRegistryAny = {
34
- constructor: new (props: Types.MainProps) => Args;
35
- visible?: boolean;
36
- rules?: {
37
- parent?: string;
38
- exclusiveGroup?: string;
27
+ namespace AppRegistry {
28
+ type Props<N extends AppNames> = {
29
+ name: N;
30
+ visible?: boolean;
31
+ rules?: Rules.Generic<N>;
39
32
  };
40
- };
41
33
 
42
- type AppRegistry<N extends AppNames = AppNames> = {
43
- constructor: new (props: MainProps) => Args;
44
- visible?: boolean;
45
- rules?: Rules.All<N>;
46
- };
34
+ type Static = {
35
+ constructor: new (props: Types.Props.Main) => Args;
36
+ visible?: boolean;
37
+ rules?: Rules.Static;
38
+ };
39
+
40
+ type Generic<N extends AppNames = AppNames> = {
41
+ constructor: new (props: Types.Props.Main) => Args;
42
+ visible?: boolean;
43
+ rules?: Rules.Generic<N>;
44
+ };
45
+ }
47
46
 
48
47
  namespace Rules {
49
- type All<N extends AppNames> = {
48
+ type Static = {
49
+ parent?: string;
50
+ exclusiveGroup?: string;
51
+ };
52
+
53
+ type Generic<N extends AppNames> = {
50
54
  parent?: Exclude<AppNames, N>;
51
55
  exclusiveGroup?: GroupNames;
52
56
  };
53
57
  }
54
58
  }
55
59
 
56
- export type NameProps = Types.NameProps;
57
- export type MainProps = Types.MainProps;
58
- export type ClassProps = Types.ClassProps;
60
+ export type NameProps = Types.Props.Name;
61
+ export type MainProps = Types.Props.Main;
62
+ export type ClassProps = Types.Props.Class;
59
63
 
60
64
  export default Types;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rbxts/app-forge",
3
- "version": "0.6.0-alpha.44",
3
+ "version": "0.6.0-alpha.45",
4
4
  "description": "An App Manager for Vide",
5
5
  "main": "out/init.lua",
6
6
  "types": "out/index.d.ts",