@pautena/react-design-system 0.1.4 → 0.2.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/dist/cjs/index.js +2 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/generators/model-router/screens/add-screen.d.ts +1 -1
- package/dist/cjs/types/generators/model-router/screens/list-screen.d.ts +1 -1
- package/dist/cjs/types/generators/model-router/screens/screens.types.d.ts +20 -0
- package/dist/cjs/types/generators/model-router/screens/update-screen.d.ts +1 -1
- package/dist/cjs/types/index.d.ts +1 -0
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/generators/model-router/screens/add-screen.d.ts +1 -1
- package/dist/esm/types/generators/model-router/screens/list-screen.d.ts +1 -1
- package/dist/esm/types/generators/model-router/screens/screens.types.d.ts +20 -0
- package/dist/esm/types/generators/model-router/screens/update-screen.d.ts +1 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/index.d.ts +52 -3
- package/package.json +1 -1
- package/src/components/header/header.test.tsx +2 -12
- package/src/components/tab/tab-card/tab-card.tsx +2 -2
- package/src/components/table-list/table-list.test.tsx +8 -1
- package/src/components/table-list/table-list.tsx +3 -3
- package/src/generators/model-router/model-router.test.tsx +171 -6
- package/src/generators/model-router/model-router.tsx +4 -3
- package/src/generators/model-router/screens/add-screen.tsx +2 -1
- package/src/generators/model-router/screens/list-screen.tsx +41 -26
- package/src/generators/model-router/screens/screens.types.ts +25 -0
- package/src/generators/model-router/screens/update-screen.tsx +2 -1
- package/src/generators/model-router/stories/list-screen.stories.tsx +51 -0
- package/src/generators/model-router/stories/model-router.stories.tsx +12 -0
- package/src/index.ts +1 -0
- package/src/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.stories.tsx +1 -1
- package/src/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.tsx +1 -1
|
@@ -10,4 +10,29 @@ export interface BaseScreenProps {
|
|
|
10
10
|
* Structure that represents the fields of the model
|
|
11
11
|
*/
|
|
12
12
|
model: Model;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Path to attach before each internal ModelRouter path
|
|
16
|
+
*/
|
|
17
|
+
basePath?: string;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* If true delete features are enabled
|
|
21
|
+
*/
|
|
22
|
+
deleteFeature?: boolean;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* If true update features are enabled
|
|
26
|
+
*/
|
|
27
|
+
updateFeature?: boolean;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* If true add features are enabled
|
|
31
|
+
*/
|
|
32
|
+
addFeature?: boolean;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* If true details features are enabled
|
|
36
|
+
*/
|
|
37
|
+
detailsFeature?: boolean;
|
|
13
38
|
}
|
|
@@ -39,6 +39,7 @@ export interface UpdateScreenProps<T extends BasicModelInstance> extends BaseScr
|
|
|
39
39
|
export const UpdateScreen = <T extends BasicModelInstance>({
|
|
40
40
|
model,
|
|
41
41
|
modelName,
|
|
42
|
+
basePath = "",
|
|
42
43
|
submitUpdateItemRequest,
|
|
43
44
|
updateItemRequest,
|
|
44
45
|
updateItem,
|
|
@@ -61,7 +62,7 @@ export const UpdateScreen = <T extends BasicModelInstance>({
|
|
|
61
62
|
message: `The item ${id} has been updated successfully`,
|
|
62
63
|
severity: "success",
|
|
63
64
|
});
|
|
64
|
-
navigate(
|
|
65
|
+
navigate(`${basePath}/`);
|
|
65
66
|
}
|
|
66
67
|
}, [submitUpdateItemRequest.success]);
|
|
67
68
|
|
|
@@ -43,3 +43,54 @@ List.args = {
|
|
|
43
43
|
listRequest: IdleRequest,
|
|
44
44
|
deleteRequest: IdleRequest,
|
|
45
45
|
};
|
|
46
|
+
|
|
47
|
+
export const WithoutDeleteFeature = Template.bind({});
|
|
48
|
+
WithoutDeleteFeature.args = {
|
|
49
|
+
modelName: "Items",
|
|
50
|
+
model: mockModel,
|
|
51
|
+
listData: data,
|
|
52
|
+
listRequest: IdleRequest,
|
|
53
|
+
deleteRequest: IdleRequest,
|
|
54
|
+
deleteFeature: false,
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export const WithoutUpdateFeature = Template.bind({});
|
|
58
|
+
WithoutUpdateFeature.args = {
|
|
59
|
+
modelName: "Items",
|
|
60
|
+
model: mockModel,
|
|
61
|
+
listData: data,
|
|
62
|
+
listRequest: IdleRequest,
|
|
63
|
+
deleteRequest: IdleRequest,
|
|
64
|
+
updateFeature: false,
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
export const WithoutDeleteAndUpdateFeature = Template.bind({});
|
|
68
|
+
WithoutDeleteAndUpdateFeature.args = {
|
|
69
|
+
modelName: "Items",
|
|
70
|
+
model: mockModel,
|
|
71
|
+
listData: data,
|
|
72
|
+
listRequest: IdleRequest,
|
|
73
|
+
deleteRequest: IdleRequest,
|
|
74
|
+
deleteFeature: false,
|
|
75
|
+
updateFeature: false,
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export const WithoutAddFeature = Template.bind({});
|
|
79
|
+
WithoutAddFeature.args = {
|
|
80
|
+
modelName: "Items",
|
|
81
|
+
model: mockModel,
|
|
82
|
+
listData: data,
|
|
83
|
+
listRequest: IdleRequest,
|
|
84
|
+
deleteRequest: IdleRequest,
|
|
85
|
+
addFeature: false,
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
export const WithoutDetailsFeature = Template.bind({});
|
|
89
|
+
WithoutDetailsFeature.args = {
|
|
90
|
+
modelName: "Items",
|
|
91
|
+
model: mockModel,
|
|
92
|
+
listData: data,
|
|
93
|
+
listRequest: IdleRequest,
|
|
94
|
+
deleteRequest: IdleRequest,
|
|
95
|
+
detailsFeature: false,
|
|
96
|
+
};
|
|
@@ -20,6 +20,10 @@ import {
|
|
|
20
20
|
interface DummyModelRouterProps {
|
|
21
21
|
requestTimeout: number;
|
|
22
22
|
initialData: MockInstance[];
|
|
23
|
+
deleteFeature?: boolean;
|
|
24
|
+
updateFeature?: boolean;
|
|
25
|
+
addFeature?: boolean;
|
|
26
|
+
detailsFeature?: boolean;
|
|
23
27
|
onRequestListAction: HandlerFunction;
|
|
24
28
|
onSubmitNewItemAction: HandlerFunction;
|
|
25
29
|
onRequestItem: HandlerFunction;
|
|
@@ -32,6 +36,10 @@ export const DummyModelRouter = (args: DummyModelRouterProps) => {
|
|
|
32
36
|
const {
|
|
33
37
|
requestTimeout,
|
|
34
38
|
initialData,
|
|
39
|
+
deleteFeature = true,
|
|
40
|
+
updateFeature = true,
|
|
41
|
+
addFeature = true,
|
|
42
|
+
detailsFeature = true,
|
|
35
43
|
onRequestListAction,
|
|
36
44
|
onSubmitNewItemAction,
|
|
37
45
|
onRequestItem,
|
|
@@ -122,6 +130,10 @@ export const DummyModelRouter = (args: DummyModelRouterProps) => {
|
|
|
122
130
|
{...args}
|
|
123
131
|
modelName="Items"
|
|
124
132
|
model={mockModel}
|
|
133
|
+
deleteFeature={deleteFeature}
|
|
134
|
+
updateFeature={updateFeature}
|
|
135
|
+
addFeature={addFeature}
|
|
136
|
+
detailsFeature={detailsFeature}
|
|
125
137
|
onRequestList={handleRequestList}
|
|
126
138
|
listData={data}
|
|
127
139
|
listRequest={listRequestState}
|
package/src/index.ts
CHANGED
|
@@ -22,7 +22,7 @@ export const MiniDrawerStory = () => (
|
|
|
22
22
|
<DrawerContent nav={mockNav} />
|
|
23
23
|
</MiniDrawer>
|
|
24
24
|
<MiniAppBar title="Lorem ipsum" onClickSignOut={() => null} />
|
|
25
|
-
<ContentPlaceholder />
|
|
25
|
+
<ContentPlaceholder p={3} />
|
|
26
26
|
</AppBarWithDrawerLayout>
|
|
27
27
|
);
|
|
28
28
|
MiniDrawerStory.storyName = "Mini drawer";
|