@uncinc/uncinc-react-kitchen-sink 2.3.4 → 2.3.6

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.
@@ -0,0 +1,47 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+ import React, { useState } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import classnames from 'classnames';
5
+ import './style.scss';
6
+ const AbbreviationAnnotation = ({
7
+ title,
8
+ children,
9
+ abbreviationTitle,
10
+ abbreviationContent,
11
+ ...props
12
+ }) => {
13
+ const [visible, setVisible] = useState(false);
14
+ const handleClick = e => {
15
+ e.preventDefault();
16
+ setVisible(!visible);
17
+ };
18
+ const className = classnames('AbbreviationAnnotationLink', {
19
+ 'AbbreviationAnnotationLink--uncollapsed': visible
20
+ });
21
+ const classNameInfo = classnames('AbbreviationAnnotation', {
22
+ 'AbbreviationAnnotation--visible': visible
23
+ });
24
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("a", _extends({
25
+ className: className,
26
+ onClick: handleClick
27
+ }, props), /*#__PURE__*/React.createElement("div", {
28
+ className: "AbbreviationAnnotationLink__content"
29
+ }, abbreviationTitle(children))), /*#__PURE__*/React.createElement("div", {
30
+ className: classNameInfo
31
+ }, abbreviationContent(title)));
32
+ };
33
+ AbbreviationAnnotation.propTypes = {
34
+ title: PropTypes.string.isRequired,
35
+ children: PropTypes.element.isRequired,
36
+ abbreviationTitle: PropTypes.func,
37
+ abbreviationContent: PropTypes.func
38
+ };
39
+ AbbreviationAnnotation.defaultProps = {
40
+ abbreviationTitle: html => {
41
+ return /*#__PURE__*/React.createElement("div", null, html);
42
+ },
43
+ abbreviationContent: html => {
44
+ return /*#__PURE__*/React.createElement("div", null, html);
45
+ }
46
+ };
47
+ export default AbbreviationAnnotation;
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import AbbreviationAnnotation from './';
3
+ export default {
4
+ title: 'Atoms/AbbreviationAnnotation'
5
+ };
6
+ const title = 'Titel';
7
+ const content = 'Content';
8
+ import './stories.scss';
9
+ export const Default = () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("p", null, "Lorem ipsum dolor sit amet, ", /*#__PURE__*/React.createElement("abbr", {
10
+ title: "Ut ut tellus et augue feugiat sollicitudin sit amet viverra nisi."
11
+ }, "consectetur adipiscing"), " elit. Aliquam in sodales tellus. Ut ut tellus et augue feugiat sollicitudin sit amet viverra nisi. Nulla malesuada erat non massa pellentesque, ut ultricies tellus sodales. Fusce ac feugiat ligula. In vel metus diam. Maecenas diam ex, tincidunt tempor nibh sed, suscipit semper lectus. Sed eu enim vel erat tempus mollis. Integer eget gravida orci. Nunc volutpat velit id dui semper tincidunt. Nulla maximus nisl nec volutpat faucibus. Integer vitae ullamcorper ex. Vestibulum facilisis convallis arcu, ac interdum libero malesuada eget."), /*#__PURE__*/React.createElement("p", null, "Donec feugiat, nunc vitae euismod", /*#__PURE__*/React.createElement(AbbreviationAnnotation, {
12
+ title: title,
13
+ abbreviationTitle: html => {
14
+ return /*#__PURE__*/React.createElement(React.Fragment, null, html, /*#__PURE__*/React.createElement("i", {
15
+ className: "icon icon-arrow icon-right"
16
+ }));
17
+ },
18
+ abbreviationContent: html => {
19
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("i", {
20
+ className: "icon icon-arrow icon-content"
21
+ }), /*#__PURE__*/React.createElement("div", null, html));
22
+ }
23
+ }, content), "posuere, urna nisl elementum nibh, quis ultricies libero leo sed neque. Praesent vel vestibulum sem, eget congue purus. Nunc non volutpat urna, vitae ullamcorper justo. Suspendisse in tortor ex. Phasellus euismod eget neque vitae consequat. Vestibulum sem mi, dictum id consectetur at, hendrerit in massa. Mauris quis sem condimentum, condimentum enim sed, varius sem. Curabitur convallis tempus nulla, eget consectetur quam sagittis at. Nulla a feugiat tortor. Mauris fermentum lectus ac mauris cursus ornare."), /*#__PURE__*/React.createElement("p", null, "Nam venenatis est eget lorem laoreet, id tempor urna hendrerit. Quisque suscipit in magna nec condimentum. Duis id tempor nisi. Sed rutrum urna elit, vitae placerat enim volutpat nec. Vivamus volutpat, magna sit amet commodo ultricies, enim turpis pretium libero, quis molestie nibh augue a ex. Nulla vestibulum vestibulum tellus, vel molestie libero vehicula nec. Sed maximus tortor vel ipsum cursus egestas. Proin suscipit tortor id luctus bibendum."));
@@ -0,0 +1,39 @@
1
+ @import 'assets/variables';
2
+
3
+ .AbbreviationAnnotationLink {
4
+ background-color: $color--tertiary;
5
+ font-family: var(--font--primary);
6
+ font-weight: normal;
7
+
8
+ &__content {
9
+ color: $color--white;
10
+ }
11
+
12
+ .icon-left {
13
+ margin-right: 0.5rem;
14
+ }
15
+
16
+ .icon-right {
17
+ margin-left: 0.5rem;
18
+ transform: rotate(90deg);
19
+ }
20
+
21
+ &--uncollapsed {
22
+ .icon-right {
23
+ transform: rotate(-90deg);
24
+ }
25
+ }
26
+ }
27
+
28
+ .AbbreviationAnnotation {
29
+ color: $color--white;
30
+ background-color: $color--tertiary;
31
+
32
+ .icon-content {
33
+ display: block;
34
+ font-size: 200%;
35
+ margin-top: -0.25rem;
36
+ flex: 0 0 auto;
37
+ margin-right: 1rem;
38
+ }
39
+ }
@@ -0,0 +1,33 @@
1
+ @import 'assets/variables';
2
+
3
+ .AbbreviationAnnotationLink {
4
+ display: inline-block;
5
+ padding: 0 0.5rem;
6
+ margin-right: 0.5rem;
7
+ text-decoration: none;
8
+ cursor: pointer;
9
+
10
+ :hover {
11
+ text-decoration: underline;
12
+ }
13
+
14
+ &__content {
15
+ white-space: nowrap;
16
+ display: flex;
17
+ flex: 0 0 auto;
18
+ align-items: center;
19
+ }
20
+
21
+ }
22
+
23
+ .AbbreviationAnnotation {
24
+ margin: 1rem 0;
25
+ padding: 2.4rem;
26
+ display: none;
27
+ align-items: row;
28
+
29
+ &--visible {
30
+ display: flex;
31
+ }
32
+
33
+ }
@@ -1,7 +1,11 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
  import React from 'react';
