robbyson-frontend-library 0.0.1-rc1
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/components/accordion/accordion.interface.js +1 -0
- package/dist/components/assets/assets.interfaces.js +1 -0
- package/dist/components/badge/badge.interface.js +1 -0
- package/dist/components/balloon/balloon.interface.js +1 -0
- package/dist/components/base-component.prop.interface.js +1 -0
- package/dist/components/base-page.prop.interface.js +1 -0
- package/dist/components/base-test.prop.interface.js +1 -0
- package/dist/components/basic-button/basic-button.interface.js +1 -0
- package/dist/components/checkbox/checkbox.interface.js +1 -0
- package/dist/components/colors/colors.interfaces.js +1 -0
- package/dist/components/context-menu/context-menu.interface.js +1 -0
- package/dist/components/divider/divider.interface.js +1 -0
- package/dist/components/icon-button/icon-button.interface.js +1 -0
- package/dist/components/image-progress-graph/image-progress-graph.interface.js +1 -0
- package/dist/components/index.js +5 -0
- package/dist/components/menu.interface.js +1 -0
- package/dist/components/modal/modal.interface.js +1 -0
- package/dist/components/mood-button/mood-button.interface.js +1 -0
- package/dist/components/pages/base-app-page.component.js +46 -0
- package/dist/components/pages/base-app-page.styles.js +13 -0
- package/dist/components/pagination/pagination.interface.js +1 -0
- package/dist/components/profile-image/profile-image.interface.js +1 -0
- package/dist/components/progress-bar/progress-bar.interface.js +1 -0
- package/dist/components/progress-tracker/progress-tracker.interface.js +1 -0
- package/dist/components/radio-button/radio-button.interface.js +1 -0
- package/dist/components/scroll-box/scroll-box.interface.js +1 -0
- package/dist/components/search-input/search-input.interfaces.js +1 -0
- package/dist/components/select/select.interface.js +1 -0
- package/dist/components/sidebar/sidebar.interface.js +1 -0
- package/dist/components/snackbar/snackbar.interface.js +1 -0
- package/dist/components/speed-dial/speed-dial.interface.js +1 -0
- package/dist/components/spin-edit/spin-edit.interface.js +1 -0
- package/dist/components/switch/switch.interface.js +1 -0
- package/dist/components/tag-expand/tag-expand.interface.js +1 -0
- package/dist/components/tags/tags.interface.js +1 -0
- package/dist/components/text-field/text-field.interface.js +1 -0
- package/dist/components/timer/timer.interface.js +1 -0
- package/dist/components/toggle-icon-button/toggle-icon-button.interface.js +1 -0
- package/dist/components/tooltip/tooltip.interface.js +1 -0
- package/dist/components/transitions/transitions.interfaces.js +1 -0
- package/dist/components/typography/typography.interfaces.js +1 -0
- package/dist/components/upload/upload.interface.js +1 -0
- package/dist/constants/index.js +1 -0
- package/dist/constants/layout-dimensions.constants.js +10 -0
- package/dist/factories/base.factory.js +6 -0
- package/dist/factories/index.js +1 -0
- package/dist/factories/response.factory.js +77 -0
- package/dist/index.js +19 -0
- package/dist/ioc.js +18 -0
- package/dist/models/angel-friend-status.model.js +25 -0
- package/dist/models/base.repository.model.js +6 -0
- package/dist/models/result-level.model.js +24 -0
- package/dist/models/send-user-to-login.model.js +6 -0
- package/dist/models/term-of-use.model.js +24 -0
- package/dist/models/theme-base.js +44 -0
- package/dist/models/user-mirror.model.js +24 -0
- package/dist/models/user-session.model.js +24 -0
- package/dist/repositories/angel-friend.repository.interface.js +1 -0
- package/dist/repositories/authentication.repository.interface.js +1 -0
- package/dist/repositories/base.repository.js +185 -0
- package/dist/repositories/locale.repository.interface.js +1 -0
- package/dist/repositories/results.repository.interface.js +1 -0
- package/dist/repositories/terms-of-use.repository.interface.js +1 -0
- package/dist/repositories/theme.repository.interface.js +1 -0
- package/dist/repositories/user.repository.interface.js +1 -0
- package/dist/services/angel-friend.service.interface.js +1 -0
- package/dist/services/authentication.service.interface.js +1 -0
- package/dist/services/locale.service.interface.js +1 -0
- package/dist/services/results.service.interface.js +1 -0
- package/dist/services/terms-of-use.service.interface.js +1 -0
- package/dist/services/theme.service.interface.js +1 -0
- package/dist/services/user.service.interface.js +1 -0
- package/dist/states/index.js +3 -0
- package/dist/states/main-container/app.state.interface.js +2 -0
- package/dist/states/main-container/plataform.state.interface.js +1 -0
- package/dist/states/main-container/root-app.state.interface.js +1 -0
- package/dist/utils/build-error/buildError.util.interface.js +1 -0
- package/dist/utils/build-error/buildError.util.js +13 -0
- package/dist/utils/cache-control.js +121 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/query-params/index.js +34 -0
- package/dist/utils/robbyson-navigate.js +53 -0
- package/importComponents.js +113 -0
- package/index.d.ts +43 -0
- package/package.json +40 -0
- package/src/components/accordion/accordion.interface.ts +26 -0
- package/src/components/accordion/accordion.types.d.ts +9 -0
- package/src/components/accordion/index.d.ts +1 -0
- package/src/components/assets/assets.interfaces.tsx +5 -0
- package/src/components/assets/assets.types.d.ts +9 -0
- package/src/components/assets/index.d.ts +1 -0
- package/src/components/badge/badge.interface.ts +11 -0
- package/src/components/badge/badge.types.d.ts +9 -0
- package/src/components/badge/index.d.ts +1 -0
- package/src/components/balloon/balloon.interface.ts +14 -0
- package/src/components/balloon/balloon.types.d.ts +9 -0
- package/src/components/balloon/index.d.ts +1 -0
- package/src/components/base-component.prop.interface.tsx +4 -0
- package/src/components/base-page.prop.interface.tsx +4 -0
- package/src/components/base-test.prop.interface.tsx +3 -0
- package/src/components/basic-button/basic-button.interface.tsx +10 -0
- package/src/components/basic-button/basic-button.types.d.ts +9 -0
- package/src/components/basic-button/index.d.ts +1 -0
- package/src/components/checkbox/checkbox.interface.ts +8 -0
- package/src/components/checkbox/checkbox.types.d.ts +9 -0
- package/src/components/checkbox/index.d.ts +1 -0
- package/src/components/colors/colors.interfaces.tsx +5 -0
- package/src/components/colors/colors.types.d.ts +9 -0
- package/src/components/colors/index.d.ts +1 -0
- package/src/components/context-menu/context-menu.interface.ts +22 -0
- package/src/components/context-menu/context-menu.types.d.ts +9 -0
- package/src/components/context-menu/index.d.ts +1 -0
- package/src/components/divider/divider.interface.tsx +4 -0
- package/src/components/divider/divider.types.d.ts +9 -0
- package/src/components/divider/index.d.ts +1 -0
- package/src/components/icon-button/icon-button.interface.ts +7 -0
- package/src/components/icon-button/icon-button.types.d.ts +9 -0
- package/src/components/icon-button/index.d.ts +1 -0
- package/src/components/image-progress-graph/image-progress-graph.interface.ts +13 -0
- package/src/components/image-progress-graph/image-progress-graph.types.d.ts +9 -0
- package/src/components/image-progress-graph/index.d.ts +1 -0
- package/src/components/index.tsx +5 -0
- package/src/components/menu.interface.tsx +10 -0
- package/src/components/modal/index.d.ts +1 -0
- package/src/components/modal/modal.interface.ts +20 -0
- package/src/components/modal/modal.types.d.ts +10 -0
- package/src/components/mood-button/index.d.ts +1 -0
- package/src/components/mood-button/mood-button.interface.ts +10 -0
- package/src/components/mood-button/mood-button.types.d.ts +9 -0
- package/src/components/pages/base-app-page.component.tsx +65 -0
- package/src/components/pages/base-app-page.styles.ts +45 -0
- package/src/components/pagination/index.d.ts +1 -0
- package/src/components/pagination/pagination.interface.ts +14 -0
- package/src/components/pagination/pagination.types.d.ts +10 -0
- package/src/components/profile-image/index.d.ts +1 -0
- package/src/components/profile-image/profile-image.interface.ts +6 -0
- package/src/components/profile-image/profile-image.types.d.ts +9 -0
- package/src/components/progress-bar/index.d.ts +1 -0
- package/src/components/progress-bar/progress-bar.interface.tsx +8 -0
- package/src/components/progress-bar/progress-bar.types.d.ts +9 -0
- package/src/components/progress-tracker/index.d.ts +1 -0
- package/src/components/progress-tracker/progress-tracker.interface.tsx +6 -0
- package/src/components/progress-tracker/progress-tracker.types.d.ts +9 -0
- package/src/components/radio-button/index.d.ts +1 -0
- package/src/components/radio-button/radio-button.interface.ts +5 -0
- package/src/components/radio-button/radio-button.types.d.ts +9 -0
- package/src/components/scroll-box/index.d.ts +1 -0
- package/src/components/scroll-box/scroll-box.interface.ts +9 -0
- package/src/components/scroll-box/scroll-box.types.d.ts +9 -0
- package/src/components/search-input/index.d.ts +1 -0
- package/src/components/search-input/search-input.interfaces.ts +14 -0
- package/src/components/search-input/search-input.types.d.ts +9 -0
- package/src/components/select/index.d.ts +1 -0
- package/src/components/select/select.interface.tsx +18 -0
- package/src/components/select/select.types.d.ts +9 -0
- package/src/components/sidebar/index.d.ts +1 -0
- package/src/components/sidebar/sidebar.interface.ts +12 -0
- package/src/components/sidebar/sidebar.types.d.ts +9 -0
- package/src/components/snackbar/index.d.ts +1 -0
- package/src/components/snackbar/snackbar.interface.ts +16 -0
- package/src/components/snackbar/snackbar.types.d.ts +9 -0
- package/src/components/speed-dial/index.d.ts +1 -0
- package/src/components/speed-dial/speed-dial.interface.ts +16 -0
- package/src/components/speed-dial/speed-dial.types.d.ts +9 -0
- package/src/components/spin-edit/index.d.ts +1 -0
- package/src/components/spin-edit/spin-edit.interface.ts +12 -0
- package/src/components/spin-edit/spin-edit.types.d.ts +9 -0
- package/src/components/switch/index.d.ts +1 -0
- package/src/components/switch/switch.interface.ts +7 -0
- package/src/components/switch/switch.types.d.ts +9 -0
- package/src/components/tag-expand/index.d.ts +1 -0
- package/src/components/tag-expand/tag-expand.interface.ts +9 -0
- package/src/components/tag-expand/tag-expand.types.d.ts +9 -0
- package/src/components/tags/index.d.ts +1 -0
- package/src/components/tags/tags.interface.ts +16 -0
- package/src/components/tags/tags.types.d.ts +9 -0
- package/src/components/text-field/index.d.ts +1 -0
- package/src/components/text-field/text-field.interface.tsx +27 -0
- package/src/components/text-field/text-field.types.d.ts +9 -0
- package/src/components/timer/index.d.ts +1 -0
- package/src/components/timer/timer.interface.ts +12 -0
- package/src/components/timer/timer.types.d.ts +9 -0
- package/src/components/toggle-icon-button/index.d.ts +1 -0
- package/src/components/toggle-icon-button/toggle-icon-button.interface.ts +16 -0
- package/src/components/toggle-icon-button/toggle-icon-button.types.d.ts +9 -0
- package/src/components/tooltip/index.d.ts +1 -0
- package/src/components/tooltip/tooltip.interface.ts +21 -0
- package/src/components/tooltip/tooltip.types.d.ts +9 -0
- package/src/components/transitions/index.d.ts +1 -0
- package/src/components/transitions/transitions.interfaces.ts +5 -0
- package/src/components/transitions/transitions.types.d.ts +9 -0
- package/src/components/typography/index.d.ts +1 -0
- package/src/components/typography/typography.interfaces.tsx +5 -0
- package/src/components/typography/typography.types.d.ts +9 -0
- package/src/components/upload/index.d.ts +1 -0
- package/src/components/upload/upload.interface.tsx +20 -0
- package/src/components/upload/upload.types.d.ts +7 -0
- package/src/constants/index.ts +1 -0
- package/src/constants/layout-dimensions.constants.ts +6 -0
- package/src/factories/base.factory.ts +1 -0
- package/src/factories/index.ts +1 -0
- package/src/factories/response.factory.ts +79 -0
- package/src/index.ts +26 -0
- package/src/ioc.ts +18 -0
- package/src/models/angel-friend-status.model.ts +7 -0
- package/src/models/base.repository.model.ts +3 -0
- package/src/models/index.d.ts +7 -0
- package/src/models/result-level.model.ts +6 -0
- package/src/models/send-user-to-login.model.ts +10 -0
- package/src/models/term-of-use.model.ts +6 -0
- package/src/models/theme-base.ts +171 -0
- package/src/models/user-mirror.model.ts +10 -0
- package/src/models/user-session.model.ts +103 -0
- package/src/repositories/angel-friend.repository.interface.ts +5 -0
- package/src/repositories/authentication.repository.interface.ts +14 -0
- package/src/repositories/base.repository.tsx +128 -0
- package/src/repositories/index.d.ts +7 -0
- package/src/repositories/locale.repository.interface.ts +4 -0
- package/src/repositories/results.repository.interface.ts +5 -0
- package/src/repositories/terms-of-use.repository.interface.ts +6 -0
- package/src/repositories/theme.repository.interface.ts +5 -0
- package/src/repositories/user.repository.interface.ts +15 -0
- package/src/services/angel-friend.service.interface.ts +3 -0
- package/src/services/authentication.service.interface.ts +17 -0
- package/src/services/index.d.ts +7 -0
- package/src/services/locale.service.interface.ts +4 -0
- package/src/services/results.service.interface.ts +3 -0
- package/src/services/terms-of-use.service.interface.ts +7 -0
- package/src/services/theme.service.interface.ts +8 -0
- package/src/services/user.service.interface.ts +14 -0
- package/src/states/index.ts +3 -0
- package/src/states/main-container/app.state.interface.ts +7 -0
- package/src/states/main-container/plataform.state.interface.ts +5 -0
- package/src/states/main-container/root-app.state.interface.ts +15 -0
- package/src/utils/build-error/buildError.util.interface.ts +5 -0
- package/src/utils/build-error/buildError.util.ts +13 -0
- package/src/utils/cache-control.tsx +92 -0
- package/src/utils/index.ts +5 -0
- package/src/utils/query-params/index.ts +38 -0
- package/src/utils/robbyson-navigate.ts +76 -0
- package/tsconfig.json +30 -0
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "robbyson-frontend-library",
|
|
3
|
+
"version": "0.0.1-rc1",
|
|
4
|
+
"description": "Robbyson frontend Library",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": {
|
|
8
|
+
"name": "Robbyson Systems S/A",
|
|
9
|
+
"email": "contact@robbyson.com",
|
|
10
|
+
"url": "https://www.robbyson.com"
|
|
11
|
+
},
|
|
12
|
+
"scripts": {
|
|
13
|
+
"watch": "yarn clean && tsc -w",
|
|
14
|
+
"build:dev": "yarn clean && tsc --build",
|
|
15
|
+
"build:prod": "yarn clean && tsc",
|
|
16
|
+
"clean": "rm -rf dist",
|
|
17
|
+
"import-components": "node importComponents"
|
|
18
|
+
},
|
|
19
|
+
"devDependencies": {
|
|
20
|
+
"@types/axios": "^0.14.0",
|
|
21
|
+
"@types/crypto-js": "^4.1.1",
|
|
22
|
+
"@types/history": "^5.0.0",
|
|
23
|
+
"@types/react": "^18.0.27",
|
|
24
|
+
"@types/styled-components": "^5.1.26",
|
|
25
|
+
"styled-components": "^5.3.9",
|
|
26
|
+
"typescript": "^4.9.5"
|
|
27
|
+
},
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"axios": "^1.3.5",
|
|
30
|
+
"crypto-js": "^4.1.1",
|
|
31
|
+
"localforage": "^1.10.0",
|
|
32
|
+
"moment": "^2.29.4",
|
|
33
|
+
"react": "^18.2.0",
|
|
34
|
+
"react-inlinesvg": "^3.0.2",
|
|
35
|
+
"query-string": "^8.1.0",
|
|
36
|
+
"react-toastify": "^9.1.2",
|
|
37
|
+
"redux-micro-frontend": "^1.3.0",
|
|
38
|
+
"redux-persist": "^6.0.0"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
export interface IAccordionProps<T> extends IBaseComponentProp {
|
|
4
|
+
titleLocaleHandle?: string;
|
|
5
|
+
variant?: 'primary' | 'secondary';
|
|
6
|
+
options: IOptionsAccordion[];
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface IAccordionState {
|
|
10
|
+
options: IOptionsAccordion[];
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface IOptionsAccordion {
|
|
14
|
+
title: string;
|
|
15
|
+
choiseMode?: boolean;
|
|
16
|
+
isOpen?: boolean;
|
|
17
|
+
isCheckAll?: boolean;
|
|
18
|
+
isCheck?: boolean;
|
|
19
|
+
content: IOptionsContentAccordion[];
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface IOptionsContentAccordion {
|
|
23
|
+
text: string;
|
|
24
|
+
checked?: boolean;
|
|
25
|
+
isCheck?: boolean;
|
|
26
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/Accordion" {
|
|
5
|
+
import { IAccordionProps } from "robbyson-frontend-library";
|
|
6
|
+
const Accordion: React.ComponentType<IAccordionProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Accordion;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './accordion.interface';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/Assets' {
|
|
5
|
+
import { IAssetsProps } from "robbyson-frontend-library";
|
|
6
|
+
const Assets: React.ComponentType<IAssetsProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Assets;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './assets.interfaces';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IconHandle } from "../../models";
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
|
|
4
|
+
export interface IBadgeProps extends IBaseComponentProp {
|
|
5
|
+
value?: number;
|
|
6
|
+
type: 'icon' | 'number';
|
|
7
|
+
size: 'small' | 'normal'
|
|
8
|
+
iconHandle?: IconHandle;
|
|
9
|
+
onUpdate?(value:number):void;
|
|
10
|
+
color?: string;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './badge.interface';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
export interface IBalloonProps<T> extends React.HTMLAttributes<T>, IBaseComponentProp {
|
|
4
|
+
variant?:
|
|
5
|
+
| "right-top"
|
|
6
|
+
| "right-bottom"
|
|
7
|
+
| "bottom-right"
|
|
8
|
+
| "bottom-left"
|
|
9
|
+
| "left-top"
|
|
10
|
+
| "left-bottom";
|
|
11
|
+
width: string;
|
|
12
|
+
height: string;
|
|
13
|
+
titleLocaleHandle: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/Balloon" {
|
|
5
|
+
import { IBalloonProps } from "robbyson-frontend-library";
|
|
6
|
+
const Balloon: React.ComponentType<IBalloonProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Balloon;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './balloon.interface';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IconHandle } from "../../models";
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
export interface IBasicButtonProps<T> extends React.ButtonHTMLAttributes<T>, IBaseComponentProp {
|
|
4
|
+
iconAlign?: string;
|
|
5
|
+
hasIcon?: Boolean;
|
|
6
|
+
iconHandle?: IconHandle;
|
|
7
|
+
textLocaleHandle?: string;
|
|
8
|
+
variant: 'primary' | 'secondary' | 'tertiary'
|
|
9
|
+
shape?: 'round' | 'square'
|
|
10
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/BasicButton' {
|
|
5
|
+
import { IBasicButtonProps } from "robbyson-frontend-library";
|
|
6
|
+
const BasicButton: React.ComponentType<IBasicButtonProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default BasicButton;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './basic-button.interface';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
export interface ICheckboxProps<T> extends React.InputHTMLAttributes<T>, IBaseComponentProp {
|
|
4
|
+
indeterminate?: boolean;
|
|
5
|
+
labelLocaleHandle?: string;
|
|
6
|
+
infoTextLocaleHandle?: string;
|
|
7
|
+
id: string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/Checkbox' {
|
|
5
|
+
import { ICheckboxProps } from "robbyson-frontend-library";
|
|
6
|
+
const Checkbox: React.ComponentType<ICheckboxProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Checkbox;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkbox.interface';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/Colors' {
|
|
5
|
+
import { IColorsProps } from "robbyson-frontend-library";
|
|
6
|
+
const Colors: React.ComponentType<IColorsProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Colors;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './colors.interfaces';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
export interface IContextMenuProps extends IBaseComponentProp {
|
|
4
|
+
items: DefaultItem[] | CheckboxItem;
|
|
5
|
+
onClickItem: (key: string[]) => void;
|
|
6
|
+
selectedItemsKeys: string[];
|
|
7
|
+
className?: string;
|
|
8
|
+
children: React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface DefaultItem {
|
|
12
|
+
labelLocaleHandle: string;
|
|
13
|
+
key: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface CheckboxItem {
|
|
17
|
+
[titleLocaleHandle: string]: DefaultItem[];
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface IContextMenuState {
|
|
21
|
+
show: boolean;
|
|
22
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/ContextMenu' {
|
|
5
|
+
import { IContextMenuProps } from "robbyson-frontend-library";
|
|
6
|
+
const ContextMenu: React.ComponentType<IContextMenuProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default ContextMenu;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './context-menu.interface';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/Divider' {
|
|
5
|
+
import { IDividerProps } from "robbyson-frontend-library";
|
|
6
|
+
const Divider: React.ComponentType<IDividerProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default Divider;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './divider.interface';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IconHandle } from "../../models";
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
|
|
4
|
+
export interface IIconButtonProps<T> extends React.ButtonHTMLAttributes<T>, IBaseComponentProp {
|
|
5
|
+
iconHandle: IconHandle;
|
|
6
|
+
variant: "primary" | "secondary";
|
|
7
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/IconButton" {
|
|
5
|
+
import { IIconButtonProps } from "robbyson-frontend-library";
|
|
6
|
+
const IconButton: React.ComponentType<IIconButtonProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default IconButton;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './icon-button.interface';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IconHandle } from "../../models";
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
|
|
4
|
+
export interface IImageProgressGraphProps extends IBaseComponentProp {
|
|
5
|
+
value?: number;
|
|
6
|
+
goalValue?: number;
|
|
7
|
+
imagePath: string;
|
|
8
|
+
barColor?: string;
|
|
9
|
+
indicatorIcon?: IconHandle;
|
|
10
|
+
goalIcon?: IconHandle;
|
|
11
|
+
showGoalIcon?:boolean;
|
|
12
|
+
variant: 'simple' | 'general-level';
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/ImageProgressGraph' {
|
|
5
|
+
import { IImageProgressGraphProps } from "robbyson-frontend-library";
|
|
6
|
+
const ImageProgressGraph: React.ComponentType<IImageProgressGraphProps>;
|
|
7
|
+
|
|
8
|
+
export default ImageProgressGraph;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './image-progress-graph.interface';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './modal.interface';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
type ActionButton = {
|
|
4
|
+
titleLocaleHandle: string;
|
|
5
|
+
action: any;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface IModalState {
|
|
9
|
+
hidden:boolean;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
export interface IModalProps extends IBaseComponentProp {
|
|
14
|
+
children: any;
|
|
15
|
+
width?: number;
|
|
16
|
+
height?: number;
|
|
17
|
+
titleHandleLocale: string;
|
|
18
|
+
actionButtons?: ActionButton[];
|
|
19
|
+
exitOnOverlay?: boolean;
|
|
20
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/Modal" {
|
|
5
|
+
import { IModalProps } from "robbyson-frontend-library";
|
|
6
|
+
const Modal: React.ComponentType<IModalProps>;
|
|
7
|
+
|
|
8
|
+
export default Modal;
|
|
9
|
+
}
|
|
10
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './mood-button.interface';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
|
|
4
|
+
type IconHandleMoodButton = 'work-bold' | 'family-bold' | 'relationship-bold' | 'health-bold';
|
|
5
|
+
type SizeMoodButton = 'medium' | 'large';
|
|
6
|
+
|
|
7
|
+
export interface IMoodButtonProps<T> extends React.ButtonHTMLAttributes<T>, IBaseComponentProp {
|
|
8
|
+
iconHandle: IconHandleMoodButton;
|
|
9
|
+
size?: SizeMoodButton;
|
|
10
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/MoodButton" {
|
|
5
|
+
import { IMoodButtonProps } from "robbyson-frontend-library";
|
|
6
|
+
const MoodButton: React.ComponentType<IMoodButtonProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default MoodButton;
|
|
9
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IoC } from "../../ioc";
|
|
3
|
+
import {
|
|
4
|
+
IAuthenticationService,
|
|
5
|
+
ILocaleService,
|
|
6
|
+
IThemeService,
|
|
7
|
+
} from "../../services";
|
|
8
|
+
import SVG from "react-inlinesvg";
|
|
9
|
+
|
|
10
|
+
import {
|
|
11
|
+
PageContainer,
|
|
12
|
+
Header,
|
|
13
|
+
Title,
|
|
14
|
+
ContextMenu,
|
|
15
|
+
Content,
|
|
16
|
+
} from "./base-app-page.styles";
|
|
17
|
+
import { RobbysonNavigate } from "../../utils";
|
|
18
|
+
|
|
19
|
+
export abstract class BaseAppPage<T, T1> extends React.Component<T, T1> {
|
|
20
|
+
protected headerLocale: string = "Header Locale";
|
|
21
|
+
|
|
22
|
+
protected _localeService: ILocaleService;
|
|
23
|
+
protected _authenticationService: IAuthenticationService;
|
|
24
|
+
protected _themeService: IThemeService;
|
|
25
|
+
|
|
26
|
+
constructor(props: T) {
|
|
27
|
+
super(props);
|
|
28
|
+
this.translate = this.translate.bind(this);
|
|
29
|
+
this._localeService = IoC.GetInstance<ILocaleService>("LocaleService");
|
|
30
|
+
this._authenticationService = IoC.GetInstance<IAuthenticationService>(
|
|
31
|
+
"AuthenticationService"
|
|
32
|
+
);
|
|
33
|
+
this._themeService = IoC.GetInstance<IThemeService>("ThemeService");
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
public translate(text?: string): string {
|
|
37
|
+
return this._localeService.getLocaleByHandle(text || "");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
abstract contextMenu(): React.ReactNode;
|
|
41
|
+
|
|
42
|
+
abstract renderPage(): React.ReactNode;
|
|
43
|
+
|
|
44
|
+
public render() {
|
|
45
|
+
return (
|
|
46
|
+
<PageContainer>
|
|
47
|
+
<Header>
|
|
48
|
+
<div>
|
|
49
|
+
<SVG
|
|
50
|
+
src={this._themeService.getIconAssetUrl(
|
|
51
|
+
"left-arrow-large"
|
|
52
|
+
)}
|
|
53
|
+
onClick={() => RobbysonNavigate.back()}
|
|
54
|
+
/>
|
|
55
|
+
<Title>{this.translate(this.headerLocale)}</Title>
|
|
56
|
+
</div>
|
|
57
|
+
<ContextMenu className="body-2-book">
|
|
58
|
+
{this.contextMenu()}
|
|
59
|
+
</ContextMenu>
|
|
60
|
+
</Header>
|
|
61
|
+
<Content>{this.renderPage()}</Content>
|
|
62
|
+
</PageContainer>
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { LayoutDimensions } from "../../constants";
|
|
2
|
+
import styled from "styled-components";
|
|
3
|
+
|
|
4
|
+
const SIDEBAR_WIDTH = 72;
|
|
5
|
+
|
|
6
|
+
export const PageContainer = styled.div`
|
|
7
|
+
padding: 32px 55px 47px calc(${SIDEBAR_WIDTH}px + 55px);
|
|
8
|
+
|
|
9
|
+
background: var(--solid-background);
|
|
10
|
+
height: 100%;
|
|
11
|
+
|
|
12
|
+
@media (max-width: ${LayoutDimensions._width.ipadMini}px) {
|
|
13
|
+
padding: 32px 24px 24px calc(${SIDEBAR_WIDTH}px + 24px);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@media (max-width: ${LayoutDimensions._width.mobile}px) {
|
|
17
|
+
padding: 24px 16px 16px calc(${SIDEBAR_WIDTH}px + 16px);
|
|
18
|
+
}
|
|
19
|
+
`;
|
|
20
|
+
|
|
21
|
+
export const Header = styled.div`
|
|
22
|
+
display: flex !important;
|
|
23
|
+
flex-direction: row !important;
|
|
24
|
+
justify-content: space-between !important;
|
|
25
|
+
align-items: center !important;
|
|
26
|
+
padding-bottom: 8px;
|
|
27
|
+
gap: 16px !important;
|
|
28
|
+
|
|
29
|
+
& > div {
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
svg {
|
|
35
|
+
cursor: pointer;
|
|
36
|
+
}
|
|
37
|
+
`;
|
|
38
|
+
|
|
39
|
+
export const ContextMenu = styled.div``;
|
|
40
|
+
|
|
41
|
+
export const Title = styled.h4`
|
|
42
|
+
margin-left: 12px;
|
|
43
|
+
`;
|
|
44
|
+
|
|
45
|
+
export const Content = styled.div``;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './pagination.interface';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
2
|
+
|
|
3
|
+
export interface IPaginationState {
|
|
4
|
+
activePage: number;
|
|
5
|
+
firstPage: number;
|
|
6
|
+
lastPage: number;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface IPaginationProps extends IBaseComponentProp {
|
|
10
|
+
totalPages:number;
|
|
11
|
+
maxViewPage?: number;
|
|
12
|
+
activePage?: number;
|
|
13
|
+
onPageChange?(page:number):void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module "styleguide/Pagination" {
|
|
5
|
+
import { IPaginationProps } from "robbyson-frontend-library";
|
|
6
|
+
const Pagination: React.ComponentType<IPaginationProps>;
|
|
7
|
+
|
|
8
|
+
export default Pagination;
|
|
9
|
+
}
|
|
10
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './profile-image.interface';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/ProfileImage' {
|
|
5
|
+
import { IProfileImageProps } from "robbyson-frontend-library";
|
|
6
|
+
const ProfileImage: React.ComponentType<IProfileImageProps>;
|
|
7
|
+
|
|
8
|
+
export default ProfileImage;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './progress-bar.interface';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IconHandle } from "../../models";
|
|
2
|
+
import { IBaseComponentProp } from "../base-component.prop.interface";
|
|
3
|
+
export interface IProgressBarProps<T> extends React.HTMLAttributes<T>, IBaseComponentProp {
|
|
4
|
+
labelLocaleHandle?: string;
|
|
5
|
+
values: Array<string | number>;
|
|
6
|
+
currentValue: string | number;
|
|
7
|
+
coinValue?: any;
|
|
8
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
///<reference types="react" />
|
|
2
|
+
///<reference types="robbyson-frontend-library" />
|
|
3
|
+
|
|
4
|
+
declare module 'styleguide/ProgressBar' {
|
|
5
|
+
import { IProgressBarProps } from "robbyson-frontend-library";
|
|
6
|
+
const ProgressBar: React.ComponentType<IProgressBarProps<any>>;
|
|
7
|
+
|
|
8
|
+
export default ProgressBar;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./progress-tracker.interface";
|