Socket
Socket
Sign inDemoInstall

@eduzz/apps-toolbar

Package Overview
Dependencies
Maintainers
7
Versions
121
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@eduzz/apps-toolbar - npm Package Compare versions

Comparing version 4.0.14 to 5.0.0

dist/widget.js

50

index.d.ts

@@ -1,2 +0,48 @@

import EduzzToolbar from './App';
export default EduzzToolbar;
/* eslint-disable @typescript-eslint/naming-convention */
declare global {
interface Window {
EduzzAppsToolbar: (params: IEduzzToolbarSetupParams) => {
show(): void;
hide(): void;
setUser(user: IEduzzToolbarSetupParams['user']): void;
clearUser(): void;
enableChat(): void;
disableChat(): void;
};
}
let EduzzAppsToolbar: Window['EduzzAppsToolbar'];
}
export type typeEduzzToolbarApplications =
| 'nutror'
| 'blinket'
| 'orbita'
| 'sun'
| 'jobzz'
| 'telescope'
| 'safevideo'
| 'alumy'
| 'orbit-pages';
export interface IEduzzToolbarSetupParams {
show: boolean;
application?: typeEduzzToolbarApplications;
applicationUrls?: { [key in typeEduzzToolbarApplications]: string };
env?: 'production' | 'homolog' | 'development';
disableChat?: boolean;
user?: {
id: number;
name: string;
email: string;
belt?: string;
isSupport?: boolean;
supportId?: number;
isClubeBlack?: boolean;
};
}
declare function EduzzToolbarSetup(params: IEduzzToolbarSetupParams): Promise<ReturnType<Window['EduzzAppsToolbar']>>;
export default EduzzToolbarSetup;

@@ -1,5 +0,24 @@

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var App_1 = (0, tslib_1.__importDefault)(require("./App"));
exports.default = App_1.default;
export default function EduzzToolbarSetup(params) {
return new Promise((resolve, reject) => {
const script = document.createElement('script');
script.async = true;
script.src = 'https://unpkg.com/@eduzz/apps-toolbar@^5.0.0/dist/widget.js';
script.onload = () => {
const toolbar = window.EduzzAppsToolbar(params);
resolve(toolbar);
};
script.onerror = err => {
import('@eduzz/apps-toolbar/dist/widget.js')
.then(() => {
console.log('@eduzz/apps-toolbar: LOADING FROM FALLBACK');
const toolbar = window.EduzzAppsToolbar(params);
resolve(toolbar);
})
.catch(() => reject(err));
};
document.body.append(script);
});
}

50

