@coorpacademy/components 10.1.9 → 10.1.10

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.
Files changed (54) hide show
  1. package/es/atom/empty-search-result/index.js +24 -0
  2. package/es/atom/empty-search-result/index.js.map +1 -0
  3. package/es/atom/empty-search-result/style.css +25 -0
  4. package/es/atom/empty-search-result/test/fixtures/default.js +7 -0
  5. package/es/atom/empty-search-result/test/fixtures/default.js.map +1 -0
  6. package/es/atom/empty-search-result/test/fixtures.js +13 -0
  7. package/es/atom/empty-search-result/test/fixtures.js.map +1 -0
  8. package/es/atom/input-text/index.js +3 -2
  9. package/es/atom/input-text/index.js.map +1 -1
  10. package/es/organism/course-selection/index.js +57 -0
  11. package/es/organism/course-selection/index.js.map +1 -0
  12. package/es/organism/course-selection/style.css +23 -0
  13. package/es/organism/course-selection/test/fixtures/default.js +34 -0
  14. package/es/organism/course-selection/test/fixtures/default.js.map +1 -0
  15. package/es/organism/course-selection/test/fixtures/empty.js +18 -0
  16. package/es/organism/course-selection/test/fixtures/empty.js.map +1 -0
  17. package/es/organism/course-selection/test/fixtures/filtered.js +24 -0
  18. package/es/organism/course-selection/test/fixtures/filtered.js.map +1 -0
  19. package/es/organism/course-selection/test/fixtures/sorted-selected.js +31 -0
  20. package/es/organism/course-selection/test/fixtures/sorted-selected.js.map +1 -0
  21. package/es/organism/course-selection/test/fixtures/unsorted-selected.js +31 -0
  22. package/es/organism/course-selection/test/fixtures/unsorted-selected.js.map +1 -0
  23. package/es/organism/search-and-chips-results/index.js +3 -8
  24. package/es/organism/search-and-chips-results/index.js.map +1 -1
  25. package/es/organism/search-and-chips-results/style.css +0 -22
  26. package/lib/atom/empty-search-result/index.js +34 -0
  27. package/lib/atom/empty-search-result/index.js.map +1 -0
  28. package/lib/atom/empty-search-result/style.css +25 -0
  29. package/lib/atom/empty-search-result/test/fixtures/default.js +12 -0
  30. package/lib/atom/empty-search-result/test/fixtures/default.js.map +1 -0
  31. package/lib/{molecule → atom}/empty-search-result/test/fixtures.js +3 -3
  32. package/lib/atom/empty-search-result/test/fixtures.js.map +1 -0
  33. package/lib/atom/input-text/index.js +3 -2
  34. package/lib/atom/input-text/index.js.map +1 -1
  35. package/lib/organism/course-selection/index.js +70 -0
  36. package/lib/organism/course-selection/index.js.map +1 -0
  37. package/lib/organism/course-selection/style.css +23 -0
  38. package/lib/organism/course-selection/test/fixtures/default.js +47 -0
  39. package/lib/organism/course-selection/test/fixtures/default.js.map +1 -0
  40. package/lib/organism/course-selection/test/fixtures/empty.js +23 -0
  41. package/lib/organism/course-selection/test/fixtures/empty.js.map +1 -0
  42. package/lib/organism/course-selection/test/fixtures/filtered.js +36 -0
  43. package/lib/organism/course-selection/test/fixtures/filtered.js.map +1 -0
  44. package/lib/organism/course-selection/test/fixtures/sorted-selected.js +44 -0
  45. package/lib/organism/course-selection/test/fixtures/sorted-selected.js.map +1 -0
  46. package/lib/organism/course-selection/test/fixtures/unsorted-selected.js +44 -0
  47. package/lib/organism/course-selection/test/fixtures/unsorted-selected.js.map +1 -0
  48. package/lib/organism/search-and-chips-results/index.js +4 -8
  49. package/lib/organism/search-and-chips-results/index.js.map +1 -1
  50. package/lib/organism/search-and-chips-results/style.css +0 -22
  51. package/package.json +2 -2
  52. package/es/molecule/empty-search-result/test/fixtures.js +0 -13
  53. package/es/molecule/empty-search-result/test/fixtures.js.map +0 -1
  54. package/lib/molecule/empty-search-result/test/fixtures.js.map +0 -1
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import style from './style.css';
4
+
5
+ const EmptySearchResult = props => {
6
+ const {
7
+ firstMessage,
8
+ secondMessage
9
+ } = props;
10
+ return /*#__PURE__*/React.createElement("div", {
11
+ className: style.container
12
+ }, /*#__PURE__*/React.createElement("span", {
13
+ className: style.firstMessage
14
+ }, firstMessage), /*#__PURE__*/React.createElement("span", {
15
+ className: style.secondMessage
16
+ }, secondMessage));
17
+ };
18
+
19
+ EmptySearchResult.propTypes = process.env.NODE_ENV !== "production" ? {
20
+ firstMessage: PropTypes.string.isRequired,
21
+ secondMessage: PropTypes.string.isRequired
22
+ } : {};
23
+ export default EmptySearchResult;
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/empty-search-result/index.js"],"names":["React","PropTypes","style","EmptySearchResult","props","firstMessage","secondMessage","container","propTypes","string","isRequired"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,iBAAiB,GAAGC,KAAK,IAAI;AACjC,QAAM;AAACC,IAAAA,YAAD;AAAeC,IAAAA;AAAf,MAAgCF,KAAtC;AACA,sBACE;AAAK,IAAA,SAAS,EAAEF,KAAK,CAACK;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAEL,KAAK,CAACG;AAAvB,KAAsCA,YAAtC,CADF,eAEE;AAAM,IAAA,SAAS,EAAEH,KAAK,CAACI;AAAvB,KAAuCA,aAAvC,CAFF,CADF;AAMD,CARD;;AAUAH,iBAAiB,CAACK,SAAlB,2CAA8B;AAC5BH,EAAAA,YAAY,EAAEJ,SAAS,CAACQ,MAAV,CAAiBC,UADH;AAE5BJ,EAAAA,aAAa,EAAEL,SAAS,CAACQ,MAAV,CAAiBC;AAFJ,CAA9B;AAKA,eAAeP,iBAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport style from './style.css';\n\nconst EmptySearchResult = props => {\n const {firstMessage, secondMessage} = props;\n return (\n <div className={style.container}>\n <span className={style.firstMessage}>{firstMessage}</span>\n <span className={style.secondMessage}>{secondMessage}</span>\n </div>\n );\n};\n\nEmptySearchResult.propTypes = {\n firstMessage: PropTypes.string.isRequired,\n secondMessage: PropTypes.string.isRequired\n};\n\nexport default EmptySearchResult;\n"],"file":"index.js"}
@@ -0,0 +1,25 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value cm_primary_blue from colors;
3
+ @value cm_grey_900 from colors;
4
+
5
+ .container {
6
+ margin: 48px 0;
7
+ width: 100%;
8
+ display: flex;
9
+ flex-direction: column;
10
+ align-items: center;
11
+ font-size: 16px;
12
+ font-weight: bold;
13
+ font-family: Gilroy;
14
+ font-size: 16px;
15
+ }
16
+
17
+ .firstMessage {
18
+ color: cm_grey_900;
19
+ display: block;
20
+ }
21
+
22
+ .secondMessage {
23
+ color: cm_primary_blue;
24
+ display: block;
25
+ }
@@ -0,0 +1,7 @@
1
+ export default {
2
+ props: {
3
+ firstMessage: 'No results...',
4
+ secondMessage: 'Try something else'
5
+ }
6
+ };
7
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/atom/empty-search-result/test/fixtures/default.js"],"names":["props","firstMessage","secondMessage"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,YAAY,EAAE,eADT;AAELC,IAAAA,aAAa,EAAE;AAFV;AADM,CAAf","sourcesContent":["export default {\n props: {\n firstMessage: 'No results...',\n secondMessage: 'Try something else'\n }\n};\n"],"file":"default.js"}
@@ -0,0 +1,13 @@
1
+ import test from 'ava';
2
+ import forEach from 'lodash/forEach';
3
+ import renderComponentMacro from '../../../test/helpers/render-component';
4
+ import AtomEmptySearchResult from '..';
5
+ import fixtureDefault from './fixtures/default';
6
+ test('Atom › AtomEmptySearchResult > should have valid propTypes', t => {
7
+ t.pass();
8
+ forEach(AtomEmptySearchResult.propTypes, (value, key) => {
9
+ t.not(value, undefined, `PropType for "Atom.AtomEmptySearchResult.propTypes.${key}" may not be undefined. Did you mistype the propTypes definition?`);
10
+ });
11
+ });
12
+ test('Atom › AtomEmptySearchResult › Default › should be rendered', renderComponentMacro, AtomEmptySearchResult, fixtureDefault);
13
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/atom/empty-search-result/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","AtomEmptySearchResult","fixtureDefault","t","pass","propTypes","value","key","not","undefined"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,KAAjB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,oBAAP,MAAiC,wCAAjC;AACA,OAAOC,qBAAP,MAAkC,IAAlC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AAEAJ,IAAI,CAAC,4DAAD,EAA+DK,CAAC,IAAI;AACtEA,EAAAA,CAAC,CAACC,IAAF;AACAL,EAAAA,OAAO,CAACE,qBAAqB,CAACI,SAAvB,EAAkC,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACvDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,sDAAqDF,GAAI,mEAAlF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAT,IAAI,CAAC,6DAAD,EAAgEE,oBAAhE,EAAsFC,qBAAtF,EAA6GC,cAA7G,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport AtomEmptySearchResult from '..';\nimport fixtureDefault from './fixtures/default';\n\ntest('Atom › AtomEmptySearchResult > should have valid propTypes', t => {\n t.pass();\n forEach(AtomEmptySearchResult.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Atom.AtomEmptySearchResult.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Atom › AtomEmptySearchResult › Default › should be rendered', renderComponentMacro, AtomEmptySearchResult, fixtureDefault);\n"],"file":"fixtures.js"}
@@ -32,6 +32,7 @@ const InputText = props => {
32
32
  modified = false,
33
33
  title: propsTitle
34
34
  } = props;
