Skip to content
Snippets Groups Projects
Verified Commit ac97ce5a authored by Volker Schukai's avatar Volker Schukai :alien:
Browse files

chore: commit save point

parent ccb2cba1
No related branches found
No related tags found
No related merge requests found
Showing
with 68 additions and 316 deletions
......@@ -4,7 +4,7 @@
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {Base} from '../types/base.js';
......@@ -22,7 +22,7 @@ import {Base} from '../types/base.js';
* @memberOf Monster.Constraints
* @summary The abstract constraint
*/
class AbstractConstraint extends Base {
export class AbstractConstraint extends Base {
/**
*
......@@ -41,6 +41,3 @@ class AbstractConstraint extends Base {
return Promise.reject(value);
}
}
assignToNamespace('Monster.Constraints', AbstractConstraint);
export {Monster, AbstractConstraint}
\ No newline at end of file
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {AbstractConstraint} from "./abstract.js";
/**
......@@ -18,7 +18,7 @@ import {AbstractConstraint} from "./abstract.js";
* @memberOf Monster.Constraints
* @summary The abstract operator constraint
*/
class AbstractOperator extends AbstractConstraint {
export class AbstractOperator extends AbstractConstraint {
/**
*
......@@ -41,5 +41,3 @@ class AbstractOperator extends AbstractConstraint {
}
assignToNamespace('Monster.Constraints', AbstractOperator);
export {Monster, AbstractOperator}
\ No newline at end of file
......@@ -4,7 +4,7 @@
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {AbstractOperator} from "./abstractoperator.js";
/**
......@@ -16,25 +16,16 @@ import {AbstractOperator} from "./abstractoperator.js";
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* new Monster.Constraint.AndOperator();
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {AndOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/andoperator.js';
* import {AndOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/andoperator.js';
* new AndOperator();
* </script>
* ```
*
* @example
*
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/valid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/invalid.js';
* import {AndOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/andoperator.js';
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/valid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/invalid.js';
* import {AndOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/andoperator.js';
*
* new AndOperator(
* new Valid(), new Valid()).isValid()
......@@ -53,7 +44,7 @@ import {AbstractOperator} from "./abstractoperator.js";
* @memberOf Monster.Constraints
* @summary A and operator constraint
*/
class AndOperator extends AbstractOperator {
export class AndOperator extends AbstractOperator {
/**
* this method return a promise containing the result of the check.
......@@ -66,6 +57,3 @@ class AndOperator extends AbstractOperator {
}
}
assignToNamespace('Monster.Constraints', AndOperator);
export {Monster, AndOperator}
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {AbstractConstraint} from "./abstract.js";
/**
......@@ -13,27 +13,16 @@ import {AbstractConstraint} from "./abstract.js";
*
* The invalid constraint allows an always invalid query to be performed. this constraint is mainly intended for testing.
*
* You can call the method via the monster namespace `new Monster.Constraint.Invalid()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* new Monster.Constraint.Invalid();
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/invalid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/invalid.js';
* new Invalid();
* </script>
* ```
*
* @example
*
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/invalid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/invalid.js';
*
* new Invalid().isValid()
* .then(()=>console.log(true))
......@@ -45,7 +34,7 @@ import {AbstractConstraint} from "./abstract.js";
* @memberOf Monster.Constraints
* @summary A constraint that always invalid
*/
class Invalid extends AbstractConstraint {
export class Invalid extends AbstractConstraint {
/**
* this method return a rejected promise
......@@ -58,6 +47,3 @@ class Invalid extends AbstractConstraint {
}
}
assignToNamespace('Monster.Constraints', Invalid);
export {Monster, Invalid}
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {isArray} from "../types/is.js";
import {AbstractConstraint} from "./abstract.js";
......@@ -12,27 +12,16 @@ import {AbstractConstraint} from "./abstract.js";
*
* The uniform API of the constraints allows chains to be formed.
*
* You can call the method via the monster namespace `new Monster.Constraint.IsObject()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* new Monster.Constraint.IsArray()
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {IsArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/isarray.js';
* import {IsArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/isarray.js';
* console.log(new IsArray())
* </script>
* ```
*
* @example
*
* import {IsArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/isarray.js';
* import {IsArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/isarray.js';
*
* new IsArray()
* .isValid([])
......@@ -49,7 +38,7 @@ import {AbstractConstraint} from "./abstract.js";
* @memberOf Monster.Constraints
* @summary A constraint to check if a value is an array
*/
class IsArray extends AbstractConstraint {
export class IsArray extends AbstractConstraint {
/**
* this method return a promise containing the result of the check.
......@@ -66,6 +55,3 @@ class IsArray extends AbstractConstraint {
}
}
assignToNamespace('Monster.Constraints', IsArray);
export {Monster, IsArray}
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {isObject} from "../types/is.js";
import {AbstractConstraint} from "./abstract.js";
......@@ -12,27 +12,16 @@ import {AbstractConstraint} from "./abstract.js";
*
* The uniform API of the constraints allows chains to be formed.
*
* You can call the method via the monster namespace `new Monster.Constraint.IsObject()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* console.log(new Monster.Constraint.IsObject())
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {IsObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/isobject.js';
* import {IsObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/isobject.js';
* console.log(new IsObject())
* </script>
* ```
*
* @example
*
* import {IsObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/isobject.js';
* import {IsObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/isobject.js';
*
* new IsObject()
* .isValid({})
......@@ -50,7 +39,7 @@ import {AbstractConstraint} from "./abstract.js";
* @memberOf Monster.Constraints
* @summary A constraint to check if a value is an object
*/
class IsObject extends AbstractConstraint {
export class IsObject extends AbstractConstraint {
/**
* this method return a promise containing the result of the check.
......@@ -67,6 +56,3 @@ class IsObject extends AbstractConstraint {
}
}
assignToNamespace('Monster.Constraints', IsObject);
export {Monster, IsObject}
'use strict';
/**
* Constraints are used to define conditions that must be met by the value of a variable so that the value can be transferred to the system.
*
* @namespace Constraints
* @memberOf Monster
* @author schukai GmbH
*/
/**
* @private
* @type {string}
*/
export const namespace = "Monster.Constraints";
\ No newline at end of file
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {AbstractOperator} from "./abstractoperator.js";
/**
......@@ -15,25 +15,16 @@ import {AbstractOperator} from "./abstractoperator.js";
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* new Monster.Constraint.OrOperator();
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {OrOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraint/oroperator.js';
* import {OrOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraint/oroperator.js';
* new OrOperator();
* </script>
* ```
*
* @example
*
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/valid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/invalid.js';
* import {OrOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/oroperator.js';
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/valid.js';
* import {Invalid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/invalid.js';
* import {OrOperator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/oroperator.js';
*
* new OrOperator(
* new Valid(), new Invalid()).isValid()
......@@ -52,7 +43,7 @@ import {AbstractOperator} from "./abstractoperator.js";
* @memberOf Monster.Constraints
* @summary A or operator
*/
class OrOperator extends AbstractOperator {
export class OrOperator extends AbstractOperator {
/**
* this method return a promise containing the result of the check.
......@@ -92,6 +83,3 @@ class OrOperator extends AbstractOperator {
}
assignToNamespace('Monster.Constraints', OrOperator);
export {Monster, OrOperator}
......@@ -3,7 +3,7 @@
/**
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {AbstractConstraint} from "./abstract.js";
/**
......@@ -13,27 +13,16 @@ import {AbstractConstraint} from "./abstract.js";
*
* The valid constraint allows an always valid query to be performed. this constraint is mainly intended for testing.
*
* You can call the method via the monster namespace `new Monster.Constraint.Valid()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* new Monster.Constraint.Valid();
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/valid.js';
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/valid.js';
* new Valid();
* </script>
* ```
*
* @example
*
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/constraints/valid.js';
* import {Valid} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/constraints/valid.js';
*
* new Valid().isValid()
* .then(()=>console.log(true))
......@@ -45,7 +34,7 @@ import {AbstractConstraint} from "./abstract.js";
* @memberOf Monster.Constraints
* @summary A constraint that always valid
*/
class Valid extends AbstractConstraint {
export class Valid extends AbstractConstraint {
/**
* this method return a promise containing the result of the check.
......@@ -58,6 +47,3 @@ class Valid extends AbstractConstraint {
}
}
assignToNamespace('Monster.Constraints', Valid);
export {Monster, Valid}
......@@ -4,7 +4,7 @@
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {isFunction, isObject, isString} from "../types/is.js";
import {validateString} from "../types/validate.js";
import {clone} from "../util/clone.js";
......@@ -23,20 +23,9 @@ export const PARENT = '^';
* Either a simple definition `a.b.c` or a template `${a.b.c}` can be specified as the path.
* Key and value can be either a definition or a template. The key does not have to be defined.
*
* You can call the method via the monster namespace `Monster.Data.buildMap()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* console.log(Monster.Data.buildMap())
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/buildmap.js';
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/buildmap.js';
* console.log(buildMap())
* </script>
* ```
......@@ -47,7 +36,7 @@ export const PARENT = '^';
*
* @example
*
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/buildmap.js';
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/buildmap.js';
* // a typical data structure as reported by an api
*
* let map;
......@@ -125,7 +114,7 @@ export const PARENT = '^';
* @throws {TypeError} value is neither a string nor a function
* @throws {TypeError} the selector callback must return a map
*/
function buildMap(subject, selector, valueTemplate, keyTemplate, filter) {
export function buildMap(subject, selector, valueTemplate, keyTemplate, filter) {
return assembleParts(subject, selector, filter, function (v, k, m) {
k = build(v, keyTemplate, k);
v = build(v, valueTemplate);
......@@ -143,7 +132,7 @@ function buildMap(subject, selector, valueTemplate, keyTemplate, filter) {
* @return {Map}
* @throws {TypeError} selector is neither a string nor a function
*/
function assembleParts(subject, selector, filter, callback) {
export function assembleParts(subject, selector, filter, callback) {
const result = new Map();
......@@ -261,7 +250,7 @@ function buildFlatMap(subject, selector, key, parentMap) {
* Alternatively to a string selector a callback can be specified. this must return a map.
*
* @example
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/buildmap.js';
* import {buildMap} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/buildmap.js';
*
* let obj = {
* "data": [
......@@ -427,7 +416,3 @@ function build(subject, definition, defaultValue) {
return definition;
}
assignToNamespace('Monster.Data', buildMap);
export {Monster, buildMap, assembleParts}
......@@ -4,7 +4,7 @@
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {isArray, isObject} from "../types/is.js";
import {Node} from "../types/node.js";
import {NodeList} from "../types/nodelist.js";
......@@ -34,20 +34,9 @@ const rootSymbol = Symbol('root');
/**
* With the help of the function `buildTree()`, nodes can be easily created from data objects.
*
* You can call the method via the monster namespace `Monster.Data.buildTree()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/buildtree.js';
* Monster.Data.buildTree()
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {buildTree} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/buildtree.js';
* import {buildTree} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/buildtree.js';
* buildTree()
* </script>
* ```
......@@ -64,7 +53,7 @@ const rootSymbol = Symbol('root');
* @throws {Error} the object has no value for the specified id
* @since 1.26.0
*/
function buildTree(subject, selector, idKey, parentIDKey, options) {
export function buildTree(subject, selector, idKey, parentIDKey, options) {
const nodes = new Map;
......@@ -123,7 +112,3 @@ function buildTree(subject, selector, idKey, parentIDKey, options) {
return list;
}
assignToNamespace('Monster.Data', buildTree);
export {Monster, buildTree}
......@@ -5,7 +5,7 @@
*/
import {internalSymbol} from "../constants.js";
import {assignToNamespace, Monster} from '../namespace.js';
import {Base} from "../types/base.js";
import {parseDataURL} from "../types/dataurl.js";
import {isString} from "../types/is.js";
......@@ -27,27 +27,16 @@ const internalDataSymbol = Symbol('internalData');
* The datasource class is the basis for dealing with different data sources.
* It provides a unified interface for accessing data
*
* You can create an object of this class using the monster namespace `Monster.Data.Datasource()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Datasource()
* </script>
* ```
*
* Alternatively you can import the class directly
*
* ```
* <script type="module">
* import {Datasource} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource.js';
* import {Datasource} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource.js';
* new Datasource()
* </script>
* ```
*
* @example
*
* import {Datasource} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource.js'
* import {Datasource} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource.js'
*
* class MyDatasource extends Datasource {
*
......@@ -60,7 +49,7 @@ const internalDataSymbol = Symbol('internalData');
* @memberOf Monster.Data
* @summary The datasource class encapsulates the access to data objects.
*/
class Datasource extends Base {
export class Datasource extends Base {
/**
*
......@@ -240,7 +229,3 @@ function parseOptionsJSON(data) {
return {};
}
assignToNamespace('Monster.Data', Datasource);
export {Monster, Datasource}
'use strict';
/**
* Namespace for datasources
*
* @namespace Monster.Data.Datasource
* @memberOf Monster.Data
* @author schukai GmbH
*/
/**
* @private
* @type {string}
*/
export const namespace = "Monster.Data.Datasource";
\ No newline at end of file
......@@ -13,27 +13,18 @@ import {Pipe} from "../pipe.js";
import {WriteError} from "./restapi/writeerror.js";
/**
* You can create an object of this class using the monster namespace `Monster.Data.Datasource.RestAPI()`.
* The RestAPI is a class that enables a REST API server.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Datasource.RestAPI()
* </script>
* ```
*
* Alternatively you can import the class directly
*
* ```
* <script type="module">
* import {RestAPI} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/restapi.js';
* import {RestAPI} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/restapi.js';
* new RestAPI()
* </script>
* ```
*
* @example
*
* import {RestAPI} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/restapi.js';
* import {RestAPI} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/restapi.js';
*
* const ds = new RestAPI({
* url: 'https://httpbin.org/get'
......@@ -50,7 +41,7 @@ import {WriteError} from "./restapi/writeerror.js";
* @memberOf Monster.Data.Datasource
* @summary The LocalStorage class encapsulates the access to data objects.
*/
class RestAPI extends Datasource {
export class RestAPI extends Datasource {
/**
*
......@@ -260,7 +251,3 @@ class RestAPI extends Datasource {
* @memberOf Monster.Data
* @see Monster.Data.Datasource
*/
assignToNamespace('Monster.Data.Datasource', RestAPI);
export {Monster, RestAPI}
......@@ -15,7 +15,7 @@ import {assignToNamespace, Monster} from '../../../namespace.js';
* @memberOf Monster.Data.Datasource.RestAPI
* @summary the error is thrown by the rest api in case of error
*/
class WriteError extends Error {
export class WriteError extends Error {
/**
*
* @param {string} message
......@@ -43,7 +43,3 @@ class WriteError extends Error {
return this[internalSymbol]['validation']
}
}
assignToNamespace('Monster.Data.Datasource.RestAPI', WriteError);
export {Monster, WriteError}
\ No newline at end of file
......@@ -13,30 +13,21 @@ import {Datasource} from "../datasource.js";
* @private
* @type {symbol}
*/
const storageObjectSymbol = Symbol('storageObject');
export const storageObjectSymbol = Symbol('storageObject');
/**
* You can create an object of this class using the monster namespace `Monster.Data.Datasource.Storage()`.
* The class represents a record.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Datasource.Storage()
* </script>
* ```
*
* Alternatively you can import the class directly
*
* ```
* <script type="module">
* import {Storage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/storage.js';
* import {Storage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/storage.js';
* new Storage()
* </script>
* ```
*
* @example
*
* import {Storage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/storage.js';
* import {Storage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/storage.js';
*
* new Datasource();
*
......@@ -45,7 +36,7 @@ const storageObjectSymbol = Symbol('storageObject');
* @memberOf Monster.Data.Datasource
* @summary The Storage class encapsulates the access to data objects over WebStorageAPI.
*/
class Storage extends Datasource {
export class Storage extends Datasource {
/**
*
......@@ -125,7 +116,3 @@ class Storage extends Datasource {
}
}
assignToNamespace('Monster.Data.Datasource', Storage);
export {Monster, Storage, storageObjectSymbol}
......@@ -10,24 +10,12 @@ import {getGlobalObject} from "../../../types/global.js";
import {Datasource} from "../../datasource.js";
import {Storage, storageObjectSymbol} from "../storage.js";
/**
*
*
* You can create an object of this class using the monster namespace `Monster.Data.Datasource.Storage.LocalStorage()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Datasource.Storage.LocalStorage()
* </script>
* ```
*
* Alternatively you can import the class directly
* The LocalStorage Datasource provides a data store in the browser localStorage.
*
* ```
* <script type="module">
* import {LocalStorage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/storage/localstorage.js';
* import {LocalStorage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/storage/localstorage.js';
* new LocalStorage()
* </script>
* ```
......@@ -37,7 +25,7 @@ import {Storage, storageObjectSymbol} from "../storage.js";
* @memberOf Monster.Data.Datasource.Storage
* @summary The LocalStorage class encapsulates the access to data objects.
*/
class LocalStorage extends Storage {
export class LocalStorage extends Storage {
/**
* @throws {Error} this method must be implemented by derived classes.
......@@ -59,6 +47,3 @@ class LocalStorage extends Storage {
}
assignToNamespace('Monster.Data.Datasource.Storage', LocalStorage);
export {Monster, LocalStorage}
'use strict';
/**
* Namespace for storages
*
* @namespace Monster.Data.Datasource.Storage
* @memberOf Monster.Data.Datasource
* @author schukai GmbH
*/
/**
* @private
* @type {string}
*/
export const namespace = "Monster.Data.Datasource.Storage";
\ No newline at end of file
......@@ -11,20 +11,11 @@ import {Datasource} from "../../datasource.js";
import {Storage, storageObjectSymbol} from "../storage.js";
/**
* You can create an object of this class using the monster namespace `Monster.Data.Datasource.Storage.SessionStorage()`.
* The SessionStorage class provides a data source that uses the SessionStorage API on the client.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Datasource.Storage.SessionStorage()
* </script>
* ```
*
* Alternatively you can import the class directly
*
* ```
* <script type="module">
* import {SessionStorage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/datasource/storage/sessionstorage.js';
* import {SessionStorage} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/datasource/storage/sessionstorage.js';
* new SessionStorage()
* </script>
* ```
......@@ -34,7 +25,7 @@ import {Storage, storageObjectSymbol} from "../storage.js";
* @memberOf Monster.Data.Datasource.Storage
* @summary The LocalStorage class encapsulates the access to data objects.
*/
class SessionStorage extends Storage {
export class SessionStorage extends Storage {
/**
* @throws {Error} this method must be implemented by derived classes.
......@@ -56,6 +47,3 @@ class SessionStorage extends Storage {
}
}
assignToNamespace('Monster.Data.Datasource.Storage', SessionStorage);
export {Monster, SessionStorage}
......@@ -4,7 +4,7 @@
* @author schukai GmbH
*/
import {assignToNamespace, Monster} from '../namespace.js';
import {isArray, isObject} from "../types/is.js";
import {typeOf} from "../types/typeof.js";
......@@ -13,27 +13,16 @@ import {typeOf} from "../types/typeof.js";
*
* The operator `add` means that something has been added to the second object. `delete` means that something has been deleted from the second object compared to the first object.
*
* You can call the method via the monster namespace `Monster.Data.Diff()`.
*
* ```
* <script type="module">
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/monster.js';
* Monster.Data.Diff(a, b)
* </script>
* ```
*
* Alternatively, you can also integrate this function individually.
*
* ```
* <script type="module">
* import {Diff} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/diff.js';
* import {Diff} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/diff.js';
* Diff(a, b)
* </script>
* ```
*
* @example
*
* import {Diff} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.31.0/dist/modules/data/diff.js';
* import {Diff} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/data/diff.js';
*
* // given are two objects x and y.
*
......@@ -80,7 +69,7 @@ import {typeOf} from "../types/typeof.js";
* @copyright schukai GmbH
* @memberOf Monster.Data
*/
function diff(first, second) {
export function diff(first, second) {
return doDiff(first, second)
}
......@@ -244,6 +233,3 @@ function getOperator(a, b) {
return operator;
}
assignToNamespace('Monster.Data', diff);
export {Monster, diff}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment