Sha256: 00a5204d921c7d653d4f103e47153d6019f2d80c9ec762edebbf2b3a42e79fe0

Contents?: true

Size: 1.76 KB

Versions: 5

Compression:

Stored size: 1.76 KB

Contents

// eslint-disable-next-line no-unused-vars
function ExploreCurriculumModuleMap(props) {
  const mapClass = classNames({
    'o-cur-card__map': true,
    'o-cur-card__map--medium': props.expanded,
    'o-cur-card__map--short': !props.expanded
  });

  const mainClass = classNames({
    'o-ch-map': true,
    'o-ch-map--medium': props.expanded,
    'o-ch-map--short': !props.expanded
  });

  const bemClass = _.partial(convertToBEM, mainClass);
  const colorCodeClass = `cs-bg--${props.colorCode}`;

  const details = props.expanded ?
    <div className="o-ch-map__details">
      <span>Show Units</span>
    </div> : '';

  const units = props.curriculum.unit_sizes.map((size, i) => {
    const lessons = [];
    const unit = props.curriculum.children[i];

    for (let j = 0; j < size; j++) {
      const child = unit ? unit.children[j] : null;
      if (child && child.resource.is_opr) continue;
      const prereqClass = child && child.resource.is_prerequisite ? 'o-ch-unit-map__prerequisite' : '';
      const assessmentClass =  unit && unit.resource.is_assessment ? `o-ch-unit-map__assessment--${props.colorCode}` : '';
      lessons.push((
        <div key={j} className={classNames(bemClass('lesson'), colorCodeClass, assessmentClass, prereqClass)}></div>
      ));
    }

    return (
      <div key={i} className={bemClass('unit')}>
        {lessons}
      </div>
    );
  });

  return (
    <div className={mapClass}>
      <div className={mainClass}>
        <div className={bemClass('module-wrap')}>
          <div className={classNames(bemClass('module'), colorCodeClass)}></div>
        </div>
        <div className={bemClass('units-wrap')}>
          <div className={bemClass('units')}>
            {units}
          </div>
        </div>
      </div>
      {details}
    </div>
  );
}

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lcms-engine-0.1.4 app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx
lcms-engine-0.1.3 app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx
lcms-engine-0.2.0 app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx
lcms-engine-0.1.2 app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx
lcms-engine-0.1.0 app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx