• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mendersoftware / gui / 1113439055

19 Dec 2023 09:01PM UTC coverage: 82.752% (-17.2%) from 99.964%
1113439055

Pull #4258

gitlab-ci

mender-test-bot
chore: Types update

Signed-off-by: Mender Test Bot <mender@northern.tech>
Pull Request #4258: chore: Types update

4326 of 6319 branches covered (0.0%)

8348 of 10088 relevant lines covered (82.75%)

189.39 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

73.33
/src/js/components/common/sharedsnackbar.js
1
// Copyright 2018 Northern.tech AS
2
//
3
//    Licensed under the Apache License, Version 2.0 (the "License");
4
//    you may not use this file except in compliance with the License.
5
//    You may obtain a copy of the License at
6
//
7
//        http://www.apache.org/licenses/LICENSE-2.0
8
//
9
//    Unless required by applicable law or agreed to in writing, software
10
//    distributed under the License is distributed on an "AS IS" BASIS,
11
//    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
//    See the License for the specific language governing permissions and
13
//    limitations under the License.
14
import React, { memo } from 'react';
15

16
import { Snackbar } from '@mui/material';
17

18
import copy from 'copy-to-clipboard';
19

20
export const SharedSnackbar = ({ setSnackbar, snackbar }) => {
2✔
21
  const handleActionClick = () => {
11✔
22
    copy(snackbar.message);
1✔
23
    setSnackbar('Copied to clipboard');
1✔
24
  };
25

26
  const onCloseSnackbar = (_, reason) => {
11✔
27
    const { onClose = false } = snackbar;
×
28
    if (onClose && reason === 'clickaway') {
×
29
      return;
×
30
    }
31
    setSnackbar('');
×
32
  };
33

34
  const { maxWidth, onClick = handleActionClick, ...snackProps } = snackbar;
11✔
35
  return (
11✔
36
    <Snackbar
37
      {...snackProps}
38
      anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }}
39
      style={{ maxWidth, height: 'auto', lineHeight: '28px', padding: 24, whiteSpace: 'pre-line' }}
40
      onClick={onClick}
41
      onClose={onCloseSnackbar}
42
    />
43
  );
44
};
45

46
const areEqual = (prevProps, nextProps) => {
2✔
47
  if (prevProps.snackbar.open != nextProps.snackbar.open || prevProps.snackbar.message != nextProps.snackbar.message) {
6✔
48
    return false;
3✔
49
  }
50
  return prevProps.snackbar.children != nextProps.snackbar.children;
3✔
51
};
52

53
export default memo(SharedSnackbar, areEqual);
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc