@nymphjs/tilmeld-client 1.0.0-alpha.2 → 1.0.0-alpha.20

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 CHANGED
@@ -3,6 +3,87 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.0.0-alpha.20](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) (2021-11-24)
7
+
8
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
9
+
10
+ # [1.0.0-alpha.19](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) (2021-11-18)
11
+
12
+ ### Features
13
+
14
+ - update smui and other packages to latest versions ([2465340](https://github.com/sciactive/nymphjs/commit/24653400d887bc04c41c3c4ee0c73ce2f2289e0d))
15
+
16
+ # [1.0.0-alpha.18](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) (2021-11-09)
17
+
18
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
19
+
20
+ # [1.0.0-alpha.17](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) (2021-10-14)
21
+
22
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
23
+
24
+ # [1.0.0-alpha.16](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2021-10-14)
25
+
26
+ ### Bug Fixes
27
+
28
+ - don't ignore built files in npm packages ([7d688db](https://github.com/sciactive/nymphjs/commit/7d688dbec362f1f71fb451a1d0dbcaecc15d99fc))
29
+
30
+ # [1.0.0-alpha.15](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2021-10-14)
31
+
32
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
33
+
34
+ # [1.0.0-alpha.14](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2021-10-14)
35
+
36
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
37
+
38
+ # [1.0.0-alpha.13](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2021-10-14)
39
+
40
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
41
+
42
+ # [1.0.0-alpha.12](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2021-10-13)
43
+
44
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
45
+
46
+ # [1.0.0-alpha.11](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2021-10-13)
47
+
48
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
49
+
50
+ # [1.0.0-alpha.10](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2021-10-12)
51
+
52
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
53
+
54
+ # [1.0.0-alpha.9](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2021-10-12)
55
+
56
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
57
+
58
+ # [1.0.0-alpha.8](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2021-10-12)
59
+
60
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
61
+
62
+ # [1.0.0-alpha.7](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2021-10-05)
63
+
64
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
65
+
66
+ # [1.0.0-alpha.6](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2021-10-05)
67
+
68
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
69
+
70
+ # [1.0.0-alpha.5](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2021-09-30)
71
+
72
+ **Note:** Version bump only for package @nymphjs/tilmeld-client
73
+
74
+ # [1.0.0-alpha.4](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2021-09-27)
75
+
76
+ ### Features
77
+
78
+ - use new instances of nymph for server and pubsub requests ([0c18fab](https://github.com/sciactive/nymphjs/commit/0c18faba2b55fe82c16806d221fc54d2cd42c992))
79
+
80
+ # [1.0.0-alpha.3](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2021-09-22)
81
+
82
+ ### Features
83
+
84
+ - migrate Tilmeld Client to new instance based Nymph Client ([dffe83b](https://github.com/sciactive/nymphjs/commit/dffe83b3900171a56d703cd491536b5d21360198))
85
+ - move to fully instance based design, no more globals ([c036220](https://github.com/sciactive/nymphjs/commit/c0362209b90a475b8b85269a829b0ec6bed4465f))
86
+
6
87
  # [1.0.0-alpha.2](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.1...v1.0.0-alpha.2) (2021-09-21)
7
88
 
8
89
  **Note:** Version bump only for package @nymphjs/tilmeld-client
package/README.md CHANGED
@@ -16,6 +16,19 @@ You can find UMD in `dist`, or TS source in `src`.
16
16
 
17
17
  The Tilmeld client contains the client versions of the `User` and `Group` entities. It also contains helpers, `getClientConfig`, `login`, `register`, and `checkUsername`.
18
18
 
19
+ Once you've initialized Nymph Client, set the User and Group classes on it.
20
+
21
+ ```ts
22
+ import { Nymph } from '@nymphjs/client';
23
+ import { User, Group } from '@nymphjs/tilmeld-client';
24
+
25
+ const nymph = new Nymph({
26
+ restUrl: 'https://yournymphrestserver/path/to/your/endpoint',
27
+ });
28
+ nymph.addEntityClass(User);
29
+ nymph.addEntityClass(Group);
30
+ ```
31
+
19
32
  # License
20
33
 
21
34
  Copyright 2021 SciActive Inc
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nymphjs/client")):"function"==typeof define&&define.amd?define(["@nymphjs/client"],t):"object"==typeof exports?exports["@nymphjs/tilmeld-client"]=t(require("@nymphjs/client")):e["@nymphjs/tilmeld-client"]=t(e["@nymphjs/client"])}(this,(function(e){return(()=>{"use strict";var t={848:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{a(n.next(e))}catch(e){o(e)}}function l(e){try{a(n.throw(e))}catch(e){o(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,l)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const i=r(196);class o extends i.Entity{constructor(e){super(e),null==e&&(this.$data.enabled=!0,this.$data.abilities=[])}static factory(e){const t=Object.create(null,{factory:{get:()=>super.factory}});return n(this,void 0,void 0,(function*(){return yield t.factory.call(this,e)}))}static factorySync(e){return super.factorySync(e)}$checkGroupname(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkGroupname",[],!0)}))}$checkEmail(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkEmail",[],!0)}))}$getAvatar(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getAvatar",[],!0)}))}$getChildren(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getChildren",[],!0)}))}$getDescendants(e=!1){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getDescendants",[e],!0)}))}$getLevel(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getLevel",[],!0)}))}$isDescendant(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$isDescendant",[e],!0)}))}static getPrimaryGroups(e,t){return n(this,void 0,void 0,(function*(){return yield o.serverCallStatic("getPrimaryGroups",[{options:e,class:o.class},t])}))}static getSecondaryGroups(e,t){return n(this,void 0,void 0,(function*(){return yield o.serverCallStatic("getSecondaryGroups",[{options:e,class:o.class},t])}))}}t.default=o,o.class="Group",i.Nymph.setEntityClass(o.class,o)},178:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{a(n.next(e))}catch(e){o(e)}}function l(e){try{a(n.throw(e))}catch(e){o(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,l)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const i=r(196);let o=null;class s extends i.Entity{constructor(e){super(e),null==e&&(this.$data.enabled=!0,this.$data.abilities=[],this.$data.groups=[],this.$data.inheritAbilities=!0)}static init(){this.removeNymphResponseListener&&this.removeNymphResponseListener(),this.removeNymphResponseListener=i.Nymph.on("response",(e=>s.handleToken(e))),s.handleToken()}static factory(e){const t=Object.create(null,{factory:{get:()=>super.factory}});return n(this,void 0,void 0,(function*(){return yield t.factory.call(this,e)}))}static factoryUsername(e){return n(this,void 0,void 0,(function*(){const t=new this;if(null!=e){const t=yield i.Nymph.getEntity({class:this},{type:"&",ilike:["username",e.replace(/([\\%_])/g,(e=>`\\${e}`))]});if(null!=t)return t}return t}))}static factorySync(e){return super.factorySync(e)}$checkUsername(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkUsername",[],!0)}))}$checkEmail(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkEmail",[],!0)}))}$checkPhone(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkPhone",[],!0)}))}$getAvatar(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getAvatar",[],!0)}))}$register(e){return n(this,void 0,void 0,(function*(){const t=yield this.$serverCall("$register",[e]);if(t.result)for(let e=0;e<s.registerCallbacks.length;e++)s.registerCallbacks[e]&&s.registerCallbacks[e](this);if(t.loggedin){s.currentUser=this,s.handleToken();for(let e=0;e<s.loginCallbacks.length;e++)s.loginCallbacks[e]&&s.loginCallbacks[e](this)}return t}))}$logout(){return n(this,void 0,void 0,(function*(){const e=yield this.$serverCall("$logout",[]);if(e.result){s.currentUser=void 0,s.handleToken();for(let e=0;e<s.logoutCallbacks.length;e++)s.logoutCallbacks[e]&&s.logoutCallbacks[e](this)}return e}))}$gatekeeper(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$gatekeeper",[e],!0)}))}$changePassword(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$changePassword",[e])}))}static current(e){return n(this,void 0,void 0,(function*(){return void 0!==s.currentUser?s.currentUser:(s.currentUserPromise||(s.currentUserPromise=s.serverCallStatic("current",[!1]).then((e=>(s.currentUser=null!=e?e:void 0,s.currentUserPromise=void 0,e)))),yield s.currentUserPromise,null==s.currentUser?e?s.factorySync():null:s.currentUser)}))}static loginUser(e){return n(this,void 0,void 0,(function*(){const t=yield s.serverCallStatic("loginUser",[e]);if(t.result){s.currentUser=t.user,s.handleToken();for(let e=0;e<s.loginCallbacks.length;e++)s.loginCallbacks[e]&&s.loginCallbacks[e](t.user)}return t}))}static sendRecovery(e){return n(this,void 0,void 0,(function*(){return yield s.serverCallStatic("sendRecovery",[e])}))}static recover(e){return n(this,void 0,void 0,(function*(){return yield s.serverCallStatic("recover",[e])}))}static getClientConfig(){return n(this,void 0,void 0,(function*(){return s.clientConfig?s.clientConfig:(s.clientConfigPromise||(s.clientConfigPromise=s.serverCallStatic("getClientConfig",[]).then((e=>(s.clientConfig=e,s.clientConfigPromise=void 0,e)))),yield s.clientConfigPromise)}))}static handleToken(e){let t=null;const r=/(?:(?:^|.*;\s*)TILMELDAUTH\s*=\s*([^;]*).*$)|^.*$/;if(e&&e.headers.has("X-TILMELDAUTH"))t=e.headers.get("X-TILMELDAUTH");else{if("undefined"==typeof document||!document.cookie.match(r))return;t=document.cookie.replace(r,"$1")}if(o!==t)if(null==t||""===t)null!=o&&(i.Nymph.setXsrfToken(null),i.PubSub.isConfigured()&&i.PubSub.setToken(null),o=null);else{const e=t.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),r="undefined"==typeof atob?Buffer.from(e,"base64").toString("binary"):atob(e),n=JSON.parse(r);i.Nymph.setXsrfToken(n.xsrfToken),i.PubSub.isConfigured()&&i.PubSub.setToken(t),o=t}}static on(e,t){const r=e+"Callbacks";if(!this.hasOwnProperty(r))throw new Error("Invalid event type.");return this[r].push(t),()=>this.off(e,t)}static off(e,t){const r=e+"Callbacks";if(!this.hasOwnProperty(r))return!1;const n=this[r].indexOf(t);return n>-1&&this[r].splice(n,1),!0}}t.default=s,s.class="User",s.registerCallbacks=[],s.loginCallbacks=[],s.logoutCallbacks=[],i.Nymph.setEntityClass(s.class,s),s.init()},13:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{a(n.next(e))}catch(e){o(e)}}function l(e){try{a(n.throw(e))}catch(e){o(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,l)}a((n=n.apply(e,t||[])).next())}))},i=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.checkUsername=t.register=t.login=t.getClientConfig=void 0;const s=o(r(178));let l=null,a=null;function c(){return n(this,void 0,void 0,(function*(){return l||(a||(a=s.default.getClientConfig().then((e=>l=e))),yield a)}))}t.getClientConfig=c,t.login=function(e,t){var r;return n(this,void 0,void 0,(function*(){if(""===e)throw new Error("You need to enter a username.");if(""===t)throw new Error("You need to enter a password");try{const r=yield s.default.loginUser({username:e,password:t}),{result:n}=r,o=i(r,["result"]);if(!n)throw new Error(o.message);return o}catch(e){throw new Error(null!==(r=null==e?void 0:e.message)&&void 0!==r?r:"An error occurred.")}}))},t.register=function(e){var t;return n(this,void 0,void 0,(function*(){if(""===e.username)throw new Error("You need to enter a username.");if(!e.usernameVerified)throw new Error("The username you entered is not valid.");if(e.password!==e.password2)throw new Error("Your passwords do not match.");if(""===e.password)throw new Error("You need to enter a password");let r=s.default.factorySync();r.username=e.username;const n=yield c();n.emailUsernames?r.email=e.username:-1!==n.regFields.indexOf("email")&&(r.email=e.email),-1!==n.regFields.indexOf("name")&&(r.nameFirst=e.nameFirst,r.nameLast=e.nameLast),-1!==n.regFields.indexOf("phone")&&(r.phone=e.phone);try{const t=yield r.$register({password:e.password}),{result:n}=t,o=i(t,["result"]);if(!n)throw new Error(o.message);return Object.assign(Object.assign({},o),{user:r})}catch(e){throw new Error(null!==(t=null==e?void 0:e.message)&&void 0!==t?t:"An error occurred.")}}))},t.checkUsername=function(e){var t;return n(this,void 0,void 0,(function*(){let r=s.default.factorySync();r.username=e,(yield c()).emailUsernames&&(r.email=e);try{const e=yield r.$checkUsername(),{result:t}=e,n=i(e,["result"]);if(!t)throw new Error(n.message);return n}catch(e){throw new Error(null!==(t=null==e?void 0:e.message)&&void 0!==t?t:"An error occurred.")}}))}},568:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.User=t.Group=void 0,i(r(848),t);const s=o(r(848));t.Group=s.default,i(r(13),t),i(r(178),t);const l=o(r(178));t.User=l.default},196:t=>{t.exports=e}},r={};return function e(n){var i=r[n];if(void 0!==i)return i.exports;var o=r[n]={exports:{}};return t[n].call(o.exports,o,o.exports,e),o.exports}(568)})()}));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nymphjs/client")):"function"==typeof define&&define.amd?define(["@nymphjs/client"],t):"object"==typeof exports?exports["@nymphjs/tilmeld-client"]=t(require("@nymphjs/client")):e["@nymphjs/tilmeld-client"]=t(e["@nymphjs/client"])}(this,(function(e){return(()=>{"use strict";var t={848:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{a(n.next(e))}catch(e){s(e)}}function l(e){try{a(n.throw(e))}catch(e){s(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const i=r(778);class s extends i.Entity{constructor(e){super(e),null==e&&(this.$data.enabled=!0,this.$data.abilities=[])}static factory(e){const t=Object.create(null,{factory:{get:()=>super.factory}});return n(this,void 0,void 0,(function*(){return yield t.factory.call(this,e)}))}static factorySync(e){return super.factorySync(e)}$checkGroupname(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkGroupname",[],!0)}))}$checkEmail(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkEmail",[],!0)}))}$getAvatar(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getAvatar",[],!0)}))}$getChildren(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getChildren",[],!0)}))}$getDescendants(e=!1){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getDescendants",[e],!0)}))}$getLevel(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getLevel",[],!0)}))}$isDescendant(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$isDescendant",[e],!0)}))}static getPrimaryGroups(e,t){return n(this,void 0,void 0,(function*(){return yield this.serverCallStatic("getPrimaryGroups",[{options:e,class:this.class},t])}))}static getSecondaryGroups(e,t){return n(this,void 0,void 0,(function*(){return yield this.serverCallStatic("getSecondaryGroups",[{options:e,class:this.class},t])}))}}t.default=s,s.class="Group"},178:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{a(n.next(e))}catch(e){s(e)}}function l(e){try{a(n.throw(e))}catch(e){s(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const i=r(778);let s=null;class o extends i.Entity{constructor(e){super(e),null==e&&(this.$data.enabled=!0,this.$data.abilities=[],this.$data.groups=[],this.$data.inheritAbilities=!0)}static set nymph(e){this.nymphValue=e,this.removeNymphResponseListener&&this.removeNymphResponseListener(),this.removeNymphResponseListener=this.nymph.on("response",(e=>this.handleToken(e))),this.handleToken()}static get nymph(){return this.nymphValue}static factory(e){const t=Object.create(null,{factory:{get:()=>super.factory}});return n(this,void 0,void 0,(function*(){return yield t.factory.call(this,e)}))}static factoryUsername(e){return n(this,void 0,void 0,(function*(){const t=new this;if(null!=e){const t=yield this.nymph.getEntity({class:this},{type:"&",ilike:["username",e.replace(/([\\%_])/g,(e=>`\\${e}`))]});if(null!=t)return t}return t}))}static factorySync(e){return super.factorySync(e)}$checkUsername(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkUsername",[],!0)}))}$checkEmail(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkEmail",[],!0)}))}$checkPhone(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$checkPhone",[],!0)}))}$getAvatar(){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$getAvatar",[],!0)}))}$register(e){return n(this,void 0,void 0,(function*(){const t=this.constructor,r=yield this.$serverCall("$register",[e]);if(r.result)for(let e=0;e<t.registerCallbacks.length;e++)t.registerCallbacks[e]&&t.registerCallbacks[e](this);if(r.loggedin){t.currentUser=this,t.handleToken();for(let e=0;e<t.loginCallbacks.length;e++)t.loginCallbacks[e]&&t.loginCallbacks[e](this)}return r}))}$logout(){return n(this,void 0,void 0,(function*(){const e=this.constructor,t=yield this.$serverCall("$logout",[]);if(t.result){e.currentUser=void 0,e.handleToken();for(let t=0;t<e.logoutCallbacks.length;t++)e.logoutCallbacks[t]&&e.logoutCallbacks[t](this)}return t}))}$gatekeeper(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$gatekeeper",[e],!0)}))}$changePassword(e){return n(this,void 0,void 0,(function*(){return yield this.$serverCall("$changePassword",[e])}))}static current(e){return n(this,void 0,void 0,(function*(){return void 0!==this.currentUser?this.currentUser:(this.currentUserPromise||(this.currentUserPromise=this.serverCallStatic("current",[!1]).then((e=>(this.currentUser=null!=e?e:void 0,this.currentUserPromise=void 0,e)))),yield this.currentUserPromise,null==this.currentUser?e?this.factorySync():null:this.currentUser)}))}static loginUser(e){return n(this,void 0,void 0,(function*(){const t=yield this.serverCallStatic("loginUser",[e]);if(t.result){this.currentUser=t.user,this.handleToken();for(let e=0;e<this.loginCallbacks.length;e++)this.loginCallbacks[e]&&this.loginCallbacks[e](t.user)}return t}))}static sendRecovery(e){return n(this,void 0,void 0,(function*(){return yield this.serverCallStatic("sendRecovery",[e])}))}static recover(e){return n(this,void 0,void 0,(function*(){return yield this.serverCallStatic("recover",[e])}))}static getClientConfig(){return n(this,void 0,void 0,(function*(){return this.clientConfig?this.clientConfig:(this.clientConfigPromise||(this.clientConfigPromise=this.serverCallStatic("getClientConfig",[]).then((e=>(this.clientConfig=e,this.clientConfigPromise=void 0,e)))),yield this.clientConfigPromise)}))}static handleToken(e){let t=null;const r=/(?:(?:^|.*;\s*)TILMELDAUTH\s*=\s*([^;]*).*$)|^.*$/;if(e&&e.headers.has("X-TILMELDAUTH"))t=e.headers.get("X-TILMELDAUTH");else{if("undefined"==typeof document||!document.cookie.match(r))return;t=document.cookie.replace(r,"$1")}if(s!==t)if(null==t||""===t)null!=s&&(this.nymph.setXsrfToken(null),this.nymph.pubsub&&this.nymph.pubsub.setToken(null),s=null);else{const e=t.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),r="undefined"==typeof atob?Buffer.from(e,"base64").toString("binary"):atob(e),n=JSON.parse(r);this.nymph.setXsrfToken(n.xsrfToken),this.nymph.pubsub&&this.nymph.pubsub.setToken(t),s=t}}static on(e,t){const r=e+"Callbacks";if(!this.hasOwnProperty(r))throw new Error("Invalid event type.");return this[r].push(t),()=>this.off(e,t)}static off(e,t){const r=e+"Callbacks";if(!this.hasOwnProperty(r))return!1;const n=this[r].indexOf(t);return n>-1&&this[r].splice(n,1),!0}}t.default=o,o.class="User",o.registerCallbacks=[],o.loginCallbacks=[],o.logoutCallbacks=[]},13:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{a(n.next(e))}catch(e){s(e)}}function l(e){try{a(n.throw(e))}catch(e){s(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}a((n=n.apply(e,t||[])).next())}))},i=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.checkUsername=t.register=t.login=t.getClientConfig=void 0;const o=s(r(178));let l=null,a=null;function c(){return n(this,void 0,void 0,(function*(){return l||(a||(a=o.default.getClientConfig().then((e=>l=e))),yield a)}))}t.getClientConfig=c,t.login=function(e,t){var r;return n(this,void 0,void 0,(function*(){if(""===e)throw new Error("You need to enter a username.");if(""===t)throw new Error("You need to enter a password");try{const r=yield o.default.loginUser({username:e,password:t}),{result:n}=r,s=i(r,["result"]);if(!n)throw new Error(s.message);return s}catch(e){throw new Error(null!==(r=null==e?void 0:e.message)&&void 0!==r?r:"An error occurred.")}}))},t.register=function(e){var t;return n(this,void 0,void 0,(function*(){if(""===e.username)throw new Error("You need to enter a username.");if(!e.usernameVerified)throw new Error("The username you entered is not valid.");if(e.password!==e.password2)throw new Error("Your passwords do not match.");if(""===e.password)throw new Error("You need to enter a password");let r=o.default.factorySync();r.username=e.username;const n=yield c();n.emailUsernames?r.email=e.username:-1!==n.regFields.indexOf("email")&&(r.email=e.email),-1!==n.regFields.indexOf("name")&&(r.nameFirst=e.nameFirst,r.nameLast=e.nameLast),-1!==n.regFields.indexOf("phone")&&(r.phone=e.phone);try{const t=yield r.$register({password:e.password}),{result:n}=t,s=i(t,["result"]);if(!n)throw new Error(s.message);return Object.assign(Object.assign({},s),{user:r})}catch(e){throw new Error(null!==(t=null==e?void 0:e.message)&&void 0!==t?t:"An error occurred.")}}))},t.checkUsername=function(e){var t;return n(this,void 0,void 0,(function*(){let r=o.default.factorySync();r.username=e,(yield c()).emailUsernames&&(r.email=e);try{const e=yield r.$checkUsername(),{result:t}=e,n=i(e,["result"]);if(!t)throw new Error(n.message);return n}catch(e){throw new Error(null!==(t=null==e?void 0:e.message)&&void 0!==t?t:"An error occurred.")}}))}},568:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.User=t.Group=void 0,i(r(848),t);const o=s(r(848));t.Group=o.default,i(r(13),t),i(r(178),t);const l=s(r(178));t.User=l.default},778:t=>{t.exports=e}},r={};return function e(n){var i=r[n];if(void 0!==i)return i.exports;var s=r[n]={exports:{}};return t[n].call(s.exports,s,s.exports,e),s.exports}(568)})()}));
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"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","sources":["webpack://@nymphjs/tilmeld-client/webpack/universalModuleDefinition","webpack://@nymphjs/tilmeld-client/./lib/Group.js","webpack://@nymphjs/tilmeld-client/./lib/User.js","webpack://@nymphjs/tilmeld-client/./lib/helpers.js","webpack://@nymphjs/tilmeld-client/./lib/index.js","webpack://@nymphjs/tilmeld-client/external \"@nymphjs/client\"","webpack://@nymphjs/tilmeld-client/webpack/bootstrap","webpack://@nymphjs/tilmeld-client/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@nymphjs/client\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"@nymphjs/client\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@nymphjs/tilmeld-client\"] = factory(require(\"@nymphjs/client\"));\n\telse\n\t\troot[\"@nymphjs/tilmeld-client\"] = factory(root[\"@nymphjs/client\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__196__) {\nreturn ","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst client_1 = require(\"@nymphjs/client\");\nclass Group extends client_1.Entity {\n constructor(guid) {\n super(guid);\n if (guid == null) {\n this.$data.enabled = true;\n this.$data.abilities = [];\n }\n }\n static factory(guid) {\n const _super = Object.create(null, {\n factory: { get: () => super.factory }\n });\n return __awaiter(this, void 0, void 0, function* () {\n return (yield _super.factory.call(this, guid));\n });\n }\n static factorySync(guid) {\n return super.factorySync(guid);\n }\n $checkGroupname() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkGroupname', [], true);\n });\n }\n $checkEmail() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkEmail', [], true);\n });\n }\n $getAvatar() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getAvatar', [], true);\n });\n }\n $getChildren() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getChildren', [], true);\n });\n }\n $getDescendants(andSelf = false) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getDescendants', [andSelf], true);\n });\n }\n $getLevel() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getLevel', [], true);\n });\n }\n $isDescendant(givenGroup) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$isDescendant', [givenGroup], true);\n });\n }\n static getPrimaryGroups(options, selectors) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield Group.serverCallStatic('getPrimaryGroups', [\n { options, class: Group.class },\n selectors,\n ]);\n });\n }\n static getSecondaryGroups(options, selectors) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield Group.serverCallStatic('getSecondaryGroups', [\n { options, class: Group.class },\n selectors,\n ]);\n });\n }\n}\nexports.default = Group;\nGroup.class = 'Group';\nclient_1.Nymph.setEntityClass(Group.class, Group);\n//# sourceMappingURL=Group.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst client_1 = require(\"@nymphjs/client\");\nlet currentToken = null;\nclass User extends client_1.Entity {\n constructor(guid) {\n super(guid);\n if (guid == null) {\n this.$data.enabled = true;\n this.$data.abilities = [];\n this.$data.groups = [];\n this.$data.inheritAbilities = true;\n }\n }\n static init() {\n if (this.removeNymphResponseListener) {\n this.removeNymphResponseListener();\n }\n this.removeNymphResponseListener = client_1.Nymph.on('response', (response) => User.handleToken(response));\n User.handleToken();\n }\n static factory(guid) {\n const _super = Object.create(null, {\n factory: { get: () => super.factory }\n });\n return __awaiter(this, void 0, void 0, function* () {\n return (yield _super.factory.call(this, guid));\n });\n }\n static factoryUsername(username) {\n return __awaiter(this, void 0, void 0, function* () {\n const entity = new this();\n if (username != null) {\n const entity = yield client_1.Nymph.getEntity({\n class: this,\n }, {\n type: '&',\n ilike: ['username', username.replace(/([\\\\%_])/g, (s) => `\\\\${s}`)],\n });\n if (entity != null) {\n return entity;\n }\n }\n return entity;\n });\n }\n static factorySync(guid) {\n return super.factorySync(guid);\n }\n $checkUsername() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkUsername', [], true);\n });\n }\n $checkEmail() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkEmail', [], true);\n });\n }\n $checkPhone() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkPhone', [], true);\n });\n }\n $getAvatar() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getAvatar', [], true);\n });\n }\n $register(data) {\n return __awaiter(this, void 0, void 0, function* () {\n const response = yield this.$serverCall('$register', [data]);\n if (response.result) {\n for (let i = 0; i < User.registerCallbacks.length; i++) {\n User.registerCallbacks[i] && User.registerCallbacks[i](this);\n }\n }\n if (response.loggedin) {\n User.currentUser = this;\n User.handleToken();\n for (let i = 0; i < User.loginCallbacks.length; i++) {\n User.loginCallbacks[i] && User.loginCallbacks[i](this);\n }\n }\n return response;\n });\n }\n $logout() {\n return __awaiter(this, void 0, void 0, function* () {\n const response = yield this.$serverCall('$logout', []);\n if (response.result) {\n User.currentUser = undefined;\n User.handleToken();\n for (let i = 0; i < User.logoutCallbacks.length; i++) {\n User.logoutCallbacks[i] && User.logoutCallbacks[i](this);\n }\n }\n return response;\n });\n }\n $gatekeeper(ability) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$gatekeeper', [ability], true);\n });\n }\n $changePassword(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$changePassword', [data]);\n });\n }\n static current(returnObjectIfNotExist) {\n return __awaiter(this, void 0, void 0, function* () {\n if (User.currentUser !== undefined) {\n return User.currentUser;\n }\n if (!User.currentUserPromise) {\n User.currentUserPromise = User.serverCallStatic('current', [false]).then((user) => {\n User.currentUser = user !== null && user !== void 0 ? user : undefined;\n User.currentUserPromise = undefined;\n return user;\n });\n }\n yield User.currentUserPromise;\n if (User.currentUser == null) {\n return returnObjectIfNotExist ? User.factorySync() : null;\n }\n return User.currentUser;\n });\n }\n static loginUser(data) {\n return __awaiter(this, void 0, void 0, function* () {\n const response = yield User.serverCallStatic('loginUser', [data]);\n if (response.result) {\n User.currentUser = response.user;\n User.handleToken();\n for (let i = 0; i < User.loginCallbacks.length; i++) {\n User.loginCallbacks[i] && User.loginCallbacks[i](response.user);\n }\n }\n return response;\n });\n }\n static sendRecovery(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield User.serverCallStatic('sendRecovery', [data]);\n });\n }\n static recover(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield User.serverCallStatic('recover', [data]);\n });\n }\n static getClientConfig() {\n return __awaiter(this, void 0, void 0, function* () {\n if (User.clientConfig) {\n return User.clientConfig;\n }\n if (!User.clientConfigPromise) {\n User.clientConfigPromise = User.serverCallStatic('getClientConfig', []).then((config) => {\n User.clientConfig = config;\n User.clientConfigPromise = undefined;\n return config;\n });\n }\n return yield User.clientConfigPromise;\n });\n }\n static handleToken(response) {\n let token = null;\n const authCookiePattern = /(?:(?:^|.*;\\s*)TILMELDAUTH\\s*=\\s*([^;]*).*$)|^.*$/;\n if (response && response.headers.has('X-TILMELDAUTH')) {\n token = response.headers.get('X-TILMELDAUTH');\n }\n else if (typeof document !== 'undefined' &&\n document.cookie.match(authCookiePattern)) {\n token = document.cookie.replace(authCookiePattern, '$1');\n }\n else {\n return;\n }\n if (currentToken !== token) {\n if (token == null || token === '') {\n if (currentToken != null) {\n client_1.Nymph.setXsrfToken(null);\n if (client_1.PubSub.isConfigured()) {\n client_1.PubSub.setToken(null);\n }\n currentToken = null;\n }\n }\n else {\n const base64Url = token.split('.')[1];\n const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');\n const json = typeof atob === 'undefined'\n ? Buffer.from(base64, 'base64').toString('binary')\n : atob(base64);\n const jwt = JSON.parse(json);\n client_1.Nymph.setXsrfToken(jwt.xsrfToken);\n if (client_1.PubSub.isConfigured()) {\n client_1.PubSub.setToken(token);\n }\n currentToken = token;\n }\n }\n }\n static on(event, callback) {\n const prop = (event + 'Callbacks');\n if (!this.hasOwnProperty(prop)) {\n throw new Error('Invalid event type.');\n }\n this[prop].push(callback);\n return () => this.off(event, callback);\n }\n static off(event, callback) {\n const prop = (event + 'Callbacks');\n if (!this.hasOwnProperty(prop)) {\n return false;\n }\n const i = this[prop].indexOf(callback);\n if (i > -1) {\n this[prop].splice(i, 1);\n }\n return true;\n }\n}\nexports.default = User;\nUser.class = 'User';\nUser.registerCallbacks = [];\nUser.loginCallbacks = [];\nUser.logoutCallbacks = [];\nclient_1.Nymph.setEntityClass(User.class, User);\nUser.init();\n//# sourceMappingURL=User.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.checkUsername = exports.register = exports.login = exports.getClientConfig = void 0;\nconst User_1 = __importDefault(require(\"./User\"));\nlet clientConfig = null;\nlet clientConfigPromise = null;\nfunction getClientConfig() {\n return __awaiter(this, void 0, void 0, function* () {\n if (clientConfig) {\n return clientConfig;\n }\n if (!clientConfigPromise) {\n clientConfigPromise = User_1.default.getClientConfig().then((config) => (clientConfig = config));\n }\n return yield clientConfigPromise;\n });\n}\nexports.getClientConfig = getClientConfig;\nfunction login(username, password) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n if (username === '') {\n throw new Error('You need to enter a username.');\n }\n if (password === '') {\n throw new Error('You need to enter a password');\n }\n try {\n const _b = yield User_1.default.loginUser({\n username,\n password,\n }), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return response;\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.login = login;\nfunction register(userDetails) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n if (userDetails.username === '') {\n throw new Error('You need to enter a username.');\n }\n if (!userDetails.usernameVerified) {\n throw new Error('The username you entered is not valid.');\n }\n if (userDetails.password !== userDetails.password2) {\n throw new Error('Your passwords do not match.');\n }\n if (userDetails.password === '') {\n throw new Error('You need to enter a password');\n }\n let user = User_1.default.factorySync();\n user.username = userDetails.username;\n const config = yield getClientConfig();\n if (config.emailUsernames) {\n user.email = userDetails.username;\n }\n else if (config.regFields.indexOf('email') !== -1) {\n user.email = userDetails.email;\n }\n if (config.regFields.indexOf('name') !== -1) {\n user.nameFirst = userDetails.nameFirst;\n user.nameLast = userDetails.nameLast;\n }\n if (config.regFields.indexOf('phone') !== -1) {\n user.phone = userDetails.phone;\n }\n try {\n const _b = yield user.$register({\n password: userDetails.password,\n }), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return Object.assign(Object.assign({}, response), { user });\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.register = register;\nfunction checkUsername(username) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n let user = User_1.default.factorySync();\n user.username = username;\n const config = yield getClientConfig();\n if (config.emailUsernames) {\n user.email = username;\n }\n try {\n const _b = yield user.$checkUsername(), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return response;\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.checkUsername = checkUsername;\n//# sourceMappingURL=helpers.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.User = exports.Group = void 0;\n__exportStar(require(\"./Group\"), exports);\nconst Group_1 = __importDefault(require(\"./Group\"));\nexports.Group = Group_1.default;\n__exportStar(require(\"./helpers\"), exports);\n__exportStar(require(\"./User\"), exports);\nconst User_1 = __importDefault(require(\"./User\"));\nexports.User = User_1.default;\n//# sourceMappingURL=index.js.map","module.exports = __WEBPACK_EXTERNAL_MODULE__196__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(568);\n"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE__196__","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","Object","defineProperty","client_1","Group","Entity","constructor","guid","super","$data","enabled","abilities","_super","create","get","call","factorySync","$checkGroupname","$serverCall","$checkEmail","$getAvatar","$getChildren","$getDescendants","andSelf","$getLevel","$isDescendant","givenGroup","options","selectors","serverCallStatic","class","default","Nymph","setEntityClass","currentToken","User","groups","inheritAbilities","removeNymphResponseListener","on","response","handleToken","username","entity","getEntity","type","ilike","replace","s","$checkUsername","$checkPhone","$register","data","i","registerCallbacks","length","loggedin","currentUser","loginCallbacks","$logout","undefined","logoutCallbacks","$gatekeeper","ability","$changePassword","returnObjectIfNotExist","currentUserPromise","user","clientConfig","clientConfigPromise","config","token","authCookiePattern","headers","has","document","cookie","match","setXsrfToken","PubSub","isConfigured","setToken","base64","split","json","atob","Buffer","from","toString","jwt","JSON","parse","xsrfToken","event","callback","prop","hasOwnProperty","Error","push","off","indexOf","splice","init","__rest","t","p","prototype","getOwnPropertySymbols","propertyIsEnumerable","__importDefault","mod","__esModule","checkUsername","register","login","getClientConfig","User_1","password","_a","_b","loginUser","message","userDetails","usernameVerified","password2","emailUsernames","email","regFields","nameFirst","nameLast","phone","assign","__createBinding","o","m","k","k2","enumerable","__exportStar","Group_1","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"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","sources":["webpack://@nymphjs/tilmeld-client/webpack/universalModuleDefinition","webpack://@nymphjs/tilmeld-client/./lib/Group.js","webpack://@nymphjs/tilmeld-client/./lib/User.js","webpack://@nymphjs/tilmeld-client/./lib/helpers.js","webpack://@nymphjs/tilmeld-client/./lib/index.js","webpack://@nymphjs/tilmeld-client/external umd \"@nymphjs/client\"","webpack://@nymphjs/tilmeld-client/webpack/bootstrap","webpack://@nymphjs/tilmeld-client/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@nymphjs/client\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"@nymphjs/client\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@nymphjs/tilmeld-client\"] = factory(require(\"@nymphjs/client\"));\n\telse\n\t\troot[\"@nymphjs/tilmeld-client\"] = factory(root[\"@nymphjs/client\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__778__) {\nreturn ","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst client_1 = require(\"@nymphjs/client\");\nclass Group extends client_1.Entity {\n constructor(guid) {\n super(guid);\n if (guid == null) {\n this.$data.enabled = true;\n this.$data.abilities = [];\n }\n }\n static factory(guid) {\n const _super = Object.create(null, {\n factory: { get: () => super.factory }\n });\n return __awaiter(this, void 0, void 0, function* () {\n return (yield _super.factory.call(this, guid));\n });\n }\n static factorySync(guid) {\n return super.factorySync(guid);\n }\n $checkGroupname() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkGroupname', [], true);\n });\n }\n $checkEmail() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkEmail', [], true);\n });\n }\n $getAvatar() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getAvatar', [], true);\n });\n }\n $getChildren() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getChildren', [], true);\n });\n }\n $getDescendants(andSelf = false) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getDescendants', [andSelf], true);\n });\n }\n $getLevel() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getLevel', [], true);\n });\n }\n $isDescendant(givenGroup) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$isDescendant', [givenGroup], true);\n });\n }\n static getPrimaryGroups(options, selectors) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.serverCallStatic('getPrimaryGroups', [\n { options, class: this.class },\n selectors,\n ]);\n });\n }\n static getSecondaryGroups(options, selectors) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.serverCallStatic('getSecondaryGroups', [\n { options, class: this.class },\n selectors,\n ]);\n });\n }\n}\nexports.default = Group;\nGroup.class = 'Group';\n//# sourceMappingURL=Group.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst client_1 = require(\"@nymphjs/client\");\nlet currentToken = null;\nclass User extends client_1.Entity {\n constructor(guid) {\n super(guid);\n if (guid == null) {\n this.$data.enabled = true;\n this.$data.abilities = [];\n this.$data.groups = [];\n this.$data.inheritAbilities = true;\n }\n }\n static set nymph(value) {\n this.nymphValue = value;\n if (this.removeNymphResponseListener) {\n this.removeNymphResponseListener();\n }\n this.removeNymphResponseListener = this.nymph.on('response', (response) => this.handleToken(response));\n this.handleToken();\n }\n static get nymph() {\n return this.nymphValue;\n }\n static factory(guid) {\n const _super = Object.create(null, {\n factory: { get: () => super.factory }\n });\n return __awaiter(this, void 0, void 0, function* () {\n return (yield _super.factory.call(this, guid));\n });\n }\n static factoryUsername(username) {\n return __awaiter(this, void 0, void 0, function* () {\n const entity = new this();\n if (username != null) {\n const entity = yield this.nymph.getEntity({\n class: this,\n }, {\n type: '&',\n ilike: ['username', username.replace(/([\\\\%_])/g, (s) => `\\\\${s}`)],\n });\n if (entity != null) {\n return entity;\n }\n }\n return entity;\n });\n }\n static factorySync(guid) {\n return super.factorySync(guid);\n }\n $checkUsername() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkUsername', [], true);\n });\n }\n $checkEmail() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkEmail', [], true);\n });\n }\n $checkPhone() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$checkPhone', [], true);\n });\n }\n $getAvatar() {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$getAvatar', [], true);\n });\n }\n $register(data) {\n return __awaiter(this, void 0, void 0, function* () {\n const UserClass = this.constructor;\n const response = yield this.$serverCall('$register', [data]);\n if (response.result) {\n for (let i = 0; i < UserClass.registerCallbacks.length; i++) {\n UserClass.registerCallbacks[i] && UserClass.registerCallbacks[i](this);\n }\n }\n if (response.loggedin) {\n UserClass.currentUser = this;\n UserClass.handleToken();\n for (let i = 0; i < UserClass.loginCallbacks.length; i++) {\n UserClass.loginCallbacks[i] && UserClass.loginCallbacks[i](this);\n }\n }\n return response;\n });\n }\n $logout() {\n return __awaiter(this, void 0, void 0, function* () {\n const UserClass = this.constructor;\n const response = yield this.$serverCall('$logout', []);\n if (response.result) {\n UserClass.currentUser = undefined;\n UserClass.handleToken();\n for (let i = 0; i < UserClass.logoutCallbacks.length; i++) {\n UserClass.logoutCallbacks[i] && UserClass.logoutCallbacks[i](this);\n }\n }\n return response;\n });\n }\n $gatekeeper(ability) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$gatekeeper', [ability], true);\n });\n }\n $changePassword(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.$serverCall('$changePassword', [data]);\n });\n }\n static current(returnObjectIfNotExist) {\n return __awaiter(this, void 0, void 0, function* () {\n if (this.currentUser !== undefined) {\n return this.currentUser;\n }\n if (!this.currentUserPromise) {\n this.currentUserPromise = this.serverCallStatic('current', [false]).then((user) => {\n this.currentUser = user !== null && user !== void 0 ? user : undefined;\n this.currentUserPromise = undefined;\n return user;\n });\n }\n yield this.currentUserPromise;\n if (this.currentUser == null) {\n return returnObjectIfNotExist ? this.factorySync() : null;\n }\n return this.currentUser;\n });\n }\n static loginUser(data) {\n return __awaiter(this, void 0, void 0, function* () {\n const response = yield this.serverCallStatic('loginUser', [data]);\n if (response.result) {\n this.currentUser = response.user;\n this.handleToken();\n for (let i = 0; i < this.loginCallbacks.length; i++) {\n this.loginCallbacks[i] && this.loginCallbacks[i](response.user);\n }\n }\n return response;\n });\n }\n static sendRecovery(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.serverCallStatic('sendRecovery', [data]);\n });\n }\n static recover(data) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield this.serverCallStatic('recover', [data]);\n });\n }\n static getClientConfig() {\n return __awaiter(this, void 0, void 0, function* () {\n if (this.clientConfig) {\n return this.clientConfig;\n }\n if (!this.clientConfigPromise) {\n this.clientConfigPromise = this.serverCallStatic('getClientConfig', []).then((config) => {\n this.clientConfig = config;\n this.clientConfigPromise = undefined;\n return config;\n });\n }\n return yield this.clientConfigPromise;\n });\n }\n static handleToken(response) {\n let token = null;\n const authCookiePattern = /(?:(?:^|.*;\\s*)TILMELDAUTH\\s*=\\s*([^;]*).*$)|^.*$/;\n if (response && response.headers.has('X-TILMELDAUTH')) {\n token = response.headers.get('X-TILMELDAUTH');\n }\n else if (typeof document !== 'undefined' &&\n document.cookie.match(authCookiePattern)) {\n token = document.cookie.replace(authCookiePattern, '$1');\n }\n else {\n return;\n }\n if (currentToken !== token) {\n if (token == null || token === '') {\n if (currentToken != null) {\n this.nymph.setXsrfToken(null);\n if (this.nymph.pubsub) {\n this.nymph.pubsub.setToken(null);\n }\n currentToken = null;\n }\n }\n else {\n const base64Url = token.split('.')[1];\n const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');\n const json = typeof atob === 'undefined'\n ? Buffer.from(base64, 'base64').toString('binary')\n : atob(base64);\n const jwt = JSON.parse(json);\n this.nymph.setXsrfToken(jwt.xsrfToken);\n if (this.nymph.pubsub) {\n this.nymph.pubsub.setToken(token);\n }\n currentToken = token;\n }\n }\n }\n static on(event, callback) {\n const prop = (event + 'Callbacks');\n if (!this.hasOwnProperty(prop)) {\n throw new Error('Invalid event type.');\n }\n this[prop].push(callback);\n return () => this.off(event, callback);\n }\n static off(event, callback) {\n const prop = (event + 'Callbacks');\n if (!this.hasOwnProperty(prop)) {\n return false;\n }\n const i = this[prop].indexOf(callback);\n if (i > -1) {\n this[prop].splice(i, 1);\n }\n return true;\n }\n}\nexports.default = User;\nUser.class = 'User';\nUser.registerCallbacks = [];\nUser.loginCallbacks = [];\nUser.logoutCallbacks = [];\n//# sourceMappingURL=User.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.checkUsername = exports.register = exports.login = exports.getClientConfig = void 0;\nconst User_1 = __importDefault(require(\"./User\"));\nlet clientConfig = null;\nlet clientConfigPromise = null;\nfunction getClientConfig() {\n return __awaiter(this, void 0, void 0, function* () {\n if (clientConfig) {\n return clientConfig;\n }\n if (!clientConfigPromise) {\n clientConfigPromise = User_1.default.getClientConfig().then((config) => (clientConfig = config));\n }\n return yield clientConfigPromise;\n });\n}\nexports.getClientConfig = getClientConfig;\nfunction login(username, password) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n if (username === '') {\n throw new Error('You need to enter a username.');\n }\n if (password === '') {\n throw new Error('You need to enter a password');\n }\n try {\n const _b = yield User_1.default.loginUser({\n username,\n password,\n }), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return response;\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.login = login;\nfunction register(userDetails) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n if (userDetails.username === '') {\n throw new Error('You need to enter a username.');\n }\n if (!userDetails.usernameVerified) {\n throw new Error('The username you entered is not valid.');\n }\n if (userDetails.password !== userDetails.password2) {\n throw new Error('Your passwords do not match.');\n }\n if (userDetails.password === '') {\n throw new Error('You need to enter a password');\n }\n let user = User_1.default.factorySync();\n user.username = userDetails.username;\n const config = yield getClientConfig();\n if (config.emailUsernames) {\n user.email = userDetails.username;\n }\n else if (config.regFields.indexOf('email') !== -1) {\n user.email = userDetails.email;\n }\n if (config.regFields.indexOf('name') !== -1) {\n user.nameFirst = userDetails.nameFirst;\n user.nameLast = userDetails.nameLast;\n }\n if (config.regFields.indexOf('phone') !== -1) {\n user.phone = userDetails.phone;\n }\n try {\n const _b = yield user.$register({\n password: userDetails.password,\n }), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return Object.assign(Object.assign({}, response), { user });\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.register = register;\nfunction checkUsername(username) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n let user = User_1.default.factorySync();\n user.username = username;\n const config = yield getClientConfig();\n if (config.emailUsernames) {\n user.email = username;\n }\n try {\n const _b = yield user.$checkUsername(), { result } = _b, response = __rest(_b, [\"result\"]);\n if (!result) {\n throw new Error(response.message);\n }\n return response;\n }\n catch (e) {\n throw new Error((_a = e === null || e === void 0 ? void 0 : e.message) !== null && _a !== void 0 ? _a : 'An error occurred.');\n }\n });\n}\nexports.checkUsername = checkUsername;\n//# sourceMappingURL=helpers.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.User = exports.Group = void 0;\n__exportStar(require(\"./Group\"), exports);\nconst Group_1 = __importDefault(require(\"./Group\"));\nexports.Group = Group_1.default;\n__exportStar(require(\"./helpers\"), exports);\n__exportStar(require(\"./User\"), exports);\nconst User_1 = __importDefault(require(\"./User\"));\nexports.User = User_1.default;\n//# sourceMappingURL=index.js.map","module.exports = __WEBPACK_EXTERNAL_MODULE__778__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(568);\n"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE__778__","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","Object","defineProperty","client_1","Group","Entity","constructor","guid","super","$data","enabled","abilities","_super","create","get","call","factorySync","$checkGroupname","$serverCall","$checkEmail","$getAvatar","$getChildren","$getDescendants","andSelf","$getLevel","$isDescendant","givenGroup","options","selectors","serverCallStatic","class","currentToken","User","groups","inheritAbilities","nymphValue","removeNymphResponseListener","nymph","on","response","handleToken","username","entity","getEntity","type","ilike","replace","s","$checkUsername","$checkPhone","$register","data","UserClass","i","registerCallbacks","length","loggedin","currentUser","loginCallbacks","$logout","undefined","logoutCallbacks","$gatekeeper","ability","$changePassword","returnObjectIfNotExist","currentUserPromise","user","clientConfig","clientConfigPromise","config","token","authCookiePattern","headers","has","document","cookie","match","setXsrfToken","pubsub","setToken","base64","split","json","atob","Buffer","from","toString","jwt","JSON","parse","xsrfToken","event","callback","prop","hasOwnProperty","Error","push","off","indexOf","splice","__rest","t","p","prototype","getOwnPropertySymbols","propertyIsEnumerable","__importDefault","mod","__esModule","checkUsername","register","login","getClientConfig","User_1","default","password","_a","_b","loginUser","message","userDetails","usernameVerified","password2","emailUsernames","email","regFields","nameFirst","nameLast","phone","assign","__createBinding","o","m","k","k2","enumerable","__exportStar","Group_1","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
package/lib/Group.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Entity, Options, Selector } from '@nymphjs/client';
2
- import User, { CurrentUserData } from './User';
2
+ import type User from './User';
3
+ import type { CurrentUserData } from './User';
3
4
  export declare type GroupData = {
4
5
  groupname?: string;
5
6
  name?: string;
package/lib/Group.js CHANGED
@@ -66,16 +66,16 @@ class Group extends client_1.Entity {
66
66
  }
67
67
  static getPrimaryGroups(options, selectors) {
68
68
  return __awaiter(this, void 0, void 0, function* () {
69
- return yield Group.serverCallStatic('getPrimaryGroups', [
70
- { options, class: Group.class },
69
+ return yield this.serverCallStatic('getPrimaryGroups', [
70
+ { options, class: this.class },
71
71
  selectors,
72
72
  ]);
73
73
  });
74
74
  }
75
75
  static getSecondaryGroups(options, selectors) {
76
76
  return __awaiter(this, void 0, void 0, function* () {
77
- return yield Group.serverCallStatic('getSecondaryGroups', [
78
- { options, class: Group.class },
77
+ return yield this.serverCallStatic('getSecondaryGroups', [
78
+ { options, class: this.class },
79
79
  selectors,
80
80
  ]);
81
81
  });
@@ -83,5 +83,4 @@ class Group extends client_1.Entity {
83
83
  }
84
84
  exports.default = Group;
85
85
  Group.class = 'Group';
86
- client_1.Nymph.setEntityClass(Group.class, Group);
87
86
  //# sourceMappingURL=Group.js.map
package/lib/Group.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,4CAAmE;AA6DnE,MAAqB,KAAM,SAAQ,eAAiB;IAIlD,YAAY,IAAa;QACvB,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,KAA0B,CAAC,SAAS,GAAG,EAAE,CAAC;SACjD;IACH,CAAC;IAED,MAAM,CAAO,OAAO,CAAC,IAAa;;;;;YAChC,OAAO,CAAC,MAAM,OAAM,OAAO,YAAC,IAAI,CAAC,CAAsB,CAAC;QAC1D,CAAC;KAAA;IAED,MAAM,CAAC,WAAW,CAAC,IAAa;QAC9B,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAsB,CAAC;IACtD,CAAC;IAEY,eAAe;;YAI1B,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;KAAA;IAEY,WAAW;;YACtB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;KAAA;IAEY,UAAU;;YACrB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;KAAA;IAEY,YAAY;;YACvB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IAEY,eAAe,CAC1B,OAAO,GAAG,KAAK;;YAEf,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;KAAA;IAEY,SAAS;;YACpB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACvD,CAAC;KAAA;IAEY,aAAa,CACxB,UAAwC;;YAExC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,CAAC;KAAA;IAEM,MAAM,CAAO,gBAAgB,CAClC,OAAiB,EACjB,SAAsB;;YAEtB,OAAO,MAAM,KAAK,CAAC,gBAAgB,CAAC,kBAAkB,EAAE;gBACtD,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;gBAC/B,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAEM,MAAM,CAAO,kBAAkB,CACpC,OAAiB,EACjB,SAAsB;;YAEtB,OAAO,MAAM,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,EAAE;gBACxD,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;gBAC/B,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;;AA1EH,wBA2EC;AAzEe,WAAK,GAAG,OAAO,CAAC;AA2EhC,cAAK,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,4CAA4D;AA8D5D,MAAqB,KAAM,SAAQ,eAAiB;IAIlD,YAAY,IAAa;QACvB,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,KAA0B,CAAC,SAAS,GAAG,EAAE,CAAC;SACjD;IACH,CAAC;IAED,MAAM,CAAO,OAAO,CAAC,IAAa;;;;;YAChC,OAAO,CAAC,MAAM,OAAM,OAAO,YAAC,IAAI,CAAC,CAAsB,CAAC;QAC1D,CAAC;KAAA;IAED,MAAM,CAAC,WAAW,CAAC,IAAa;QAC9B,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAsB,CAAC;IACtD,CAAC;IAEY,eAAe;;YAI1B,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;KAAA;IAEY,WAAW;;YACtB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;KAAA;IAEY,UAAU;;YACrB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;KAAA;IAEY,YAAY;;YACvB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IAEY,eAAe,CAC1B,OAAO,GAAG,KAAK;;YAEf,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;KAAA;IAEY,SAAS;;YACpB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACvD,CAAC;KAAA;IAEY,aAAa,CACxB,UAAwC;;YAExC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,CAAC;KAAA;IAEM,MAAM,CAAO,gBAAgB,CAClC,OAAiB,EACjB,SAAsB;;YAEtB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE;gBACrD,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;gBAC9B,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAEM,MAAM,CAAO,kBAAkB,CACpC,OAAiB,EACjB,SAAsB;;YAEtB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE;gBACvD,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;gBAC9B,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;;AA1EH,wBA2EC;AAzEe,WAAK,GAAG,OAAO,CAAC"}
package/lib/User.d.ts CHANGED
@@ -1,5 +1,6 @@
1
- import { Entity } from '@nymphjs/client';
2
- import Group, { AdminGroupData, CurrentGroupData } from './Group';
1
+ import { Nymph, Entity } from '@nymphjs/client';
2
+ import type Group from './Group';
3
+ import type { AdminGroupData, CurrentGroupData } from './Group';
3
4
  export declare type EventType = 'register' | 'login' | 'logout';
4
5
  export declare type RegisterCallback = (user: User & CurrentUserData) => void;
5
6
  export declare type LoginCallback = (user: User & CurrentUserData) => void;
@@ -45,6 +46,9 @@ export declare type AdminUserData = CurrentUserData & {
45
46
  passwordTemp?: string;
46
47
  };
47
48
  export default class User extends Entity<UserData> {
49
+ static set nymph(value: Nymph);
50
+ static get nymph(): Nymph;
51
+ private static nymphValue;
48
52
  static class: string;
49
53
  private static registerCallbacks;
50
54
  private static loginCallbacks;
@@ -54,7 +58,6 @@ export default class User extends Entity<UserData> {
54
58
  private static currentUser?;
55
59
  private static currentUserPromise?;
56
60
  private static removeNymphResponseListener?;
57
- static init(): void;
58
61
  constructor(guid?: string);
59
62
  static factory(guid?: string): Promise<User & UserData>;
60
63
  static factoryUsername(username?: string): Promise<User & UserData>;
package/lib/User.js CHANGED
@@ -21,12 +21,16 @@ class User extends client_1.Entity {
21
21
  this.$data.inheritAbilities = true;
22
22
  }
23
23
  }
24
- static init() {
24
+ static set nymph(value) {
25
+ this.nymphValue = value;
25
26
  if (this.removeNymphResponseListener) {
26
27
  this.removeNymphResponseListener();
27
28
  }
28
- this.removeNymphResponseListener = client_1.Nymph.on('response', (response) => User.handleToken(response));
29
- User.handleToken();
29
+ this.removeNymphResponseListener = this.nymph.on('response', (response) => this.handleToken(response));
30
+ this.handleToken();
31
+ }
32
+ static get nymph() {
33
+ return this.nymphValue;
30
34
  }
31
35
  static factory(guid) {
32
36
  const _super = Object.create(null, {
@@ -40,7 +44,7 @@ class User extends client_1.Entity {
40
44
  return __awaiter(this, void 0, void 0, function* () {
41
45
  const entity = new this();
42
46
  if (username != null) {
43
- const entity = yield client_1.Nymph.getEntity({
47
+ const entity = yield this.nymph.getEntity({
44
48
  class: this,
45
49
  }, {
46
50
  type: '&',
@@ -78,17 +82,18 @@ class User extends client_1.Entity {
78
82
  }
79
83
  $register(data) {
80
84
  return __awaiter(this, void 0, void 0, function* () {
85
+ const UserClass = this.constructor;
81
86
  const response = yield this.$serverCall('$register', [data]);
82
87
  if (response.result) {
83
- for (let i = 0; i < User.registerCallbacks.length; i++) {
84
- User.registerCallbacks[i] && User.registerCallbacks[i](this);
88
+ for (let i = 0; i < UserClass.registerCallbacks.length; i++) {
89
+ UserClass.registerCallbacks[i] && UserClass.registerCallbacks[i](this);
85
90
  }
86
91
  }
87
92
  if (response.loggedin) {
88
- User.currentUser = this;
89
- User.handleToken();
90
- for (let i = 0; i < User.loginCallbacks.length; i++) {
91
- User.loginCallbacks[i] && User.loginCallbacks[i](this);
93
+ UserClass.currentUser = this;
94
+ UserClass.handleToken();
95
+ for (let i = 0; i < UserClass.loginCallbacks.length; i++) {
96
+ UserClass.loginCallbacks[i] && UserClass.loginCallbacks[i](this);
92
97
  }
93
98
  }
94
99
  return response;
@@ -96,12 +101,13 @@ class User extends client_1.Entity {
96
101
  }
97
102
  $logout() {
98
103
  return __awaiter(this, void 0, void 0, function* () {
104
+ const UserClass = this.constructor;
99
105
  const response = yield this.$serverCall('$logout', []);
100
106
  if (response.result) {
101
- User.currentUser = undefined;
102
- User.handleToken();
103
- for (let i = 0; i < User.logoutCallbacks.length; i++) {
104
- User.logoutCallbacks[i] && User.logoutCallbacks[i](this);
107
+ UserClass.currentUser = undefined;
108
+ UserClass.handleToken();
109
+ for (let i = 0; i < UserClass.logoutCallbacks.length; i++) {
110
+ UserClass.logoutCallbacks[i] && UserClass.logoutCallbacks[i](this);
105
111
  }
106
112
  }
107
113
  return response;
@@ -119,31 +125,31 @@ class User extends client_1.Entity {
119
125
  }
120
126
  static current(returnObjectIfNotExist) {
121
127
  return __awaiter(this, void 0, void 0, function* () {
122
- if (User.currentUser !== undefined) {
123
- return User.currentUser;
128
+ if (this.currentUser !== undefined) {
129
+ return this.currentUser;
124
130
  }
125
- if (!User.currentUserPromise) {
126
- User.currentUserPromise = User.serverCallStatic('current', [false]).then((user) => {
127
- User.currentUser = user !== null && user !== void 0 ? user : undefined;
128
- User.currentUserPromise = undefined;
131
+ if (!this.currentUserPromise) {
132
+ this.currentUserPromise = this.serverCallStatic('current', [false]).then((user) => {
133
+ this.currentUser = user !== null && user !== void 0 ? user : undefined;
134
+ this.currentUserPromise = undefined;
129
135
  return user;
130
136
  });
131
137
  }
132
- yield User.currentUserPromise;
133
- if (User.currentUser == null) {
134
- return returnObjectIfNotExist ? User.factorySync() : null;
138
+ yield this.currentUserPromise;
139
+ if (this.currentUser == null) {
140
+ return returnObjectIfNotExist ? this.factorySync() : null;
135
141
  }
136
- return User.currentUser;
142
+ return this.currentUser;
137
143
  });
138
144
  }
139
145
  static loginUser(data) {
140
146
  return __awaiter(this, void 0, void 0, function* () {
141
- const response = yield User.serverCallStatic('loginUser', [data]);
147
+ const response = yield this.serverCallStatic('loginUser', [data]);
142
148
  if (response.result) {
143
- User.currentUser = response.user;
144
- User.handleToken();
145
- for (let i = 0; i < User.loginCallbacks.length; i++) {
146
- User.loginCallbacks[i] && User.loginCallbacks[i](response.user);
149
+ this.currentUser = response.user;
150
+ this.handleToken();
151
+ for (let i = 0; i < this.loginCallbacks.length; i++) {
152
+ this.loginCallbacks[i] && this.loginCallbacks[i](response.user);
147
153
  }
148
154
  }
149
155
  return response;
@@ -151,27 +157,27 @@ class User extends client_1.Entity {
151
157
  }
152
158
  static sendRecovery(data) {
153
159
  return __awaiter(this, void 0, void 0, function* () {
154
- return yield User.serverCallStatic('sendRecovery', [data]);
160
+ return yield this.serverCallStatic('sendRecovery', [data]);
155
161
  });
156
162
  }
157
163
  static recover(data) {
158
164
  return __awaiter(this, void 0, void 0, function* () {
159
- return yield User.serverCallStatic('recover', [data]);
165
+ return yield this.serverCallStatic('recover', [data]);
160
166
  });
161
167
  }
162
168
  static getClientConfig() {
163
169
  return __awaiter(this, void 0, void 0, function* () {
164
- if (User.clientConfig) {
165
- return User.clientConfig;
170
+ if (this.clientConfig) {
171
+ return this.clientConfig;
166
172
  }
167
- if (!User.clientConfigPromise) {
168
- User.clientConfigPromise = User.serverCallStatic('getClientConfig', []).then((config) => {
169
- User.clientConfig = config;
170
- User.clientConfigPromise = undefined;
173
+ if (!this.clientConfigPromise) {
174
+ this.clientConfigPromise = this.serverCallStatic('getClientConfig', []).then((config) => {
175
+ this.clientConfig = config;
176
+ this.clientConfigPromise = undefined;
171
177
  return config;
172
178
  });
173
179
  }
174
- return yield User.clientConfigPromise;
180
+ return yield this.clientConfigPromise;
175
181
  });
176
182
  }
177
183
  static handleToken(response) {
@@ -190,9 +196,9 @@ class User extends client_1.Entity {
190
196
  if (currentToken !== token) {
191
197
  if (token == null || token === '') {
192
198
  if (currentToken != null) {
193
- client_1.Nymph.setXsrfToken(null);
194
- if (client_1.PubSub.isConfigured()) {
195
- client_1.PubSub.setToken(null);
199
+ this.nymph.setXsrfToken(null);
200
+ if (this.nymph.pubsub) {
201
+ this.nymph.pubsub.setToken(null);
196
202
  }
197
203
  currentToken = null;
198
204
  }
@@ -204,9 +210,9 @@ class User extends client_1.Entity {
204
210
  ? Buffer.from(base64, 'base64').toString('binary')
205
211
  : atob(base64);
206
212
  const jwt = JSON.parse(json);
207
- client_1.Nymph.setXsrfToken(jwt.xsrfToken);
208
- if (client_1.PubSub.isConfigured()) {
209
- client_1.PubSub.setToken(token);
213
+ this.nymph.setXsrfToken(jwt.xsrfToken);
214
+ if (this.nymph.pubsub) {
215
+ this.nymph.pubsub.setToken(token);
210
216
  }
211
217
  currentToken = token;
212
218
  }
@@ -237,6 +243,4 @@ User.class = 'User';
237
243
  User.registerCallbacks = [];
238
244
  User.loginCallbacks = [];
239
245
  User.logoutCallbacks = [];
240
- client_1.Nymph.setEntityClass(User.class, User);
241
- User.init();
242
246
  //# sourceMappingURL=User.js.map
package/lib/User.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../src/User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../src/User.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nymphjs/tilmeld-client",
3
- "version": "1.0.0-alpha.2",
3
+ "version": "1.0.0-alpha.20",
4
4
  "description": "NymphJS - Tilmeld Client",
5
5
  "browser": "dist/index.js",
6
6
  "main": "lib/index.js",
@@ -37,16 +37,16 @@
37
37
  "license": "Apache-2.0",
38
38
  "devDependencies": {
39
39
  "@tsconfig/recommended": "^1.0.1",
40
- "@types/jest": "^27.0.1",
41
- "jest": "^27.0.6",
42
- "ts-jest": "^27.0.5",
43
- "ts-loader": "^9.2.5",
44
- "typescript": "^4.3.5",
45
- "webpack": "^5.51.1",
46
- "webpack-cli": "^4.8.0"
40
+ "@types/jest": "^27.0.2",
41
+ "jest": "^27.3.1",
42
+ "ts-jest": "^27.0.7",
43
+ "ts-loader": "^9.2.6",
44
+ "typescript": "^4.5.2",
45
+ "webpack": "^5.64.1",
46
+ "webpack-cli": "^4.9.1"
47
47
  },
48
48
  "dependencies": {
49
- "@nymphjs/client": "^1.0.0-alpha.2"
49
+ "@nymphjs/client": "^1.0.0-alpha.20"
50
50
  },
51
- "gitHead": "9596354bffaa484f3002f3063f0963f6261040be"
51
+ "gitHead": "4191b5824ea6ef71557f2357a30069d5d4e98a89"
52
52
  }
package/src/Group.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { Nymph, Entity, Options, Selector } from '@nymphjs/client';
1
+ import { Entity, Options, Selector } from '@nymphjs/client';
2
2
 
3
- import User, { CurrentUserData } from './User';
3
+ import type User from './User';
4
+ import type { CurrentUserData } from './User';
4
5
 
5
6
  export type GroupData = {
6
7
  /**
@@ -119,8 +120,8 @@ export default class Group extends Entity<GroupData> {
119
120
  options?: Options,
120
121
  selectors?: Selector[]
121
122
  ): Promise<(Group & GroupData)[]> {
122
- return await Group.serverCallStatic('getPrimaryGroups', [
123
- { options, class: Group.class },
123
+ return await this.serverCallStatic('getPrimaryGroups', [
124
+ { options, class: this.class },
124
125
  selectors,
125
126
  ]);
126
127
  }
@@ -129,11 +130,9 @@ export default class Group extends Entity<GroupData> {
129
130
  options?: Options,
130
131
  selectors?: Selector[]
131
132
  ): Promise<(Group & GroupData)[]> {
132
- return await Group.serverCallStatic('getSecondaryGroups', [
133
- { options, class: Group.class },
133
+ return await this.serverCallStatic('getSecondaryGroups', [
134
+ { options, class: this.class },
134
135
  selectors,
135
136
  ]);
136
137
  }
137
138
  }
138
-
139
- Nymph.setEntityClass(Group.class, Group);
package/src/User.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { Nymph, Entity, PubSub } from '@nymphjs/client';
1
+ import { Nymph, Entity } from '@nymphjs/client';
2
2
 
3
- import Group, { AdminGroupData, CurrentGroupData } from './Group';
3
+ import type Group from './Group';
4
+ import type { AdminGroupData, CurrentGroupData } from './Group';
4
5
 
5
6
  export type EventType = 'register' | 'login' | 'logout';
6
7
  export type RegisterCallback = (user: User & CurrentUserData) => void;
@@ -127,6 +128,24 @@ export type AdminUserData = CurrentUserData & {
127
128
  let currentToken: string | null = null;
128
129
 
129
130
  export default class User extends Entity<UserData> {
131
+ /**
132
+ * Adds listeners to Nymph to handle authentication changes.
133
+ */
134
+ public static set nymph(value: Nymph) {
135
+ this.nymphValue = value;
136
+
137
+ if (this.removeNymphResponseListener) {
138
+ this.removeNymphResponseListener();
139
+ }
140
+ this.removeNymphResponseListener = this.nymph.on('response', (response) =>
141
+ this.handleToken(response)
142
+ );
143
+ this.handleToken();
144
+ }
145
+ public static get nymph() {
146
+ return this.nymphValue;
147
+ }
148
+ private static nymphValue: Nymph;
130
149
  // The name of the server class
131
150
  public static class = 'User';
132
151
  private static registerCallbacks: RegisterCallback[] = [];
@@ -138,20 +157,6 @@ export default class User extends Entity<UserData> {
138
157
  private static currentUserPromise?: Promise<(User & CurrentUserData) | null>;
139
158
  private static removeNymphResponseListener?: () => void;
140
159
 
141
- /**
142
- * No need to call this function yourself. It is called when the class is
143
- * loaded. It adds listeners to Nymph to handle authentication changes.
144
- */
145
- public static init() {
146
- if (this.removeNymphResponseListener) {
147
- this.removeNymphResponseListener();
148
- }
149
- this.removeNymphResponseListener = Nymph.on('response', (response) =>
150
- User.handleToken(response)
151
- );
152
- User.handleToken();
153
- }
154
-
155
160
  constructor(guid?: string) {
156
161
  super(guid);
157
162
 
@@ -170,7 +175,7 @@ export default class User extends Entity<UserData> {
170
175
  static async factoryUsername(username?: string): Promise<User & UserData> {
171
176
  const entity = new this();
172
177
  if (username != null) {
173
- const entity = await Nymph.getEntity(
178
+ const entity = await this.nymph.getEntity(
174
179
  {
175
180
  class: this,
176
181
  },
@@ -218,29 +223,31 @@ export default class User extends Entity<UserData> {
218
223
  public async $register(data: {
219
224
  password: string;
220
225
  }): Promise<{ result: boolean; loggedin: boolean; message: string }> {
226
+ const UserClass = this.constructor as typeof User;
221
227
  const response = await this.$serverCall('$register', [data]);
222
228
  if (response.result) {
223
- for (let i = 0; i < User.registerCallbacks.length; i++) {
224
- User.registerCallbacks[i] && User.registerCallbacks[i](this);
229
+ for (let i = 0; i < UserClass.registerCallbacks.length; i++) {
230
+ UserClass.registerCallbacks[i] && UserClass.registerCallbacks[i](this);
225
231
  }
226
232
  }
227
233
  if (response.loggedin) {
228
- User.currentUser = this;
229
- User.handleToken();
230
- for (let i = 0; i < User.loginCallbacks.length; i++) {
231
- User.loginCallbacks[i] && User.loginCallbacks[i](this);
234
+ UserClass.currentUser = this;
235
+ UserClass.handleToken();
236
+ for (let i = 0; i < UserClass.loginCallbacks.length; i++) {
237
+ UserClass.loginCallbacks[i] && UserClass.loginCallbacks[i](this);
232
238
  }
233
239
  }
234
240
  return response;
235
241
  }
236
242
 
237
243
  public async $logout(): Promise<{ result: boolean; message: string }> {
244
+ const UserClass = this.constructor as typeof User;
238
245
  const response = await this.$serverCall('$logout', []);
239
246
  if (response.result) {
240
- User.currentUser = undefined;
241
- User.handleToken();
242
- for (let i = 0; i < User.logoutCallbacks.length; i++) {
243
- User.logoutCallbacks[i] && User.logoutCallbacks[i](this);
247
+ UserClass.currentUser = undefined;
248
+ UserClass.handleToken();
249
+ for (let i = 0; i < UserClass.logoutCallbacks.length; i++) {
250
+ UserClass.logoutCallbacks[i] && UserClass.logoutCallbacks[i](this);
244
251
  }
245
252
  }
246
253
  return response;
@@ -266,23 +273,23 @@ export default class User extends Entity<UserData> {
266
273
  public static async current(
267
274
  returnObjectIfNotExist?: boolean
268
275
  ): Promise<(User & CurrentUserData) | null> {
269
- if (User.currentUser !== undefined) {
270
- return User.currentUser;
276
+ if (this.currentUser !== undefined) {
277
+ return this.currentUser;
271
278
  }
272
- if (!User.currentUserPromise) {
273
- User.currentUserPromise = User.serverCallStatic('current', [false]).then(
279
+ if (!this.currentUserPromise) {
280
+ this.currentUserPromise = this.serverCallStatic('current', [false]).then(
274
281
  (user: (User & CurrentUserData) | null) => {
275
- User.currentUser = user ?? undefined;
276
- User.currentUserPromise = undefined;
282
+ this.currentUser = user ?? undefined;
283
+ this.currentUserPromise = undefined;
277
284
  return user;
278
285
  }
279
286
  );
280
287
  }
281
- await User.currentUserPromise;
282
- if (User.currentUser == null) {
283
- return returnObjectIfNotExist ? User.factorySync() : null;
288
+ await this.currentUserPromise;
289
+ if (this.currentUser == null) {
290
+ return returnObjectIfNotExist ? this.factorySync() : null;
284
291
  }
285
- return User.currentUser;
292
+ return this.currentUser;
286
293
  }
287
294
 
288
295
  public static async loginUser(data: {
@@ -293,12 +300,12 @@ export default class User extends Entity<UserData> {
293
300
  message: string;
294
301
  user?: User & CurrentUserData;
295
302
  }> {
296
- const response = await User.serverCallStatic('loginUser', [data]);
303
+ const response = await this.serverCallStatic('loginUser', [data]);
297
304
  if (response.result) {
298
- User.currentUser = response.user;
299
- User.handleToken();
300
- for (let i = 0; i < User.loginCallbacks.length; i++) {
301
- User.loginCallbacks[i] && User.loginCallbacks[i](response.user);
305
+ this.currentUser = response.user;
306
+ this.handleToken();
307
+ for (let i = 0; i < this.loginCallbacks.length; i++) {
308
+ this.loginCallbacks[i] && this.loginCallbacks[i](response.user);
302
309
  }
303
310
  }
304
311
  return response;
@@ -308,7 +315,7 @@ export default class User extends Entity<UserData> {
308
315
  recoveryType: 'username' | 'password';
309
316
  account: string;
310
317
  }): Promise<{ result: boolean; message: string }> {
311
- return await User.serverCallStatic('sendRecovery', [data]);
318
+ return await this.serverCallStatic('sendRecovery', [data]);
312
319
  }
313
320
 
314
321
  public static async recover(data: {
@@ -316,24 +323,24 @@ export default class User extends Entity<UserData> {
316
323
  secret: string;
317
324
  password: string;
318
325
  }): Promise<{ result: boolean; message: string }> {
319
- return await User.serverCallStatic('recover', [data]);
326
+ return await this.serverCallStatic('recover', [data]);
320
327
  }
321
328
 
322
329
  public static async getClientConfig(): Promise<ClientConfig> {
323
- if (User.clientConfig) {
324
- return User.clientConfig;
330
+ if (this.clientConfig) {
331
+ return this.clientConfig;
325
332
  }
326
- if (!User.clientConfigPromise) {
327
- User.clientConfigPromise = User.serverCallStatic(
333
+ if (!this.clientConfigPromise) {
334
+ this.clientConfigPromise = this.serverCallStatic(
328
335
  'getClientConfig',
329
336
  []
330
337
  ).then((config) => {
331
- User.clientConfig = config;
332
- User.clientConfigPromise = undefined;
338
+ this.clientConfig = config;
339
+ this.clientConfigPromise = undefined;
333
340
  return config;
334
341
  });
335
342
  }
336
- return await User.clientConfigPromise;
343
+ return await this.clientConfigPromise;
337
344
  }
338
345
 
339
346
  private static handleToken(response?: Response) {
@@ -353,9 +360,9 @@ export default class User extends Entity<UserData> {
353
360
  if (currentToken !== token) {
354
361
  if (token == null || token === '') {
355
362
  if (currentToken != null) {
356
- Nymph.setXsrfToken(null);
357
- if (PubSub.isConfigured()) {
358
- PubSub.setToken(null);
363
+ this.nymph.setXsrfToken(null);
364
+ if (this.nymph.pubsub) {
365
+ this.nymph.pubsub.setToken(null);
359
366
  }
360
367
  currentToken = null;
361
368
  }
@@ -367,9 +374,9 @@ export default class User extends Entity<UserData> {
367
374
  ? Buffer.from(base64, 'base64').toString('binary') // node
368
375
  : atob(base64); // browser
369
376
  const jwt = JSON.parse(json);
370
- Nymph.setXsrfToken(jwt.xsrfToken);
371
- if (PubSub.isConfigured()) {
372
- PubSub.setToken(token);
377
+ this.nymph.setXsrfToken(jwt.xsrfToken);
378
+ if (this.nymph.pubsub) {
379
+ this.nymph.pubsub.setToken(token);
373
380
  }
374
381
  currentToken = token;
375
382
  }
@@ -430,7 +437,3 @@ export default class User extends Entity<UserData> {
430
437
  return true;
431
438
  }
432
439
  }
433
-
434
- Nymph.setEntityClass(User.class, User);
435
-
436
- User.init();