Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
14ebb4a
Bump lodash from 4.17.15 to 4.17.19
dependabot[bot] Jul 20, 2020
d8b9edb
Merge pull request #7 from scrumble-nl/dependabot/npm_and_yarn/lodash…
Luukdewaaier Jul 21, 2020
8ed1cca
Bump y18n from 3.2.1 to 3.2.2
dependabot[bot] Mar 31, 2021
cfc1276
Merge pull request #8 from scrumble-nl/dependabot/npm_and_yarn/y18n-3…
Luukdewaaier Apr 28, 2021
dada17d
Bump ua-parser-js from 0.7.20 to 0.7.28
dependabot[bot] May 7, 2021
dd51fc4
Bump lodash from 4.17.19 to 4.17.21
dependabot[bot] May 11, 2021
59f6633
Bump hosted-git-info from 2.8.5 to 2.8.9
dependabot[bot] May 11, 2021
c117462
Merge pull request #11 from scrumble-nl/dependabot/npm_and_yarn/hoste…
Luukdewaaier May 27, 2021
8c06bfe
Merge pull request #10 from scrumble-nl/dependabot/npm_and_yarn/lodas…
Luukdewaaier May 27, 2021
ba9248b
Merge pull request #9 from scrumble-nl/dependabot/npm_and_yarn/ua-par…
Luukdewaaier May 27, 2021
4802323
Merge pull request #12 from scrumble-nl/master
Luukdewaaier May 27, 2021
653799f
Added custom hook
Luukdewaaier May 27, 2021
11f1bf6
Merge pull request #13 from scrumble-nl/feature-custom-hook
Luukdewaaier May 27, 2021
02761df
bumped versions
Luukdewaaier Feb 3, 2022
12a625f
fixed vulnerabilities
Luukdewaaier Feb 3, 2022
5dfddc5
Upgrade to react 18
stefanScrumble Sep 30, 2022
5dc1369
prettier
stefanScrumble Sep 30, 2022
8c605e8
Merge pull request #16 from stefanScrumble/development
Luukdewaaier Sep 30, 2022
28b0d23
WIP
sanderScrumble May 6, 2025
820d721
Fix css file building
sanderScrumble May 6, 2025
e644205
Fix missing types
sanderScrumble May 6, 2025
be36d94
Fix typing issue
sanderScrumble May 6, 2025
904101f
bump version, missing file
sanderScrumble May 6, 2025
3e6c7c9
Processed feedback, updated readme
sanderScrumble May 7, 2025
39089d8
process feedback, move isIToast function
sanderScrumble May 7, 2025
39a1871
Merge pull request #20 from sanderScrumble/@feature/11541-react-19
RicoClark May 8, 2025
d4172f2
Use destructoring for Toast component
Mechazawa May 13, 2025
15fd3fd
Merge pull request #21 from scrumble-nl/@fix/eslint
Luukdewaaier May 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .babelrc

This file was deleted.

4 changes: 4 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
node_modules
public
.eslintrc.js
vendor
44 changes: 44 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
module.exports = {
root: true,
settings: {
react: {
version: 'detect',
},
},
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint', 'react', 'react-hooks', 'prettier', '@scrumble-nl/scrumble-rules'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'prettier',
'plugin:react/recommended',
'plugin:react-hooks/recommended',
],
rules: {
'@typescript-eslint/ban-types': 'off',
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-empty-function': 'off',
'@typescript-eslint/no-unused-vars': 'warn',
'@typescript-eslint/no-inferrable-types': 'off',
'@typescript-eslint/explicit-function-return-type': 'off',

'no-console': 'warn',
'no-useless-escape': 'off',

'@scrumble-nl/scrumble-rules/sort-imports': 'error',

'prettier/prettier': 'warn',

'react/jsx-uses-react': 'error',
'react/jsx-uses-vars': 'error',
'react/display-name': 'off',

'react-hooks/rules-of-hooks': 'error',
'react-hooks/exhaustive-deps': 'error',
},
parserOptions: {
ecmaFeatures: {
jsx: true,
},
},
};
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
node_modules
/lib
.idea/
.idea/
.DS_Store
56 changes: 36 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,14 @@ Add the provider as top level as possible:
import React from 'react';
import App from './src/app';
import {ToastProvider} from '@scrumble-nl/quick-toaster'; // Don't forget to import this

export default class ToastApp extends React.Component<{}, {}> {
render = (): JSX.Element => {
return (
<ToastProvider>
<App/>
</ToastProvider>
)
}
}
import 'bootstrap/dist/css/bootstrap.min.css';
import '@scrumble-nl/react-quick-toaster/lib/scss/toaster.css'; // Don't forget to import this

export const ToastApp = () => (
<ToastProvider>
<App />
</ToastProvider>
);
```
The `ToastProvider` has multiple optional props so you can customize it to your needs:

Expand All @@ -40,23 +38,41 @@ The `ToastProvider` has multiple optional props so you can customize it to your
| `maxItems` | number | *false* | The maximum amount of toasts rendered at a given time | `8`
| `defaultTimer` | number | *false* | The default amount of ms before the toast is removed | `4000`

### Adding toasts
### Adding toasts hooks

1. Import `useToaster` in the component where you want to create a toast
2. Finally, you can create a toast with the desired configuration from your component:
```typescript
import React from 'react';
import {useToaster} from '@scrumble-nl/quick-toaster'; // Step 1

export const MyComponent = () => {
const toast = useToaster();

const handleClick = () => {
toast({
content: 'Damn, this is an easy package!',
variant: 'danger',
});
};

return (
<button onClick={handleClick}>Show my awesome toast</button>
)
}
```

### Adding toasts class components (Legacy)

1. Import `withToaster` in the component where you want to create a toast
2. If you are using TypeScript, import `IToast` and add toaster to your interface
2. If you are using TypeScript, import `ToasterProps` and use for props typing
3. Add `export default withToaster(MyComponent)` to the file
4. Finally, you can create a toast with the desired configuration from your component:
```typescript
import React from 'react';
import {withToaster, IToast} from '@scrumble-nl/quick-toaster'; // Step 1 (& 2)

interface props {
toaster: {
add(toast: IToast): void, // Step 2
},
}
import {withToaster, ToasterProps} from '@scrumble-nl/quick-toaster'; // Step 1 (& 2)

class MyComponent extends React.Component<props, {}> {
class MyComponent extends React.Component<ToasterProps, {}> {

showToast = (): void => {
this.props.toaster.add({content: 'Damn, this is an easy package!'}); // Step 4
Expand Down
7 changes: 0 additions & 7 deletions jestconfig.json

This file was deleted.

Loading