@omniumretail/component-library 1.2.71 → 1.2.73
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/package.json +6 -3
- package/NPMPUBLISH.md +0 -29
- package/bitbucket-pipelines.yml +0 -95
- package/dist/components/AnalyticsBar/AnalyticsBar.stories.d.ts +0 -5
- package/dist/components/BellNotifications/BellNotifications.stories.d.ts +0 -5
- package/dist/components/Button/Button.stories.d.ts +0 -6
- package/dist/components/Category/Category.stories.d.ts +0 -3
- package/dist/components/CategoryReadOnly/CategoryReadOnly.stories.d.ts +0 -3
- package/dist/components/CategoryResponse/CategoryResponse.stories.d.ts +0 -3
- package/dist/components/DatePicker/DatePicker.stories.d.ts +0 -5
- package/dist/components/DatePickerTag/DatePickerTag.stories.d.ts +0 -5
- package/dist/components/DropdownButton/DropdownButton.stories.d.ts +0 -5
- package/dist/components/ExportTableData/ExportTableData.stories.d.ts +0 -3
- package/dist/components/Footer/Footer.stories.d.ts +0 -5
- package/dist/components/Footer2/Footer.stories.d.ts +0 -6
- package/dist/components/Header/Header.stories.d.ts +0 -5
- package/dist/components/Input/Input.stories.d.ts +0 -5
- package/dist/components/InputCountryCode/inputCountryCode.stories.d.ts +0 -5
- package/dist/components/Label/Label.stories.d.ts +0 -6
- package/dist/components/Link/Link.stories.d.ts +0 -7
- package/dist/components/Menu/Menu.stories.d.ts +0 -5
- package/dist/components/MobileTable/MobileTable.stories.d.ts +0 -5
- package/dist/components/ModalConfirmation/ModalConfirmation.stories.d.ts +0 -5
- package/dist/components/ModalWithTable/ModalWithTable.stories.d.ts +0 -5
- package/dist/components/Navigation/Navigation.stories.d.ts +0 -5
- package/dist/components/Notification/Notification.stories.d.ts +0 -5
- package/dist/components/Questions/Questions.stories.d.ts +0 -3
- package/dist/components/Radio/Radio.stories.d.ts +0 -5
- package/dist/components/ResponseType/ResponseType.stories.d.ts +0 -3
- package/dist/components/ResponsiveTable/ResponsiveTable.stories.d.ts +0 -9
- package/dist/components/Select/Select.stories.d.ts +0 -6
- package/dist/components/Separator/Separator.stories.d.ts +0 -6
- package/dist/components/Sidebar/Sidebar.stories.d.ts +0 -6
- package/dist/components/Switch/Switch.stories.d.ts +0 -5
- package/dist/components/Table/Table.stories.d.ts +0 -9
- package/dist/components/Tag/Tag.stories.d.ts +0 -5
- package/dist/components/Upload/Upload.stories.d.ts +0 -3
- package/dist/components/UserInfo/UserInfo.stories.d.ts +0 -3
- package/dist/components/WebCam/WebCam.stories.d.ts +0 -3
- package/dist/types/index.d.ts +0 -2
- package/public/index.ts +0 -0
- package/src/assets/code-brackets.svg +0 -1
- package/src/assets/colors.svg +0 -1
- package/src/assets/comments.svg +0 -1
- package/src/assets/direction.svg +0 -1
- package/src/assets/flow.svg +0 -1
- package/src/assets/fonts/Silka-Bold.woff2 +0 -0
- package/src/assets/fonts/Silka-Regular.woff2 +0 -0
- package/src/assets/images/A2AI-logo.png +0 -0
- package/src/assets/images/omnium-retail-logo-white.png +0 -0
- package/src/assets/images/omnium-retail-logo.png +0 -0
- package/src/assets/images/omnium-retail_icon.png +0 -0
- package/src/assets/plugin.svg +0 -1
- package/src/assets/repo.svg +0 -1
- package/src/assets/scss/_combinations.scss +0 -0
- package/src/assets/scss/_global.scss +0 -89
- package/src/assets/scss/index.scss +0 -2
- package/src/assets/stackalt.svg +0 -1
- package/src/components/AnalyticsBar/AnalyticsBar.stories.tsx +0 -236
- package/src/components/AnalyticsBar/helpers/codeMutation.tsx +0 -19
- package/src/components/AnalyticsBar/index.tsx +0 -76
- package/src/components/AnalyticsBar/interfaces/analyticsBar.tsx +0 -13
- package/src/components/AnalyticsBar/styles.module.scss +0 -137
- package/src/components/BellNotifications/BellNotifications.stories.tsx +0 -200
- package/src/components/BellNotifications/index.tsx +0 -154
- package/src/components/BellNotifications/styles.module.scss +0 -239
- package/src/components/Button/Button.stories.tsx +0 -26
- package/src/components/Button/index.tsx +0 -24
- package/src/components/Button/styles.module.scss +0 -70
- package/src/components/Category/Category.stories.tsx +0 -371
- package/src/components/Category/CategoryContent/index.tsx +0 -255
- package/src/components/Category/CategoryContent/styles.module.scss +0 -69
- package/src/components/Category/CategorySidebar/index.tsx +0 -344
- package/src/components/Category/CategorySidebar/styles.module.scss +0 -28
- package/src/components/Category/index.tsx +0 -58
- package/src/components/Category/styles.module.scss +0 -13
- package/src/components/CategoryReadOnly/CategoryReadOnly.stories.tsx +0 -274
- package/src/components/CategoryReadOnly/evaluationOptions.tsx +0 -81
- package/src/components/CategoryReadOnly/index.tsx +0 -328
- package/src/components/CategoryReadOnly/styles.module.scss +0 -214
- package/src/components/CategoryResponse/CategoryResponse.stories.tsx +0 -311
- package/src/components/CategoryResponse/evaluationOptions.tsx +0 -81
- package/src/components/CategoryResponse/index.tsx +0 -502
- package/src/components/CategoryResponse/styles.module.scss +0 -365
- package/src/components/DatePicker/DatePicker.stories.tsx +0 -16
- package/src/components/DatePicker/index.tsx +0 -38
- package/src/components/DatePicker/styles.module.scss +0 -3
- package/src/components/DatePickerTag/DatePickerTag.stories.tsx +0 -19
- package/src/components/DatePickerTag/index.tsx +0 -91
- package/src/components/DatePickerTag/styles.module.scss +0 -32
- package/src/components/DropdownButton/DropdownButton.stories.tsx +0 -24
- package/src/components/DropdownButton/index.tsx +0 -36
- package/src/components/DropdownButton/styles.module.scss +0 -9
- package/src/components/ExportTableData/ExportTableData.stories.tsx +0 -43
- package/src/components/ExportTableData/index.tsx +0 -37
- package/src/components/ExportTableData/styles.module.scss +0 -4
- package/src/components/Footer/Footer.stories.tsx +0 -15
- package/src/components/Footer/index.tsx +0 -45
- package/src/components/Footer/styles.module.scss +0 -38
- package/src/components/Footer2/Footer.stories.tsx +0 -184
- package/src/components/Footer2/index.tsx +0 -322
- package/src/components/Footer2/styles.module.scss +0 -292
- package/src/components/Header/Header.data.ts +0 -26
- package/src/components/Header/Header.stories.tsx +0 -236
- package/src/components/Header/Header.types.ts +0 -32
- package/src/components/Header/README.md +0 -38
- package/src/components/Header/index.tsx +0 -200
- package/src/components/Header/styles.module.scss +0 -216
- package/src/components/Input/Input.stories.tsx +0 -13
- package/src/components/Input/index.tsx +0 -31
- package/src/components/Input/styles.module.scss +0 -8
- package/src/components/InputCountryCode/index.tsx +0 -79
- package/src/components/InputCountryCode/inputCountryCode.stories.tsx +0 -55
- package/src/components/InputCountryCode/styles.module.scss +0 -3
- package/src/components/Label/Label.stories.tsx +0 -21
- package/src/components/Label/index.tsx +0 -19
- package/src/components/Label/styles.module.scss +0 -17
- package/src/components/Link/Link.stories.tsx +0 -30
- package/src/components/Link/index.tsx +0 -21
- package/src/components/Link/styles.module.scss +0 -24
- package/src/components/Menu/Menu.stories.tsx +0 -178
- package/src/components/Menu/helpers/codeMutation.tsx +0 -19
- package/src/components/Menu/index.tsx +0 -24
- package/src/components/Menu/styles.module.scss +0 -0
- package/src/components/MobileTable/MobileTable.stories.tsx +0 -27
- package/src/components/MobileTable/index.tsx +0 -102
- package/src/components/MobileTable/styles.module.scss +0 -75
- package/src/components/ModalConfirmation/ModalConfirmation.stories.tsx +0 -40
- package/src/components/ModalConfirmation/ModalStatusList.tsx +0 -5
- package/src/components/ModalConfirmation/index.tsx +0 -71
- package/src/components/ModalConfirmation/styles.module.scss +0 -62
- package/src/components/ModalWithTable/ModalWithTable.stories.tsx +0 -99
- package/src/components/ModalWithTable/index.tsx +0 -238
- package/src/components/ModalWithTable/styles.module.scss +0 -77
- package/src/components/Navigation/Navigation.stories.tsx +0 -21
- package/src/components/Navigation/index.tsx +0 -91
- package/src/components/Navigation/styles.module.scss +0 -91
- package/src/components/Notification/Notification.stories.tsx +0 -32
- package/src/components/Notification/index.tsx +0 -28
- package/src/components/Questions/Questions.stories.tsx +0 -37
- package/src/components/Questions/SingleQuestion/index.tsx +0 -337
- package/src/components/Questions/SingleQuestion/styles.module.scss +0 -142
- package/src/components/Questions/index.tsx +0 -124
- package/src/components/Questions/styles.modules.scss +0 -0
- package/src/components/Radio/Radio.stories.tsx +0 -43
- package/src/components/Radio/index.tsx +0 -26
- package/src/components/Radio/styles.module.scss +0 -24
- package/src/components/ResponseType/ResponseType.stories.tsx +0 -393
- package/src/components/ResponseType/index.tsx +0 -100
- package/src/components/ResponseType/styles.module.scss +0 -31
- package/src/components/ResponsiveTable/ResponsiveTable.stories.tsx +0 -386
- package/src/components/ResponsiveTable/index.tsx +0 -389
- package/src/components/ResponsiveTable/styles.module.scss +0 -153
- package/src/components/Select/Select.stories.tsx +0 -39
- package/src/components/Select/index.tsx +0 -27
- package/src/components/Select/styles.module.scss +0 -19
- package/src/components/Separator/Separator.stories.tsx +0 -22
- package/src/components/Separator/index.tsx +0 -27
- package/src/components/Separator/styles.module.scss +0 -25
- package/src/components/Sidebar/Sidebar.stories.tsx +0 -85
- package/src/components/Sidebar/index.tsx +0 -127
- package/src/components/Sidebar/styles.module.scss +0 -141
- package/src/components/Switch/Switch.stories.tsx +0 -14
- package/src/components/Switch/index.tsx +0 -18
- package/src/components/Switch/styles.module.scss +0 -7
- package/src/components/Table/Table.stories.tsx +0 -337
- package/src/components/Table/index.tsx +0 -313
- package/src/components/Table/styles.module.scss +0 -97
- package/src/components/Tag/Tag.stories.tsx +0 -32
- package/src/components/Tag/index.tsx +0 -295
- package/src/components/Tag/styles.module.scss +0 -104
- package/src/components/Upload/Upload.stories.tsx +0 -45
- package/src/components/Upload/index.tsx +0 -112
- package/src/components/Upload/styles.module.scss +0 -29
- package/src/components/UserInfo/UserInfo.stories.tsx +0 -38
- package/src/components/UserInfo/index.tsx +0 -77
- package/src/components/UserInfo/styles.module.scss +0 -35
- package/src/components/WebCam/WebCam.stories.tsx +0 -24
- package/src/components/WebCam/index.tsx +0 -73
- package/src/components/WebCam/styles.module.scss +0 -37
- package/src/components/index.tsx +0 -34
- package/src/constants/i18n.ts +0 -25
- package/src/constants/logoCompanyHelper.ts +0 -52
- package/src/constants/translationHelper.ts +0 -7
- package/src/index.ts +0 -3
- package/src/locales/en.json +0 -142
- package/src/locales/es.json +0 -142
- package/src/locales/pt.json +0 -142
- package/src/types/Global.d.ts +0 -4
- package/tsconfig.json +0 -24
- package/vite.config.js +0 -51
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
.loadFile {
|
|
2
|
-
color: var(--color-black);
|
|
3
|
-
background-color: var(--color-white);
|
|
4
|
-
border: 1px var(--color-black) solid;
|
|
5
|
-
min-width: 100px;
|
|
6
|
-
height: 20px;
|
|
7
|
-
font-size: 10px;
|
|
8
|
-
padding: unset;
|
|
9
|
-
|
|
10
|
-
@media(max-width: 767px) {
|
|
11
|
-
min-width: 0px;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
&:hover {
|
|
15
|
-
background-color: var(--color-grey-light);
|
|
16
|
-
color: var(--color-black) !important;
|
|
17
|
-
border: 1px var(--color-black) solid !important;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
:global {
|
|
22
|
-
.ant-upload-wrapper {
|
|
23
|
-
line-height: 12px;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.ant-upload-wrapper .ant-upload-list .ant-upload-list-item {
|
|
27
|
-
max-width: 100px;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Meta, StoryFn } from "@storybook/react-vite";
|
|
2
|
-
import { UserInfo } from '.';
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
title: 'UserInfo',
|
|
6
|
-
component: UserInfo,
|
|
7
|
-
} as Meta;
|
|
8
|
-
|
|
9
|
-
const Template: StoryFn<any> = (args: any) => {
|
|
10
|
-
|
|
11
|
-
const data = {
|
|
12
|
-
Date: "946080000",
|
|
13
|
-
"Store": [
|
|
14
|
-
"ola",
|
|
15
|
-
"adeus"
|
|
16
|
-
],
|
|
17
|
-
"Team": "Delivery Team",
|
|
18
|
-
"Supervisor": "Jane Dõe Lórd Rings",
|
|
19
|
-
"TypeOfContract": "Omnium.APE.Services.API.Models.Users.ContractStateDto",
|
|
20
|
-
"Nationality": "PT",
|
|
21
|
-
"CivilStatus": "single",
|
|
22
|
-
"IdentificationDocument": "55613145664",
|
|
23
|
-
"NTaxpayer": "14244",
|
|
24
|
-
"NIB": "12312331",
|
|
25
|
-
"SocialSecurity": "123123132",
|
|
26
|
-
"NChildren": "2",
|
|
27
|
-
"Workload": "2 horas",
|
|
28
|
-
"Description": "One Desccription",
|
|
29
|
-
"Comments": "One CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne CommentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwOne Commentsdwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww",
|
|
30
|
-
"Image": "https://omnium-user-images.s3.eu-west-1.amazonaws.com/Users/.jpg"
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
return <UserInfo {...args} userData={data} userName={ "Diogo Carvalho" } userCode={ "121212" } userImage={"https://omnium-user-images.s3.eu-west-1.amazonaws.com/Users/.jpg"} userInfoTranslationsKey={'userInfoColumn'}></UserInfo>;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export const Primary = Template.bind({});
|
|
37
|
-
Primary.args = {
|
|
38
|
-
};
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import styles from './styles.module.scss';
|
|
3
|
-
import classNames from 'classnames';
|
|
4
|
-
import { Label } from '../Label';
|
|
5
|
-
import { useTranslation } from 'react-i18next';
|
|
6
|
-
|
|
7
|
-
export interface UserInfoProps {
|
|
8
|
-
userData: any;
|
|
9
|
-
userImage: string;
|
|
10
|
-
userName: string;
|
|
11
|
-
userCode: string;
|
|
12
|
-
userInfoTranslationsKey?: string;
|
|
13
|
-
customClass?: string;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export const UserInfo = ({
|
|
17
|
-
userData,
|
|
18
|
-
customClass,
|
|
19
|
-
userImage,
|
|
20
|
-
userName,
|
|
21
|
-
userCode,
|
|
22
|
-
userInfoTranslationsKey,
|
|
23
|
-
}: UserInfoProps) => {
|
|
24
|
-
const { t } = useTranslation();
|
|
25
|
-
|
|
26
|
-
const userInfoStyle = classNames(
|
|
27
|
-
{
|
|
28
|
-
[`${customClass}`]: customClass,
|
|
29
|
-
},
|
|
30
|
-
[styles.userInfo]
|
|
31
|
-
);
|
|
32
|
-
|
|
33
|
-
return (
|
|
34
|
-
<div className={userInfoStyle}>
|
|
35
|
-
<img src={userImage} className={styles.userImage} />
|
|
36
|
-
|
|
37
|
-
<Label customStyle={styles.userName}>{userName}</Label>
|
|
38
|
-
|
|
39
|
-
<h3 className={styles.userCode}>{userCode}</h3>
|
|
40
|
-
|
|
41
|
-
{Object.entries(userData)?.map(([key, value]: any) => {
|
|
42
|
-
if (
|
|
43
|
-
userInfoTranslationsKey &&
|
|
44
|
-
t(`${userInfoTranslationsKey}.${key}`) === `${userInfoTranslationsKey}.${key}`
|
|
45
|
-
) {
|
|
46
|
-
// Verificar se a chave de tradução não existe
|
|
47
|
-
return null; // Pular a renderização desse campo
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
if (key === 'Store') {
|
|
51
|
-
return (
|
|
52
|
-
<div key={key}>
|
|
53
|
-
<h3 className={styles.userInfoTitles}>
|
|
54
|
-
{userInfoTranslationsKey ? t(`${userInfoTranslationsKey}.${key}`) : key}
|
|
55
|
-
</h3>
|
|
56
|
-
{value?.map((store: string, index: number) => (
|
|
57
|
-
<h3 key={`${key}-${index}`} className={styles.userInfoDesc}>
|
|
58
|
-
{store}
|
|
59
|
-
</h3>
|
|
60
|
-
))}
|
|
61
|
-
</div>
|
|
62
|
-
);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return (
|
|
66
|
-
<div key={key}>
|
|
67
|
-
<h3 className={styles.userInfoTitles}>
|
|
68
|
-
{userInfoTranslationsKey ? t(`${userInfoTranslationsKey}.${key}`) : key}
|
|
69
|
-
</h3>
|
|
70
|
-
|
|
71
|
-
<h3 className={styles.userInfoDesc}>{value as string}</h3>
|
|
72
|
-
</div>
|
|
73
|
-
);
|
|
74
|
-
})}
|
|
75
|
-
</div>
|
|
76
|
-
);
|
|
77
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
.userInfo {
|
|
2
|
-
display: flex;
|
|
3
|
-
flex-direction: column;
|
|
4
|
-
background-color: var(--white-color);
|
|
5
|
-
padding: 24px;
|
|
6
|
-
color: var(--color-black);
|
|
7
|
-
width: 150px;
|
|
8
|
-
word-wrap: break-word;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
.userImage {
|
|
12
|
-
width: 150px;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.userName {
|
|
16
|
-
color: var(--color-blue) !important;
|
|
17
|
-
font-size: var(--font-size-body-5);
|
|
18
|
-
font-weight: var(--font-weight-bold);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.userCode {
|
|
22
|
-
font-weight: var(--font-weight-semibold);
|
|
23
|
-
font-size: var(--font-size-label);
|
|
24
|
-
margin-top: 0px;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.userInfoTitles {
|
|
28
|
-
font-weight: var(--font-weight-bold);
|
|
29
|
-
font-size: var(--font-size-body-base);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
.userInfoDesc {
|
|
33
|
-
font-weight: var(--font-weight-regular);
|
|
34
|
-
font-size: var(--font-size-label);
|
|
35
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Meta, StoryFn } from "@storybook/react-vite";
|
|
2
|
-
import { CameraCapture } from '.';
|
|
3
|
-
import { useState } from "react";
|
|
4
|
-
import { Button } from "antd";
|
|
5
|
-
|
|
6
|
-
export default {
|
|
7
|
-
title: 'CameraCapture',
|
|
8
|
-
component: CameraCapture,
|
|
9
|
-
} as Meta;
|
|
10
|
-
|
|
11
|
-
const Template: StoryFn<any> = (args: any) => {
|
|
12
|
-
const [openCamera, setOpenCamera] = useState(false);
|
|
13
|
-
const [imgSrc, setImgSrc] = useState("");
|
|
14
|
-
|
|
15
|
-
return <>
|
|
16
|
-
<p>Source: {imgSrc}</p>
|
|
17
|
-
<Button onClick={() => setOpenCamera(!openCamera)}>Open</Button>
|
|
18
|
-
<CameraCapture {...args} setImgSrc={setImgSrc} isCameraOn={openCamera}></CameraCapture>
|
|
19
|
-
</>;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export const Primary = Template.bind({});
|
|
23
|
-
Primary.args = {
|
|
24
|
-
};
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import React, { useRef, useState } from 'react';
|
|
2
|
-
import styles from './styles.module.scss';
|
|
3
|
-
import Webcam from 'react-webcam';
|
|
4
|
-
import { useTranslation } from 'react-i18next';
|
|
5
|
-
import { CheckOutlined, CloseOutlined } from '@ant-design/icons';
|
|
6
|
-
import classNames from 'classnames';
|
|
7
|
-
import { Button } from 'antd';
|
|
8
|
-
|
|
9
|
-
interface CameraCaptureProps {
|
|
10
|
-
isCameraOn: boolean;
|
|
11
|
-
customClass?: string;
|
|
12
|
-
setImgSrc: React.Dispatch<React.SetStateAction<string>>;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export const CameraCapture: React.FC<CameraCaptureProps> = ({ isCameraOn, customClass, setImgSrc }) => {
|
|
16
|
-
const { t } = useTranslation();
|
|
17
|
-
|
|
18
|
-
const webcamRef = useRef<Webcam>(null);
|
|
19
|
-
const [imageSrc, setImageSrc] = useState<string | null>(null);
|
|
20
|
-
const [captured, setCaptured] = useState(false);
|
|
21
|
-
|
|
22
|
-
const capture = () => {
|
|
23
|
-
const imageSrc = webcamRef.current?.getScreenshot();
|
|
24
|
-
if (imageSrc) {
|
|
25
|
-
setImageSrc(imageSrc);
|
|
26
|
-
setCaptured(true);
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const retake = () => {
|
|
31
|
-
setImageSrc(null);
|
|
32
|
-
setCaptured(false);
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const confirm = () => {
|
|
37
|
-
setImgSrc(imageSrc as string);
|
|
38
|
-
setCaptured(false);
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
const webCamStyle = classNames({
|
|
42
|
-
[`${customClass}`]: customClass,
|
|
43
|
-
}, [styles.webCam]);
|
|
44
|
-
|
|
45
|
-
return (
|
|
46
|
-
<div className={styles.cameraCapture}>
|
|
47
|
-
<div>
|
|
48
|
-
{isCameraOn && !captured && (
|
|
49
|
-
<Webcam
|
|
50
|
-
audio={false}
|
|
51
|
-
ref={webcamRef}
|
|
52
|
-
screenshotFormat="image/jpeg"
|
|
53
|
-
className={webCamStyle}
|
|
54
|
-
/>
|
|
55
|
-
)}
|
|
56
|
-
</div>
|
|
57
|
-
|
|
58
|
-
{isCameraOn && !captured && (
|
|
59
|
-
<Button onClick={capture}>{t('components.webCam.takePhoto')}</Button>
|
|
60
|
-
)}
|
|
61
|
-
|
|
62
|
-
{captured && (
|
|
63
|
-
<div className={styles.capturedImage}>
|
|
64
|
-
<img src={imageSrc || ''} alt="Captured" />
|
|
65
|
-
<div className={styles.buttonGroup}>
|
|
66
|
-
<CloseOutlined onClick={retake} title={t('components.webCam.takeAgain')!} className={styles.closeButton} />
|
|
67
|
-
<CheckOutlined onClick={confirm} title={t('components.webCam.confirm')!} className={styles.checkButton} />
|
|
68
|
-
</div>
|
|
69
|
-
</div>
|
|
70
|
-
)}
|
|
71
|
-
</div>
|
|
72
|
-
);
|
|
73
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
.cameraCapture {
|
|
2
|
-
display: flex;
|
|
3
|
-
flex-direction: column;
|
|
4
|
-
align-items: center;
|
|
5
|
-
justify-content: center;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.webCam {
|
|
9
|
-
height: 300px;
|
|
10
|
-
width: 400px;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.buttonGroup {
|
|
14
|
-
display: flex;
|
|
15
|
-
justify-content: space-between;
|
|
16
|
-
margin: 10px 10px 0px 10px;
|
|
17
|
-
font-size: 20px;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.closeButton {
|
|
21
|
-
color: #ff4d4f;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
.checkButton {
|
|
25
|
-
color: #52c41a;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.capturedImage {
|
|
29
|
-
margin-top: 20px;
|
|
30
|
-
border-radius: 4px;
|
|
31
|
-
overflow: hidden;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.capturedImage img {
|
|
35
|
-
width: 100%;
|
|
36
|
-
height: auto;
|
|
37
|
-
}
|
package/src/components/index.tsx
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export * from './Button';
|
|
2
|
-
export * from './Navigation';
|
|
3
|
-
export * from './Input';
|
|
4
|
-
export * from './InputCountryCode';
|
|
5
|
-
export * from './Label';
|
|
6
|
-
export * from './Link';
|
|
7
|
-
export * from './Select';
|
|
8
|
-
export * from './Separator';
|
|
9
|
-
export * from './Table';
|
|
10
|
-
export * from './Tag';
|
|
11
|
-
export * from './DatePicker';
|
|
12
|
-
export * from './Radio';
|
|
13
|
-
export * from './Footer';
|
|
14
|
-
export * from './ModalConfirmation';
|
|
15
|
-
export * from './ModalWithTable';
|
|
16
|
-
export * from './Sidebar';
|
|
17
|
-
export * from './Switch';
|
|
18
|
-
export * from './Category';
|
|
19
|
-
export * from './DatePickerTag';
|
|
20
|
-
export * from './AnalyticsBar';
|
|
21
|
-
export * from './CategoryResponse';
|
|
22
|
-
export * from './Upload';
|
|
23
|
-
export * from './UserInfo';
|
|
24
|
-
export * from './CategoryReadOnly';
|
|
25
|
-
export * from './Notification';
|
|
26
|
-
export * from './ExportTableData';
|
|
27
|
-
export * from './DropdownButton';
|
|
28
|
-
export * from './ResponsiveTable';
|
|
29
|
-
export * from './WebCam';
|
|
30
|
-
export * from './ResponseType';
|
|
31
|
-
export * from './Header';
|
|
32
|
-
export * from './BellNotifications';
|
|
33
|
-
export * from './MobileTable';
|
|
34
|
-
export * from './Footer2';
|
package/src/constants/i18n.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import i18next from 'i18next';
|
|
2
|
-
import LanguageDetector from 'i18next-browser-languagedetector';
|
|
3
|
-
import { initReactI18next } from "react-i18next";
|
|
4
|
-
import en from '../locales/en.json';
|
|
5
|
-
import es from '../locales/es.json';
|
|
6
|
-
import pt from '../locales/pt.json';
|
|
7
|
-
import merge from 'lodash.merge';
|
|
8
|
-
|
|
9
|
-
export const mergei18n = (appResources: any) => {
|
|
10
|
-
i18next
|
|
11
|
-
.use(initReactI18next)
|
|
12
|
-
.use(LanguageDetector)
|
|
13
|
-
.init({
|
|
14
|
-
resources: merge({
|
|
15
|
-
en: { translation: en },
|
|
16
|
-
pt: { translation: pt },
|
|
17
|
-
es: { translation: es },
|
|
18
|
-
}, appResources),
|
|
19
|
-
detection: {
|
|
20
|
-
order: ['querystring', 'navigator', 'htmlTag'],
|
|
21
|
-
lookupQuerystring: 'lng',
|
|
22
|
-
htmlTag: document.documentElement,
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import omniumIcon from '../assets/images/omnium-retail-logo.png';
|
|
2
|
-
import a2ai from '../assets/images/A2AI-logo.png';
|
|
3
|
-
import omniumWhiteIcon from '../assets/images/omnium-retail-logo-white.png';
|
|
4
|
-
|
|
5
|
-
export interface CompanyLogo {
|
|
6
|
-
normal: string;
|
|
7
|
-
white: string;
|
|
8
|
-
alt: string;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
const logoMap: Record<string, CompanyLogo> = {
|
|
12
|
-
omnium: {
|
|
13
|
-
normal: omniumIcon,
|
|
14
|
-
white: omniumWhiteIcon,
|
|
15
|
-
alt: 'Omnium Retail Logo'
|
|
16
|
-
},
|
|
17
|
-
a2ai: {
|
|
18
|
-
normal: a2ai,
|
|
19
|
-
white: a2ai,
|
|
20
|
-
alt: 'A2AI Logo'
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Obtém os logos de uma empresa específica
|
|
26
|
-
* @param companyName - Nome da empresa
|
|
27
|
-
* @returns Objeto com os logos normal, white e alt da empresa
|
|
28
|
-
*/
|
|
29
|
-
export const getCompanyLogos = (companyName: string): CompanyLogo => {
|
|
30
|
-
const companyKey = companyName.toLowerCase();
|
|
31
|
-
return logoMap[companyKey] || logoMap['omnium']; // Fallback para omnium se não encontrar
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Verifica se uma empresa possui logos configurados
|
|
36
|
-
* @param companyName - Nome da empresa
|
|
37
|
-
* @returns Boolean indicando se a empresa existe no mapa de logos
|
|
38
|
-
*/
|
|
39
|
-
export const hasCompanyLogos = (companyName: string): boolean => {
|
|
40
|
-
const companyKey = companyName.toLowerCase();
|
|
41
|
-
return companyKey in logoMap;
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Obtém a lista de empresas disponíveis
|
|
46
|
-
* @returns Array com os nomes das empresas configuradas
|
|
47
|
-
*/
|
|
48
|
-
export const getAvailableCompanies = (): string[] => {
|
|
49
|
-
return Object.keys(logoMap);
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export default { getCompanyLogos, hasCompanyLogos, getAvailableCompanies };
|
package/src/index.ts
DELETED
package/src/locales/en.json
DELETED
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"tableHeadings": {
|
|
3
|
-
"key": "Key",
|
|
4
|
-
"name": "Name",
|
|
5
|
-
"mecanographicNumber": "Employee Code",
|
|
6
|
-
"store": "Store",
|
|
7
|
-
"role": "Role",
|
|
8
|
-
"type": "Type",
|
|
9
|
-
"id": "ID",
|
|
10
|
-
"action": "Action"
|
|
11
|
-
},
|
|
12
|
-
"userInfoColumn": {
|
|
13
|
-
"Date": "Date",
|
|
14
|
-
"Store": "Store",
|
|
15
|
-
"Team": "Team",
|
|
16
|
-
"Supervisor": "Supervisor",
|
|
17
|
-
"TypeOfContract": "Contract Type",
|
|
18
|
-
"Nationality": "Nationality",
|
|
19
|
-
"CivilStatus": "Civil Status",
|
|
20
|
-
"IdentificationDocument": "Identification Document",
|
|
21
|
-
"NTaxpayer": "Taxpayer Number",
|
|
22
|
-
"NIB": "NIB",
|
|
23
|
-
"SocialSecurity": "Social Security",
|
|
24
|
-
"NChildren": "Number of Children",
|
|
25
|
-
"Workload": "Workload",
|
|
26
|
-
"Description": "Description",
|
|
27
|
-
"Comments": "Comments"
|
|
28
|
-
},
|
|
29
|
-
"navigation": {
|
|
30
|
-
"back": "Back",
|
|
31
|
-
"logout": "Logout",
|
|
32
|
-
"home": "Home",
|
|
33
|
-
"profile": "Profile",
|
|
34
|
-
"notifications": "Notifications",
|
|
35
|
-
"create": "Create",
|
|
36
|
-
"delete": "Delete",
|
|
37
|
-
"edit": "Edit",
|
|
38
|
-
"export": "Export",
|
|
39
|
-
"print": "Print",
|
|
40
|
-
"update": "Update"
|
|
41
|
-
},
|
|
42
|
-
"actions": {
|
|
43
|
-
"one": "One",
|
|
44
|
-
"two": "Two"
|
|
45
|
-
},
|
|
46
|
-
"components": {
|
|
47
|
-
"category": {
|
|
48
|
-
"addQuestion": "Add Question",
|
|
49
|
-
"placeholderInfo": "Marker Information",
|
|
50
|
-
"errorInfo": "Information Error",
|
|
51
|
-
"placeholderQuestion": "Question",
|
|
52
|
-
"placeholderResponse": "Answer",
|
|
53
|
-
"errorQuestion": "Error/Missing Question",
|
|
54
|
-
"placeholderGrade": "Grade",
|
|
55
|
-
"errorGrade": "Error/Missing Grade",
|
|
56
|
-
"newCategory": "New Category",
|
|
57
|
-
"mandatoryAnswer": "Mandatory answer",
|
|
58
|
-
"emphasisAnswer": "Highlight",
|
|
59
|
-
"responseType": "Response Type",
|
|
60
|
-
"errorResponseType": "Response type missing",
|
|
61
|
-
"header": "Header",
|
|
62
|
-
"color": "Assigned colour",
|
|
63
|
-
"flagged": "Emphasise",
|
|
64
|
-
"multipleChoise": "Multiple selection",
|
|
65
|
-
"placeholderScore": "Score",
|
|
66
|
-
"answerNameIsMissing": "Missing name",
|
|
67
|
-
"typeResponseNameIsMissing": "Name of the missing answer type",
|
|
68
|
-
"responseTypeName": "Name of response type",
|
|
69
|
-
"store": "Store",
|
|
70
|
-
"date": "Date",
|
|
71
|
-
"author": "Author"
|
|
72
|
-
},
|
|
73
|
-
"categorySidBar": {
|
|
74
|
-
"addCategory": "Add Category",
|
|
75
|
-
"removeCategory": "Remove Category",
|
|
76
|
-
"categories": "Categories"
|
|
77
|
-
},
|
|
78
|
-
"categoryContent": {
|
|
79
|
-
"message": "Please select a category in the sidebar",
|
|
80
|
-
"categoryName": "Category Name",
|
|
81
|
-
"tamplateName": "Template Name",
|
|
82
|
-
"editCategory": "Edit Category",
|
|
83
|
-
"categoryNameError": "Error/Missing Category Name",
|
|
84
|
-
"templateNameError": "Error/Missing Template Name",
|
|
85
|
-
"weighting": "Weighting",
|
|
86
|
-
"openAnswer": "Open Answer",
|
|
87
|
-
"yesNoAnswer": "Yes/No Answer",
|
|
88
|
-
"answerOption": "Answer Option",
|
|
89
|
-
"answers": "Answers"
|
|
90
|
-
},
|
|
91
|
-
"categoryResponse": {
|
|
92
|
-
"notApplicable": "Not Applicable",
|
|
93
|
-
"answer": "Answer",
|
|
94
|
-
"yes": "Yes",
|
|
95
|
-
"no": "No",
|
|
96
|
-
"note": "Note",
|
|
97
|
-
"actions": "Actions",
|
|
98
|
-
"editNote": "Edit Note",
|
|
99
|
-
"addNote": "Add Note",
|
|
100
|
-
"createAction": "Action",
|
|
101
|
-
"loadFile": "Media",
|
|
102
|
-
"placeholderForMultiple": "Select one or more options",
|
|
103
|
-
"placeholderForSingular": "Select an option"
|
|
104
|
-
},
|
|
105
|
-
"categoryReadOnly": {
|
|
106
|
-
"categories": "Categories",
|
|
107
|
-
"categoryAverage": "Category Average",
|
|
108
|
-
"userResponse": "User Response:",
|
|
109
|
-
"supervisorResponse": "Supervisor Response:"
|
|
110
|
-
},
|
|
111
|
-
"analyticsBar": {
|
|
112
|
-
"desc": "Descending",
|
|
113
|
-
"asc": "Ascending"
|
|
114
|
-
},
|
|
115
|
-
"tag": {
|
|
116
|
-
"search": "Search",
|
|
117
|
-
"advancedFields": "Advanced Filters",
|
|
118
|
-
"State": "State",
|
|
119
|
-
"inactiveSwitch": "Include inactives"
|
|
120
|
-
},
|
|
121
|
-
"table": {
|
|
122
|
-
"selectAll": "Select All",
|
|
123
|
-
"deselectAll": "Deselect All"
|
|
124
|
-
},
|
|
125
|
-
"datePickerTag": {
|
|
126
|
-
"placeholder": "Select Date"
|
|
127
|
-
},
|
|
128
|
-
"webCam": {
|
|
129
|
-
"takePhoto": "Take Photo",
|
|
130
|
-
"confirm": "Confirm",
|
|
131
|
-
"takeAgain": "Take Again"
|
|
132
|
-
},
|
|
133
|
-
"upload": {
|
|
134
|
-
"loadFile": "Upload file"
|
|
135
|
-
},
|
|
136
|
-
"bellNotifications": {
|
|
137
|
-
"noNotifications": "No notifications",
|
|
138
|
-
"onlyShowNoRead": "Only show unread",
|
|
139
|
-
"markAllAsRead": "Mark all as read"
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|