New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@jsreport/jsreport-html-to-xlsx

Package Overview
Dependencies
Maintainers
2
Versions
18
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@jsreport/jsreport-html-to-xlsx - npm Package Compare versions

Comparing version 3.3.2 to 4.0.0

14

lib/worker.js

@@ -5,2 +5,16 @@ const fs = require('fs').promises

module.exports = (reporter, definition) => {
// warm up of deps to make it work in trustUserCode: false (SES),
// this also allows to not require early when it is not needed. (trustUserCode: true)
// usage of try catch was done to prevent the app to fail here, instead it will fail
// at the same later time in which the dep is used
if (reporter.options.trustUserCode === false) {
try {
require('unzipper')
} catch {}
try {
require('puppeteer')
} catch {}
}
definition.options.tmpDir = reporter.options.tempAutoCleanupDirectory

@@ -7,0 +21,0 @@

10

package.json
{
"name": "@jsreport/jsreport-html-to-xlsx",
"version": "3.3.2",
"version": "4.0.0",
"description": "jsreport recipe capable of converting html into excel",

@@ -46,8 +46,8 @@ "keywords": [

"devDependencies": {
"@jsreport/jsreport-core": "3.12.0",
"@jsreport/jsreport-handlebars": "3.2.1",
"@jsreport/jsreport-core": "4.0.0",
"@jsreport/jsreport-handlebars": "4.0.0",
"@jsreport/studio-dev": "3.2.1",
"handlebars": "4.7.7",
"mocha": "5.2.0",
"puppeteer": "20.7.1",
"puppeteer": "21.1.0",
"should": "13.2.3",

@@ -58,3 +58,3 @@ "standard": "16.0.4",

"engines": {
"node": ">=16.11"
"node": ">=18.15"
},

@@ -61,0 +61,0 @@ "standard": {

@@ -10,2 +10,7 @@ # @jsreport/jsreport-html-to-xlsx

### 4.0.0
- minimum node.js version is now `18.15.0`
- update studio build against new webpack and babel
### 3.3.2

@@ -12,0 +17,0 @@

@@ -5,3 +5,3 @@ /* eslint no-unused-vars: 1 */

;(function (global) {
const tmpHandler = this.tmpHandler || require('tmpHandler.js')
const tmpHandler = globalThis.tmpHandler || require('tmpHandler.js')

@@ -8,0 +8,0 @@ function jsrenderHandlebarsCompatibility (fn) {

@@ -1,90 +0,6 @@

/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 1);
/******/ })
/************************************************************************/
/******/ ([
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ([
/* 0 */
/***/ (function(module, exports) {
/***/ ((module) => {

@@ -94,318 +10,282 @@ module.exports = Studio;

/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {
/* 1 */,
/* 2 */
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var jsreport_studio__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
/* harmony import */ var jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(jsreport_studio__WEBPACK_IMPORTED_MODULE_2__);
var _HtmlToXlsxProperties = __webpack_require__(2);
var _HtmlToXlsxProperties2 = _interopRequireDefault(_HtmlToXlsxProperties);
var _jsreportStudio = __webpack_require__(0);
var _jsreportStudio2 = _interopRequireDefault(_jsreportStudio);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
_jsreportStudio2.default.addPropertiesComponent('html to xlsx', _HtmlToXlsxProperties2.default, function (entity) {
return entity.__entitySet === 'templates' && entity.recipe === 'html-to-xlsx';
});
_jsreportStudio2.default.runListeners.push(function (request, entities) {
if (request.template.recipe !== 'html-to-xlsx') {
return;
const EntityRefSelect = (jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default().EntityRefSelect);
const sharedComponents = (jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default().sharedComponents);
class HtmlToXlsxProperties extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
static selectAssets(entities) {
return Object.keys(entities).filter(k => entities[k].__entitySet === 'assets').map(k => entities[k]);
}
if (_jsreportStudio2.default.extensions['html-to-xlsx'].options.preview.enabled === false) {
return;
static title(entity, entities) {
if (!entity.htmlToXlsx || !entity.htmlToXlsx.templateAssetShortid) {
return 'xlsx template';
}
const foundAssets = HtmlToXlsxProperties.selectAssets(entities).filter(e => entity.htmlToXlsx != null && entity.htmlToXlsx.templateAssetShortid === e.shortid);
if (!foundAssets.length) {
return 'xlsx template';
}
const name = foundAssets[0].name;
return 'xlsx template: ' + name;
}
if (_jsreportStudio2.default.extensions['html-to-xlsx'].options.preview.showWarning === false) {
return;
constructor(props) {
super(props);
this.applyDefaultsToEntity = this.applyDefaultsToEntity.bind(this);
this.changeHtmlToXlsx = this.changeHtmlToXlsx.bind(this);
}
if (_jsreportStudio2.default.getSettingValueByKey('office-preview-informed', false) === true) {
return;
componentDidMount() {
this.applyDefaultsToEntity(this.props);
this.removeInvalidHtmlEngine();
this.removeInvalidXlsxTemplateReferences();
}
_jsreportStudio2.default.setSetting('office-preview-informed', true);
_jsreportStudio2.default.openModal(function () {
return React.createElement(
'div',
null,
'We need to upload your office report to our publicly hosted server to be able to use Office Online Service for previewing here in the studio. You can disable it in the configuration, see',
React.createElement(
'a',
{
href: 'https://jsreport.net/learn/html-to-xlsx',
target: '_blank',
rel: 'noopener noreferrer'
},
'https://jsreport.net/learn/html-to-xlsx'
),
' for details.'
);
});
});
/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _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; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _jsreportStudio = __webpack_require__(0);
var _jsreportStudio2 = _interopRequireDefault(_jsreportStudio);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var EntityRefSelect = _jsreportStudio2.default.EntityRefSelect;
var sharedComponents = _jsreportStudio2.default.sharedComponents;
var HtmlToXlsxProperties = function (_Component) {
_inherits(HtmlToXlsxProperties, _Component);
_createClass(HtmlToXlsxProperties, null, [{
key: 'selectAssets',
value: function selectAssets(entities) {
return Object.keys(entities).filter(function (k) {
return entities[k].__entitySet === 'assets';
}).map(function (k) {
return entities[k];
componentDidUpdate(prevProps) {
// when component changes because another template is created
if (prevProps.entity._id !== this.props.entity._id) {
this.applyDefaultsToEntity(this.props);
}
this.removeInvalidHtmlEngine();
this.removeInvalidXlsxTemplateReferences();
}
removeInvalidXlsxTemplateReferences() {
const {
entity,
entities
} = this.props;
if (!entity.htmlToXlsx) {
return;
}
const updatedXlsxAssets = Object.keys(entities).filter(k => entities[k].__entitySet === 'assets' && entity.htmlToXlsx != null && entities[k].shortid === entity.htmlToXlsx.templateAssetShortid);
if (entity.htmlToXlsx && entity.htmlToXlsx.templateAssetShortid && updatedXlsxAssets.length === 0) {
this.changeHtmlToXlsx(this.props, {
templateAssetShortid: null
});
}
}, {
key: 'title',
value: function title(entity, entities) {
if (!entity.htmlToXlsx || !entity.htmlToXlsx.templateAssetShortid) {
return 'xlsx template';
}
var foundAssets = HtmlToXlsxProperties.selectAssets(entities).filter(function (e) {
return entity.htmlToXlsx != null && entity.htmlToXlsx.templateAssetShortid === e.shortid;
}
removeInvalidHtmlEngine() {
const {
entity
} = this.props;
if (!entity.htmlToXlsx || !entity.htmlToXlsx.htmlEngine) {
return;
}
const htmlEngines = (jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default().extensions)['html-to-xlsx'].options.htmlEngines;
const isValidHtmlEngine = htmlEngines.includes(entity.htmlToXlsx.htmlEngine);
if (!isValidHtmlEngine) {
this.changeHtmlToXlsx(this.props, {
htmlEngine: htmlEngines[0]
});
if (!foundAssets.length) {
return 'xlsx template';
}
var name = foundAssets[0].name;
return 'xlsx template: ' + name;
}
}]);
function HtmlToXlsxProperties(props) {
_classCallCheck(this, HtmlToXlsxProperties);
var _this = _possibleConstructorReturn(this, (HtmlToXlsxProperties.__proto__ || Object.getPrototypeOf(HtmlToXlsxProperties)).call(this, props));
_this.applyDefaultsToEntity = _this.applyDefaultsToEntity.bind(_this);
_this.changeHtmlToXlsx = _this.changeHtmlToXlsx.bind(_this);
return _this;
}
_createClass(HtmlToXlsxProperties, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.applyDefaultsToEntity(this.props);
this.removeInvalidHtmlEngine();
this.removeInvalidXlsxTemplateReferences();
applyDefaultsToEntity(props) {
const {
entity
} = props;
const htmlEngines = (jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default().extensions)['html-to-xlsx'].options.htmlEngines;
let entityNeedsDefault = false;
if (entity.__isNew || entity.htmlToXlsx == null || entity.htmlToXlsx.htmlEngine == null) {
entityNeedsDefault = true;
}
}, {
key: 'componentDidUpdate',
value: function componentDidUpdate(prevProps) {
// when component changes because another template is created
if (prevProps.entity._id !== this.props.entity._id) {
this.applyDefaultsToEntity(this.props);
}
this.removeInvalidHtmlEngine();
this.removeInvalidXlsxTemplateReferences();
}
}, {
key: 'removeInvalidXlsxTemplateReferences',
value: function removeInvalidXlsxTemplateReferences() {
var _props = this.props,
entity = _props.entity,
entities = _props.entities;
if (!entity.htmlToXlsx) {
return;
}
var updatedXlsxAssets = Object.keys(entities).filter(function (k) {
return entities[k].__entitySet === 'assets' && entity.htmlToXlsx != null && entities[k].shortid === entity.htmlToXlsx.templateAssetShortid;
if (htmlEngines != null && htmlEngines[0] != null && entityNeedsDefault) {
this.changeHtmlToXlsx(props, {
htmlEngine: htmlEngines[0]
});
if (entity.htmlToXlsx && entity.htmlToXlsx.templateAssetShortid && updatedXlsxAssets.length === 0) {
this.changeHtmlToXlsx(this.props, {
templateAssetShortid: null
});
}
}
}, {
key: 'removeInvalidHtmlEngine',
value: function removeInvalidHtmlEngine() {
var entity = this.props.entity;
if (!entity.htmlToXlsx || !entity.htmlToXlsx.htmlEngine) {
return;
}
changeHtmlToXlsx(props, change) {
const {
entity,
onChange
} = props;
const htmlToXlsx = entity.htmlToXlsx || {};
onChange({
...entity,
htmlToXlsx: {
...htmlToXlsx,
...change
}
});
}
render() {
const {
entity
} = this.props;
const htmlToXlsx = entity.htmlToXlsx || {};
const htmlEngines = (jsreport_studio__WEBPACK_IMPORTED_MODULE_2___default().extensions)['html-to-xlsx'].options.htmlEngines;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
className: "properties-section"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
className: "form-group"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", null, "html engine"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("select", {
value: htmlToXlsx.htmlEngine,
onChange: v => this.changeHtmlToXlsx(this.props, {
htmlEngine: v.target.value
})
}, htmlEngines.map(engine => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("option", {
key: engine,
value: engine
}, engine)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
className: "form-group"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", null, "xlsx asset"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(EntityRefSelect, {
headingLabel: "Select xlsx template",
newLabel: "New xlsx asset for template",
filter: references => ({
data: references.assets
}),
value: entity.htmlToXlsx ? entity.htmlToXlsx.templateAssetShortid : null,
onChange: selected => this.changeHtmlToXlsx(this.props, {
templateAssetShortid: selected != null && selected.length > 0 ? selected[0].shortid : null
}),
renderNew: modalProps => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(sharedComponents.NewAssetModal, _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, modalProps, {
options: {
...modalProps.options,
defaults: {
folder: entity.folder
},
activateNewTab: false
}
}))
})), htmlToXlsx.htmlEngine !== 'cheerio' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
className: "form-group"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", {
title: "window.JSREPORT_READY_TO_START=true;"
}, "wait for conversion trigger"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("input", {
type: "checkbox",
title: "window.JSREPORT_READY_TO_START=true;",
checked: htmlToXlsx.waitForJS === true,
onChange: v => this.changeHtmlToXlsx(this.props, {
waitForJS: v.target.checked
})
})));
}
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (HtmlToXlsxProperties);
var htmlEngines = _jsreportStudio2.default.extensions['html-to-xlsx'].options.htmlEngines;
var isValidHtmlEngine = htmlEngines.includes(entity.htmlToXlsx.htmlEngine);
/***/ }),
/* 3 */
/***/ ((module) => {
if (!isValidHtmlEngine) {
this.changeHtmlToXlsx(this.props, { htmlEngine: htmlEngines[0] });
}
}
}, {
key: 'applyDefaultsToEntity',
value: function applyDefaultsToEntity(props) {
var entity = props.entity;
module.exports = Studio.runtime['helpers/extends'];
var htmlEngines = _jsreportStudio2.default.extensions['html-to-xlsx'].options.htmlEngines;
var entityNeedsDefault = false;
/***/ }),
/* 4 */
/***/ ((module) => {
if (entity.__isNew || entity.htmlToXlsx == null || entity.htmlToXlsx.htmlEngine == null) {
entityNeedsDefault = true;
}
module.exports = Studio.libraries['react'];
if (htmlEngines != null && htmlEngines[0] != null && entityNeedsDefault) {
this.changeHtmlToXlsx(props, {
htmlEngine: htmlEngines[0]
});
}
}
}, {
key: 'changeHtmlToXlsx',
value: function changeHtmlToXlsx(props, change) {
var entity = props.entity,
onChange = props.onChange;
/***/ })
/******/ ]);
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
/******/ /* webpack/runtime/compat get default export */
/******/ (() => {
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = (module) => {
/******/ var getter = module && module.__esModule ?
/******/ () => (module['default']) :
/******/ () => (module);
/******/ __webpack_require__.d(getter, { a: getter });
/******/ return getter;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
(() => {
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _HtmlToXlsxProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
/* harmony import */ var jsreport_studio__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
/* harmony import */ var jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jsreport_studio__WEBPACK_IMPORTED_MODULE_1__);
var htmlToXlsx = entity.htmlToXlsx || {};
onChange(_extends({}, entity, {
htmlToXlsx: _extends({}, htmlToXlsx, change)
}));
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().addPropertiesComponent('html to xlsx', _HtmlToXlsxProperties__WEBPACK_IMPORTED_MODULE_0__["default"], entity => entity.__entitySet === 'templates' && entity.recipe === 'html-to-xlsx');
jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().runListeners.push((request, entities) => {
if (request.template.recipe !== 'html-to-xlsx') {
return;
}
if ((jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().extensions)['html-to-xlsx'].options.preview.enabled === false) {
return;
}
if ((jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().extensions)['html-to-xlsx'].options.preview.showWarning === false) {
return;
}
if (jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().getSettingValueByKey('office-preview-informed', false) === true) {
return;
}
jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().setSetting('office-preview-informed', true);
jsreport_studio__WEBPACK_IMPORTED_MODULE_1___default().openModal(() => /*#__PURE__*/React.createElement("div", null, "We need to upload your office report to our publicly hosted server to be able to use Office Online Service for previewing here in the studio. You can disable it in the configuration, see", /*#__PURE__*/React.createElement("a", {
href: "https://jsreport.net/learn/html-to-xlsx",
target: "_blank",
rel: "noopener noreferrer"
}, "https://jsreport.net/learn/html-to-xlsx"), " for details."));
});
})();
var entity = this.props.entity;
var htmlToXlsx = entity.htmlToXlsx || {};
var htmlEngines = _jsreportStudio2.default.extensions['html-to-xlsx'].options.htmlEngines;
return _react2.default.createElement(
'div',
{ className: 'properties-section' },
_react2.default.createElement(
'div',
{ className: 'form-group' },
_react2.default.createElement(
'label',
null,
'html engine'
),
_react2.default.createElement(
'select',
{
value: htmlToXlsx.htmlEngine,
onChange: function onChange(v) {
return _this2.changeHtmlToXlsx(_this2.props, { htmlEngine: v.target.value });
}
},
htmlEngines.map(function (engine) {
return _react2.default.createElement(
'option',
{ key: engine, value: engine },
engine
);
})
)
),
_react2.default.createElement(
'div',
{ className: 'form-group' },
_react2.default.createElement(
'label',
null,
'xlsx asset'
),
_react2.default.createElement(EntityRefSelect, {
headingLabel: 'Select xlsx template',
newLabel: 'New xlsx asset for template',
filter: function filter(references) {
return { data: references.assets };
},
value: entity.htmlToXlsx ? entity.htmlToXlsx.templateAssetShortid : null,
onChange: function onChange(selected) {
return _this2.changeHtmlToXlsx(_this2.props, {
templateAssetShortid: selected != null && selected.length > 0 ? selected[0].shortid : null
});
},
renderNew: function renderNew(modalProps) {
return _react2.default.createElement(sharedComponents.NewAssetModal, _extends({}, modalProps, { options: _extends({}, modalProps.options, { defaults: { folder: entity.folder }, activateNewTab: false }) }));
}
})
),
htmlToXlsx.htmlEngine !== 'cheerio' && _react2.default.createElement(
'div',
{ className: 'form-group' },
_react2.default.createElement(
'label',
{ title: 'window.JSREPORT_READY_TO_START=true;' },
'wait for conversion trigger'
),
_react2.default.createElement('input', {
type: 'checkbox', title: 'window.JSREPORT_READY_TO_START=true;', checked: htmlToXlsx.waitForJS === true,
onChange: function onChange(v) {
return _this2.changeHtmlToXlsx(_this2.props, { waitForJS: v.target.checked });
}
})
)
);
}
}]);
return HtmlToXlsxProperties;
}(_react.Component);
exports.default = HtmlToXlsxProperties;
/***/ }),
/* 3 */
/***/ (function(module, exports) {
module.exports = Studio.libraries['react'];
/***/ })
/******/ ]);
/******/ })()
;

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc