@coorpacademy/components 10.5.4 → 10.5.7-alpha.11
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.
- package/es/atom/range/handle.css +18 -2
- package/es/atom/range/handle.js +7 -3
- package/es/atom/range/handle.js.map +1 -1
- package/es/atom/range/style.css +2 -2
- package/es/atom/select/index.js +38 -20
- package/es/atom/select/index.js.map +1 -1
- package/es/atom/select/style.css +129 -40
- package/es/atom/select/test/fixtures/player.js +11 -0
- package/es/atom/select/test/fixtures/player.js.map +1 -0
- package/es/atom/select/test/fixtures.js +2 -0
- package/es/atom/select/test/fixtures.js.map +1 -1
- package/es/atom/select/test/select.js +49 -0
- package/es/atom/select/test/select.js.map +1 -0
- package/es/molecule/course-section/index.js +5 -3
- package/es/molecule/course-section/index.js.map +1 -1
- package/es/molecule/course-section/style.css +2 -1
- package/es/molecule/course-section/test/fixtures/chapter.js +2 -1
- package/es/molecule/course-section/test/fixtures/chapter.js.map +1 -1
- package/es/molecule/course-section/test/fixtures/course.js +2 -1
- package/es/molecule/course-section/test/fixtures/course.js.map +1 -1
- package/es/molecule/course-sections/index.js +40 -0
- package/es/molecule/course-sections/index.js.map +1 -0
- package/es/molecule/course-sections/style.css +3 -0
- package/es/molecule/course-sections/test/fixtures/default.js +149 -0
- package/es/molecule/course-sections/test/fixtures/default.js.map +1 -0
- package/es/molecule/course-sections/test/fixtures/loading.js +9 -0
- package/es/molecule/course-sections/test/fixtures/loading.js.map +1 -0
- package/es/molecule/course-sections/test/fixtures.js +15 -0
- package/es/molecule/course-sections/test/fixtures.js.map +1 -0
- package/es/molecule/draggable/index.js +1 -1
- package/es/molecule/draggable/index.js.map +1 -1
- package/es/molecule/draggable/style.css +1 -5
- package/es/molecule/draggable-list/index.js +56 -0
- package/es/molecule/draggable-list/index.js.map +1 -0
- package/es/molecule/draggable-list/test/fixtures/course-sections.js +20 -0
- package/es/molecule/draggable-list/test/fixtures/course-sections.js.map +1 -0
- package/es/molecule/draggable-list/test/fixtures/dashboard-sections.js +26 -0
- package/es/molecule/draggable-list/test/fixtures/dashboard-sections.js.map +1 -0
- package/es/molecule/draggable-list/test/fixtures.js +2 -0
- package/es/molecule/draggable-list/test/fixtures.js.map +1 -1
- package/es/molecule/{setup-sections → draggable-list}/test/on-drop.js +17 -17
- package/es/molecule/draggable-list/test/on-drop.js.map +1 -0
- package/es/molecule/questions/drop-down/index.js +1 -6
- package/es/molecule/questions/drop-down/index.js.map +1 -1
- package/es/molecule/questions/free-text/index.js +35 -15
- package/es/molecule/questions/free-text/index.js.map +1 -1
- package/es/molecule/questions/free-text/style.css +35 -15
- package/es/molecule/questions/free-text/test/fixtures/default.js +1 -1
- package/es/molecule/questions/free-text/test/fixtures/default.js.map +1 -1
- package/es/molecule/questions/free-text/test/fixtures/with-value-on-change.js +9 -0
- package/es/molecule/questions/free-text/test/fixtures/with-value-on-change.js.map +1 -0
- package/es/molecule/questions/free-text/test/fixtures/{with-default-value.js → with-value.js} +2 -2
- package/es/molecule/questions/free-text/test/fixtures/with-value.js.map +1 -0
- package/es/molecule/questions/free-text/test/fixtures.js +4 -2
- package/es/molecule/questions/free-text/test/fixtures.js.map +1 -1
- package/es/molecule/questions/free-text/test/free-text.js +106 -0
- package/es/molecule/questions/free-text/test/free-text.js.map +1 -0
- package/es/molecule/questions/qcm/index.js +37 -25
- package/es/molecule/questions/qcm/index.js.map +1 -1
- package/es/molecule/questions/qcm/style.css +48 -14
- package/es/molecule/questions/qcm/test/fixtures/default.js +8 -0
- package/es/molecule/questions/qcm/test/fixtures/default.js.map +1 -1
- package/es/molecule/questions/qcm/test/qcm.js +103 -0
- package/es/molecule/questions/qcm/test/qcm.js.map +1 -0
- package/es/molecule/questions/qcm-graphic/index.js +35 -17
- package/es/molecule/questions/qcm-graphic/index.js.map +1 -1
- package/es/molecule/questions/qcm-graphic/style.css +64 -13
- package/es/molecule/questions/qcm-graphic/test/qcm-graphic.js +65 -0
- package/es/molecule/questions/qcm-graphic/test/qcm-graphic.js.map +1 -0
- package/es/molecule/questions/question-range/style.css +9 -8
- package/es/molecule/questions/template/index.js +13 -10
- package/es/molecule/questions/template/index.js.map +1 -1
- package/es/molecule/setup-section/style.css +1 -0
- package/es/molecule/setup-sections/index.js +7 -33
- package/es/molecule/setup-sections/index.js.map +1 -1
- package/es/molecule/wizard-summary/test/fixtures/organize-courses.js +106 -0
- package/es/molecule/wizard-summary/test/fixtures/organize-courses.js.map +1 -0
- package/es/molecule/wizard-summary/test/fixtures.js +2 -0
- package/es/molecule/wizard-summary/test/fixtures.js.map +1 -1
- package/es/organism/wizard-contents/index.js +6 -0
- package/es/organism/wizard-contents/index.js.map +1 -1
- package/es/organism/wizard-contents/test/fixtures/playlist-organize-courses.js +45 -0
- package/es/organism/wizard-contents/test/fixtures/playlist-organize-courses.js.map +1 -0
- package/es/organism/wizard-contents/test/fixtures.js +2 -0
- package/es/organism/wizard-contents/test/fixtures.js.map +1 -1
- package/es/template/back-office/brand-update/test/fixtures/wizard-organize-courses-playlist.js +22 -0
- package/es/template/back-office/brand-update/test/fixtures/wizard-organize-courses-playlist.js.map +1 -0
- package/es/template/back-office/brand-update/test/fixtures.js +2 -0
- package/es/template/back-office/brand-update/test/fixtures.js.map +1 -1
- package/es/util/get-shadow-box-color-from-primary.js +4 -0
- package/es/util/get-shadow-box-color-from-primary.js.map +1 -0
- package/es/util/test/get-shadow-box-color-from-primary.js +33 -0
- package/es/util/test/get-shadow-box-color-from-primary.js.map +1 -0
- package/es/variables/colors.css +3 -0
- package/lib/atom/range/handle.css +18 -2
- package/lib/atom/range/handle.js +8 -3
- package/lib/atom/range/handle.js.map +1 -1
- package/lib/atom/range/style.css +2 -2
- package/lib/atom/select/index.js +40 -17
- package/lib/atom/select/index.js.map +1 -1
- package/lib/atom/select/style.css +129 -40
- package/lib/atom/select/test/fixtures/player.js +21 -0
- package/lib/atom/select/test/fixtures/player.js.map +1 -0
- package/lib/atom/select/test/fixtures.js +3 -0
- package/lib/atom/select/test/fixtures.js.map +1 -1
- package/lib/atom/select/test/select.js +62 -0
- package/lib/atom/select/test/select.js.map +1 -0
- package/lib/molecule/course-section/index.js +5 -3
- package/lib/molecule/course-section/index.js.map +1 -1
- package/lib/molecule/course-section/style.css +2 -1
- package/lib/molecule/course-section/test/fixtures/chapter.js +2 -1
- package/lib/molecule/course-section/test/fixtures/chapter.js.map +1 -1
- package/lib/molecule/course-section/test/fixtures/course.js +2 -1
- package/lib/molecule/course-section/test/fixtures/course.js.map +1 -1
- package/lib/molecule/course-sections/index.js +54 -0
- package/lib/molecule/course-sections/index.js.map +1 -0
- package/lib/molecule/course-sections/style.css +3 -0
- package/lib/molecule/course-sections/test/fixtures/default.js +154 -0
- package/lib/molecule/course-sections/test/fixtures/default.js.map +1 -0
- package/lib/molecule/course-sections/test/fixtures/loading.js +14 -0
- package/lib/molecule/course-sections/test/fixtures/loading.js.map +1 -0
- package/lib/molecule/course-sections/test/fixtures.js +25 -0
- package/lib/molecule/course-sections/test/fixtures.js.map +1 -0
- package/lib/molecule/draggable/index.js +1 -1
- package/lib/molecule/draggable/index.js.map +1 -1
- package/lib/molecule/draggable/style.css +1 -5
- package/lib/molecule/draggable-list/index.js +73 -0
- package/lib/molecule/draggable-list/index.js.map +1 -0
- package/lib/molecule/draggable-list/test/fixtures/course-sections.js +29 -0
- package/lib/molecule/draggable-list/test/fixtures/course-sections.js.map +1 -0
- package/lib/molecule/draggable-list/test/fixtures/dashboard-sections.js +37 -0
- package/lib/molecule/draggable-list/test/fixtures/dashboard-sections.js.map +1 -0
- package/lib/molecule/draggable-list/test/fixtures.js +3 -0
- package/lib/molecule/draggable-list/test/fixtures.js.map +1 -1
- package/lib/molecule/{setup-sections → draggable-list}/test/on-drop.js +19 -19
- package/lib/molecule/draggable-list/test/on-drop.js.map +1 -0
- package/lib/molecule/questions/drop-down/index.js +1 -5
- package/lib/molecule/questions/drop-down/index.js.map +1 -1
- package/lib/molecule/questions/free-text/index.js +32 -14
- package/lib/molecule/questions/free-text/index.js.map +1 -1
- package/lib/molecule/questions/free-text/style.css +35 -15
- package/lib/molecule/questions/free-text/test/fixtures/default.js +1 -1
- package/lib/molecule/questions/free-text/test/fixtures/default.js.map +1 -1
- package/lib/molecule/questions/free-text/test/fixtures/with-value-on-change.js +14 -0
- package/lib/molecule/questions/free-text/test/fixtures/with-value-on-change.js.map +1 -0
- package/lib/molecule/questions/free-text/test/fixtures/{with-default-value.js → with-value.js} +2 -2
- package/lib/molecule/questions/free-text/test/fixtures/with-value.js.map +1 -0
- package/lib/molecule/questions/free-text/test/fixtures.js +5 -2
- package/lib/molecule/questions/free-text/test/fixtures.js.map +1 -1
- package/lib/molecule/questions/free-text/test/free-text.js +119 -0
- package/lib/molecule/questions/free-text/test/free-text.js.map +1 -0
- package/lib/molecule/questions/qcm/index.js +44 -23
- package/lib/molecule/questions/qcm/index.js.map +1 -1
- package/lib/molecule/questions/qcm/style.css +48 -14
- package/lib/molecule/questions/qcm/test/fixtures/default.js +8 -0
- package/lib/molecule/questions/qcm/test/fixtures/default.js.map +1 -1
- package/lib/molecule/questions/qcm/test/qcm.js +115 -0
- package/lib/molecule/questions/qcm/test/qcm.js.map +1 -0
- package/lib/molecule/questions/qcm-graphic/index.js +33 -15
- package/lib/molecule/questions/qcm-graphic/index.js.map +1 -1
- package/lib/molecule/questions/qcm-graphic/style.css +64 -13
- package/lib/molecule/questions/qcm-graphic/test/qcm-graphic.js +76 -0
- package/lib/molecule/questions/qcm-graphic/test/qcm-graphic.js.map +1 -0
- package/lib/molecule/questions/question-range/style.css +9 -8
- package/lib/molecule/questions/template/index.js +13 -10
- package/lib/molecule/questions/template/index.js.map +1 -1
- package/lib/molecule/setup-section/style.css +1 -0
- package/lib/molecule/setup-sections/index.js +7 -37
- package/lib/molecule/setup-sections/index.js.map +1 -1
- package/lib/molecule/wizard-summary/test/fixtures/organize-courses.js +111 -0
- package/lib/molecule/wizard-summary/test/fixtures/organize-courses.js.map +1 -0
- package/lib/molecule/wizard-summary/test/fixtures.js +3 -0
- package/lib/molecule/wizard-summary/test/fixtures.js.map +1 -1
- package/lib/organism/wizard-contents/index.js +7 -0
- package/lib/organism/wizard-contents/index.js.map +1 -1
- package/lib/organism/wizard-contents/test/fixtures/playlist-organize-courses.js +54 -0
- package/lib/organism/wizard-contents/test/fixtures/playlist-organize-courses.js.map +1 -0
- package/lib/organism/wizard-contents/test/fixtures.js +3 -0
- package/lib/organism/wizard-contents/test/fixtures.js.map +1 -1
- package/lib/template/back-office/brand-update/test/fixtures/wizard-organize-courses-playlist.js +32 -0
- package/lib/template/back-office/brand-update/test/fixtures/wizard-organize-courses-playlist.js.map +1 -0
- package/lib/template/back-office/brand-update/test/fixtures.js +3 -0
- package/lib/template/back-office/brand-update/test/fixtures.js.map +1 -1
- package/lib/util/get-shadow-box-color-from-primary.js +12 -0
- package/lib/util/get-shadow-box-color-from-primary.js.map +1 -0
- package/lib/util/test/get-shadow-box-color-from-primary.js +40 -0
- package/lib/util/test/get-shadow-box-color-from-primary.js.map +1 -0
- package/lib/variables/colors.css +3 -0
- package/package.json +2 -2
- package/es/molecule/questions/free-text/test/fixtures/with-default-value.js.map +0 -1
- package/es/molecule/search/test/fixtures.js +0 -15
- package/es/molecule/search/test/fixtures.js.map +0 -1
- package/es/molecule/setup-sections/test/on-drop.js.map +0 -1
- package/lib/molecule/questions/free-text/test/fixtures/with-default-value.js.map +0 -1
- package/lib/molecule/search/test/fixtures.js +0 -25
- package/lib/molecule/search/test/fixtures.js.map +0 -1
- package/lib/molecule/setup-sections/test/on-drop.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/molecule/draggable-list/test/on-drop.js"],"names":["adapter","Adapter","t","plan","elementToDrag","fixtures","props","items","id","elementToDrop","dropHandler","dragged","dropped","is","wrapper","wrappingComponent","dragStartEvent","preventDefault","pass","dragOverEvent","dragLeaveEvent","dropEvent","find","style","draggable","at","simulate","fail"],"mappings":"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","sourcesContent":["import browserEnv from 'browser-env';\nimport test from 'ava';\nimport React from 'react';\nimport {mount, configure} from 'enzyme';\nimport {set} from 'lodash/fp';\nimport Adapter from 'enzyme-adapter-react-16';\nimport {wrappingComponent} from '../../../test/helpers/render-component';\nimport SetupSections from '..';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from '../../draggable/style.css';\nimport fixtures from './fixtures/dashboard-sections';\n\nbrowserEnv();\nconfigure({adapter: new Adapter()});\n\ntest('should trigger onDrop handler', t => {\n t.plan(7);\n\n const elementToDrag = fixtures.props.items[0].id;\n const elementToDrop = fixtures.props.items[2].id;\n\n const dropHandler = (dragged, dropped) => {\n t.is(dropped, elementToDrop);\n t.is(dragged, elementToDrag);\n };\n\n const wrapper = mount(<SetupSections {...fixtures.props} onDrop={dropHandler} />, {\n wrappingComponent\n });\n\n const dragStartEvent = {preventDefault: () => t.pass()};\n const dragOverEvent = {preventDefault: () => t.pass()};\n const dragLeaveEvent = {preventDefault: () => t.pass()};\n const dropEvent = {preventDefault: () => t.pass()};\n\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragStart', dragStartEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragLeave', dragLeaveEvent);\n wrapper.find(`.${style.draggable}`).at(2).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(2).simulate('drop', dropEvent);\n});\n\ntest('should skip drop event if dragStart is not called', t => {\n t.plan(1);\n\n const dropHandler = (dragged, dropped) => {\n t.fail();\n };\n\n const wrapper = mount(<SetupSections {...fixtures.props} onDrop={dropHandler} />, {\n wrappingComponent\n });\n\n const dropEvent = {preventDefault: () => t.pass()};\n wrapper.find(`.${style.draggable}`).at(2).simulate('drop', dropEvent);\n});\n\ntest('should skip dragStart event if section id is not defined', t => {\n t.plan(0);\n\n const dropHandler = (dragged, dropped) => {\n t.fail();\n };\n\n const wrapper = mount(\n <SetupSections {...set('items.0.id', '', fixtures.props)} onDrop={dropHandler} />,\n {\n wrappingComponent\n }\n );\n\n const dragStartEvent = {preventDefault: () => {}};\n const dragOverEvent = {preventDefault: () => {}};\n const dragLeaveEvent = {preventDefault: () => {}};\n const dropEvent = {preventDefault: () => {}};\n\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragStart', dragStartEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(0).simulate('dragLeave', dragLeaveEvent);\n wrapper.find(`.${style.draggable}`).at(2).simulate('dragOver', dragOverEvent);\n wrapper.find(`.${style.draggable}`).at(2).simulate('drop', dropEvent);\n});\n"],"file":"on-drop.js"}
|
|
@@ -19,8 +19,6 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
19
19
|
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
21
|
|
|
22
|
-
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); }
|
|
23
|
-
|
|
24
22
|
const DropDown = props => {
|
|
25
23
|
const {
|
|
26
24
|
options,
|
|
@@ -41,9 +39,7 @@ const DropDown = props => {
|
|
|
41
39
|
|
|
42
40
|
DropDown.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
43
41
|
onChange: _select.default.propTypes.onChange,
|
|
44
|
-
options: _propTypes.default.arrayOf(_propTypes.default.shape(
|
|
45
|
-
validOption: _propTypes.default.bool
|
|
46
|
-
}))),
|
|
42
|
+
options: _propTypes.default.arrayOf(_propTypes.default.shape(_select.SelectOptionPropTypes)),
|
|
47
43
|
theme: _select.default.propTypes.theme
|
|
48
44
|
} : {};
|
|
49
45
|
var _default = DropDown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/molecule/questions/drop-down/index.js"],"names":["DropDown","props","options","onChange","theme","propsTheme","currentSelection","defaultTheme","validOption","style","wrapper","propTypes","Select","PropTypes","arrayOf","shape","SelectOptionPropTypes"
|
|
1
|
+
{"version":3,"sources":["../../../../src/molecule/questions/drop-down/index.js"],"names":["DropDown","props","options","onChange","theme","propsTheme","currentSelection","defaultTheme","validOption","style","wrapper","propTypes","Select","PropTypes","arrayOf","shape","SelectOptionPropTypes"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,MAAMA,QAAQ,GAAGC,KAAK,IAAI;AACxB,QAAM;AAACC,IAAAA,OAAD;AAAUC,IAAAA,QAAV;AAAoBC,IAAAA,KAAK,EAAEC;AAA3B,MAAyCJ,KAA/C;AAEA,QAAMK,gBAAgB,GAAG,oBAAK,UAAL,EAAiBJ,OAAjB,CAAzB;AACA,QAAMK,YAAY,GAChB,CAACD,gBAAD,IAAqBA,gBAAgB,CAACE,WAAjB,KAAiC,KAAtD,GAA8D,SAA9D,GAA0E,UAD5E;AAGA,QAAMJ,KAAK,GAAGC,UAAU,IAAIE,YAA5B;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEE,eAAMC;AAAtB,kBACE,6BAAC,eAAD;AAAQ,IAAA,KAAK,EAAEN,KAAf;AAAsB,IAAA,OAAO,EAAEF,OAA/B;AAAwC,IAAA,QAAQ,EAAEC;AAAlD,IADF,CADF;AAKD,CAdD;;AAgBAH,QAAQ,CAACW,SAAT,2CAAqB;AACnBR,EAAAA,QAAQ,EAAES,gBAAOD,SAAP,CAAiBR,QADR;AAEnBD,EAAAA,OAAO,EAAEW,mBAAUC,OAAV,CAAkBD,mBAAUE,KAAV,CAAgBC,6BAAhB,CAAlB,CAFU;AAGnBZ,EAAAA,KAAK,EAAEQ,gBAAOD,SAAP,CAAiBP;AAHL,CAArB;eAMeJ,Q","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {find} from 'lodash/fp';\nimport Select, {SelectOptionPropTypes} from '../../../atom/select';\nimport style from './style.css';\n\nconst DropDown = props => {\n const {options, onChange, theme: propsTheme} = props;\n\n const currentSelection = find('selected', options);\n const defaultTheme =\n !currentSelection || currentSelection.validOption === false ? 'invalid' : 'question';\n\n const theme = propsTheme || defaultTheme;\n\n return (\n <div className={style.wrapper}>\n <Select theme={theme} options={options} onChange={onChange} />\n </div>\n );\n};\n\nDropDown.propTypes = {\n onChange: Select.propTypes.onChange,\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes)),\n theme: Select.propTypes.theme\n};\n\nexport default DropDown;\n"],"file":"index.js"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.default = void 0;
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _getOr2 = _interopRequireDefault(require("lodash/fp/getOr"));
|
|
7
7
|
|
|
8
8
|
var _noop2 = _interopRequireDefault(require("lodash/fp/noop"));
|
|
9
9
|
|
|
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
13
|
|
|
14
|
+
var _cssColorFunction = require("css-color-function");
|
|
15
|
+
|
|
14
16
|
var _provider = _interopRequireDefault(require("../../../atom/provider"));
|
|
15
17
|
|
|
16
18
|
var _style = _interopRequireDefault(require("./style.css"));
|
|
@@ -21,30 +23,45 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
21
23
|
|
|
22
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
25
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
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); }
|
|
27
|
+
|
|
28
|
+
const FreeText = (props, context) => {
|
|
27
29
|
const {
|
|
28
30
|
placeholder = '',
|
|
29
31
|
value = '',
|
|
30
|
-
onChange = _noop2.default
|
|
32
|
+
onChange = _noop2.default,
|
|
33
|
+
'aria-label': ariaLabel
|
|
31
34
|
} = props;
|
|
32
|
-
const
|
|
33
|
-
const
|
|
35
|
+
const [hovered, setHovered] = (0, _react.useState)(false);
|
|
36
|
+
const handleChange = (0, _react.useCallback)(e => onChange(e.target.value), [onChange]);
|
|
37
|
+
const primarySkinColor = (0, _getOr2.default)('#00B0FF', 'skin.common.primary', context);
|
|
38
|
+
const handleMouseOver = (0, _react.useCallback)(() => setHovered(true), [setHovered]);
|
|
39
|
+
const handleMouseLeave = (0, _react.useCallback)(() => setHovered(false), [setHovered]);
|
|
40
|
+
const shadowBoxPrimaryColor = (0, _react.useMemo)(() => (0, _cssColorFunction.convert)(`color(${primarySkinColor} a(12%))`), [primarySkinColor]);
|
|
34
41
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
35
42
|
"data-name": "freeText",
|
|
36
|
-
className: _style.default.wrapper
|
|
43
|
+
className: _style.default.wrapper,
|
|
44
|
+
onMouseOver: handleMouseOver,
|
|
45
|
+
onMouseLeave: handleMouseLeave,
|
|
46
|
+
style: _extends({}, value && {
|
|
47
|
+
boxShadow: hovered ? 'none' : `0 4px 16px ${shadowBoxPrimaryColor}`
|
|
48
|
+
})
|
|
37
49
|
}, /*#__PURE__*/_react.default.createElement("input", {
|
|
50
|
+
"data-name": "free-text-input",
|
|
38
51
|
type: "text",
|
|
39
|
-
|
|
52
|
+
"aria-label": ariaLabel || value || placeholder,
|
|
53
|
+
className: _style.default.freeText,
|
|
40
54
|
placeholder: placeholder,
|
|
41
55
|
value: value,
|
|
42
56
|
onInput: handleChange,
|
|
43
57
|
onChange: _noop2.default,
|
|
44
|
-
style: {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
58
|
+
style: _extends(_extends({
|
|
59
|
+
boxShadow: `0 4px 16px ${shadowBoxPrimaryColor}`
|
|
60
|
+
}, value && {
|
|
61
|
+
boxShadow: `0 4px 16px ${hovered ? (0, _cssColorFunction.convert)(`color(${primarySkinColor} a(20%))`) : shadowBoxPrimaryColor}`
|
|
62
|
+
}), {}, {
|
|
63
|
+
color: primarySkinColor
|
|
64
|
+
})
|
|
48
65
|
}));
|
|
49
66
|
};
|
|
50
67
|
|
|
@@ -54,7 +71,8 @@ FreeText.contextTypes = {
|
|
|
54
71
|
FreeText.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
55
72
|
placeholder: _propTypes.default.string,
|
|
56
73
|
value: _propTypes.default.string,
|
|
57
|
-
onChange: _propTypes.default.func
|
|
74
|
+
onChange: _propTypes.default.func,
|
|
75
|
+
'aria-label': _propTypes.default.string
|
|
58
76
|
} : {};
|
|
59
77
|
var _default = FreeText;
|
|
60
78
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/molecule/questions/free-text/index.js"],"names":["FreeText","props","
|
|
1
|
+
{"version":3,"sources":["../../../../src/molecule/questions/free-text/index.js"],"names":["FreeText","props","context","placeholder","value","onChange","ariaLabel","hovered","setHovered","handleChange","e","target","primarySkinColor","handleMouseOver","handleMouseLeave","shadowBoxPrimaryColor","style","wrapper","boxShadow","freeText","color","contextTypes","skin","Provider","childContextTypes","propTypes","PropTypes","string","func"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;AAEA,MAAMA,QAAQ,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AACnC,QAAM;AAACC,IAAAA,WAAW,GAAG,EAAf;AAAmBC,IAAAA,KAAK,GAAG,EAA3B;AAA+BC,IAAAA,QAAQ,iBAAvC;AAAgD,kBAAcC;AAA9D,MAA2EL,KAAjF;AACA,QAAM,CAACM,OAAD,EAAUC,UAAV,IAAwB,qBAAS,KAAT,CAA9B;AAEA,QAAMC,YAAY,GAAG,wBAAYC,CAAC,IAAIL,QAAQ,CAACK,CAAC,CAACC,MAAF,CAASP,KAAV,CAAzB,EAA2C,CAACC,QAAD,CAA3C,CAArB;AACA,QAAMO,gBAAgB,GAAG,qBAAM,SAAN,EAAiB,qBAAjB,EAAwCV,OAAxC,CAAzB;AAEA,QAAMW,eAAe,GAAG,wBAAY,MAAML,UAAU,CAAC,IAAD,CAA5B,EAAoC,CAACA,UAAD,CAApC,CAAxB;AAEA,QAAMM,gBAAgB,GAAG,wBAAY,MAAMN,UAAU,CAAC,KAAD,CAA5B,EAAqC,CAACA,UAAD,CAArC,CAAzB;AAEA,QAAMO,qBAAqB,GAAG,oBAAQ,MAAM,+BAAS,SAAQH,gBAAiB,UAAlC,CAAd,EAA4D,CACxFA,gBADwF,CAA5D,CAA9B;AAIA,sBACE;AACE,iBAAU,UADZ;AAEE,IAAA,SAAS,EAAEI,eAAMC,OAFnB;AAGE,IAAA,WAAW,EAAEJ,eAHf;AAIE,IAAA,YAAY,EAAEC,gBAJhB;AAKE,IAAA,KAAK,eACCV,KAAK,IAAI;AACXc,MAAAA,SAAS,EAAEX,OAAO,GAAG,MAAH,GAAa,cAAaQ,qBAAsB;AADvD,KADV;AALP,kBAWE;AACE,iBAAU,iBADZ;AAEE,IAAA,IAAI,EAAC,MAFP;AAGE,kBAAYT,SAAS,IAAIF,KAAb,IAAsBD,WAHpC;AAIE,IAAA,SAAS,EAAEa,eAAMG,QAJnB;AAKE,IAAA,WAAW,EAAEhB,WALf;AAME,IAAA,KAAK,EAAEC,KANT;AAOE,IAAA,OAAO,EAAEK,YAPX;AAQE,IAAA,QAAQ,gBARV;AASE,IAAA,KAAK;AACHS,MAAAA,SAAS,EAAG,cAAaH,qBAAsB;AAD5C,OAECX,KAAK,IAAI;AACXc,MAAAA,SAAS,EAAG,cACVX,OAAO,GAAG,+BAAS,SAAQK,gBAAiB,UAAlC,CAAH,GAAkDG,qBAC1D;AAHU,KAFV;AAOHK,MAAAA,KAAK,EAAER;AAPJ;AATP,IAXF,CADF;AAiCD,CAhDD;;AAkDAZ,QAAQ,CAACqB,YAAT,GAAwB;AACtBC,EAAAA,IAAI,EAAEC,kBAASC,iBAAT,CAA2BF;AADX,CAAxB;AAIAtB,QAAQ,CAACyB,SAAT,2CAAqB;AACnBtB,EAAAA,WAAW,EAAEuB,mBAAUC,MADJ;AAEnBvB,EAAAA,KAAK,EAAEsB,mBAAUC,MAFE;AAGnBtB,EAAAA,QAAQ,EAAEqB,mBAAUE,IAHD;AAInB,gBAAcF,mBAAUC;AAJL,CAArB;eAOe3B,Q","sourcesContent":["import React, {useCallback, useMemo, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, getOr} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport Provider from '../../../atom/provider';\nimport style from './style.css';\n\nconst FreeText = (props, context) => {\n const {placeholder = '', value = '', onChange = noop, 'aria-label': ariaLabel} = props;\n const [hovered, setHovered] = useState(false);\n\n const handleChange = useCallback(e => onChange(e.target.value), [onChange]);\n const primarySkinColor = getOr('#00B0FF', 'skin.common.primary', context);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const shadowBoxPrimaryColor = useMemo(() => convert(`color(${primarySkinColor} a(12%))`), [\n primarySkinColor\n ]);\n\n return (\n <div\n data-name=\"freeText\"\n className={style.wrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n style={{\n ...(value && {\n boxShadow: hovered ? 'none' : `0 4px 16px ${shadowBoxPrimaryColor}`\n })\n }}\n >\n <input\n data-name=\"free-text-input\"\n type=\"text\"\n aria-label={ariaLabel || value || placeholder}\n className={style.freeText}\n placeholder={placeholder}\n value={value}\n onInput={handleChange}\n onChange={noop}\n style={{\n boxShadow: `0 4px 16px ${shadowBoxPrimaryColor}`,\n ...(value && {\n boxShadow: `0 4px 16px ${\n hovered ? convert(`color(${primarySkinColor} a(20%))`) : shadowBoxPrimaryColor\n }`\n }),\n color: primarySkinColor\n }}\n />\n </div>\n );\n};\n\nFreeText.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nFreeText.propTypes = {\n placeholder: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n 'aria-label': PropTypes.string\n};\n\nexport default FreeText;\n"],"file":"index.js"}
|
|
@@ -1,41 +1,61 @@
|
|
|
1
1
|
@value breakpoints: "../../../variables/breakpoints.css";
|
|
2
2
|
@value mobile from breakpoints;
|
|
3
3
|
@value colors: "../../../variables/colors.css";
|
|
4
|
-
@value
|
|
5
|
-
@value
|
|
4
|
+
@value box_shadow_light_dark from colors;
|
|
5
|
+
@value cm_blue_900 from colors;
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
.freeText {
|
|
9
|
+
border: unset;
|
|
10
|
+
border-width: 0;
|
|
8
11
|
font-family: "Gilroy";
|
|
9
12
|
font-weight: 700;
|
|
10
13
|
text-transform: none;
|
|
11
|
-
padding: 0 15px;
|
|
12
|
-
border: solid 1px;
|
|
13
|
-
border-color: color(black lightness(85%));
|
|
14
14
|
height: 50px;
|
|
15
|
-
border-radius:
|
|
15
|
+
border-radius: 8px;
|
|
16
16
|
font-size: 14px;
|
|
17
|
-
width:
|
|
17
|
+
max-width: calc(100% - 24px);
|
|
18
|
+
width: 100%;
|
|
18
19
|
outline: none;
|
|
20
|
+
padding-left: 12px;
|
|
21
|
+
padding-right: 12px;
|
|
19
22
|
}
|
|
20
23
|
|
|
21
|
-
.
|
|
22
|
-
color:
|
|
24
|
+
.freeText::placeholder {
|
|
25
|
+
color: color(cm_blue_900 a(0.3));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.freeText:focus {
|
|
29
|
+
outline: none;
|
|
23
30
|
}
|
|
24
31
|
|
|
25
|
-
.
|
|
32
|
+
.freeText:hover {
|
|
26
33
|
outline: none;
|
|
27
34
|
}
|
|
28
35
|
|
|
36
|
+
.wrapper {
|
|
37
|
+
border-radius: 8px;
|
|
38
|
+
box-shadow: 0px 4px 16px box_shadow_light_dark;
|
|
39
|
+
margin: 0 15px;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
width: 230px;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.wrapper:hover {
|
|
45
|
+
box-shadow: none;
|
|
46
|
+
overflow: visible;
|
|
47
|
+
}
|
|
48
|
+
|
|
29
49
|
@media mobile {
|
|
30
50
|
.wrapper {
|
|
31
|
-
width:
|
|
51
|
+
max-width: calc(100% - 30px);
|
|
52
|
+
width: auto;
|
|
32
53
|
box-sizing: border-box;
|
|
33
|
-
max-width: 100%;
|
|
34
54
|
}
|
|
35
55
|
|
|
36
|
-
.
|
|
56
|
+
.freeText {
|
|
57
|
+
min-width: fit-content;
|
|
37
58
|
width: 100%;
|
|
38
|
-
margin: 0;
|
|
39
59
|
box-sizing: border-box;
|
|
40
60
|
}
|
|
41
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/molecule/questions/free-text/test/fixtures/default.js"],"names":["props","placeholder","
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/molecule/questions/free-text/test/fixtures/default.js"],"names":["props","placeholder","value","undefined"],"mappings":";;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,WAAW,EAAE,uBADR;AAELC,IAAAA,KAAK,EAAEC;AAFF;AADM,C","sourcesContent":["export default {\n props: {\n placeholder: 'Type your answer here',\n value: undefined\n }\n};\n"],"file":"default.js"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _default = {
|
|
6
|
+
props: {
|
|
7
|
+
placeholder: 'Type your answer here',
|
|
8
|
+
value: 'plop!',
|
|
9
|
+
onChange: () => {},
|
|
10
|
+
'aria-label': 'aria input'
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
exports.default = _default;
|
|
14
|
+
//# sourceMappingURL=with-value-on-change.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/molecule/questions/free-text/test/fixtures/with-value-on-change.js"],"names":["props","placeholder","value","onChange"],"mappings":";;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,WAAW,EAAE,uBADR;AAELC,IAAAA,KAAK,EAAE,OAFF;AAGLC,IAAAA,QAAQ,EAAE,MAAM,CAAE,CAHb;AAIL,kBAAc;AAJT;AADM,C","sourcesContent":["export default {\n props: {\n placeholder: 'Type your answer here',\n value: 'plop!',\n onChange: () => {},\n 'aria-label': 'aria input'\n }\n};\n"],"file":"with-value-on-change.js"}
|
package/lib/molecule/questions/free-text/test/fixtures/{with-default-value.js → with-value.js}
RENAMED
|
@@ -5,8 +5,8 @@ exports.default = void 0;
|
|
|
5
5
|
var _default = {
|
|
6
6
|
props: {
|
|
7
7
|
placeholder: 'Type your answer here',
|
|
8
|
-
|
|
8
|
+
value: 'plop!'
|
|
9
9
|
}
|
|
10
10
|
};
|
|
11
11
|
exports.default = _default;
|
|
12
|
-
//# sourceMappingURL=with-
|
|
12
|
+
//# sourceMappingURL=with-value.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/molecule/questions/free-text/test/fixtures/with-value.js"],"names":["props","placeholder","value"],"mappings":";;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,WAAW,EAAE,uBADR;AAELC,IAAAA,KAAK,EAAE;AAFF;AADM,C","sourcesContent":["export default {\n props: {\n placeholder: 'Type your answer here',\n value: 'plop!'\n }\n};\n"],"file":"with-value.js"}
|
|
@@ -10,7 +10,9 @@ var _ = _interopRequireDefault(require(".."));
|
|
|
10
10
|
|
|
11
11
|
var _default = _interopRequireDefault(require("./fixtures/default"));
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _withValueOnChange = _interopRequireDefault(require("./fixtures/with-value-on-change"));
|
|
14
|
+
|
|
15
|
+
var _withValue = _interopRequireDefault(require("./fixtures/with-value"));
|
|
14
16
|
|
|
15
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
18
|
|
|
@@ -21,5 +23,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
21
23
|
});
|
|
22
24
|
});
|
|
23
25
|
(0, _ava.default)('MoleculeQuestions › MoleculeQuestionsFreeText › Default › should be rendered', _renderComponent.default, _.default, _default.default);
|
|
24
|
-
(0, _ava.default)('MoleculeQuestions › MoleculeQuestionsFreeText ›
|
|
26
|
+
(0, _ava.default)('MoleculeQuestions › MoleculeQuestionsFreeText › WithValueOnChange › should be rendered', _renderComponent.default, _.default, _withValueOnChange.default);
|
|
27
|
+
(0, _ava.default)('MoleculeQuestions › MoleculeQuestionsFreeText › WithValue › should be rendered', _renderComponent.default, _.default, _withValue.default);
|
|
25
28
|
//# sourceMappingURL=fixtures.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/molecule/questions/free-text/test/fixtures.js"],"names":["t","pass","MoleculeQuestionsFreeText","propTypes","value","key","not","undefined","renderComponentMacro","fixtureDefault","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/molecule/questions/free-text/test/fixtures.js"],"names":["t","pass","MoleculeQuestionsFreeText","propTypes","value","key","not","undefined","renderComponentMacro","fixtureDefault","fixtureWithValueOnChange","fixtureWithValue"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,kBAAK,6EAAL,EAAoFA,CAAC,IAAI;AACvFA,EAAAA,CAAC,CAACC,IAAF;AACA,wBAAQC,UAA0BC,SAAlC,EAA6C,CAACC,KAAD,EAAQC,GAAR,KAAgB;AAC3DL,IAAAA,CAAC,CAACM,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,uEAAsEF,GAAI,mEAAnG;AACD,GAFD;AAGD,CALD;AAOA,kBAAK,8EAAL,EAAqFG,wBAArF,EAA2GN,SAA3G,EAAsIO,gBAAtI;AACA,kBAAK,wFAAL,EAA+FD,wBAA/F,EAAqHN,SAArH,EAAgJQ,0BAAhJ;AACA,kBAAK,gFAAL,EAAuFF,wBAAvF,EAA6GN,SAA7G,EAAwIS,kBAAxI","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../../test/helpers/render-component';\nimport MoleculeQuestionsFreeText from '..';\nimport fixtureDefault from './fixtures/default';\nimport fixtureWithValueOnChange from './fixtures/with-value-on-change';\nimport fixtureWithValue from './fixtures/with-value';\n\ntest('MoleculeQuestions › MoleculeQuestionsFreeText > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeQuestionsFreeText.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"MoleculeQuestions.MoleculeQuestionsFreeText.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('MoleculeQuestions › MoleculeQuestionsFreeText › Default › should be rendered', renderComponentMacro, MoleculeQuestionsFreeText, fixtureDefault);\ntest('MoleculeQuestions › MoleculeQuestionsFreeText › WithValueOnChange › should be rendered', renderComponentMacro, MoleculeQuestionsFreeText, fixtureWithValueOnChange);\ntest('MoleculeQuestions › MoleculeQuestionsFreeText › WithValue › should be rendered', renderComponentMacro, MoleculeQuestionsFreeText, fixtureWithValue);\n"],"file":"fixtures.js"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _identity2 = _interopRequireDefault(require("lodash/fp/identity"));
|
|
4
|
+
|
|
5
|
+
var _browserEnv = _interopRequireDefault(require("browser-env"));
|
|
6
|
+
|
|
7
|
+
var _ava = _interopRequireDefault(require("ava"));
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
|
|
11
|
+
var _enzyme = require("enzyme");
|
|
12
|
+
|
|
13
|
+
var _enzymeAdapterReact = _interopRequireDefault(require("enzyme-adapter-react-16"));
|
|
14
|
+
|
|
15
|
+
var _ = _interopRequireDefault(require(".."));
|
|
16
|
+
|
|
17
|
+
var _default = _interopRequireDefault(require("./fixtures/default"));
|
|
18
|
+
|
|
19
|
+
var _withValue = _interopRequireDefault(require("./fixtures/with-value"));
|
|
20
|
+
|
|
21
|
+
var _withValueOnChange = _interopRequireDefault(require("./fixtures/with-value-on-change"));
|
|
22
|
+
|
|
23
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
|
+
|
|
25
|
+
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); }
|
|
26
|
+
|
|
27
|
+
(0, _browserEnv.default)();
|
|
28
|
+
(0, _enzyme.configure)({
|
|
29
|
+
adapter: new _enzymeAdapterReact.default()
|
|
30
|
+
});
|
|
31
|
+
const translate = _identity2.default;
|
|
32
|
+
(0, _ava.default)('onInput should be reachable and replace onChange, onChange should not trigger value changes, should use aria-label', t => {
|
|
33
|
+
t.plan(7);
|
|
34
|
+
let onInputWasTriggered = false;
|
|
35
|
+
|
|
36
|
+
const props = _extends(_extends({}, _withValueOnChange.default.props), {}, {
|
|
37
|
+
onChange: value => {
|
|
38
|
+
onInputWasTriggered = true;
|
|
39
|
+
t.is(value, 'new value');
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
const wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react.default.createElement(_.default, props), {
|
|
44
|
+
context: {
|
|
45
|
+
translate
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
let freeText = wrapper.find('[data-name="free-text-input"]');
|
|
49
|
+
t.true(freeText.at(0).exists());
|
|
50
|
+
t.is(freeText.at(0).props()['aria-label'], 'aria input');
|
|
51
|
+
t.is(freeText.at(0).props().value, 'plop!'); // should not trigger a value change with onChange
|
|
52
|
+
|
|
53
|
+
freeText.at(0).simulate('change', {
|
|
54
|
+
target: {
|
|
55
|
+
value: 'new value'
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
wrapper.update(); // should not update the trigger flag with onChange
|
|
59
|
+
|
|
60
|
+
t.false(onInputWasTriggered);
|
|
61
|
+
freeText.at(0).simulate('input', {
|
|
62
|
+
target: {
|
|
63
|
+
value: 'new value'
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
wrapper.update();
|
|
67
|
+
freeText = wrapper.find('[data-name="free-text-input"]');
|
|
68
|
+
t.true(onInputWasTriggered);
|
|
69
|
+
t.pass();
|
|
70
|
+
});
|
|
71
|
+
(0, _ava.default)('should set: boxShadow (hover & not hovered variants) && color for the input if a value is provided', t => {
|
|
72
|
+
const wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react.default.createElement(_.default, _withValue.default.props));
|
|
73
|
+
let freeTextWrapper = wrapper.find('[data-name="freeText"]');
|
|
74
|
+
t.true(freeTextWrapper.at(0).exists());
|
|
75
|
+
t.deepEqual(freeTextWrapper.at(0).props().style, {
|
|
76
|
+
boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)'
|
|
77
|
+
});
|
|
78
|
+
let freeText = wrapper.find('[data-name="free-text-input"]');
|
|
79
|
+
t.true(freeText.at(0).exists());
|
|
80
|
+
t.is(freeText.at(0).props().value, 'plop!');
|
|
81
|
+
t.deepEqual(freeTextWrapper.at(0).props().style, {
|
|
82
|
+
boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)'
|
|
83
|
+
});
|
|
84
|
+
freeTextWrapper.simulate('mouseover');
|
|
85
|
+
wrapper.update();
|
|
86
|
+
freeText = wrapper.find('[data-name="free-text-input"]');
|
|
87
|
+
freeTextWrapper = wrapper.find('[data-name="freeText"]'); // hovered
|
|
88
|
+
|
|
89
|
+
t.deepEqual(freeText.at(0).props().style, {
|
|
90
|
+
boxShadow: '0 4px 16px rgba(0, 176, 255, 0.2)',
|
|
91
|
+
color: '#00B0FF'
|
|
92
|
+
});
|
|
93
|
+
t.deepEqual(freeTextWrapper.at(0).props().style, {
|
|
94
|
+
boxShadow: 'none'
|
|
95
|
+
});
|
|
96
|
+
freeTextWrapper.simulate('mouseleave');
|
|
97
|
+
wrapper.update();
|
|
98
|
+
freeText = wrapper.find('[data-name="free-text-input"]');
|
|
99
|
+
t.deepEqual(freeText.at(0).props().style, {
|
|
100
|
+
boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)',
|
|
101
|
+
color: '#00B0FF'
|
|
102
|
+
});
|
|
103
|
+
t.pass();
|
|
104
|
+
});
|
|
105
|
+
(0, _ava.default)('should use value as default aria-label if no aria-label is provided', t => {
|
|
106
|
+
const wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react.default.createElement(_.default, _withValue.default.props));
|
|
107
|
+
const freeText = wrapper.find('[data-name="free-text-input"]');
|
|
108
|
+
t.true(freeText.at(0).exists());
|
|
109
|
+
t.is(freeText.at(0).props()['aria-label'], 'plop!');
|
|
110
|
+
t.pass();
|
|
111
|
+
});
|
|
112
|
+
(0, _ava.default)('should use placeholder as default aria-label if no aria-label is provided and no value is present', t => {
|
|
113
|
+
const wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react.default.createElement(_.default, _default.default.props));
|
|
114
|
+
const freeText = wrapper.find('[data-name="free-text-input"]');
|
|
115
|
+
t.true(freeText.at(0).exists());
|
|
116
|
+
t.is(freeText.at(0).props()['aria-label'], 'Type your answer here');
|
|
117
|
+
t.pass();
|
|
118
|
+
});
|
|
119
|
+
//# sourceMappingURL=free-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/molecule/questions/free-text/test/free-text.js"],"names":["adapter","Adapter","translate","t","plan","onInputWasTriggered","props","withValueOnChangeFixture","onChange","value","is","wrapper","context","freeText","find","true","at","exists","simulate","target","update","false","pass","withValueFixture","freeTextWrapper","deepEqual","style","boxShadow","color","defaultFixture"],"mappings":"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","sourcesContent":["import browserEnv from 'browser-env';\nimport test from 'ava';\nimport React from 'react';\nimport {shallow, mount, configure} from 'enzyme';\nimport {identity} from 'lodash/fp';\nimport Adapter from 'enzyme-adapter-react-16';\nimport FreeText from '..';\nimport defaultFixture from './fixtures/default';\nimport withValueFixture from './fixtures/with-value';\nimport withValueOnChangeFixture from './fixtures/with-value-on-change';\n\nbrowserEnv();\nconfigure({adapter: new Adapter()});\nconst translate = identity;\n\ntest('onInput should be reachable and replace onChange, onChange should not trigger value changes, should use aria-label', t => {\n t.plan(7);\n let onInputWasTriggered = false;\n const props = {\n ...withValueOnChangeFixture.props,\n onChange: value => {\n onInputWasTriggered = true;\n t.is(value, 'new value');\n }\n };\n const wrapper = shallow(<FreeText {...props} />, {\n context: {translate}\n });\n let freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.true(freeText.at(0).exists());\n t.is(freeText.at(0).props()['aria-label'], 'aria input');\n t.is(freeText.at(0).props().value, 'plop!');\n // should not trigger a value change with onChange\n freeText.at(0).simulate('change', {target: {value: 'new value'}});\n wrapper.update();\n // should not update the trigger flag with onChange\n t.false(onInputWasTriggered);\n freeText.at(0).simulate('input', {target: {value: 'new value'}});\n wrapper.update();\n freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.true(onInputWasTriggered);\n t.pass();\n});\n\ntest('should set: boxShadow (hover & not hovered variants) && color for the input if a value is provided', t => {\n const wrapper = mount(<FreeText {...withValueFixture.props} />);\n let freeTextWrapper = wrapper.find('[data-name=\"freeText\"]');\n t.true(freeTextWrapper.at(0).exists());\n t.deepEqual(freeTextWrapper.at(0).props().style, {\n boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)'\n });\n\n let freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.true(freeText.at(0).exists());\n t.is(freeText.at(0).props().value, 'plop!');\n t.deepEqual(freeTextWrapper.at(0).props().style, {\n boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)'\n });\n freeTextWrapper.simulate('mouseover');\n wrapper.update();\n\n freeText = wrapper.find('[data-name=\"free-text-input\"]');\n freeTextWrapper = wrapper.find('[data-name=\"freeText\"]');\n // hovered\n t.deepEqual(freeText.at(0).props().style, {\n boxShadow: '0 4px 16px rgba(0, 176, 255, 0.2)',\n color: '#00B0FF'\n });\n t.deepEqual(freeTextWrapper.at(0).props().style, {\n boxShadow: 'none'\n });\n\n freeTextWrapper.simulate('mouseleave');\n wrapper.update();\n freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.deepEqual(freeText.at(0).props().style, {\n boxShadow: '0 4px 16px rgba(0, 176, 255, 0.12)',\n color: '#00B0FF'\n });\n\n t.pass();\n});\n\ntest('should use value as default aria-label if no aria-label is provided', t => {\n const wrapper = mount(<FreeText {...withValueFixture.props} />);\n const freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.true(freeText.at(0).exists());\n t.is(freeText.at(0).props()['aria-label'], 'plop!');\n t.pass();\n});\n\ntest('should use placeholder as default aria-label if no aria-label is provided and no value is present', t => {\n const wrapper = mount(<FreeText {...defaultFixture.props} />);\n const freeText = wrapper.find('[data-name=\"free-text-input\"]');\n t.true(freeText.at(0).exists());\n t.is(freeText.at(0).props()['aria-label'], 'Type your answer here');\n t.pass();\n});\n"],"file":"free-text.js"}
|
|
@@ -3,59 +3,79 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.default = void 0;
|
|
5
5
|
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
var _getOr2 = _interopRequireDefault(require("lodash/fp/getOr"));
|
|
9
|
-
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
7
|
|
|
12
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
9
|
|
|
14
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
11
|
|
|
12
|
+
var _getOr = _interopRequireDefault(require("lodash/fp/getOr"));
|
|
13
|
+
|
|
14
|
+
var _maxBy = _interopRequireDefault(require("lodash/fp/maxBy"));
|
|
15
|
+
|
|
16
16
|
var _provider = _interopRequireDefault(require("../../../atom/provider"));
|
|
17
17
|
|
|
18
18
|
var _style = require("../../../atom/label/style.css");
|
|
19
19
|
|
|
20
|
+
var _getShadowBoxColorFromPrimary = require("../../../util/get-shadow-box-color-from-primary");
|
|
21
|
+
|
|
20
22
|
var _style2 = _interopRequireDefault(require("./style.css"));
|
|
21
23
|
|
|
22
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
25
|
|
|
26
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
27
|
+
|
|
28
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
+
|
|
30
|
+
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); }
|
|
31
|
+
|
|
24
32
|
const QCM = (props, context) => {
|
|
25
33
|
const {
|
|
26
34
|
answers
|
|
27
35
|
} = props;
|
|
28
|
-
const longestAnswer = (0,
|
|
36
|
+
const longestAnswer = (0, _maxBy.default)(({
|
|
29
37
|
title
|
|
30
38
|
}) => title.length, answers);
|
|
31
|
-
const
|
|
39
|
+
const {
|
|
40
|
+
skin
|
|
41
|
+
} = context;
|
|
42
|
+
const primarySkinColor = (0, _getOr.default)('#00B0FF', 'common.primary', skin);
|
|
43
|
+
const answersViews = (0, _react.useMemo)(() => answers.map((answer, key) => {
|
|
32
44
|
const {
|
|
33
45
|
onClick,
|
|
34
46
|
title,
|
|
35
|
-
selected
|
|
47
|
+
selected,
|
|
48
|
+
'aria-label': ariaLabel
|
|
36
49
|
} = answer;
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
} = context;
|
|
40
|
-
const primarySkinColor = (0, _getOr2.default)('#00B0FF', 'common.primary', skin);
|
|
41
|
-
const selectedStyle = selected ? {
|
|
42
|
-
backgroundColor: primarySkinColor,
|
|
43
|
-
borderColor: primarySkinColor
|
|
44
|
-
} : null;
|
|
45
|
-
const className = (0, _classnames.default)(longestAnswer === answer ? _style2.default.longestAnswer : _style2.default.answer, selected ? _style2.default.selectedAnswer : _style2.default.unselectedAnswer);
|
|
50
|
+
const longAnswerClass = longestAnswer.title === title ? _style2.default.longestAnswer : _style2.default.answer;
|
|
51
|
+
const selectedAnswerClass = selected ? _style2.default.selectedAnswer : _style2.default.unselectedAnswer;
|
|
46
52
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
47
53
|
"data-name": "answer",
|
|
48
|
-
|
|
54
|
+
"aria-label": ariaLabel || title,
|
|
55
|
+
className: (0, _classnames.default)(longAnswerClass, _style.innerHTML, selectedAnswerClass),
|
|
49
56
|
onClick: onClick,
|
|
50
|
-
style:
|
|
57
|
+
style: _extends({}, selected && {
|
|
58
|
+
boxShadow: `0 4px 16px ${(0, _getShadowBoxColorFromPrimary.getShadowBoxColorFromPrimary)(primarySkinColor)}`
|
|
59
|
+
}),
|
|
51
60
|
"data-selected": selected,
|
|
52
|
-
key: key
|
|
61
|
+
key: key
|
|
62
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
63
|
+
"data-name": "answer-background",
|
|
64
|
+
style: {
|
|
65
|
+
backgroundColor: selected ? primarySkinColor : '#F4F4F5'
|
|
66
|
+
/* cm_grey_75 */
|
|
67
|
+
|
|
68
|
+
},
|
|
69
|
+
className: _style2.default.background
|
|
70
|
+
}), /*#__PURE__*/_react.default.createElement("span", {
|
|
71
|
+
"data-name": "answer-label",
|
|
72
|
+
className: _style2.default.answerText // eslint-disable-next-line react/no-danger
|
|
53
73
|
,
|
|
54
74
|
dangerouslySetInnerHTML: {
|
|
55
75
|
__html: title
|
|
56
76
|
}
|
|
57
|
-
});
|
|
58
|
-
});
|
|
77
|
+
}));
|
|
78
|
+
}), [answers, longestAnswer, primarySkinColor]);
|
|
59
79
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
60
80
|
"data-name": "qcm",
|
|
61
81
|
className: _style2.default.wrapper
|
|
@@ -69,7 +89,8 @@ QCM.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
69
89
|
answers: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
70
90
|
title: _propTypes.default.string,
|
|
71
91
|
selected: _propTypes.default.bool,
|
|
72
|
-
onClick: _propTypes.default.func
|
|
92
|
+
onClick: _propTypes.default.func,
|
|
93
|
+
'aria-label': _propTypes.default.string
|
|
73
94
|
}))
|
|
74
95
|
} : {};
|
|
75
96
|
var _default = QCM;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/molecule/questions/qcm/index.js"],"names":["QCM","props","context","answers","longestAnswer","title","length","answersViews","map","answer","key","onClick","selected","
|
|
1
|
+
{"version":3,"sources":["../../../../src/molecule/questions/qcm/index.js"],"names":["QCM","props","context","answers","longestAnswer","title","length","skin","primarySkinColor","answersViews","map","answer","key","onClick","selected","ariaLabel","longAnswerClass","style","selectedAnswerClass","selectedAnswer","unselectedAnswer","innerHTML","boxShadow","backgroundColor","background","answerText","__html","wrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","arrayOf","shape","string","bool","func"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,MAAMA,GAAG,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AAC9B,QAAM;AAACC,IAAAA;AAAD,MAAYF,KAAlB;AACA,QAAMG,aAAa,GAAG,oBAAM,CAAC;AAACC,IAAAA;AAAD,GAAD,KAAaA,KAAK,CAACC,MAAzB,EAAiCH,OAAjC,CAAtB;AACA,QAAM;AAACI,IAAAA;AAAD,MAASL,OAAf;AACA,QAAMM,gBAAgB,GAAG,oBAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAAzB;AAEA,QAAME,YAAY,GAAG,oBACnB,MACEN,OAAO,CAACO,GAAR,CAAY,CAACC,MAAD,EAASC,GAAT,KAAiB;AAC3B,UAAM;AAACC,MAAAA,OAAD;AAAUR,MAAAA,KAAV;AAAiBS,MAAAA,QAAjB;AAA2B,oBAAcC;AAAzC,QAAsDJ,MAA5D;AACA,UAAMK,eAAe,GAAGZ,aAAa,CAACC,KAAd,KAAwBA,KAAxB,GAAgCY,gBAAMb,aAAtC,GAAsDa,gBAAMN,MAApF;AACA,UAAMO,mBAAmB,GAAGJ,QAAQ,GAAGG,gBAAME,cAAT,GAA0BF,gBAAMG,gBAApE;AAEA,wBACE;AACE,mBAAU,QADZ;AAEE,oBAAYL,SAAS,IAAIV,KAF3B;AAGE,MAAA,SAAS,EAAE,yBAAWW,eAAX,EAA4BK,gBAA5B,EAAuCH,mBAAvC,CAHb;AAIE,MAAA,OAAO,EAAEL,OAJX;AAKE,MAAA,KAAK,eACCC,QAAQ,IAAI;AACdQ,QAAAA,SAAS,EAAG,cAAa,gEAA6Bd,gBAA7B,CAA+C;AAD1D,OADb,CALP;AAUE,uBAAeM,QAVjB;AAWE,MAAA,GAAG,EAAEF;AAXP,oBAaE;AACE,mBAAU,mBADZ;AAEE,MAAA,KAAK,EAAE;AAACW,QAAAA,eAAe,EAAET,QAAQ,GAAGN,gBAAH,GAAsB;AAAU;;AAA1D,OAFT;AAGE,MAAA,SAAS,EAAES,gBAAMO;AAHnB,MAbF,eAkBE;AACE,mBAAU,cADZ;AAEE,MAAA,SAAS,EAAEP,gBAAMQ,UAFnB,CAGE;AAHF;AAIE,MAAA,uBAAuB,EAAE;AAACC,QAAAA,MAAM,EAAErB;AAAT;AAJ3B,MAlBF,CADF;AA2BD,GAhCD,CAFiB,EAmCnB,CAACF,OAAD,EAAUC,aAAV,EAAyBI,gBAAzB,CAnCmB,CAArB;AAsCA,sBACE;AAAK,iBAAU,KAAf;AAAqB,IAAA,SAAS,EAAES,gBAAMU;AAAtC,KACGlB,YADH,CADF;AAKD,CAjDD;;AAmDAT,GAAG,CAAC4B,YAAJ,GAAmB;AACjBrB,EAAAA,IAAI,EAAEsB,kBAASC,iBAAT,CAA2BvB;AADhB,CAAnB;AAIAP,GAAG,CAAC+B,SAAJ,2CAAgB;AACd5B,EAAAA,OAAO,EAAE6B,mBAAUC,OAAV,CACPD,mBAAUE,KAAV,CAAgB;AACd7B,IAAAA,KAAK,EAAE2B,mBAAUG,MADH;AAEdrB,IAAAA,QAAQ,EAAEkB,mBAAUI,IAFN;AAGdvB,IAAAA,OAAO,EAAEmB,mBAAUK,IAHL;AAId,kBAAcL,mBAAUG;AAJV,GAAhB,CADO;AADK,CAAhB;eAWenC,G","sourcesContent":["import React, {useMemo} from 'react';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport maxBy from 'lodash/fp/maxBy';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport {getShadowBoxColorFromPrimary} from '../../../util/get-shadow-box-color-from-primary';\nimport style from './style.css';\n\nconst QCM = (props, context) => {\n const {answers} = props;\n const longestAnswer = maxBy(({title}) => title.length, answers);\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n const answersViews = useMemo(\n () =>\n answers.map((answer, key) => {\n const {onClick, title, selected, 'aria-label': ariaLabel} = answer;\n const longAnswerClass = longestAnswer.title === title ? style.longestAnswer : style.answer;\n const selectedAnswerClass = selected ? style.selectedAnswer : style.unselectedAnswer;\n\n return (\n <div\n data-name=\"answer\"\n aria-label={ariaLabel || title}\n className={classnames(longAnswerClass, innerHTML, selectedAnswerClass)}\n onClick={onClick}\n style={{\n ...(selected && {\n boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`\n })\n }}\n data-selected={selected}\n key={key}\n >\n <div\n data-name=\"answer-background\"\n style={{backgroundColor: selected ? primarySkinColor : '#F4F4F5' /* cm_grey_75 */}}\n className={style.background}\n />\n <span\n data-name=\"answer-label\"\n className={style.answerText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n );\n }),\n [answers, longestAnswer, primarySkinColor]\n );\n\n return (\n <div data-name=\"qcm\" className={style.wrapper}>\n {answersViews}\n </div>\n );\n};\n\nQCM.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQCM.propTypes = {\n answers: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n selected: PropTypes.bool,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n )\n};\n\nexport default QCM;\n"],"file":"index.js"}
|