package.json
{
"name": "@eduzz/apps-toolbar",
"version": "4.0.14",
"version": "5.0.0",
"private": false,
"author": "Eduzz Team",
"main": "./index.js",
"license": "MIT",
"types": "./index.d.ts",
"repository": {
"type": "git",
"url": "https://github.com/eduzz/eduzz-toolbar"
},
"scripts": {
"start": "react-scripts start",
"clean": "sh ./scripts/clean.sh",
"build": "yarn clean && tsc -p .",
"start": "react-app-rewired start",
"build": "react-app-rewired build",
"lint": "yarn eslint \"./src/**/*.ts\" \"./src/**/*.tsx\"",
"preprepare": "concurrently -r \"yarn lint\"",
"prepare": "yarn husky install && npm run build",
"postpublish": "yarn clean"
"preprepare": "concurrently -r \"yarn lint\" \"yarn tsc --noEmit\"",
"prepare": "yarn husky install && npm run build"
},
"dependencies": {
"@eduzz/houston-icons": "^0.42.3",
"devDependencies": {
"@eduzz/eslint-config-houston": "0.42.3",
"@emotion/react": "11.8.1",
"@emotion/styled": "11.8.1",
"react": "17.0.2"
},
"devDependencies": {
"@eduzz/eslint-config-houston": "0.42.3",
"@types/node": "17.0.19",
"@types/node": "17.0.21",
"@types/react": "17.0.39",
"@types/react-dom": "17.0.11",
"@typescript-eslint/eslint-plugin": "5.12.0",
"@typescript-eslint/parser": "5.12.0",
"@types/validatorjs": "3.15.0",
"@types/yup": "0.29.13",
"@typescript-eslint/eslint-plugin": "5.12.1",
"@typescript-eslint/parser": "5.12.1",
"axios": "0.26.0",
"concurrently": "7.0.0",
"cross-env": "7.0.3",
"eslint": "8.9.0",

@@ -41,3 +34,3 @@ "eslint-config-prettier": "8.4.0",

"eslint-plugin-prettier": "4.0.0",
"eslint-plugin-react": "7.28.0",
"eslint-plugin-react": "7.29.0",
"eslint-plugin-react-hooks": "4.3.0",

@@ -47,4 +40,8 @@ "eslint-plugin-react-native": "4.0.0",

"eslint-plugin-unused-imports": "2.0.0",
"husky": "^7.0.4",
"husky": "7.0.4",
"mdi-react": "8.2.0",
"mock-require": "3.0.3",
"prettier": "2.5.1",
"react": "17.0.2",
"react-app-rewired": "2.2.1",
"react-dom": "17.0.2",

@@ -54,9 +51,2 @@ "react-scripts": "5.0.0",

},
"peerDependencies": {
"@emotion/react": "^11.5.0",
"@emotion/styled": "^11.3.0",
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^17.0.0",
"react-dom": "^17.0.0"
},
"browserslist": {

@@ -63,0 +53,0 @@ "production": [

@@ -1,112 +0,86 @@

# Eduzz Toolbar
# Eduzz Apps Toolbar
#### Instalação
Toolbar cross-application
`v4.x.x ou >` uso exclusivo para React.
### Como User
```
$ yarn add @eduzz/apps-toolbar
```
Via package (sugerido):
Adicione a fonte padrão no seu HTML.
> Mesmo sendo instalado via package, ele possui um processo de auto-atualização, ou seja, no
> browser ele tentará baixar a última versão ([^ patch, semver](https://docs.npmjs.com/about-semantic-versioning#using-semantic-versioning-to-specify-update-types-your-package-can-accept)),
> caso sem sucesso, ele usará a versão do bundle.
```html
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600&display=swap" rel="stylesheet">
```ts
import EduzzAppsToolbar from '@eduzz/apps-toolbar';
EduzzAppsToolbar({
application: 'nutror',
show: false //default false
}).then(toolbar => {
toolbar.show();
toolbar.setUser({/* user */});
//...
});
```
#### Implementação
Via CDN:
> Atenção na versão selecionada, importante manter o ^!
```js
<EduzzToolbar {...params}>
// ações customizadas
<EduzzToolbar.Action icon={<AvatarOutline />} />
<EduzzToolbar.Action icon={<NotificationOutline />} />
(function (d, l, c) {
var s = d.createElement('script');
s.async = true;
s.src = l;
s.onload = c;
d.body.append(s);
})(document, 'https://unpkg.com/@eduzz/apps-toolbar@^2.0.0/dist/widget.js', function () {
var toolbar = window.EduzzAppsToolbar({
application: 'nutror',
show: true //default false,
env: 'development'
});
// ações padrões
<EduzzToolbar.Apps />
<EduzzToolbar.User menu={...} />
</EduzzToolbar>
// Or later
toolbar.show();
toolbar.hide();
});
```
#### Props
## API
`Toolbar` props.
```js
```ts
// Parâmetros
interface IEduzzToolbarSetupParams {
application?: typeEduzzToolbarApplications;
user?: IEduzzToolbarUser;
disableChat?: boolean;
}
```
show: boolean; // default false
application?: 'nutror'
| 'blinket'
| 'orbita'
| 'sun'
| 'jobzz'
| 'telescope'
| 'safevideo'
| 'alumy'
| 'orbit-pages'; // default null
applicationUrls?: { [key in typeEduzzToolbarApplications]: string }; // override application urls
env?: 'production' | 'homolog' | 'development'; // default production
disableChat?: boolean; // default false, pode ser alterado depois, apenas para black+
`Toolbar.Action` props.
```js
interface IEduzzToolbarAction {
active?: boolean;
icon?: React.ReactNode;
label?: React.ReactNode;
onClick?: (element?: React.MouseEvent<HTMLDivElement>) => void;
}
```
`Toolbar.User` props.
```js
// menu
interface IEduzzToolbarUserMenu {
content: React.ReactNode;
icon?: React.ReactNode;
onClick?: (user: IEduzzToolbarUser, e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
disabled?: boolean;
hidden?: boolean;
divider?: boolean;
}
```
#### Desenvolvimento local
No arquivo `src/index.tsx` implemente o código abaixo.
```js
function DevApp() {
const params: IEduzzToolbarSetupParams = {
application: 'blinket',
disableChat: true,
user: {
id: 1,
name: 'John Doe',
email: 'eduzz@eduzz.com'
}
user?: { // default null, pode ser alterado depois
id: number;
email: string;
belt?: string;
isSupport?: boolean;
supportId?: number;
isClubeBlack?: boolean;
};
const menu: IEduzzToolbarUserMenu[] = [
{
content: 'Minhas compras',
onClick: () => console.log('shopping')
},
{
content: 'Dados cadastrais',
disabled: true
},
{
content: 'Sumiu!',
hidden: true
},
{
content: 'Sair',
divider: true
}
];
return (
<EduzzToolbar {...params}>
<EduzzToolbar.Apps />
<EduzzToolbar.User menu={menu} />
</EduzzToolbar>
);
}
ReactDOM.render(<DevApp />, document.getElementById('root'));
```
// Métodos
const EduzzAppsToolbar: (params: IEduzzToolbarSetupParams) => {
show(): void;
hide(): void;
setUser(user: IEduzzToolbarSetupParams['user']): void;
clearUser(): void;
enableChat(): void;
disableChat(): void;
};
```
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc