UNPKG

@raona/components

Version:

React components used at Raona to work with SPFx

284 lines (283 loc) 22.7 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var react_1 = require("react"); var stylesConstants_1 = require("./stylesConstants"); // import { DocsCard, ProductCard, AlternateNewsCard, VacancyCard, EventDetailedCard } from './index'; var UserCard_1 = require("./UserCard"); var sp_1 = require("@raona/sp"); var NewsCard_1 = require("./NewsCard"); var EntityCard_1 = require("./EntityCard"); var LibraryCard_1 = require("./LibraryCard"); var RelatedNews_1 = require("./RelatedNews"); var WhatsNewCard_1 = require("./WhatsNewCard"); var VideosCard_1 = require("./VideosCard"); var EventCard_1 = require("./EventCard"); var TwitterCard_1 = require("./TwitterCard"); var DocsCard_1 = require("./DocsCard"); var AlternateNewsCard_1 = require("./AlternateNewsCard"); var ProductCard_1 = require("./ProductCard"); var VacancyCard_1 = require("./VacancyCard"); var EventDetailedCard_1 = require("./EventDetailedCard"); var BlogCard_1 = require("./BlogCard"); var DiscoveryCard_1 = require("./DiscoveryCard"); var CategoryCard_1 = require("./CategoryCard"); var HomeDiscoveryCard_1 = require("./HomeDiscoveryCard"); var AlternateBlogCard_1 = require("./AlternateBlogCard"); var AlternateEventCard_1 = require("./AlternateEventCard"); var AlternateVideosCard_1 = require("./AlternateVideosCard"); var NoticeCard_1 = require("./NoticeCard"); var PressCard_1 = require("./PressCard"); var RSSCard_1 = require("./RSSCard"); var AlternateVacancyCard_1 = require("./AlternateVacancyCard"); var RequestCard_1 = require("./RequestCard"); var AlternateDocCard_1 = require("./AlternateDocCard"); var AlternateRequestCard_1 = require("./AlternateRequestCard"); var PeopleCard_1 = require("./PeopleCard"); var SPNewsCard_1 = require("./SPNewsCard"); var Card = /** @class */ (function (_super) { __extends(Card, _super); function Card() { return _super !== null && _super.apply(this, arguments) || this; } Card.prototype.handleCheckBoxClick = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, itemIndex, handleCheckBoxClick; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, itemIndex = _a.itemIndex, handleCheckBoxClick = _a.handleCheckBoxClick; if (handleCheckBoxClick) handleCheckBoxClick(item, itemIndex); return [2 /*return*/]; }); }); }; Card.prototype.handleDeleteClick = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, itemIndex, handleDeleteClick; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, itemIndex = _a.itemIndex, handleDeleteClick = _a.handleDeleteClick; if (handleDeleteClick) handleDeleteClick(item, itemIndex); return [2 /*return*/]; }); }); }; Card.prototype.handleShareClick = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, itemIndex, handleShareClick; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, itemIndex = _a.itemIndex, handleShareClick = _a.handleShareClick; if (handleShareClick) handleShareClick(item, itemIndex); return [2 /*return*/]; }); }); }; Card.prototype.handleAddToCatalog = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, itemIndex, handleAddToCatalog; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, itemIndex = _a.itemIndex, handleAddToCatalog = _a.handleAddToCatalog; if (handleAddToCatalog) handleAddToCatalog(item, itemIndex); return [2 /*return*/]; }); }); }; Card.prototype.handleSaveAsFavorite = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, handleSaveAsFavorite; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, handleSaveAsFavorite = _a.handleSaveAsFavorite; if (handleSaveAsFavorite) handleSaveAsFavorite(item); return [2 /*return*/]; }); }); }; Card.prototype.handleLike = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, handleLike; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, handleLike = _a.handleLike; if (handleLike) handleLike(item); return [2 /*return*/]; }); }); }; Card.prototype.handleLockClick = function (e) { return __awaiter(this, void 0, void 0, function () { var _a, item, handleLockClick; return __generator(this, function (_b) { e.stopPropagation(); _a = this.props, item = _a.item, handleLockClick = _a.handleLockClick; if (handleLockClick) handleLockClick(item); return [2 /*return*/]; }); }); }; Card.prototype.render = function () { var _a = this.props, cardStyle = _a.cardStyle, newsBodyStyle = _a.newsBodyStyle, alternateNewsBodyStyle = _a.alternateNewsBodyStyle, categoryBodyStyle = _a.categoryBodyStyle, item = _a.item, itemIndex = _a.itemIndex, defaultImageUrl = _a.defaultImageUrl, openItemsOnNewPage = _a.openItemsOnNewPage, handleAddToCatalog = _a.handleAddToCatalog, handleCheckBoxClick = _a.handleCheckBoxClick, handleDeleteClick = _a.handleDeleteClick, handleSaveAsFavorite = _a.handleSaveAsFavorite, handleLike = _a.handleLike, handleShareClick = _a.handleShareClick, isNewsCard = _a.isNewsCard, newsMetaStyle = _a.newsMetaStyle, showImage = _a.showImage, showComments = _a.showComments, showCategory = _a.showCategory, handleCardHover = _a.handleCardHover, handleCardClick = _a.handleCardClick, handleCategoryClick = _a.handleCategoryClick, handleLockClick = _a.handleLockClick, lockToolTipText = _a.lockToolTipText, deleteToolTipText = _a.deleteToolTipText, useLazyload = _a.useLazyload, eventBodyStyles = _a.eventBodyStyles, eventDetailedBodyStyles = _a.eventDetailedBodyStyles, vacancyBodyStyles = _a.vacancyBodyStyles, videoBodyStyles = _a.videoBodyStyles, blogBodyStyles = _a.blogBodyStyles, textLink = _a.textLink, pressStyles = _a.pressStyles, noticeStyles = _a.noticeStyles, blogAlternateBodyStyle = _a.blogAlternateBodyStyle, eventAlternateBodyStyles = _a.eventAlternateBodyStyles, videoAlternateBodyStyles = _a.videoAlternateBodyStyles, rssStyles = _a.rssStyles, requestStyles = _a.requestStyles, alternateRequestStyles = _a.alternateRequestStyles, peopleStyles = _a.peopleStyles, alternateVacancyStyles = _a.alternateVacancyStyles, saveFavoriteToolTipText = _a.saveFavoriteToolTipText, spNewsStyles = _a.spNewsStyles; switch (item.type) { case "Product": case "Application": return (React.createElement(ProductCard_1.ProductCard, { item: item, itemIndex: itemIndex, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, handleShareClick: handleShareClick && this.handleShareClick, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, addToCatalogToolTipText: "Add to catalog", saveFavoriteToolTipText: "Add to favorites", deleteToolTipText: deleteToolTipText || "Delete product", lockToolTipText: lockToolTipText, isNewsCard: isNewsCard, handleLockClick: handleLockClick && this.handleLockClick })); //TODO: HardCodedText change asap case "User": return (React.createElement(UserCard_1.UserCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleShareClick: handleShareClick && this.handleShareClick })); case "Docs": return (React.createElement(DocsCard_1.DocsCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleCheckBoxClick: handleCheckBoxClick && this.handleCheckBoxClick, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleShareClick: handleShareClick && this.handleShareClick })); case "AlternateDocs": return (React.createElement(AlternateDocCard_1.AlternateDocCard, { item: item, handleCardClick: handleCardClick })); case "News": return (React.createElement(NewsCard_1.NewsCard, { cardStyle: cardStyle, newsBodyStyle: newsBodyStyle, item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, saveFavoriteToolTipText: "Add to favorites", handleShareClick: handleShareClick && this.handleShareClick, shareToolTipText: "Share", newsMetaStyle: newsMetaStyle })); case "AlternateNews": return (React.createElement(AlternateNewsCard_1.AlternateNewsCard, { alternateNewsBodyStyle: alternateNewsBodyStyle, item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, handleLike: handleLike && this.handleLike, saveFavoriteToolTipText: "Add to favorites", handleShareClick: handleShareClick && this.handleShareClick, shareToolTipText: "Share", showComments: showComments != null ? showComments : true, useLazyload: useLazyload ? useLazyload : false, handleCardHover: handleCardHover, handleCardClick: handleCardClick })); case "Category": return (React.createElement(CategoryCard_1.CategoryCard, { categoryBodyStyle: categoryBodyStyle, item: item, defaultImageUrl: defaultImageUrl, useLazyload: useLazyload ? useLazyload : false, handleCardClick: handleCardClick })); case "Static content": return (React.createElement(AlternateNewsCard_1.AlternateNewsCard, { alternateNewsBodyStyle: alternateNewsBodyStyle, item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, handleLike: handleLike && this.handleLike, saveFavoriteToolTipText: "Add to favorites", handleShareClick: handleShareClick && this.handleShareClick, shareToolTipText: "Share", showComments: showComments != null ? showComments : true, useLazyload: useLazyload ? useLazyload : false, handleCardHover: handleCardHover, handleCardClick: handleCardClick })); case "RelatedNews": return (React.createElement(RelatedNews_1.RelatedNewsCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, saveFavoriteToolTipText: "Add to favorites", handleShareClick: handleShareClick && this.handleShareClick, shareToolTipText: "Share", showComments: showComments != null ? showComments : true, handleCardHover: handleCardHover, handleCardClick: handleCardClick })); case "Vacancies": return (React.createElement(VacancyCard_1.VacancyCard, { item: item, vacancyBodyStyle: vacancyBodyStyles, handleCardClick: handleCardClick })); case "AlternateVacancies": return (React.createElement(AlternateVacancyCard_1.AlternateVacancyCard, { item: item, alternateVacancyStyles: alternateVacancyStyles, handleCardClick: handleCardClick })); case "Demo": case "Software": case "Success": case "Tech. Notes": case "Training": case "Tech. Solution": case "Customer": return (React.createElement(EntityCard_1.EntityCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, handleAddToCatalog: handleAddToCatalog && this.handleAddToCatalog, handleDeleteClick: handleDeleteClick && this.handleDeleteClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite, handleShareClick: handleShareClick && this.handleShareClick, shareToolTipText: "Share", showCategory: isNewsCard || false })); case "Library": return (React.createElement("div", { className: stylesConstants_1.productCardStyle.card }, React.createElement("div", { className: stylesConstants_1.productCardStyle.wrapper }, React.createElement(LibraryCard_1.LibraryCard, { item: item })))); case "WhatsNew": return (React.createElement(WhatsNewCard_1.WhatsNewCard, { item: item, defaultImageUrl: defaultImageUrl, itemIndex: itemIndex, openItemsOnNewPage: openItemsOnNewPage })); case "Videos": return (React.createElement(VideosCard_1.VideosCard, { item: item, bodyStyle: videoBodyStyles, handleCardClick: handleCardClick })); case "Events": return (React.createElement(EventCard_1.EventCard, { item: item, eventBodyStyle: eventBodyStyles, handleCardClick: handleCardClick })); case "EventDetailed": return (React.createElement(EventDetailedCard_1.EventDetailedCard, { item: item, defaultImageUrl: defaultImageUrl, eventDetailedBodyStyle: eventDetailedBodyStyles, showImage: showImage, handleCardClick: handleCardClick })); case "Twitter": return (React.createElement(TwitterCard_1.TwitterCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl })); case "Blogs": return (React.createElement(BlogCard_1.BlogCard, { item: item, blogBodyStyle: blogBodyStyles, handleCardClick: handleCardClick, defaultImageUrl: defaultImageUrl })); case "Discovery": return (React.createElement(DiscoveryCard_1.DiscoveryCard, { item: item, itemIndex: itemIndex, textLink: textLink, openItemsOnNewPage: openItemsOnNewPage, handleCardClick: handleCardClick, handleSaveAsFavorite: handleSaveAsFavorite && this.handleSaveAsFavorite })); case "Home Discovery": return (React.createElement(HomeDiscoveryCard_1.HomeDiscoveryCard, { item: item, itemIndex: itemIndex, defaultImageUrl: defaultImageUrl, openItemsOnNewPage: openItemsOnNewPage, showComments: showComments != null ? showComments : true, useLazyload: useLazyload ? useLazyload : false, handleCardHover: handleCardHover, handleCardClick: handleCardClick })); case 'AlternateBlogs': return (React.createElement(AlternateBlogCard_1.AlternateBlogCard, { item: item, defaultImageUrl: defaultImageUrl, blogBodyStyle: blogAlternateBodyStyle, handleCardClick: handleCardClick })); case 'AlternateEvents': return (React.createElement(AlternateEventCard_1.AlternateEventCard, { item: item, eventAlternateBodyStyle: eventAlternateBodyStyles, handleCardClick: handleCardClick })); case 'AlternateVideos': return (React.createElement(AlternateVideosCard_1.AlternateVideosCard, { item: item, bodyStyle: videoAlternateBodyStyles, handleCardClick: handleCardClick, handleCategoryClick: handleCategoryClick })); case 'Notice': return (React.createElement(NoticeCard_1.NoticeCard, { item: item, bodyStyle: noticeStyles, handleCardClick: handleCardClick, handleCategoryClick: handleCategoryClick })); case 'Press': return (React.createElement(PressCard_1.PressCard, { item: item, pressStyles: pressStyles, handleCardClick: handleCardClick })); case 'RSS': return (React.createElement(RSSCard_1.RSSCard, { item: item, rssStyles: rssStyles, handleCardClick: handleCardClick })); case 'Request': return (React.createElement(RequestCard_1.RequestCard, { item: item, requestBodyStyle: requestStyles, handleCardClick: handleCardClick, showCategory: showCategory != null ? showCategory : false, saveFavoriteToolTipText: saveFavoriteToolTipText })); case 'AlternateRequest': return (React.createElement(AlternateRequestCard_1.AlternateRequestCard, { item: item, alternateRequestStyles: alternateRequestStyles, handleCardClick: handleCardClick })); case 'People': return (React.createElement(PeopleCard_1.PeopleCard, { item: item, itemIndex: itemIndex, peopleStyles: peopleStyles, handleDeleteClick: handleDeleteClick })); case 'SPNews': return (React.createElement(SPNewsCard_1.SPNews, { item: item, handleCardClick: handleCardClick, defaultImageUrl: defaultImageUrl, spNewsStyles: spNewsStyles })); default: return (React.createElement("div", { className: stylesConstants_1.productCardStyle.card }, React.createElement("div", { className: stylesConstants_1.productCardStyle.wrapper }))); } }; __decorate([ sp_1.Bind() ], Card.prototype, "handleCheckBoxClick", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleDeleteClick", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleShareClick", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleAddToCatalog", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleSaveAsFavorite", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleLike", null); __decorate([ sp_1.Bind() ], Card.prototype, "handleLockClick", null); return Card; }(react_1.Component)); exports.Card = Card;