@beinformed/ui 1.41.2 → 1.41.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/esm/models/base/ResourceModel.js +11 -0
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/user/UserModel.js +7 -0
- package/esm/models/user/UserModel.js.map +1 -1
- package/lib/models/base/ResourceModel.js +11 -0
- package/lib/models/base/ResourceModel.js.flow +12 -0
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/user/UserModel.js +7 -0
- package/lib/models/user/UserModel.js.flow +7 -0
- package/lib/models/user/UserModel.js.map +1 -1
- package/package.json +1 -1
- package/src/models/base/ResourceModel.js +12 -0
- package/src/models/user/UserModel.js +7 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [1.41.3](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.41.2...v1.41.3) (2024-02-20)
|
|
6
|
+
|
|
5
7
|
## [1.41.2](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.41.1...v1.41.2) (2024-02-20)
|
|
6
8
|
|
|
7
9
|
## [1.41.1](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.41.0...v1.41.1) (2024-02-19)
|
|
@@ -113,6 +113,17 @@ class ResourceModel extends BaseModel {
|
|
|
113
113
|
this._links = links;
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
+
/**
|
|
117
|
+
*
|
|
118
|
+
*/
|
|
119
|
+
get downloadLink() {
|
|
120
|
+
const downloadLink = this.links.getLinksByGroup("download").first;
|
|
121
|
+
if (downloadLink) {
|
|
122
|
+
return downloadLink;
|
|
123
|
+
}
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
|
|
116
127
|
/**
|
|
117
128
|
* Get self link of model
|
|
118
129
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceModel.js","names":["ModularUIResponse","BaseModel","LinkCollection","IllegalArgumentException","IllegalStateException","ResourceModel","constructor","modularuiResponse","arguments","length","undefined","data","contributions","_defineProperty","_key","key","_locale","locale","_childModels","_lastServerUpdate","Date","now","modelName","isApplicableModel","Error","lastServerUpdate","type","resourcetype","getContribution","label","links","_links","Array","isArray","self","selflink","getLinkByKey","selfhref","href","getInitialChildModelLinks","childModels","addChildModels","models","_context","flattenModels","_concatInstanceProperty","call","setChildModels","dehydrate","_context2","_mapInstanceProperty","childModel"],"sources":["../../../src/models/base/ResourceModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport BaseModel from \"./BaseModel\";\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../exceptions\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport type { ModularUIModel, IModelWithChildModels } from \"../types\";\n\n/**\n * Base model, this the foundation for models that represent modular ui services, e.g. application, tab, caseview, etc\n */\nclass ResourceModel extends BaseModel implements IModelWithChildModels {\n _key: string;\n _locale: string;\n _childModels: Array<ModularUIModel>;\n _links: LinkCollection;\n _lastServerUpdate: number;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse = new ModularUIResponse()) {\n super(modularuiResponse.data, modularuiResponse.contributions);\n\n this._key = modularuiResponse.key;\n this._locale = modularuiResponse.locale;\n\n this._childModels = [];\n\n this._lastServerUpdate = Date.now();\n }\n\n /**\n * Property to render name of a model, is original name after transpilation\n */\n static get modelName(): string {\n throw new IllegalStateException(`No modelName set on the resource model`);\n }\n\n /**\n * Returns true when the model is supported based on configuration found in contributions\n *\n * @abstract\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n if (!(data instanceof ModularUIResponse)) {\n throw new IllegalArgumentException(\n \"Given argument for isApplicableModel is not a ModularUIResponse\",\n );\n }\n\n throw new Error(\"No isApplicableModel condition set on resourcemodel\");\n }\n\n /**\n */\n get lastServerUpdate(): number {\n return this._lastServerUpdate;\n }\n\n /**\n */\n set lastServerUpdate(lastServerUpdate: number) {\n this._lastServerUpdate = lastServerUpdate;\n }\n\n /**\n */\n get locale(): string {\n return this._locale;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get type of model\n *\n * @abstract\n */\n get type(): string {\n throw new IllegalStateException(\n `No type set on the resource model with key ${this.key}`,\n );\n }\n\n /**\n * Retrieve type of resource\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"unknown\");\n }\n\n /**\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n {\n self: {\n resourcetype: this.resourcetype,\n },\n ...this.contributions._links,\n },\n );\n }\n return this._links;\n }\n\n /**\n */\n set links(links: LinkCollection) {\n this._links = links;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new IllegalStateException(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Return default self link of resource\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n * Add links to expand on initialization of this model\n *\n * @abstract\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return [];\n }\n\n /**\n * Retrieve links of expanded child models\n */\n get childModels(): Array<ModularUIModel> {\n return this._childModels;\n }\n\n /**\n * Add child models to this model\n */\n addChildModels(models: Array<ModularUIModel>): this {\n const flattenModels = [].concat(...models);\n\n this._childModels = flattenModels;\n\n this.setChildModels(flattenModels);\n\n return this;\n }\n\n /**\n * Template to set expanded child models\n * Use this hook to separate the retrieved child models into the correct models.\n *\n * @abstract\n * @example <caption>Put all models of instance List and GroupingPanel into the panels property</caption>\n */\n setChildModels(models: Array<ModularUIModel>): void {\n if (!models) {\n throw new IllegalArgumentException(\"No models send to setChildModels\");\n }\n }\n\n /**\n */\n dehydrate(): Object {\n return {\n ...super.dehydrate(),\n key: this._key,\n locale: this._locale,\n // $FlowFixMe[missing-type-arg]\n childModels: this._childModels.map<ModularUIModel>(\n (childModel: ModularUIModel) => childModel.dehydrate(),\n ),\n };\n }\n}\n\nexport default ResourceModel;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ResourceModel.js","names":["ModularUIResponse","BaseModel","LinkCollection","IllegalArgumentException","IllegalStateException","ResourceModel","constructor","modularuiResponse","arguments","length","undefined","data","contributions","_defineProperty","_key","key","_locale","locale","_childModels","_lastServerUpdate","Date","now","modelName","isApplicableModel","Error","lastServerUpdate","type","resourcetype","getContribution","label","links","_links","Array","isArray","self","downloadLink","getLinksByGroup","first","selflink","getLinkByKey","selfhref","href","getInitialChildModelLinks","childModels","addChildModels","models","_context","flattenModels","_concatInstanceProperty","call","setChildModels","dehydrate","_context2","_mapInstanceProperty","childModel"],"sources":["../../../src/models/base/ResourceModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport BaseModel from \"./BaseModel\";\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../exceptions\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport type { ModularUIModel, IModelWithChildModels } from \"../types\";\n\n/**\n * Base model, this the foundation for models that represent modular ui services, e.g. application, tab, caseview, etc\n */\nclass ResourceModel extends BaseModel implements IModelWithChildModels {\n _key: string;\n _locale: string;\n _childModels: Array<ModularUIModel>;\n _links: LinkCollection;\n _lastServerUpdate: number;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse = new ModularUIResponse()) {\n super(modularuiResponse.data, modularuiResponse.contributions);\n\n this._key = modularuiResponse.key;\n this._locale = modularuiResponse.locale;\n\n this._childModels = [];\n\n this._lastServerUpdate = Date.now();\n }\n\n /**\n * Property to render name of a model, is original name after transpilation\n */\n static get modelName(): string {\n throw new IllegalStateException(`No modelName set on the resource model`);\n }\n\n /**\n * Returns true when the model is supported based on configuration found in contributions\n *\n * @abstract\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n if (!(data instanceof ModularUIResponse)) {\n throw new IllegalArgumentException(\n \"Given argument for isApplicableModel is not a ModularUIResponse\",\n );\n }\n\n throw new Error(\"No isApplicableModel condition set on resourcemodel\");\n }\n\n /**\n */\n get lastServerUpdate(): number {\n return this._lastServerUpdate;\n }\n\n /**\n */\n set lastServerUpdate(lastServerUpdate: number) {\n this._lastServerUpdate = lastServerUpdate;\n }\n\n /**\n */\n get locale(): string {\n return this._locale;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get type of model\n *\n * @abstract\n */\n get type(): string {\n throw new IllegalStateException(\n `No type set on the resource model with key ${this.key}`,\n );\n }\n\n /**\n * Retrieve type of resource\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"unknown\");\n }\n\n /**\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n {\n self: {\n resourcetype: this.resourcetype,\n },\n ...this.contributions._links,\n },\n );\n }\n return this._links;\n }\n\n /**\n */\n set links(links: LinkCollection) {\n this._links = links;\n }\n\n /**\n *\n */\n get downloadLink(): ?LinkModel {\n const downloadLink = this.links.getLinksByGroup(\"download\").first;\n if (downloadLink) {\n return downloadLink;\n }\n\n return null;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new IllegalStateException(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Return default self link of resource\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n * Add links to expand on initialization of this model\n *\n * @abstract\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return [];\n }\n\n /**\n * Retrieve links of expanded child models\n */\n get childModels(): Array<ModularUIModel> {\n return this._childModels;\n }\n\n /**\n * Add child models to this model\n */\n addChildModels(models: Array<ModularUIModel>): this {\n const flattenModels = [].concat(...models);\n\n this._childModels = flattenModels;\n\n this.setChildModels(flattenModels);\n\n return this;\n }\n\n /**\n * Template to set expanded child models\n * Use this hook to separate the retrieved child models into the correct models.\n *\n * @abstract\n * @example <caption>Put all models of instance List and GroupingPanel into the panels property</caption>\n */\n setChildModels(models: Array<ModularUIModel>): void {\n if (!models) {\n throw new IllegalArgumentException(\"No models send to setChildModels\");\n }\n }\n\n /**\n */\n dehydrate(): Object {\n return {\n ...super.dehydrate(),\n key: this._key,\n locale: this._locale,\n // $FlowFixMe[missing-type-arg]\n childModels: this._childModels.map<ModularUIModel>(\n (childModel: ModularUIModel) => childModel.dehydrate(),\n ),\n };\n }\n}\n\nexport default ResourceModel;\n"],"mappings":"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"}
|
|
@@ -21,6 +21,13 @@ export default class UserModel extends ResourceModel {
|
|
|
21
21
|
return data.contributions.resourcetype && data.contributions.resourcetype === "userdata";
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
/**
|
|
25
|
+
* Retrieve username of user
|
|
26
|
+
*/
|
|
27
|
+
get avatar() {
|
|
28
|
+
return this.data.Avatar;
|
|
29
|
+
}
|
|
30
|
+
|
|
24
31
|
/**
|
|
25
32
|
* Retrieve username of user
|
|
26
33
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserModel.js","names":["ResourceModel","UserModel","type","modelName","isApplicableModel","data","contributions","resourcetype","username","Username","fullname","Fullname","label"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":"AACA,OAAOA,aAAa,MAAM,uBAAuB;AAIjD;AACA;AACA;AACA,eAAe,MAAMC,SAAS,SAASD,aAAa,CAAC;EACnD;AACF;EACE,IAAIE,IAAIA,CAAA,EAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,WAAWC,SAASA,CAAA,EAAW;IAC7B,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiBA,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,
|
|
1
|
+
{"version":3,"file":"UserModel.js","names":["ResourceModel","UserModel","type","modelName","isApplicableModel","data","contributions","resourcetype","avatar","Avatar","username","Username","fullname","Fullname","label"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get avatar(): string {\n return this.data.Avatar;\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":"AACA,OAAOA,aAAa,MAAM,uBAAuB;AAIjD;AACA;AACA;AACA,eAAe,MAAMC,SAAS,SAASD,aAAa,CAAC;EACnD;AACF;EACE,IAAIE,IAAIA,CAAA,EAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,WAAWC,SAASA,CAAA,EAAW;IAC7B,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiBA,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACH,IAAI,CAACI,MAAM;EACzB;;EAEA;AACF;AACA;EACE,IAAIC,QAAQA,CAAA,EAAW;IACrB,OAAO,IAAI,CAACL,IAAI,CAACM,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;AACA;EACE,IAAIC,QAAQA,CAAA,EAAW;IACrB,OAAO,IAAI,CAACP,IAAI,CAACQ,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;EACE,IAAIC,KAAKA,CAAA,EAAW;IAClB,OAAO,IAAI,CAACR,aAAa,CAACQ,KAAK;EACjC;AACF"}
|
|
@@ -120,6 +120,17 @@ class ResourceModel extends _BaseModel.default {
|
|
|
120
120
|
this._links = links;
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
+
/**
|
|
124
|
+
*
|
|
125
|
+
*/
|
|
126
|
+
get downloadLink() {
|
|
127
|
+
const downloadLink = this.links.getLinksByGroup("download").first;
|
|
128
|
+
if (downloadLink) {
|
|
129
|
+
return downloadLink;
|
|
130
|
+
}
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
|
|
123
134
|
/**
|
|
124
135
|
* Get self link of model
|
|
125
136
|
*/
|
|
@@ -134,6 +134,18 @@ class ResourceModel extends BaseModel implements IModelWithChildModels {
|
|
|
134
134
|
this._links = links;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
+
/**
|
|
138
|
+
*
|
|
139
|
+
*/
|
|
140
|
+
get downloadLink(): ?LinkModel {
|
|
141
|
+
const downloadLink = this.links.getLinksByGroup("download").first;
|
|
142
|
+
if (downloadLink) {
|
|
143
|
+
return downloadLink;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
|
|
137
149
|
/**
|
|
138
150
|
* Get self link of model
|
|
139
151
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_BaseModel","_LinkCollection","_exceptions","ResourceModel","BaseModel","constructor","modularuiResponse","arguments","length","undefined","ModularUIResponse","data","contributions","_defineProperty2","default","_key","key","_locale","locale","_childModels","_lastServerUpdate","Date","now","modelName","IllegalStateException","isApplicableModel","IllegalArgumentException","Error","lastServerUpdate","type","resourcetype","getContribution","label","links","_links","LinkCollection","Array","isArray","self","selflink","getLinkByKey","selfhref","href","getInitialChildModelLinks","childModels","addChildModels","models","_context","flattenModels","_concat","call","setChildModels","dehydrate","_context2","_map","childModel","_default","exports"],"sources":["../../../src/models/base/ResourceModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport BaseModel from \"./BaseModel\";\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../exceptions\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport type { ModularUIModel, IModelWithChildModels } from \"../types\";\n\n/**\n * Base model, this the foundation for models that represent modular ui services, e.g. application, tab, caseview, etc\n */\nclass ResourceModel extends BaseModel implements IModelWithChildModels {\n _key: string;\n _locale: string;\n _childModels: Array<ModularUIModel>;\n _links: LinkCollection;\n _lastServerUpdate: number;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse = new ModularUIResponse()) {\n super(modularuiResponse.data, modularuiResponse.contributions);\n\n this._key = modularuiResponse.key;\n this._locale = modularuiResponse.locale;\n\n this._childModels = [];\n\n this._lastServerUpdate = Date.now();\n }\n\n /**\n * Property to render name of a model, is original name after transpilation\n */\n static get modelName(): string {\n throw new IllegalStateException(`No modelName set on the resource model`);\n }\n\n /**\n * Returns true when the model is supported based on configuration found in contributions\n *\n * @abstract\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n if (!(data instanceof ModularUIResponse)) {\n throw new IllegalArgumentException(\n \"Given argument for isApplicableModel is not a ModularUIResponse\",\n );\n }\n\n throw new Error(\"No isApplicableModel condition set on resourcemodel\");\n }\n\n /**\n */\n get lastServerUpdate(): number {\n return this._lastServerUpdate;\n }\n\n /**\n */\n set lastServerUpdate(lastServerUpdate: number) {\n this._lastServerUpdate = lastServerUpdate;\n }\n\n /**\n */\n get locale(): string {\n return this._locale;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get type of model\n *\n * @abstract\n */\n get type(): string {\n throw new IllegalStateException(\n `No type set on the resource model with key ${this.key}`,\n );\n }\n\n /**\n * Retrieve type of resource\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"unknown\");\n }\n\n /**\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n {\n self: {\n resourcetype: this.resourcetype,\n },\n ...this.contributions._links,\n },\n );\n }\n return this._links;\n }\n\n /**\n */\n set links(links: LinkCollection) {\n this._links = links;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new IllegalStateException(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Return default self link of resource\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n * Add links to expand on initialization of this model\n *\n * @abstract\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return [];\n }\n\n /**\n * Retrieve links of expanded child models\n */\n get childModels(): Array<ModularUIModel> {\n return this._childModels;\n }\n\n /**\n * Add child models to this model\n */\n addChildModels(models: Array<ModularUIModel>): this {\n const flattenModels = [].concat(...models);\n\n this._childModels = flattenModels;\n\n this.setChildModels(flattenModels);\n\n return this;\n }\n\n /**\n * Template to set expanded child models\n * Use this hook to separate the retrieved child models into the correct models.\n *\n * @abstract\n * @example <caption>Put all models of instance List and GroupingPanel into the panels property</caption>\n */\n setChildModels(models: Array<ModularUIModel>): void {\n if (!models) {\n throw new IllegalArgumentException(\"No models send to setChildModels\");\n }\n }\n\n /**\n */\n dehydrate(): Object {\n return {\n ...super.dehydrate(),\n key: this._key,\n locale: this._locale,\n // $FlowFixMe[missing-type-arg]\n childModels: this._childModels.map<ModularUIModel>(\n (childModel: ModularUIModel) => childModel.dehydrate(),\n ),\n };\n }\n}\n\nexport default ResourceModel;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ResourceModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_BaseModel","_LinkCollection","_exceptions","ResourceModel","BaseModel","constructor","modularuiResponse","arguments","length","undefined","ModularUIResponse","data","contributions","_defineProperty2","default","_key","key","_locale","locale","_childModels","_lastServerUpdate","Date","now","modelName","IllegalStateException","isApplicableModel","IllegalArgumentException","Error","lastServerUpdate","type","resourcetype","getContribution","label","links","_links","LinkCollection","Array","isArray","self","downloadLink","getLinksByGroup","first","selflink","getLinkByKey","selfhref","href","getInitialChildModelLinks","childModels","addChildModels","models","_context","flattenModels","_concat","call","setChildModels","dehydrate","_context2","_map","childModel","_default","exports"],"sources":["../../../src/models/base/ResourceModel.js"],"sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport BaseModel from \"./BaseModel\";\nimport LinkCollection from \"../links/LinkCollection\";\n\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../exceptions\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\nimport type { ModularUIModel, IModelWithChildModels } from \"../types\";\n\n/**\n * Base model, this the foundation for models that represent modular ui services, e.g. application, tab, caseview, etc\n */\nclass ResourceModel extends BaseModel implements IModelWithChildModels {\n _key: string;\n _locale: string;\n _childModels: Array<ModularUIModel>;\n _links: LinkCollection;\n _lastServerUpdate: number;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse = new ModularUIResponse()) {\n super(modularuiResponse.data, modularuiResponse.contributions);\n\n this._key = modularuiResponse.key;\n this._locale = modularuiResponse.locale;\n\n this._childModels = [];\n\n this._lastServerUpdate = Date.now();\n }\n\n /**\n * Property to render name of a model, is original name after transpilation\n */\n static get modelName(): string {\n throw new IllegalStateException(`No modelName set on the resource model`);\n }\n\n /**\n * Returns true when the model is supported based on configuration found in contributions\n *\n * @abstract\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n if (!(data instanceof ModularUIResponse)) {\n throw new IllegalArgumentException(\n \"Given argument for isApplicableModel is not a ModularUIResponse\",\n );\n }\n\n throw new Error(\"No isApplicableModel condition set on resourcemodel\");\n }\n\n /**\n */\n get lastServerUpdate(): number {\n return this._lastServerUpdate;\n }\n\n /**\n */\n set lastServerUpdate(lastServerUpdate: number) {\n this._lastServerUpdate = lastServerUpdate;\n }\n\n /**\n */\n get locale(): string {\n return this._locale;\n }\n\n /**\n * Retrieve key\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get type of model\n *\n * @abstract\n */\n get type(): string {\n throw new IllegalStateException(\n `No type set on the resource model with key ${this.key}`,\n );\n }\n\n /**\n * Retrieve type of resource\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"unknown\");\n }\n\n /**\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the links of the resource\n */\n get links(): LinkCollection {\n if (!this._links) {\n this._links = new LinkCollection(\n Array.isArray(this.data._links)\n ? this.data._links[0]\n : this.data._links,\n {\n self: {\n resourcetype: this.resourcetype,\n },\n ...this.contributions._links,\n },\n );\n }\n return this._links;\n }\n\n /**\n */\n set links(links: LinkCollection) {\n this._links = links;\n }\n\n /**\n *\n */\n get downloadLink(): ?LinkModel {\n const downloadLink = this.links.getLinksByGroup(\"download\").first;\n if (downloadLink) {\n return downloadLink;\n }\n\n return null;\n }\n\n /**\n * Get self link of model\n */\n get selflink(): LinkModel {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n throw new IllegalStateException(\n `Could not find self link for ${\n this.key === null ? \"unknown\" : this.key\n }`,\n );\n }\n\n return selflink;\n }\n\n /**\n * Return default self link of resource\n */\n get selfhref(): Href {\n return this.selflink.href;\n }\n\n /**\n * Add links to expand on initialization of this model\n *\n * @abstract\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return [];\n }\n\n /**\n * Retrieve links of expanded child models\n */\n get childModels(): Array<ModularUIModel> {\n return this._childModels;\n }\n\n /**\n * Add child models to this model\n */\n addChildModels(models: Array<ModularUIModel>): this {\n const flattenModels = [].concat(...models);\n\n this._childModels = flattenModels;\n\n this.setChildModels(flattenModels);\n\n return this;\n }\n\n /**\n * Template to set expanded child models\n * Use this hook to separate the retrieved child models into the correct models.\n *\n * @abstract\n * @example <caption>Put all models of instance List and GroupingPanel into the panels property</caption>\n */\n setChildModels(models: Array<ModularUIModel>): void {\n if (!models) {\n throw new IllegalArgumentException(\"No models send to setChildModels\");\n }\n }\n\n /**\n */\n dehydrate(): Object {\n return {\n ...super.dehydrate(),\n key: this._key,\n locale: this._locale,\n // $FlowFixMe[missing-type-arg]\n childModels: this._childModels.map<ModularUIModel>(\n (childModel: ModularUIModel) => childModel.dehydrate(),\n ),\n };\n }\n}\n\nexport default ResourceModel;\n"],"mappings":"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"}
|
|
@@ -28,6 +28,13 @@ class UserModel extends _ResourceModel.default {
|
|
|
28
28
|
return data.contributions.resourcetype && data.contributions.resourcetype === "userdata";
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Retrieve username of user
|
|
33
|
+
*/
|
|
34
|
+
get avatar() {
|
|
35
|
+
return this.data.Avatar;
|
|
36
|
+
}
|
|
37
|
+
|
|
31
38
|
/**
|
|
32
39
|
* Retrieve username of user
|
|
33
40
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserModel.js","names":["_ResourceModel","_interopRequireDefault","require","UserModel","ResourceModel","type","modelName","isApplicableModel","data","contributions","resourcetype","username","Username","fullname","Fullname","label","exports","default"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":";;;;;;;AACA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA;AACA;AACA;AACe,MAAMC,SAAS,SAASC,sBAAa,CAAC;EACnD;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,WAAWC,SAASA,CAAA,EAAW;IAC7B,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiBA,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,
|
|
1
|
+
{"version":3,"file":"UserModel.js","names":["_ResourceModel","_interopRequireDefault","require","UserModel","ResourceModel","type","modelName","isApplicableModel","data","contributions","resourcetype","avatar","Avatar","username","Username","fullname","Fullname","label","exports","default"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get avatar(): string {\n return this.data.Avatar;\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":";;;;;;;AACA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA;AACA;AACA;AACe,MAAMC,SAAS,SAASC,sBAAa,CAAC;EACnD;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,WAAWC,SAASA,CAAA,EAAW;IAC7B,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiBA,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACH,IAAI,CAACI,MAAM;EACzB;;EAEA;AACF;AACA;EACE,IAAIC,QAAQA,CAAA,EAAW;IACrB,OAAO,IAAI,CAACL,IAAI,CAACM,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;AACA;EACE,IAAIC,QAAQA,CAAA,EAAW;IACrB,OAAO,IAAI,CAACP,IAAI,CAACQ,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;EACE,IAAIC,KAAKA,CAAA,EAAW;IAClB,OAAO,IAAI,CAACR,aAAa,CAACQ,KAAK;EACjC;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAhB,SAAA"}
|
package/package.json
CHANGED
|
@@ -134,6 +134,18 @@ class ResourceModel extends BaseModel implements IModelWithChildModels {
|
|
|
134
134
|
this._links = links;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
+
/**
|
|
138
|
+
*
|
|
139
|
+
*/
|
|
140
|
+
get downloadLink(): ?LinkModel {
|
|
141
|
+
const downloadLink = this.links.getLinksByGroup("download").first;
|
|
142
|
+
if (downloadLink) {
|
|
143
|
+
return downloadLink;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
|
|
137
149
|
/**
|
|
138
150
|
* Get self link of model
|
|
139
151
|
*/
|