35
+ const isCMTheme = theme === 'coorpmanager';
35
36
  const title = `${propsTitle}${required ? '*' : ''}`;
36
37
  const handleChange = useMemo(() => e => onChange(e.target.value), [onChange]);
37
38
  const mainClass = themeStyle[theme];
@@ -53,10 +54,10 @@ const InputText = props => {
53
54
  __html: error || hint
54
55
  }
55
56
  }) : null;
56
- const errorIconView = error ? /*#__PURE__*/React.createElement(ErrorIcon, {
57
+ const errorIconView = isCMTheme && error ? /*#__PURE__*/React.createElement(ErrorIcon, {
57
58
  className: style.leftIcon
58
59
  }) : null;
59
- const validIconView = valid ? /*#__PURE__*/React.createElement(CheckIcon, {
60
+ const validIconView = isCMTheme && valid ? /*#__PURE__*/React.createElement(CheckIcon, {
60
61
  className: style.leftIcon
61
62
  }) : null;
62
63
  return /*#__PURE__*/React.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/input-text/index.js"],"names":["React","useMemo","PropTypes","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidStatusClose","ErrorIcon","NovaCompositionCoorpacademyInformationIcon","InfoIcon","classnames","getClassState","style","themeStyle","setup","coorpmanager","cockpit","default","InputText","props","autoFocus","placeholder","value","hint","defaultValue","onChange","error","valid","theme","description","disabled","required","modified","title","propsTitle","handleChange","e","target","mainClass","className","descriptionView","toolTipView","infoIconWrapper","infoIcon","descriptionLabel","hintView","__html","errorIconView","leftIcon","validIconView","isNoTitle","noValue","input","propTypes","bool","string","oneOf","func"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, isNil, keys, isEmpty} from 'lodash/fp';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidStatusClose as ErrorIcon,\n NovaCompositionCoorpacademyInformationIcon as InfoIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setup,\n coorpmanager: style.coorpmanager,\n cockpit: style.cockpit,\n default: style.default\n};\nconst InputText = props => {\n const {\n autoFocus = false,\n placeholder = '',\n value,\n hint,\n defaultValue,\n onChange = noop,\n error,\n valid,\n theme = 'default',\n description,\n disabled,\n required,\n modified = false,\n title: propsTitle\n } = props;\n\n const title = `${propsTitle}${required ? '*' : ''}`;\n const handleChange = useMemo(() => e => onChange(e.target.value), [onChange]);\n const mainClass = themeStyle[theme];\n const className = getClassState(style.default, style.modified, style.error, modified, error);\n const descriptionView =\n description && theme !== 'coorpmanager' ? (\n <div className={style.description}>{description}</div>\n ) : null;\n const toolTipView =\n description && theme === 'coorpmanager' ? (\n <div className={style.infoIconWrapper}>\n <InfoIcon className={style.infoIcon} />\n <div className={style.descriptionLabel}>{description}</div>\n </div>\n ) : null;\n const hintView =\n theme === 'coorpmanager' ? (\n <div\n className={style.hint}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: error || hint}}\n />\n ) : null;\n const errorIconView = error ? <ErrorIcon className={style.leftIcon} /> : null;\n const validIconView = valid ? <CheckIcon className={style.leftIcon} /> : null;\n\n return (\n <div\n className={classnames(\n mainClass,\n className,\n disabled && style.disabled,\n isNil(propsTitle) && style.isNoTitle\n )}\n >\n <label>\n <span className={classnames(style.title, isEmpty(value) && style.noValue)}>\n {title}\n {toolTipView}\n </span>\n\n <input\n autoFocus={autoFocus}\n type=\"text\"\n name={title}\n className={style.input}\n placeholder={placeholder}\n defaultValue={defaultValue}\n autoComplete={'off'}\n value={value}\n onInput={handleChange}\n disabled={disabled}\n onChange={noop}\n />\n {errorIconView}\n {validIconView}\n {hintView}\n </label>\n {descriptionView}\n </div>\n );\n};\n\nInputText.propTypes = {\n autoFocus: PropTypes.bool,\n title: PropTypes.string,\n placeholder: PropTypes.string,\n defaultValue: PropTypes.string,\n theme: PropTypes.oneOf(keys(themeStyle)),\n disabled: PropTypes.bool,\n required: PropTypes.bool,\n value: PropTypes.string,\n hint: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string,\n modified: PropTypes.bool,\n valid: PropTypes.bool\n};\nexport default InputText;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/input-text/index.js"],"names":["React","useMemo","PropTypes","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidStatusClose","ErrorIcon","NovaCompositionCoorpacademyInformationIcon","InfoIcon","classnames","getClassState","style","themeStyle","setup","coorpmanager","cockpit","default","InputText","props","autoFocus","placeholder","value","hint","defaultValue","onChange","error","valid","theme","description","disabled","required","modified","title","propsTitle","isCMTheme","handleChange","e","target","mainClass","className","descriptionView","toolTipView","infoIconWrapper","infoIcon","descriptionLabel","hintView","__html","errorIconView","leftIcon","validIconView","isNoTitle","noValue","input","propTypes","bool","string","oneOf","func"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, isNil, keys, isEmpty} from 'lodash/fp';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidStatusClose as ErrorIcon,\n NovaCompositionCoorpacademyInformationIcon as InfoIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setup,\n coorpmanager: style.coorpmanager,\n cockpit: style.cockpit,\n default: style.default\n};\nconst InputText = props => {\n const {\n autoFocus = false,\n placeholder = '',\n value,\n hint,\n defaultValue,\n onChange = noop,\n error,\n valid,\n theme = 'default',\n description,\n disabled,\n required,\n modified = false,\n title: propsTitle\n } = props;\n\n const isCMTheme = theme === 'coorpmanager';\n const title = `${propsTitle}${required ? '*' : ''}`;\n const handleChange = useMemo(() => e => onChange(e.target.value), [onChange]);\n const mainClass = themeStyle[theme];\n const className = getClassState(style.default, style.modified, style.error, modified, error);\n const descriptionView =\n description && theme !== 'coorpmanager' ? (\n <div className={style.description}>{description}</div>\n ) : null;\n const toolTipView =\n description && theme === 'coorpmanager' ? (\n <div className={style.infoIconWrapper}>\n <InfoIcon className={style.infoIcon} />\n <div className={style.descriptionLabel}>{description}</div>\n </div>\n ) : null;\n const hintView =\n theme === 'coorpmanager' ? (\n <div\n className={style.hint}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: error || hint}}\n />\n ) : null;\n const errorIconView = isCMTheme && error ? <ErrorIcon className={style.leftIcon} /> : null;\n const validIconView = isCMTheme && valid ? <CheckIcon className={style.leftIcon} /> : null;\n\n return (\n <div\n className={classnames(\n mainClass,\n className,\n disabled && style.disabled,\n isNil(propsTitle) && style.isNoTitle\n )}\n >\n <label>\n <span className={classnames(style.title, isEmpty(value) && style.noValue)}>\n {title}\n {toolTipView}\n </span>\n\n <input\n autoFocus={autoFocus}\n type=\"text\"\n name={title}\n className={style.input}\n placeholder={placeholder}\n defaultValue={defaultValue}\n autoComplete={'off'}\n value={value}\n onInput={handleChange}\n disabled={disabled}\n onChange={noop}\n />\n {errorIconView}\n {validIconView}\n {hintView}\n </label>\n {descriptionView}\n </div>\n );\n};\n\nInputText.propTypes = {\n autoFocus: PropTypes.bool,\n title: PropTypes.string,\n placeholder: PropTypes.string,\n defaultValue: PropTypes.string,\n theme: PropTypes.oneOf(keys(themeStyle)),\n disabled: PropTypes.bool,\n required: PropTypes.bool,\n value: PropTypes.string,\n hint: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string,\n modified: PropTypes.bool,\n valid: PropTypes.bool\n};\nexport default InputText;\n"],"file":"index.js"}
