react-widgetconfigurator
Version:
A React app for to generate out of box widgets
185 lines (155 loc) • 6.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
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 _dec, _desc, _value, _class, _descriptor;
var _mobx = require("mobx");
function _initDefineProp(target, property, descriptor, context) {
if (!descriptor) return;
Object.defineProperty(target, property, {
enumerable: descriptor.enumerable,
configurable: descriptor.configurable,
writable: descriptor.writable,
value: descriptor.initializer ? descriptor.initializer.call(context) : void 0
});
}
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {
var desc = {};
Object['ke' + 'ys'](descriptor).forEach(function (key) {
desc[key] = descriptor[key];
});
desc.enumerable = !!desc.enumerable;
desc.configurable = !!desc.configurable;
if ('value' in desc || desc.initializer) {
desc.writable = true;
}
desc = decorators.slice().reverse().reduce(function (desc, decorator) {
return decorator(target, property, desc) || desc;
}, desc);
if (context && desc.initializer !== void 0) {
desc.value = desc.initializer ? desc.initializer.call(context) : void 0;
desc.initializer = undefined;
}
if (desc.initializer === void 0) {
Object['define' + 'Property'](target, property, desc);
desc = null;
}
return desc;
}
function _initializerWarningHelper(descriptor, context) {
throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.');
}
var WidgetStore = (_dec = _mobx.action.bound, (_class = function () {
function WidgetStore() {
_classCallCheck(this, WidgetStore);
_initDefineProp(this, "state", _descriptor, this);
this.GetWidgetData();
}
_createClass(WidgetStore, [{
key: "GetWidgetData",
value: function GetWidgetData() {
var _this = this;
var url = "https://aculist-widget-api.azureedge.net/BiEntity/WidgetConfiguration";
fetch(url).then(function (response) {
return response.json();
}).then(function (items) {
// console.log(items.value[0]);
// return items.value;
var wcollection = [];
items.value.forEach(function (element) {
wcollection.push(element);
});
_this.state.widgetCollection = wcollection;
_this.state.cartCount = _this.state.widgetCollection.length;
//console.log(this.state.cartCount);
});
}
}, {
key: "addCartItem",
value: function addCartItem(record) {
var widgetCollection = this.state.widgetCollection;
var widgetItem = this.state.widgetItem;
widgetItem.WidgetID = Math.random();
BRENumber: record.BRENumber;
Script: "generate";
Title: record.Title;
Name: record.Name;
GeographyType: record.GeographyType;
GeographyName: record.GeographyName;
PeriodType: record.PeriodType;
Period: record.Period;
Colors: record.Colors;
Multitab: record.Multitab === "" ? false : record.Multitab;
TitleDisplay: record.TitleDisplay === "" ? true : record.Multitab;
measures: record.measure;
Classtype: record.Classtype;
//call API to save
var url = "https://bi.aculist.com/BiEntity/WidgetConfiguration";
fetch(url, {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"WidgetID": new Date().getUTCMilliseconds().toString(),
"BRENumber": record.BRENumber.toString(),
"Script": "generate",
"Title": "",
"Name": "",
"GeographyType": record.GeographyType.toString(),
"GeographyName": record.GeographyName.toString(),
"PeriodType": record.PeriodType.toString(),
"Period": record.Period.toString(),
"Colors": record.Colors.toString(),
"Multitab": record.Multitab.toString() === "" ? false : true,
"TitleDisplay": record.TitleDisplay.toString() === "" ? true : false,
"Measures": record.measures.toString(),
"Classes": record.Classtype.toString()
})
}).then(function (response) {
return response.status;
}).then(function (responsetext) {}).catch(function (err) {
console.log('error' + err);
});
this.GetWidgetData();
console.log(this.state.cartCount);
}
}, {
key: "CartCount",
get: function get() {
var cartcount = this.state.cartCount;
return cartcount;
}
}]);
return WidgetStore;
}(), (_descriptor = _applyDecoratedDescriptor(_class.prototype, "state", [_mobx.observable], {
enumerable: true,
initializer: function initializer() {
return {
cartCount: 0,
widgetCollection: [],
widgetItem: {
WidgetID: "",
BRENumber: "",
Script: "",
Title: "",
Name: "",
GeographyType: "",
GeographyName: "",
PeriodType: "",
Period: "",
Colors: "",
Multitab: "",
TitleDisplay: false,
measures: "",
Classtype: ""
}
};
}
}), _applyDecoratedDescriptor(_class.prototype, "CartCount", [_mobx.computed], Object.getOwnPropertyDescriptor(_class.prototype, "CartCount"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "addCartItem", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, "addCartItem"), _class.prototype)), _class));
var store = window.store = new WidgetStore();
exports.default = store;
module.exports = exports["default"];