{"version":3,"file":"319.ee3d9c435b699c21bbe5.js","mappings":"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","sources":["webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/AnimationComponents/load-overlay.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-system.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/System/system-list-item.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactReducers/SystemList/system-list-composer.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/System/system-list.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactViews/SystemList/system-list-view.js"],"sourcesContent":["import React from \"react\";\r\nimport classNames from \"classnames\";\r\n\r\nfunction LoadOverlay(props) {\r\n    const rootClasses = classNames(\"load-overlay\", props.className, {\r\n        \"load-overlay--center-content\": props.CenterLoaderVertically\r\n    });\r\n\r\n    return (\r\n        <div className={rootClasses}>\r\n            {props.LoaderText && (\r\n                <div className=\"load-overlay__text\" dangerouslySetInnerHTML={{ __html: props.LoaderText }} />\r\n            )}\r\n            <div className=\"loader loader--large\">\r\n                <span />\r\n            </div>\r\n        </div>\r\n    );\r\n}\r\n\r\nexport default LoadOverlay;\r\n","import React, { Component } from \"react\";\r\n\r\nclass IconSystem extends Component {\r\n    constructor(props) {\r\n        super(props);\r\n    }\r\n\r\n    render() {\r\n        return (\r\n            <svg x=\"0px\" y=\"0px\" width=\"50px\" height=\"50px\" viewBox=\"0 0 50 50\" role=\"presentation\">\r\n                <line fill=\"none\" x1=\"32.5\" y1=\"25\" x2=\"17.5\" y2=\"25\" />\r\n                <line fill=\"none\" x1=\"25\" y1=\"25.5\" x2=\"25\" y2=\"31.5\" />\r\n                <line fill=\"none\" x1=\"25\" y1=\"18.5\" x2=\"25\" y2=\"25.5\" />\r\n                <line fill=\"none\" x1=\"32\" y1=\"25.5\" x2=\"32\" y2=\"31.5\" />\r\n                <line fill=\"none\" x1=\"18\" y1=\"25.5\" x2=\"18\" y2=\"31.5\" />\r\n                <circle cx=\"32\" cy=\"31\" r=\"1.5\" />\r\n                <circle cx=\"25\" cy=\"31\" r=\"1.5\" />\r\n                <circle cx=\"25\" cy=\"19\" r=\"1.5\" />\r\n                <circle cx=\"18\" cy=\"31\" r=\"1.5\" />\r\n            </svg>\r\n        );\r\n    }\r\n}\r\n\r\nexport default IconSystem;\r\n","import React, { Component } from \"react\";\r\nimport IconSystem from \"ReactComponents/Shared/Icons/icon-system\";\r\n\r\nclass SystemListItem extends Component {\r\n    constructor(props) {\r\n        super(props);\r\n    }\r\n\r\n    render() {\r\n        const system = this.props.system;\r\n        const subSystemCount = system.SubSystems && system.SubSystems.length;\r\n\r\n        return (\r\n            <li className=\"system-item\">\r\n                <a href={system.Url}>\r\n                    <div className=\"system-item__inner\">\r\n                        <div className=\"system-item__image\">\r\n                            <img\r\n                                loading=\"lazy\"\r\n                                src={system.ImageUrl}\r\n                                alt={`Udvalgte forsider i ${system.Title}-serien`}\r\n                            />\r\n                        </div>\r\n\r\n                        {this.props.showSubjectTag && (\r\n                            <div className=\"system-item__tags\">\r\n                                {system.SubjectTagText && (\r\n                                    <div\r\n                                        className=\"system-item__tag subject\"\r\n                                        dangerouslySetInnerHTML={{ __html: system.SubjectTagText }}\r\n                                    />\r\n                                )}\r\n                                <div className=\"system-item__tag type\">\r\n                                    {system.IsSystem ? (\r\n                                        <span dangerouslySetInnerHTML={{ __html: this.props.systemLabel }} />\r\n                                    ) : (\r\n                                        <span dangerouslySetInnerHTML={{ __html: this.props.seriesLabel }} />\r\n                                    )}\r\n                                </div>\r\n                            </div>\r\n                        )}\r\n                        <div className=\"system-item__meta-container\">\r\n                            <div className=\"system-item__meta-container__system-title\" title={system.Title}>\r\n                                <span dangerouslySetInnerHTML={{ __html: system.Title }} />\r\n                                <div className=\"system-item__meta-container__system-subtitle\">\r\n                                    <span dangerouslySetInnerHTML={{ __html: system.SubTitle }} />\r\n                                </div>\r\n                            </div>\r\n\r\n                            {subSystemCount > 0 && (\r\n                                <div className=\"system-item__meta-container__subsystem-container\">\r\n                                    <div className=\"system-item__meta-container__subsystem-header\">\r\n                                        <span className=\"system-icon\">\r\n                                            <IconSystem />\r\n                                        </span>\r\n                                        <span className=\"system-count\">\r\n                                            {subSystemCount}{\" \"}\r\n                                            <span\r\n                                                dangerouslySetInnerHTML={{\r\n                                                    __html: this.props.subSystemLabel\r\n                                                }}\r\n                                            />\r\n                                        </span>\r\n                                    </div>\r\n                                </div>\r\n                            )}\r\n                        </div>\r\n                    </div>\r\n                </a>\r\n            </li>\r\n        );\r\n    }\r\n}\r\nexport default SystemListItem;\r\n","import { connect } from \"react-redux\";\r\nimport { systemListSelector, systemListActions } from \"ReactReducers/SystemList/system-list-reducer\";\r\n\r\nexport function systemListComposer(Component) {\r\n    const mapStateToProps = function (state) {\r\n        return {\r\n            Systems: systemListSelector.systems(state),\r\n            HasNext: systemListSelector.hasNext(state),\r\n            isLoading: systemListSelector.isLoading(state),\r\n            isLoadingMore: systemListSelector.isLoadingMore(state),\r\n            TotalCount: systemListSelector.totalCount(state),\r\n            ErrorMessage: systemListSelector.errorMessage(state),\r\n            OrderDir: systemListSelector.orderDir(state)\r\n        };\r\n    };\r\n\r\n    const mapDispatchToProps = function (dispatch) {\r\n        return {\r\n            systemsLoadMore: () => dispatch(systemListActions.systemsLoadMore()),\r\n            systemsSort: orderDir => dispatch(systemListActions.systemsSort(orderDir))\r\n        };\r\n    };\r\n\r\n    return connect(mapStateToProps, mapDispatchToProps)(Component);\r\n}\r\n","import React, { Component } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { systemListComposer } from \"ReactReducers/SystemList/system-list-composer\";\r\nimport SystemListItem from \"ReactComponents/System/system-list-item\";\r\nimport SpinnerButton from \"ReactComponents/Shared/FormInputs/spinner-button\";\r\nimport LoadOverlay from \"ReactComponents/Shared/AnimationComponents/load-overlay\";\r\nimport { FadeTransition } from \"../Shared/AnimationComponents/fade-transition\";\r\n\r\nclass SystemList extends Component {\r\n    constructor(props) {\r\n        super(props);\r\n    }\r\n\r\n    render() {\r\n        const payload = this.props.Payload;\r\n        const sortAscClasses = classNames({\r\n            \"systems-sort__option\": true,\r\n            \"systems-sort__option--active\": this.props.OrderDir == \"asc\"\r\n        });\r\n        const sortDescClasses = classNames({\r\n            \"systems-sort__option\": true,\r\n            \"systems-sort__option--active\": this.props.OrderDir == \"desc\"\r\n        });\r\n\r\n        return (\r\n            <div className=\"system-list-container content-module\">\r\n                {(payload.TitleText || payload.GoToLink) && (\r\n                    <div className=\"system-list__header-container content-module-header\">\r\n                        <h2\r\n                            className=\"system-list__header\"\r\n                            dangerouslySetInnerHTML={{ __html: payload.TitleText }}\r\n                        />\r\n                        <div\r\n                            className=\"system-list__go-to-link\"\r\n                            dangerouslySetInnerHTML={{ __html: payload.GoToLink }}\r\n                        />\r\n                    </div>\r\n                )}\r\n                {payload.ShowSortingLabels && (\r\n                    <header className=\"system-list__options\">\r\n                        <div className=\"system-list__option\">\r\n                            <div className=\"systems-sort systems-sort--inline\">\r\n                                <span\r\n                                    className=\"systems-sort__headline\"\r\n                                    dangerouslySetInnerHTML={{ __html: payload.SortLabel }}\r\n                                />\r\n                                <div className=\"systems-sort__options-wrapper\">\r\n                                    <ul className=\"systems-sort__options\">\r\n                                        <button\r\n                                            type=\"button\"\r\n                                            className={sortAscClasses}\r\n                                            onClick={() => this.props.systemsSort(\"asc\")}\r\n                                        >\r\n                                            <span\r\n                                                dangerouslySetInnerHTML={{\r\n                                                    __html: payload.SortAscendingLabel\r\n                                                }}\r\n                                            />\r\n                                        </button>\r\n                                        <button\r\n                                            type=\"button\"\r\n                                            className={sortDescClasses}\r\n                                            onClick={() => this.props.systemsSort(\"desc\")}\r\n                                        >\r\n                                            <span\r\n                                                dangerouslySetInnerHTML={{\r\n                                                    __html: payload.SortDescendingLabel\r\n                                                }}\r\n                                            />\r\n                                        </button>\r\n                                    </ul>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                        <div className=\"system-list__option\">\r\n                            {payload.ShowTotalCountLabel && (\r\n                                <p className=\"system-list__amount\">\r\n                                    <span>\r\n                                        {this.props.TotalCount}{\" \"}\r\n                                        <span dangerouslySetInnerHTML={{ __html: payload.TotalCountLabel }} />\r\n                                    </span>\r\n                                </p>\r\n                            )}\r\n                        </div>\r\n                    </header>\r\n                )}\r\n                <div className=\"system-list-wrapper\">\r\n                    <ul className=\"system-list\">\r\n                        {this.props.Systems &&\r\n                            this.props.Systems.map((system, index) => {\r\n                                return (\r\n                                    <SystemListItem\r\n                                        key={index}\r\n                                        system={system}\r\n                                        showSubjectTag={payload.ShowSubjectTag}\r\n                                        systemLabel={payload.SystemLabel}\r\n                                        seriesLabel={payload.SeriesLabel}\r\n                                        subSystemLabel={payload.SubSystemLabel}\r\n                                    />\r\n                                );\r\n                            })}\r\n                    </ul>\r\n                    {this.props.HasNext && (\r\n                        <SpinnerButton\r\n                            className=\"system-list-btn-load-more button-load-more\"\r\n                            onClick={this.props.systemsLoadMore}\r\n                            label={payload.ShowMoreButtonText}\r\n                            isLoading={this.props.isLoadingMore}\r\n                        />\r\n                    )}\r\n                    <FadeTransition in={this.props.isLoading}>\r\n                        <LoadOverlay LoaderText={this.props.LoadingText} />\r\n                    </FadeTransition>\r\n                </div>\r\n            </div>\r\n        );\r\n    }\r\n}\r\nexport default systemListComposer(SystemList);\r\n","import * as React from \"react\";\r\nimport SystemList from \"@/ReactComponents/System/system-list\";\r\n\r\nconst SystemListView = props => <SystemList {...props} />;\r\n\r\nexport default SystemListView;\r\n"],"names":["props","rootClasses","classNames","className","CenterLoaderVertically","div","LoaderText","dangerouslySetInnerHTML","__html","span","IconSystem","render","svg","x","y","width","height","viewBox","role","line","fill","x1","y1","x2","y2","circle","cx","cy","r","Component","SystemListItem","system","this","subSystemCount","SubSystems","length","li","a","href","Url","img","loading","src","ImageUrl","alt","Title","showSubjectTag","SubjectTagText","IsSystem","systemLabel","seriesLabel","title","SubTitle","subSystemLabel","SystemList","payload","Payload","sortAscClasses","OrderDir","sortDescClasses","TitleText","GoToLink","h2","ShowSortingLabels","header","SortLabel","ul","button","type","onClick","systemsSort","SortAscendingLabel","SortDescendingLabel","ShowTotalCountLabel","p","TotalCount","TotalCountLabel","Systems","map","index","key","ShowSubjectTag","SystemLabel","SeriesLabel","SubSystemLabel","HasNext","SpinnerButton","systemsLoadMore","label","ShowMoreButtonText","isLoading","isLoadingMore","FadeTransition","in","LoadOverlay","LoadingText","connect","state","systemListSelector","ErrorMessage","dispatch","systemListActions","orderDir"],"sourceRoot":""}