@@ -0,0 +1,57 @@
1
+ import _isEmpty from "lodash/fp/isEmpty";
2
+
3
+ function _extends() { _extends = Object.assign || 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); }
4
+
5
+ import React from 'react';
6
+ import PropTypes from 'prop-types';
7
+ import EmptySearchResult from '../../atom/empty-search-result';
8
+ import Search from '../../atom/input-search';
9
+ import Card from '../../molecule/card';
10
+ import style from './style.css';
11
+
12
+ const buildResultView = (courses, coursesSelectionAriaLabel, emptyMessages) => {
13
+ if (_isEmpty(courses)) {
14
+ return /*#__PURE__*/React.createElement(EmptySearchResult, emptyMessages);
15
+ }
16
+
17
+ const items = courses.map((card, index) => {
18
+ return /*#__PURE__*/React.createElement("li", {
19
+ className: style.cards,
20
+ key: `card-${index}`
21
+ }, /*#__PURE__*/React.createElement(Card, card));
22
+ });
23
+ return /*#__PURE__*/React.createElement("ul", {
24
+ "aria-label": coursesSelectionAriaLabel
25
+ }, items);
26
+ };
27
+
28
+ const CourseSelection = props => {
29
+ const {
30
+ search,
31
+ courses,
32
+ emptyMessages,
33
+ 'courses-selection-aria-label': coursesSelectionAriaLabel
34
+ } = props;
35
+ const resultView = buildResultView(courses, coursesSelectionAriaLabel, emptyMessages);
36
+ return /*#__PURE__*/React.createElement("div", {
37
+ className: style.container
38
+ }, /*#__PURE__*/React.createElement("div", {
39
+ className: style.search
40
+ }, /*#__PURE__*/React.createElement(Search, _extends({}, search, {
41
+ theme: "coorpmanager"
42
+ }))), /*#__PURE__*/React.createElement("div", {
43
+ className: style.cardsContainer
44
+ }, resultView));
45
+ };
46
+
47
+ CourseSelection.propTypes = process.env.NODE_ENV !== "production" ? {
48
+ search: PropTypes.shape(Search.PropTypes),
49
+ courses: PropTypes.arrayOf(PropTypes.shape(Card.propTypes)),
50
+ 'courses-selection-aria-label': PropTypes.string,
51
+ emptyMessages: PropTypes.shape({
52
+ firstMessage: PropTypes.string,
53
+ secondMessage: PropTypes.string
54
+ })
55
+ } : {};
56
+ export default CourseSelection;
57
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/organism/course-selection/index.js"],"names":["React","PropTypes","EmptySearchResult","Search","Card","style","buildResultView","courses","coursesSelectionAriaLabel","emptyMessages","items","map","card","index","cards","CourseSelection","props","search","resultView","container","cardsContainer","propTypes","shape","arrayOf","string","firstMessage","secondMessage"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,iBAAP,MAA8B,gCAA9B;AACA,OAAOC,MAAP,MAAmB,yBAAnB;AACA,OAAOC,IAAP,MAAiB,qBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,eAAe,GAAG,CAACC,OAAD,EAAUC,yBAAV,EAAqCC,aAArC,KAAuD;AAC7E,MAAI,SAAQF,OAAR,CAAJ,EAAsB;AACpB,wBAAO,oBAAC,iBAAD,EAAuBE,aAAvB,CAAP;AACD;;AAED,QAAMC,KAAK,GAAGH,OAAO,CAACI,GAAR,CAAY,CAACC,IAAD,EAAOC,KAAP,KAAiB;AACzC,wBACE;AAAI,MAAA,SAAS,EAAER,KAAK,CAACS,KAArB;AAA4B,MAAA,GAAG,EAAG,QAAOD,KAAM;AAA/C,oBACE,oBAAC,IAAD,EAAUD,IAAV,CADF,CADF;AAKD,GANa,CAAd;AAQA,sBAAO;AAAI,kBAAYJ;AAAhB,KAA4CE,KAA5C,CAAP;AACD,CAdD;;AAgBA,MAAMK,eAAe,GAAGC,KAAK,IAAI;AAC/B,QAAM;AACJC,IAAAA,MADI;AAEJV,IAAAA,OAFI;AAGJE,IAAAA,aAHI;AAIJ,oCAAgCD;AAJ5B,MAKFQ,KALJ;AAOA,QAAME,UAAU,GAAGZ,eAAe,CAACC,OAAD,EAAUC,yBAAV,EAAqCC,aAArC,CAAlC;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACc;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEd,KAAK,CAACY;AAAtB,kBACE,oBAAC,MAAD,eAAYA,MAAZ;AAAoB,IAAA,KAAK,EAAC;AAA1B,KADF,CADF,eAIE;AAAK,IAAA,SAAS,EAAEZ,KAAK,CAACe;AAAtB,KAAuCF,UAAvC,CAJF,CADF;AAQD,CAlBD;;AAoBAH,eAAe,CAACM,SAAhB,2CAA4B;AAC1BJ,EAAAA,MAAM,EAAEhB,SAAS,CAACqB,KAAV,CAAgBnB,MAAM,CAACF,SAAvB,CADkB;AAE1BM,EAAAA,OAAO,EAAEN,SAAS,CAACsB,OAAV,CAAkBtB,SAAS,CAACqB,KAAV,CAAgBlB,IAAI,CAACiB,SAArB,CAAlB,CAFiB;AAG1B,kCAAgCpB,SAAS,CAACuB,MAHhB;AAI1Bf,EAAAA,aAAa,EAAER,SAAS,CAACqB,KAAV,CAAgB;AAC7BG,IAAAA,YAAY,EAAExB,SAAS,CAACuB,MADK;AAE7BE,IAAAA,aAAa,EAAEzB,SAAS,CAACuB;AAFI,GAAhB;AAJW,CAA5B;AAUA,eAAeT,eAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport EmptySearchResult from '../../atom/empty-search-result';\nimport Search from '../../atom/input-search';\nimport Card from '../../molecule/card';\nimport style from './style.css';\n\nconst buildResultView = (courses, coursesSelectionAriaLabel, emptyMessages) => {\n if (isEmpty(courses)) {\n return <EmptySearchResult {...emptyMessages} />;\n }\n\n const items = courses.map((card, index) => {\n return (\n <li className={style.cards} key={`card-${index}`}>\n <Card {...card} />\n </li>\n );\n });\n\n return <ul aria-label={coursesSelectionAriaLabel}>{items}</ul>;\n};\n\nconst CourseSelection = props => {\n const {\n search,\n courses,\n emptyMessages,\n 'courses-selection-aria-label': coursesSelectionAriaLabel\n } = props;\n\n const resultView = buildResultView(courses, coursesSelectionAriaLabel, emptyMessages);\n\n return (\n <div className={style.container}>\n <div className={style.search}>\n <Search {...search} theme=\"coorpmanager\" />\n </div>\n <div className={style.cardsContainer}>{resultView}</div>\n </div>\n );\n};\n\nCourseSelection.propTypes = {\n search: PropTypes.shape(Search.PropTypes),\n courses: PropTypes.arrayOf(PropTypes.shape(Card.propTypes)),\n 'courses-selection-aria-label': PropTypes.string,\n emptyMessages: PropTypes.shape({\n firstMessage: PropTypes.string,\n secondMessage: PropTypes.string\n })\n};\n\nexport default CourseSelection;\n"],"file":"index.js"}
@@ -0,0 +1,23 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value cm_primary_blue from colors;
3
+ @value cm_grey_100 from colors;
4
+ @value cm_grey_900 from colors;
5
+
6
+ .container {
7
+ width: 100%;
8
+ }
9
+
10
+ .search {
11
+ width: 42%;
12
+ min-width: 309px;
13
+ }
14
+
15
+ .cardsContainer {
16
+ margin: 24px 0 0 0;
17
+ width: 100%;
18
+ }
19
+
20
+ .cards {
21
+ display: inline-block;
22
+ margin: 0 16px 16px 0px;
23
+ }
@@ -0,0 +1,34 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';
4
+ import SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';
5
+ import Article from '../../../../molecule/card/test/fixtures/article';
6
+ import Scorm from '../../../../molecule/card/test/fixtures/scorm';
7
+ import ExternalContent from '../../../../molecule/card/test/fixtures/external-content';
8
+ export default {
9
+ props: {
10
+ search: {
11
+ title: 'Search...',
12
+ placeholder: 'Search...',
13
+ value: '',
14
+ description: 'Type to filter the courses',
15
+ onChange: value => console.log(value)
16
+ },
17
+ 'courses-selection-aria-label': 'Courses results',
18
+ courses: [SelectedCard.props, UnSelectedCard.props, _extends(_extends({}, Article.props), {}, {
19
+ isSelected: false
20
+ }), SelectedCard.props, _extends(_extends({}, Scorm.props), {}, {
21
+ isSelected: true
22
+ }), _extends(_extends({}, UnSelectedCard.props), {}, {
23
+ isSelected: false,
24
+ title: 'Standard course'
25
+ }), _extends(_extends({}, ExternalContent.props), {}, {
26
+ isSelected: false,
27
+ title: 'External course'
28
+ }), _extends(_extends({}, Scorm.props), {}, {
29
+ isSelected: false,
30
+ title: 'Scorm course'
31
+ })]
32
+ }
33
+ };
34
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/course-selection/test/fixtures/default.js"],"names":["UnSelectedCard","SelectedCard","Article","Scorm","ExternalContent","props","search","title","placeholder","value","description","onChange","console","log","courses","isSelected"],"mappings":";;AAAA,OAAOA,cAAP,MAA2B,0DAA3B;AACA,OAAOC,YAAP,MAAyB,yDAAzB;AACA,OAAOC,OAAP,MAAoB,iDAApB;AACA,OAAOC,KAAP,MAAkB,+CAAlB;AACA,OAAOC,eAAP,MAA4B,0DAA5B;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,WADD;AAENC,MAAAA,WAAW,EAAE,WAFP;AAGNC,MAAAA,KAAK,EAAE,EAHD;AAINC,MAAAA,WAAW,EAAE,4BAJP;AAKNC,MAAAA,QAAQ,EAAEF,KAAK,IAAIG,OAAO,CAACC,GAAR,CAAYJ,KAAZ;AALb,KADH;AAQL,oCAAgC,iBAR3B;AASLK,IAAAA,OAAO,EAAE,CACPb,YAAY,CAACI,KADN,EAEPL,cAAc,CAACK,KAFR,wBAGHH,OAAO,CAACG,KAHL;AAGYU,MAAAA,UAAU,EAAE;AAHxB,QAIPd,YAAY,CAACI,KAJN,wBAKHF,KAAK,CAACE,KALH;AAKUU,MAAAA,UAAU,EAAE;AALtB,8BAMHf,cAAc,CAACK,KANZ;AAMmBU,MAAAA,UAAU,EAAE,KAN/B;AAMsCR,MAAAA,KAAK,EAAE;AAN7C,8BAOHH,eAAe,CAACC,KAPb;AAOoBU,MAAAA,UAAU,EAAE,KAPhC;AAOuCR,MAAAA,KAAK,EAAE;AAP9C,8BAQHJ,KAAK,CAACE,KARH;AAQUU,MAAAA,UAAU,EAAE,KARtB;AAQ6BR,MAAAA,KAAK,EAAE;AARpC;AATJ;AADM,CAAf","sourcesContent":["import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';\nimport SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';\nimport Article from '../../../../molecule/card/test/fixtures/article';\nimport Scorm from '../../../../molecule/card/test/fixtures/scorm';\nimport ExternalContent from '../../../../molecule/card/test/fixtures/external-content';\n\nexport default {\n props: {\n search: {\n title: 'Search...',\n placeholder: 'Search...',\n value: '',\n description: 'Type to filter the courses',\n onChange: value => console.log(value)\n },\n 'courses-selection-aria-label': 'Courses results',\n courses: [\n SelectedCard.props,\n UnSelectedCard.props,\n {...Article.props, isSelected: false},\n SelectedCard.props,\n {...Scorm.props, isSelected: true},\n {...UnSelectedCard.props, isSelected: false, title: 'Standard course'},\n {...ExternalContent.props, isSelected: false, title: 'External course'},\n {...Scorm.props, isSelected: false, title: 'Scorm course'}\n ]\n }\n};\n"],"file":"default.js"}
@@ -0,0 +1,18 @@
1
+ export default {
2
+ props: {
3
+ search: {
4
+ title: 'Search...',
5
+ placeholder: 'Search...',
6
+ value: 'Xoxoxo',
7
+ description: 'Type to find the courses',
8
+ onChange: value => console.log(value)
9
+ },
10
+ 'courses-selection-aria-label': 'Courses results',
11
+ courses: [],
12
+ emptyMessages: {
13
+ firstMessage: 'No results...',
14
+ secondMessage: 'Try something else'
15
+ }
16
+ }
17
+ };
18
+ //# sourceMappingURL=empty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/course-selection/test/fixtures/empty.js"],"names":["props","search","title","placeholder","value","description","onChange","console","log","courses","emptyMessages","firstMessage","secondMessage"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,WADD;AAENC,MAAAA,WAAW,EAAE,WAFP;AAGNC,MAAAA,KAAK,EAAE,QAHD;AAINC,MAAAA,WAAW,EAAE,0BAJP;AAKNC,MAAAA,QAAQ,EAAEF,KAAK,IAAIG,OAAO,CAACC,GAAR,CAAYJ,KAAZ;AALb,KADH;AAQL,oCAAgC,iBAR3B;AASLK,IAAAA,OAAO,EAAE,EATJ;AAULC,IAAAA,aAAa,EAAE;AACbC,MAAAA,YAAY,EAAE,eADD;AAEbC,MAAAA,aAAa,EAAE;AAFF;AAVV;AADM,CAAf","sourcesContent":["export default {\n props: {\n search: {\n title: 'Search...',\n placeholder: 'Search...',\n value: 'Xoxoxo',\n description: 'Type to find the courses',\n onChange: value => console.log(value)\n },\n 'courses-selection-aria-label': 'Courses results',\n courses: [],\n emptyMessages: {\n firstMessage: 'No results...',\n secondMessage: 'Try something else'\n }\n }\n};\n"],"file":"empty.js"}
@@ -0,0 +1,24 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';
4
+ import SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';
5
+ import Article from '../../../../molecule/card/test/fixtures/article';
6
+ import Scorm from '../../../../molecule/card/test/fixtures/scorm';
7
+ export default {
8
+ props: {
9
+ search: {
10
+ title: 'Search...',
11
+ placeholder: 'Search...',
12
+ value: 'from',
13
+ description: 'Type to filter the courses',
14
+ onChange: value => console.log(value)
15
+ },
16
+ 'courses-selection-aria-label': 'Courses results',
17
+ courses: [SelectedCard.props, _extends(_extends({}, Scorm.props), {}, {
18
+ isSelected: true
19
+ }), SelectedCard.props, UnSelectedCard.props, _extends(_extends({}, Article.props), {}, {
20
+ isSelected: false
21
+ })]
22
+ }
23
+ };
24
+ //# sourceMappingURL=filtered.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/course-selection/test/fixtures/filtered.js"],"names":["UnSelectedCard","SelectedCard","Article","Scorm","props","search","title","placeholder","value","description","onChange","console","log","courses","isSelected"],"mappings":";;AAAA,OAAOA,cAAP,MAA2B,0DAA3B;AACA,OAAOC,YAAP,MAAyB,yDAAzB;AACA,OAAOC,OAAP,MAAoB,iDAApB;AACA,OAAOC,KAAP,MAAkB,+CAAlB;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,WADD;AAENC,MAAAA,WAAW,EAAE,WAFP;AAGNC,MAAAA,KAAK,EAAE,MAHD;AAINC,MAAAA,WAAW,EAAE,4BAJP;AAKNC,MAAAA,QAAQ,EAAEF,KAAK,IAAIG,OAAO,CAACC,GAAR,CAAYJ,KAAZ;AALb,KADH;AAQL,oCAAgC,iBAR3B;AASLK,IAAAA,OAAO,EAAE,CACPZ,YAAY,CAACG,KADN,wBAEHD,KAAK,CAACC,KAFH;AAEUU,MAAAA,UAAU,EAAE;AAFtB,QAGPb,YAAY,CAACG,KAHN,EAIPJ,cAAc,CAACI,KAJR,wBAKHF,OAAO,CAACE,KALL;AAKYU,MAAAA,UAAU,EAAE;AALxB;AATJ;AADM,CAAf","sourcesContent":["import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';\nimport SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';\nimport Article from '../../../../molecule/card/test/fixtures/article';\nimport Scorm from '../../../../molecule/card/test/fixtures/scorm';\n\nexport default {\n props: {\n search: {\n title: 'Search...',\n placeholder: 'Search...',\n value: 'from',\n description: 'Type to filter the courses',\n onChange: value => console.log(value)\n },\n 'courses-selection-aria-label': 'Courses results',\n courses: [\n SelectedCard.props,\n {...Scorm.props, isSelected: true},\n SelectedCard.props,\n UnSelectedCard.props,\n {...Article.props, isSelected: false}\n ]\n }\n};\n"],"file":"filtered.js"}
@@ -0,0 +1,31 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';
4
+ import SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';
5
+ import Article from '../../../../molecule/card/test/fixtures/article';
6
+ import Scorm from '../../../../molecule/card/test/fixtures/scorm';
7
+ import ExternalContent from '../../../../molecule/card/test/fixtures/external-content';
8
+ export default {
9
+ props: {
10
+ search: {
11
+ title: 'Search...',
12
+ placeholder: 'Search...',
13
+ value: '',
14
+ description: 'Type to filter the courses',
15
+ onChange: value => console.log(value)
16
+ },
17
+ 'courses-selection-aria-label': 'Courses results',
18
+ courses: [SelectedCard.props, _extends(_extends({}, Scorm.props), {}, {
19
+ isSelected: true
20
+ }), SelectedCard.props, UnSelectedCard.props, _extends(_extends({}, Article.props), {}, {
21
+ isSelected: false
22
+ }), _extends(_extends({}, UnSelectedCard.props), {}, {
23
+ isSelected: false
24
+ }), _extends(_extends({}, ExternalContent.props), {}, {
25
+ isSelected: false
26
+ }), _extends(_extends({}, Scorm.props), {}, {
27
+ isSelected: false
28
+ })]
29
+ }
30
+ };
31
+ //# sourceMappingURL=sorted-selected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/course-selection/test/fixtures/sorted-selected.js"],"names":["UnSelectedCard","SelectedCard","Article","Scorm","ExternalContent","props","search","title","placeholder","value","description","onChange","console","log","courses","isSelected"],"mappings":";;AAAA,OAAOA,cAAP,MAA2B,0DAA3B;AACA,OAAOC,YAAP,MAAyB,yDAAzB;AACA,OAAOC,OAAP,MAAoB,iDAApB;AACA,OAAOC,KAAP,MAAkB,+CAAlB;AACA,OAAOC,eAAP,MAA4B,0DAA5B;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,WADD;AAENC,MAAAA,WAAW,EAAE,WAFP;AAGNC,MAAAA,KAAK,EAAE,EAHD;AAINC,MAAAA,WAAW,EAAE,4BAJP;AAKNC,MAAAA,QAAQ,EAAEF,KAAK,IAAIG,OAAO,CAACC,GAAR,CAAYJ,KAAZ;AALb,KADH;AAQL,oCAAgC,iBAR3B;AASLK,IAAAA,OAAO,EAAE,CACPb,YAAY,CAACI,KADN,wBAEHF,KAAK,CAACE,KAFH;AAEUU,MAAAA,UAAU,EAAE;AAFtB,QAGPd,YAAY,CAACI,KAHN,EAIPL,cAAc,CAACK,KAJR,wBAKHH,OAAO,CAACG,KALL;AAKYU,MAAAA,UAAU,EAAE;AALxB,8BAMHf,cAAc,CAACK,KANZ;AAMmBU,MAAAA,UAAU,EAAE;AAN/B,8BAOHX,eAAe,CAACC,KAPb;AAOoBU,MAAAA,UAAU,EAAE;AAPhC,8BAQHZ,KAAK,CAACE,KARH;AAQUU,MAAAA,UAAU,EAAE;AARtB;AATJ;AADM,CAAf","sourcesContent":["import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';\nimport SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';\nimport Article from '../../../../molecule/card/test/fixtures/article';\nimport Scorm from '../../../../molecule/card/test/fixtures/scorm';\nimport ExternalContent from '../../../../molecule/card/test/fixtures/external-content';\n\nexport default {\n props: {\n search: {\n title: 'Search...',\n placeholder: 'Search...',\n value: '',\n description: 'Type to filter the courses',\n onChange: value => console.log(value)\n },\n 'courses-selection-aria-label': 'Courses results',\n courses: [\n SelectedCard.props,\n {...Scorm.props, isSelected: true},\n SelectedCard.props,\n UnSelectedCard.props,\n {...Article.props, isSelected: false},\n {...UnSelectedCard.props, isSelected: false},\n {...ExternalContent.props, isSelected: false},\n {...Scorm.props, isSelected: false}\n ]\n }\n};\n"],"file":"sorted-selected.js"}
@@ -0,0 +1,31 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';
4
+ import SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';
5
+ import Article from '../../../../molecule/card/test/fixtures/article';
6
+ import Scorm from '../../../../molecule/card/test/fixtures/scorm';
7
+ import ExternalContent from '../../../../molecule/card/test/fixtures/external-content';
8
+ export default {
9
+ props: {
10
+ search: {
11
+ title: 'Search...',
12
+ placeholder: 'Search...',
13
+ value: '',
14
+ description: 'Type to filter the courses',
15
+ onChange: value => console.log(value)
16
+ },
17
+ 'courses-selection-aria-label': 'Courses results',
18
+ courses: [SelectedCard.props, UnSelectedCard.props, _extends(_extends({}, Article.props), {}, {
19
+ isSelected: false
20
+ }), SelectedCard.props, _extends(_extends({}, Scorm.props), {}, {
21
+ isSelected: true
22
+ }), _extends(_extends({}, UnSelectedCard.props), {}, {
23
+ isSelected: false
24
+ }), _extends(_extends({}, ExternalContent.props), {}, {
25
+ isSelected: false
26
+ }), _extends(_extends({}, Scorm.props), {}, {
27
+ isSelected: false
28
+ })]
29
+ }
30
+ };
31
+ //# sourceMappingURL=unsorted-selected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/course-selection/test/fixtures/unsorted-selected.js"],"names":["UnSelectedCard","SelectedCard","Article","Scorm","ExternalContent","props","search","title","placeholder","value","description","onChange","console","log","courses","isSelected"],"mappings":";;AAAA,OAAOA,cAAP,MAA2B,0DAA3B;AACA,OAAOC,YAAP,MAAyB,yDAAzB;AACA,OAAOC,OAAP,MAAoB,iDAApB;AACA,OAAOC,KAAP,MAAkB,+CAAlB;AACA,OAAOC,eAAP,MAA4B,0DAA5B;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,WADD;AAENC,MAAAA,WAAW,EAAE,WAFP;AAGNC,MAAAA,KAAK,EAAE,EAHD;AAINC,MAAAA,WAAW,EAAE,4BAJP;AAKNC,MAAAA,QAAQ,EAAEF,KAAK,IAAIG,OAAO,CAACC,GAAR,CAAYJ,KAAZ;AALb,KADH;AAQL,oCAAgC,iBAR3B;AASLK,IAAAA,OAAO,EAAE,CACPb,YAAY,CAACI,KADN,EAEPL,cAAc,CAACK,KAFR,wBAGHH,OAAO,CAACG,KAHL;AAGYU,MAAAA,UAAU,EAAE;AAHxB,QAIPd,YAAY,CAACI,KAJN,wBAKHF,KAAK,CAACE,KALH;AAKUU,MAAAA,UAAU,EAAE;AALtB,8BAMHf,cAAc,CAACK,KANZ;AAMmBU,MAAAA,UAAU,EAAE;AAN/B,8BAOHX,eAAe,CAACC,KAPb;AAOoBU,MAAAA,UAAU,EAAE;AAPhC,8BAQHZ,KAAK,CAACE,KARH;AAQUU,MAAAA,UAAU,EAAE;AARtB;AATJ;AADM,CAAf","sourcesContent":["import UnSelectedCard from '../../../../molecule/card/test/fixtures/selectable-false';\nimport SelectedCard from '../../../../molecule/card/test/fixtures/selectable-true';\nimport Article from '../../../../molecule/card/test/fixtures/article';\nimport Scorm from '../../../../molecule/card/test/fixtures/scorm';\nimport ExternalContent from '../../../../molecule/card/test/fixtures/external-content';\n\nexport default {\n props: {\n search: {\n title: 'Search...',\n placeholder: 'Search...',\n value: '',\n description: 'Type to filter the courses',\n onChange: value => console.log(value)\n },\n 'courses-selection-aria-label': 'Courses results',\n courses: [\n SelectedCard.props,\n UnSelectedCard.props,\n {...Article.props, isSelected: false},\n SelectedCard.props,\n {...Scorm.props, isSelected: true},\n {...UnSelectedCard.props, isSelected: false},\n {...ExternalContent.props, isSelected: false},\n {...Scorm.props, isSelected: false}\n ]\n }\n};\n"],"file":"unsorted-selected.js"}
@@ -4,6 +4,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
4
4
 
