@essential-js/ui
Version:
EssentialJS UI
101 lines (88 loc) • 2.66 kB
JavaScript
import * as dependency_0 from '@beyond-js/kernel/bundle';
import * as dependency_1 from '@beyond-js/kernel/core';
const {Bundle: __Bundle} = dependency_0;
const __pkg = new __Bundle({"module":{"vspecifier":"@essential-js/ui@1.0.0/reactive-model"},"type":"ts"}, import.meta.url).package();;
__pkg.dependencies.update([['@beyond-js/kernel/core', dependency_1]]);
const ims = new Map();
/********************************
INTERNAL MODULE: ./reactive-model
********************************/
ims.set('./reactive-model', {hash: 658650685, creator: function (require, exports) {
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ReactiveModel = void 0;
var _core = require("@beyond-js/kernel/core");
/*bundle*/class ReactiveModel extends _core.Events {
#ready;
get ready() {
return this.#ready;
}
#fetching;
get fetching() {
return this.#fetching;
}
set fetching(value) {
if (value === this.#fetching) return;
this.#fetching = value;
this.triggerEvent();
}
#fetched;
get fetched() {
return this.#fetched;
}
#processing;
get processing() {
return this.#processing;
}
#processed;
get processed() {
return this.#processed;
}
#loaded;
get loaded() {
return this.#loaded;
}
triggerEvent = (event = 'change') => {
this.trigger(event);
};
/**
* set value in a private property
* @param property
* @param value
*/
#set(property, value) {
let props = {};
if (property && value !== 'undefined') props[property] = value;else props = property;
let updated = false;
for (const prop in props) {
const key = `#${prop}`;
if (!this.hasOwnProperty(key)) continue; //same value on store
if (this[key] === props[prop]) continue;
this[key] = props[prop];
updated = true;
}
if (updated) this.triggerEvent();
}
getProperties() {
const props = {};
Object.keys(this).forEach(property => props[property.replace('#', '')] = this[property]);
return props;
}
}
exports.ReactiveModel = ReactiveModel;
}});
__pkg.exports.descriptor = [{"im":"./reactive-model","from":"ReactiveModel","name":"ReactiveModel"}];
export let ReactiveModel;
// Module exports
__pkg.exports.process = function({require, prop, value}) {
(require || prop === 'ReactiveModel') && (ReactiveModel = require ? require('./reactive-model').ReactiveModel : value);
};
export const __beyond_pkg = __pkg;
export const hmr = new (function () {
this.on = (event, listener) => void 0;
this.off = (event, listener) => void 0;
});
__pkg.initialise(ims);
//# sourceMappingURL=reactive-model.mjs.map