-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDesc.mjs
50 lines (48 loc) · 1.35 KB
/
Desc.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/**
* DTO to represent plugin descriptor (teqfw.json) structure
* that is related to '@teqfw/web-source-installer' node.
*/
// MODULE'S VARS
const NS = 'TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc';
// MODULE'S CLASSES
/**
* @memberOf TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc
*/
class Dto {
static namespace = NS;
/**
* Prefixes for filesystem paths.
* @type {TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc_Rules.Dto}
*/
paths;
/**
* Prefixes for URLs.
* @type {TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc_Rules.Dto}
*/
urls;
}
/**
* @implements TeqFw_Core_Shared_Api_Factory_Dto
*/
export default class TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc {
/**
* @param {TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc_Rules} dtoRules
*/
constructor(
{
TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc_Rules$: dtoRules,
}
) {
// INSTANCE METHODS
/**
* @param {TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc.Dto} [data]
* @return {TeqFw_Web_Source_Installer_Back_Plugin_Dto_Desc.Dto}
*/
this.createDto = function (data) {
const res = new Dto();
res.paths = dtoRules.createDto(data?.paths);
res.urls = dtoRules.createDto(data?.urls);
return res;
};
}
}