5
5
  import React from 'react';
6
6
  import PropTypes from 'prop-types';
7
+ import EmptySearchResult from '../../atom/empty-search-result';
7
8
  import Search from '../../atom/input-search';
8
9
  import ButtonLink from '../../atom/button-link';
9
10
  import Chips from '../../atom/chips';
@@ -11,13 +12,7 @@ import style from './style.css';
11
12
 
12
13
  const buildResultView = (results, resultsAriaLabel, emptyMessages) => {
13
14
  if (_isEmpty(results)) {
14
- return /*#__PURE__*/React.createElement("div", {
15
- className: style.errorSection
16
- }, /*#__PURE__*/React.createElement("span", {
17
- className: style.firstErrorMessage
18
- }, emptyMessages.firstMessage), /*#__PURE__*/React.createElement("span", {
19
- className: style.secondErrorMessage
20
- }, emptyMessages.secondMessage));
15
+ return /*#__PURE__*/React.createElement(EmptySearchResult, emptyMessages);
21
16
  }
22
17
 
23
18
  const items = results.map((result, index) => {
@@ -25,7 +20,7 @@ const buildResultView = (results, resultsAriaLabel, emptyMessages) => {
25
20
  className: style.result,
26
21
  key: `result-${index}`
27
22
  }, /*#__PURE__*/React.createElement(Chips, result));
28
- }, results);
23
+ });
29
24
  return /*#__PURE__*/React.createElement("ul", {
30
25
  "aria-label": resultsAriaLabel
31
26
  }, items);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/organism/search-and-chips-results/index.js"],"names":["React","PropTypes","Search","ButtonLink","Chips","style","buildResultView","results","resultsAriaLabel","emptyMessages","errorSection","firstErrorMessage","firstMessage","secondErrorMessage","secondMessage","items","map","result","index","SearchAndChipsResults","props","search","selectAllButton","onClick","label","disabled","ariaLabel","resultView","buttonProps","type","icon","position","container","header","button","resultContainer","propTypes","shape","string","func","bool","arrayOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport Search from '../../atom/input-search';\nimport ButtonLink from '../../atom/button-link';\nimport Chips from '../../atom/chips';\nimport style from './style.css';\n\nconst buildResultView = (results, resultsAriaLabel, emptyMessages) => {\n if (isEmpty(results)) {\n return (\n <div className={style.errorSection}>\n <span className={style.firstErrorMessage}>{emptyMessages.firstMessage}</span>\n <span className={style.secondErrorMessage}>{emptyMessages.secondMessage}</span>\n </div>\n );\n }\n\n const items = results.map((result, index) => {\n return (\n <li className={style.result} key={`result-${index}`}>\n <Chips {...result} />\n </li>\n );\n }, results);\n\n return <ul aria-label={resultsAriaLabel}>{items}</ul>;\n};\n\nconst SearchAndChipsResults = props => {\n const {\n search,\n selectAllButton,\n results,\n emptyMessages,\n 'results-aria-label': resultsAriaLabel\n } = props;\n\n const {onClick, label, disabled = false, 'aria-label': ariaLabel} = selectAllButton;\n const resultView = buildResultView(results, resultsAriaLabel, emptyMessages);\n const buttonProps = {\n type: 'secondary',\n label,\n 'aria-label': ariaLabel,\n 'data-name': `select-all-button`,\n icon: {\n position: 'right',\n type: 'add'\n },\n onClick,\n disabled\n };\n\n return (\n <div className={style.container}>\n <div className={style.header}>\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n <div className={style.search}>\n <Search {...search} theme=\"coorpmanager\" />\n </div>\n </div>\n <div className={style.resultContainer}>{resultView}</div>\n </div>\n );\n};\n\nSearchAndChipsResults.propTypes = {\n selectAllButton: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n }),\n search: PropTypes.shape(Search.PropTypes),\n results: PropTypes.arrayOf(PropTypes.shape(Chips.propTypes)),\n 'results-aria-label': PropTypes.string,\n emptyMessages: PropTypes.shape({\n firstMessage: PropTypes.string,\n secondMessage: PropTypes.string\n })\n};\n\nexport default SearchAndChipsResults;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/organism/search-and-chips-results/index.js"],"names":["React","PropTypes","EmptySearchResult","Search","ButtonLink","Chips","style","buildResultView","results","resultsAriaLabel","emptyMessages","items","map","result","index","SearchAndChipsResults","props","search","selectAllButton","onClick","label","disabled","ariaLabel","resultView","buttonProps","type","icon","position","container","header","button","resultContainer","propTypes","shape","string","func","bool","arrayOf","firstMessage","secondMessage"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport EmptySearchResult from '../../atom/empty-search-result';\nimport Search from '../../atom/input-search';\nimport ButtonLink from '../../atom/button-link';\nimport Chips from '../../atom/chips';\nimport style from './style.css';\n\nconst buildResultView = (results, resultsAriaLabel, emptyMessages) => {\n if (isEmpty(results)) {\n return <EmptySearchResult {...emptyMessages} />;\n }\n\n const items = results.map((result, index) => {\n return (\n <li className={style.result} key={`result-${index}`}>\n <Chips {...result} />\n </li>\n );\n });\n\n return <ul aria-label={resultsAriaLabel}>{items}</ul>;\n};\n\nconst SearchAndChipsResults = props => {\n const {\n search,\n selectAllButton,\n results,\n emptyMessages,\n 'results-aria-label': resultsAriaLabel\n } = props;\n\n const {onClick, label, disabled = false, 'aria-label': ariaLabel} = selectAllButton;\n const resultView = buildResultView(results, resultsAriaLabel, emptyMessages);\n const buttonProps = {\n type: 'secondary',\n label,\n 'aria-label': ariaLabel,\n 'data-name': `select-all-button`,\n icon: {\n position: 'right',\n type: 'add'\n },\n onClick,\n disabled\n };\n\n return (\n <div className={style.container}>\n <div className={style.header}>\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n <div className={style.search}>\n <Search {...search} theme=\"coorpmanager\" />\n </div>\n </div>\n <div className={style.resultContainer}>{resultView}</div>\n </div>\n );\n};\n\nSearchAndChipsResults.propTypes = {\n selectAllButton: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n }),\n search: PropTypes.shape(Search.PropTypes),\n results: PropTypes.arrayOf(PropTypes.shape(Chips.propTypes)),\n 'results-aria-label': PropTypes.string,\n emptyMessages: PropTypes.shape({\n firstMessage: PropTypes.string,\n secondMessage: PropTypes.string\n })\n};\n\nexport default SearchAndChipsResults;\n"],"file":"index.js"}
@@ -32,26 +32,4 @@
32
32
  max-width: 268px;
33
33
  display: inline-block;
34
34
  margin: 0 16px 16px 0px;
35
- }
36
-
37
- .errorSection {
38
- margin: 48px 0;
39
- width: 100%;
40
- display: flex;
41
- flex-direction: column;
42
- align-items: center;
43
- font-size: 16px;
44
- font-weight: bold;
45
- font-family: Gilroy;
46
- font-size: 16px;
47
- }
48
-
49
- .firstErrorMessage {
50
- color: cm_grey_900;
51
- display: block;
52
- }
53
-
54
- .secondErrorMessage {
55
- color: cm_primary_blue;
56
- display: block;
57
35
  }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+
6
+ var _react = _interopRequireDefault(require("react"));
7
+
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+
10
+ var _style = _interopRequireDefault(require("./style.css"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ const EmptySearchResult = props => {
15
+ const {
16
+ firstMessage,
17
+ secondMessage
18
+ } = props;
19
+ return /*#__PURE__*/_react.default.createElement("div", {
20
+ className: _style.default.container
21
+ }, /*#__PURE__*/_react.default.createElement("span", {
22
+ className: _style.default.firstMessage
23
+ }, firstMessage), /*#__PURE__*/_react.default.createElement("span", {
24
+ className: _style.default.secondMessage
25
+ }, secondMessage));
26
+ };
27
+
28
+ EmptySearchResult.propTypes = process.env.NODE_ENV !== "production" ? {
29
+ firstMessage: _propTypes.default.string.isRequired,
30
+ secondMessage: _propTypes.default.string.isRequired
31
+ } : {};
32
+ var _default = EmptySearchResult;
33
+ exports.default = _default;
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/empty-search-result/index.js"],"names":["EmptySearchResult","props","firstMessage","secondMessage","style","container","propTypes","PropTypes","string","isRequired"],"mappings":";;;;;AAAA;;AACA;;AACA;;;;AAEA,MAAMA,iBAAiB,GAAGC,KAAK,IAAI;AACjC,QAAM;AAACC,IAAAA,YAAD;AAAeC,IAAAA;AAAf,MAAgCF,KAAtC;AACA,sBACE;AAAK,IAAA,SAAS,EAAEG,eAAMC;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAED,eAAMF;AAAvB,KAAsCA,YAAtC,CADF,eAEE;AAAM,IAAA,SAAS,EAAEE,eAAMD;AAAvB,KAAuCA,aAAvC,CAFF,CADF;AAMD,CARD;;AAUAH,iBAAiB,CAACM,SAAlB,2CAA8B;AAC5BJ,EAAAA,YAAY,EAAEK,mBAAUC,MAAV,CAAiBC,UADH;AAE5BN,EAAAA,aAAa,EAAEI,mBAAUC,MAAV,CAAiBC;AAFJ,CAA9B;eAKeT,iB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport style from './style.css';\n\nconst EmptySearchResult = props => {\n const {firstMessage, secondMessage} = props;\n return (\n <div className={style.container}>\n <span className={style.firstMessage}>{firstMessage}</span>\n <span className={style.secondMessage}>{secondMessage}</span>\n </div>\n );\n};\n\nEmptySearchResult.propTypes = {\n firstMessage: PropTypes.string.isRequired,\n secondMessage: PropTypes.string.isRequired\n};\n\nexport default EmptySearchResult;\n"],"file":"index.js"}
@@ -0,0 +1,25 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value cm_primary_blue from colors;
3
+ @value cm_grey_900 from colors;
4
+
5
+ .container {
6
+ margin: 48px 0;
7
+ width: 100%;
8
+ display: flex;
9
+ flex-direction: column;
10
+ align-items: center;
11
+ font-size: 16px;
12
+ font-weight: bold;
13
+ font-family: Gilroy;
14
+ font-size: 16px;
15
+ }
16
+
17
+ .firstMessage {
18
+ color: cm_grey_900;
19
+ display: block;
20
+ }
21
+
22
+ .secondMessage {
23
+ color: cm_primary_blue;
24
+ display: block;
25
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+ var _default = {
6
+ props: {
7
+ firstMessage: 'No results...',
8
+ secondMessage: 'Try something else'
9
+ }
10
+ };
11
+ exports.default = _default;
12
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/atom/empty-search-result/test/fixtures/default.js"],"names":["props","firstMessage","secondMessage"],"mappings":";;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,YAAY,EAAE,eADT;AAELC,IAAAA,aAAa,EAAE;AAFV;AADM,C","sourcesContent":["export default {\n props: {\n firstMessage: 'No results...',\n secondMessage: 'Try something else'\n }\n};\n"],"file":"default.js"}