3
3
  import TextField from '../TextField';
4
+ import { useTranslation } from "react-i18next";
4
5
  const Number = props => {
6
+ const {
7
+ t
8
+ } = useTranslation();
5
9
  const {
6
10
  min,
7
11
  max,
@@ -12,13 +16,17 @@ const Number = props => {
12
16
  const validation = value => {
13
17
  let error;
14
18
  if (required && !value) {
15
- error = requiredError || `Value can not be empty`;
19
+ error = requiredError || t('webform.required');
16
20
  }
17
21
  if (min && parseInt(value) < min) {
18
- error = `Value can not be lower than ${min}.`;
22
+ error = t('webform.number.min', {
23
+ min: min
24
+ });
19
25
  }
20
26
  if (max && parseInt(value) > max) {
21
- error = `Value can not be higher than ${max}.`;
27
+ error = t('webform.number.max', {
28
+ max: max
29
+ });
22
30
  }
23
31
  return error;
24
32
  };
@@ -17,6 +17,7 @@ const SelectInput = props => {
17
17
  className,
18
18
  wrapperClassName,
19
19
  isClearable = true,
20
+ isSearchable = true,
20
21
  multiple = false,
21
22
  size
22
23
  } = props;
@@ -99,6 +100,7 @@ const SelectInput = props => {
99
100
  },
100
101
  placeholder: placeholder,
101
102
  isClearable: isClearable,
103
+ isSearchable: isSearchable,
102
104
  theme: {
103
105
  borderRadius: 0,
104
106
  colors: {
@@ -71,17 +71,15 @@ const SearchResults = ({
71
71
 
72
72
  // Scroll to top on every page.
73
73
  useEffect(() => {
74
- if (!currentData) {
75
- return;
76
- }
77
- const currentPageNumber = currentData.results.hits.page.pageNumber;
74
+ if (typeof data.results === 'undefined') return;
75
+ const currentPageNumber = data?.results?.hits?.page?.pageNumber;
78
76
  if (appendResults === false && scrollView && scrollView.current && currentPageNumber !== 0) {
79
77
  scrollView.current.scrollIntoView({
80
78
  behavior: 'smooth',
81
79
  block: 'start'
82
80
  });
83
81
  }
84
- }, [currentData]);
82
+ }, [data, appendResults, scrollView]);
85
83
  return /*#__PURE__*/React.createElement("div", {
86
84
  className: "SearchResults"
87
85
  }, data && /*#__PURE__*/React.createElement(SearchResultHeader, {
@@ -1,6 +1,5 @@
1
1
  import { useSearchkit, useSearchkitVariables } from '@searchkit/client';
2
- import React, { useState, useEffect } from 'react';
3
- import SelectStyled from 'react-select';
2
+ import React from 'react';
4
3
  import FormikWrapper from '../../Form/FormikWrapper';
5
4
  import Select from '../../Form/Select';
6
5
  const useInitialValues = () => {
@@ -24,6 +23,7 @@ export const SearchSorting = ({
24
23
  }, /*#__PURE__*/React.createElement(Select, {
25
24
  fieldName: "sortBy",
26
25
  isClearable: false,
26
+ isSearchable: false,
27
27
  options: options,
28
28
  isLoading: loading,
29
29
  onChange: value => {
@@ -1,5 +1,7 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
1
2
  import React from 'react';
2
3
  import WysiwygField from './';
4
+ import AbbreviationAnnotation from '../AbbreviationAnnotation';
3
5
  export default {
4
6
  title: 'Atoms/WysiwygField'
5
7
  };
@@ -7,14 +9,6 @@ const html = "<p>This is <em>some</em> example <a href='https://www.uncinc.nl'>H
7
9
  export const Primary = () => /*#__PURE__*/React.createElement(WysiwygField, {
8
10
  html: html
9
11
  });
10
- const Abbr = ({
11
- title,
12
- children
13
- }) => {
14
- return /*#__PURE__*/React.createElement("abbr", {
15
- title: title
16
- }, children);
17
- };
18
12
  const htmlCustomHandler = `
19
13
  <p>Lorem ipsum dolor sit amet, <abbr title="Ut ut tellus et augue feugiat sollicitudin sit amet viverra nisi.">consectetur adipiscing</abbr> elit. Aliquam in sodales tellus. Ut ut tellus et augue feugiat sollicitudin sit amet viverra nisi. Nulla malesuada erat non massa pellentesque, ut ultricies tellus sodales. Fusce ac feugiat ligula. In vel metus diam. Maecenas diam ex, tincidunt tempor nibh sed, suscipit semper lectus. Sed eu enim vel erat tempus mollis. Integer eget gravida orci. Nunc volutpat velit id dui semper tincidunt. Nulla maximus nisl nec volutpat faucibus. Integer vitae ullamcorper ex. Vestibulum facilisis convallis arcu, ac interdum libero malesuada eget.</p>
20
14
  <p>Donec feugiat, nunc vitae euismod posuere, urna nisl elementum nibh, quis ultricies libero leo sed neque. Praesent vel vestibulum sem, eget congue purus. Nunc non volutpat urna, vitae ullamcorper justo. Suspendisse in tortor ex. Phasellus euismod eget neque vitae consequat. Vestibulum sem mi, dictum id consectetur at, hendrerit in massa. Mauris quis sem condimentum, condimentum enim sed, varius sem. Curabitur convallis tempus nulla, eget consectetur quam sagittis at. Nulla a feugiat tortor. Mauris fermentum lectus ac mauris cursus ornare.</p>
@@ -26,10 +20,9 @@ export const CustomHandlers = () => /*#__PURE__*/React.createElement(WysiwygFiel
26
20
  switch (element.name) {
27
21
  case 'abbr':
28
22
  {
29
- console.log(element);
30
- return /*#__PURE__*/React.createElement(Abbr, {
23
+ return /*#__PURE__*/React.createElement(AbbreviationAnnotation, _extends({
31
24
  title: element.attribs.title
32
- }, element.children[0].data);
25
+ }, element.attribs), element.children[0].data);
33
26
  }
34
27
  default:
35
28
  {
package/dist/index.js CHANGED
@@ -51,4 +51,5 @@ export { default as Cookie } from './components/Cookie';
51
51
  export { default as useOnScreen } from './hooks/useOnScreen';
52
52
  export { default as usePrevious } from './hooks/usePrevious';
53
53
  export { default as useScrollPosition } from './hooks/useScrollPosition';
54
- export { default as useWindowDimensions } from './hooks/useWindowDimensions';
54
+ export { default as useWindowDimensions } from './hooks/useWindowDimensions';
55
+ export { default as AbbreviationAnnotation } from './components/AbbreviationAnnotation';
@@ -23,7 +23,6 @@ a:not(.Button) {
23
23
  &:focus,
24
24
  &:active,
25
25
  &:hover {
26
- text-decoration: none;
27
26
  color: inherit;
28
27
  }
29
28
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uncinc/uncinc-react-kitchen-sink",
3
- "version": "2.3.4",
3
+ "version": "2.3.6",
4
4
  "description": "Default React components that are easily extended.",
5
5
  "author": "uncinc",
6
6
  "license": "MIT",