@olenbetong/appframe-core 1.2.2 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -655,7 +655,7 @@ function saveSettings(setting, value, article) {
655
655
  }
656
656
 
657
657
  // src/index.ts
658
- var version = "1.2.2";
658
+ var version = "1.2.3";
659
659
  export {
660
660
  SessionHandler,
661
661
  UserSession,
@@ -44,5 +44,5 @@ return s;
44
44
  </div>
45
45
  </div>
46
46
  </div>
47
- `;let o=af.userSession.login?x.messages.relog:x.messages.login,i=n.querySelector(".message"),a=n.querySelector(".alert-warning"),l=n.querySelector("input[type=text]"),s=n.querySelector(".sign-in"),c=n.querySelector("input[type=password]");if(i!==null&&l!==null&&a!==null&&l!==null&&s!==null&&c!==null){i.innerText=y(o),l.value=af.userSession.login||"",l.disabled=!!af.userSession.login,l.readOnly=!!af.userSession.login,document.body.appendChild(n);let d=async()=>{c.disabled=!0;let u=new Request("/login",{body:JSON.stringify({username:l.value,password:c.value,remember:!1}),headers:{Accept:"application/json","Content-Type":"application/json; charset=utf-8","X-Requested-With":"XMLHttpRequest"},method:"POST"});try{let f=await(await fetch(u)).json();if(f.success)document.body.removeChild(n),this.showingDialog=!1,this.eventHandler.emit("onAuthenticated"),a.parentNode&&(a.parentNode.style.display="none");else throw new Error(f.error)}catch(p){if(p&&typeof p=="object"){let f=p;c.disabled=!1,c.classList.toggle("invalid",!0),c.value="",c.focus(),a.innerText=f.message?f.message:String(f),a.parentNode&&(a.parentNode.style.display="initial")}}};s.addEventListener("click",d),c.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),c.addEventListener("change",u=>{u.key==="Enter"&&d()}),l.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),l.addEventListener("change",u=>{u.key==="Enter"&&d()}),c.focus()}}}attachEvent(e,r){return this.eventHandler.on(e,r)}detachEvent(e,r){return this.eventHandler.off(e,r)}},g=x;g.messages={login:"Log in",relog:"Session expired - log in"};var v=class extends g{constructor(r){super();this.decimalSeparator=".";this.groupSeparator=null;this.shortDateFormat="dd.MM.yyyy";this.login=null;this.isDeveloper=!1;this.formats={},Object.assign(this,r)}};function V(t,e){if(t==="")return null;if(e==="number"){let r=Number(t);return isNaN(r)?void 0:r}else if(["date","datetime","time"].includes(e)){let r=new Date(t);return isNaN(r.getTime())?void 0:r}else{if(e==="boolean")return t.toLowerCase()==="true";if(e==="bigint")return BigInt(t)}return t}function N(t,e={}){var o;let r=new FormData(t),n={};for(let i of r.entries()){let a=i[0],l=(o=e==null?void 0:e[a])!=null?o:"string",s=V(i[1],l);n.hasOwnProperty(a)?Array.isArray(n[a])?n[a].push(s):n[a]=[n[a],s]:n[a]=s}return n}function X(t,e){let r=e.getFields(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return N(t,n)}function Q(t,e){let r=e.getParameters(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return N(t,n)}function F(t){return`${t||af.article.id}.${af.userSession.login}`}function Re(t,e){if(!(af!=null&&af.userSession))return null;let r=F(e),n=JSON.parse(localStorage.getItem(r)||"{}");return t?n[t]||null:n}function Ne(t,e,r){if(!(af!=null&&af.userSession))return;let n=F(r),o=JSON.parse(localStorage.getItem(n)||"{}");typeof e!="undefined"?o[t]=e:o=t,localStorage.setItem(n,JSON.stringify(o))}var Ae="1.2.2";export{g as SessionHandler,v as UserSession,T as downloadBlob,_ as downloadRequest,ae as exportOptionsFromDataObject,D as expose,X as formDataToDataObjectRecord,N as formDataToObject,Q as formDataToProcedureParameters,J as getDataObjectReportRequest,y as getLocalizedString,Re as getSettings,G as localStorage,O as mitt,se as openDataObjectReport,Ne as saveSettings,Ae as version};
47
+ `;let o=af.userSession.login?x.messages.relog:x.messages.login,i=n.querySelector(".message"),a=n.querySelector(".alert-warning"),l=n.querySelector("input[type=text]"),s=n.querySelector(".sign-in"),c=n.querySelector("input[type=password]");if(i!==null&&l!==null&&a!==null&&l!==null&&s!==null&&c!==null){i.innerText=y(o),l.value=af.userSession.login||"",l.disabled=!!af.userSession.login,l.readOnly=!!af.userSession.login,document.body.appendChild(n);let d=async()=>{c.disabled=!0;let u=new Request("/login",{body:JSON.stringify({username:l.value,password:c.value,remember:!1}),headers:{Accept:"application/json","Content-Type":"application/json; charset=utf-8","X-Requested-With":"XMLHttpRequest"},method:"POST"});try{let f=await(await fetch(u)).json();if(f.success)document.body.removeChild(n),this.showingDialog=!1,this.eventHandler.emit("onAuthenticated"),a.parentNode&&(a.parentNode.style.display="none");else throw new Error(f.error)}catch(p){if(p&&typeof p=="object"){let f=p;c.disabled=!1,c.classList.toggle("invalid",!0),c.value="",c.focus(),a.innerText=f.message?f.message:String(f),a.parentNode&&(a.parentNode.style.display="initial")}}};s.addEventListener("click",d),c.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),c.addEventListener("change",u=>{u.key==="Enter"&&d()}),l.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),l.addEventListener("change",u=>{u.key==="Enter"&&d()}),c.focus()}}}attachEvent(e,r){return this.eventHandler.on(e,r)}detachEvent(e,r){return this.eventHandler.off(e,r)}},g=x;g.messages={login:"Log in",relog:"Session expired - log in"};var v=class extends g{constructor(r){super();this.decimalSeparator=".";this.groupSeparator=null;this.shortDateFormat="dd.MM.yyyy";this.login=null;this.isDeveloper=!1;this.formats={},Object.assign(this,r)}};function V(t,e){if(t==="")return null;if(e==="number"){let r=Number(t);return isNaN(r)?void 0:r}else if(["date","datetime","time"].includes(e)){let r=new Date(t);return isNaN(r.getTime())?void 0:r}else{if(e==="boolean")return t.toLowerCase()==="true";if(e==="bigint")return BigInt(t)}return t}function N(t,e={}){var o;let r=new FormData(t),n={};for(let i of r.entries()){let a=i[0],l=(o=e==null?void 0:e[a])!=null?o:"string",s=V(i[1],l);n.hasOwnProperty(a)?Array.isArray(n[a])?n[a].push(s):n[a]=[n[a],s]:n[a]=s}return n}function X(t,e){let r=e.getFields(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return N(t,n)}function Q(t,e){let r=e.getParameters(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return N(t,n)}function F(t){return`${t||af.article.id}.${af.userSession.login}`}function Re(t,e){if(!(af!=null&&af.userSession))return null;let r=F(e),n=JSON.parse(localStorage.getItem(r)||"{}");return t?n[t]||null:n}function Ne(t,e,r){if(!(af!=null&&af.userSession))return;let n=F(r),o=JSON.parse(localStorage.getItem(n)||"{}");typeof e!="undefined"?o[t]=e:o=t,localStorage.setItem(n,JSON.stringify(o))}var Ae="1.2.3";export{g as SessionHandler,v as UserSession,T as downloadBlob,_ as downloadRequest,ae as exportOptionsFromDataObject,D as expose,X as formDataToDataObjectRecord,N as formDataToObject,Q as formDataToProcedureParameters,J as getDataObjectReportRequest,y as getLocalizedString,Re as getSettings,G as localStorage,O as mitt,se as openDataObjectReport,Ne as saveSettings,Ae as version};
48
48
  //# sourceMappingURL=af.common.min.js.map
@@ -695,6 +695,6 @@ return s;
695
695
  }
696
696
 
697
697
  // src/index.ts
698
- var version = "1.2.2";
698
+ var version = "1.2.3";
699
699
  return __toCommonJS(src_exports);
700
700
  })();
@@ -44,5 +44,5 @@ return s;
44
44
  </div>
45
45
  </div>
46
46
  </div>
47
- `;let o=af.userSession.login?j.messages.relog:j.messages.login,i=n.querySelector(".message"),a=n.querySelector(".alert-warning"),l=n.querySelector("input[type=text]"),s=n.querySelector(".sign-in"),c=n.querySelector("input[type=password]");if(i!==null&&l!==null&&a!==null&&l!==null&&s!==null&&c!==null){i.innerText=m(o),l.value=af.userSession.login||"",l.disabled=!!af.userSession.login,l.readOnly=!!af.userSession.login,document.body.appendChild(n);let d=async()=>{c.disabled=!0;let u=new Request("/login",{body:JSON.stringify({username:l.value,password:c.value,remember:!1}),headers:{Accept:"application/json","Content-Type":"application/json; charset=utf-8","X-Requested-With":"XMLHttpRequest"},method:"POST"});try{let f=await(await fetch(u)).json();if(f.success)document.body.removeChild(n),this.showingDialog=!1,this.eventHandler.emit("onAuthenticated"),a.parentNode&&(a.parentNode.style.display="none");else throw new Error(f.error)}catch(g){if(g&&typeof g=="object"){let f=g;c.disabled=!1,c.classList.toggle("invalid",!0),c.value="",c.focus(),a.innerText=f.message?f.message:String(f),a.parentNode&&(a.parentNode.style.display="initial")}}};s.addEventListener("click",d),c.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),c.addEventListener("change",u=>{u.key==="Enter"&&d()}),l.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),l.addEventListener("change",u=>{u.key==="Enter"&&d()}),c.focus()}}}attachEvent(e,r){return this.eventHandler.on(e,r)}detachEvent(e,r){return this.eventHandler.off(e,r)}},p=j;p.messages={login:"Log in",relog:"Session expired - log in"};var b=class extends p{constructor(r){super();this.decimalSeparator=".";this.groupSeparator=null;this.shortDateFormat="dd.MM.yyyy";this.login=null;this.isDeveloper=!1;this.formats={},Object.assign(this,r)}};function ae(t,e){if(t==="")return null;if(e==="number"){let r=Number(t);return isNaN(r)?void 0:r}else if(["date","datetime","time"].includes(e)){let r=new Date(t);return isNaN(r.getTime())?void 0:r}else{if(e==="boolean")return t.toLowerCase()==="true";if(e==="bigint")return BigInt(t)}return t}function L(t,e={}){var o;let r=new FormData(t),n={};for(let i of r.entries()){let a=i[0],l=(o=e==null?void 0:e[a])!=null?o:"string",s=ae(i[1],l);n.hasOwnProperty(a)?Array.isArray(n[a])?n[a].push(s):n[a]=[n[a],s]:n[a]=s}return n}function J(t,e){let r=e.getFields(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return L(t,n)}function W(t,e){let r=e.getParameters(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return L(t,n)}function Z(t){return`${t||af.article.id}.${af.userSession.login}`}function se(t,e){if(!(af!=null&&af.userSession))return null;let r=Z(e),n=JSON.parse(localStorage.getItem(r)||"{}");return t?n[t]||null:n}function ie(t,e,r){if(!(af!=null&&af.userSession))return;let n=Z(r),o=JSON.parse(localStorage.getItem(n)||"{}");typeof e!="undefined"?o[t]=e:o=t,localStorage.setItem(n,JSON.stringify(o))}var le="1.2.2";return Y(ce);})();
47
+ `;let o=af.userSession.login?j.messages.relog:j.messages.login,i=n.querySelector(".message"),a=n.querySelector(".alert-warning"),l=n.querySelector("input[type=text]"),s=n.querySelector(".sign-in"),c=n.querySelector("input[type=password]");if(i!==null&&l!==null&&a!==null&&l!==null&&s!==null&&c!==null){i.innerText=m(o),l.value=af.userSession.login||"",l.disabled=!!af.userSession.login,l.readOnly=!!af.userSession.login,document.body.appendChild(n);let d=async()=>{c.disabled=!0;let u=new Request("/login",{body:JSON.stringify({username:l.value,password:c.value,remember:!1}),headers:{Accept:"application/json","Content-Type":"application/json; charset=utf-8","X-Requested-With":"XMLHttpRequest"},method:"POST"});try{let f=await(await fetch(u)).json();if(f.success)document.body.removeChild(n),this.showingDialog=!1,this.eventHandler.emit("onAuthenticated"),a.parentNode&&(a.parentNode.style.display="none");else throw new Error(f.error)}catch(g){if(g&&typeof g=="object"){let f=g;c.disabled=!1,c.classList.toggle("invalid",!0),c.value="",c.focus(),a.innerText=f.message?f.message:String(f),a.parentNode&&(a.parentNode.style.display="initial")}}};s.addEventListener("click",d),c.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),c.addEventListener("change",u=>{u.key==="Enter"&&d()}),l.addEventListener("keyup",u=>{u.key==="Enter"&&d()}),l.addEventListener("change",u=>{u.key==="Enter"&&d()}),c.focus()}}}attachEvent(e,r){return this.eventHandler.on(e,r)}detachEvent(e,r){return this.eventHandler.off(e,r)}},p=j;p.messages={login:"Log in",relog:"Session expired - log in"};var b=class extends p{constructor(r){super();this.decimalSeparator=".";this.groupSeparator=null;this.shortDateFormat="dd.MM.yyyy";this.login=null;this.isDeveloper=!1;this.formats={},Object.assign(this,r)}};function ae(t,e){if(t==="")return null;if(e==="number"){let r=Number(t);return isNaN(r)?void 0:r}else if(["date","datetime","time"].includes(e)){let r=new Date(t);return isNaN(r.getTime())?void 0:r}else{if(e==="boolean")return t.toLowerCase()==="true";if(e==="bigint")return BigInt(t)}return t}function L(t,e={}){var o;let r=new FormData(t),n={};for(let i of r.entries()){let a=i[0],l=(o=e==null?void 0:e[a])!=null?o:"string",s=ae(i[1],l);n.hasOwnProperty(a)?Array.isArray(n[a])?n[a].push(s):n[a]=[n[a],s]:n[a]=s}return n}function J(t,e){let r=e.getFields(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return L(t,n)}function W(t,e){let r=e.getParameters(),n=Object.fromEntries(r.map(o=>[o.name,o.type]));return L(t,n)}function Z(t){return`${t||af.article.id}.${af.userSession.login}`}function se(t,e){if(!(af!=null&&af.userSession))return null;let r=Z(e),n=JSON.parse(localStorage.getItem(r)||"{}");return t?n[t]||null:n}function ie(t,e,r){if(!(af!=null&&af.userSession))return;let n=Z(r),o=JSON.parse(localStorage.getItem(n)||"{}");typeof e!="undefined"?o[t]=e:o=t,localStorage.setItem(n,JSON.stringify(o))}var le="1.2.3";return Y(ce);})();
48
48
  //# sourceMappingURL=af.common.min.js.map
package/es/index.js CHANGED
@@ -9,4 +9,4 @@ export { default as SessionHandler } from "./SessionHandler.js";
9
9
  export { default as UserSession } from "./UserSession.js";
10
10
  export { formDataToDataObjectRecord, formDataToObject, formDataToProcedureParameters } from "./formDataToObject.js";
11
11
  export * from "./settings.js";
12
- export const version = "1.2.2";
12
+ export const version = "1.2.3";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@olenbetong/appframe-core",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "Javascript libraries to utilize the Appframe framework",
5
5
  "type": "module",
6
6
  "main": "./es/index.js",
@@ -16,6 +16,11 @@
16
16
  "build:esbuild": "node --loader ts-node/esm.mjs ../../shared/esbuild.ts",
17
17
  "build:tsc": " rm -rf ./es && tsc && node ./scripts/replace-version.js"
18
18
  },
19
+ "files": [
20
+ "dist",
21
+ "es",
22
+ "src"
23
+ ],
19
24
  "author": "Bjørnar Vister Hansen <bvh@olenbetong.no>",
20
25
  "repository": {
21
26
  "type": "git",
@@ -35,5 +40,5 @@
35
40
  "devDependencies": {
36
41
  "chalk": "^5.0.1"
37
42
  },
38
- "gitHead": "110516c6cd639ad0a5d593be42bddcfba5a60cc6"
43
+ "gitHead": "a8197305a09e60e98ce5199b015124b056b4b830"
39
44
  }
@@ -1,5 +0,0 @@
1
- import { readFile } from "node:fs/promises";
2
-
3
- export default async function importJson(url) {
4
- return JSON.parse(await readFile(new URL(url, import.meta.url)));
5
- }
@@ -1,37 +0,0 @@
1
- import chalk from "chalk";
2
- import fs from "node:fs/promises";
3
- import { resolve } from "node:path";
4
- import importJson from "./import-json.js";
5
-
6
- async function* getFiles(dir) {
7
- const dirents = await fs.readdir(dir, { withFileTypes: true });
8
- for (const dirent of dirents) {
9
- const res = resolve(dir, dirent.name);
10
- if (dirent.isDirectory()) {
11
- yield* getFiles(res);
12
- } else {
13
- yield res;
14
- }
15
- }
16
- }
17
-
18
- try {
19
- let packageConfig = await importJson("../package.json");
20
- for await (let file of getFiles("./es")) {
21
- if (file.endsWith(".js")) {
22
- let fileContent = await fs.readFile(file, "utf-8");
23
- let result = fileContent
24
- .replace("__VERSION__", `"${packageConfig.version}"`)
25
- .replace("process.env.NODE_ENV", '"production"');
26
- if (result !== fileContent) {
27
- await fs.writeFile(file, result, "utf-8");
28
- console.log(file.substring(file.indexOf("/es/")));
29
- } else {
30
- console.log(chalk.dim(file.substring(file.indexOf("/es/"))));
31
- }
32
- }
33
- }
34
- } catch (error) {
35
- console.error(error.message);
36
- process.exit(1);
37
- }
package/tsconfig.json DELETED
@@ -1,26 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2021",
4
- "module": "esnext",
5
- "rootDir": "./src",
6
- "strict": true,
7
- "strictNullChecks": true,
8
- "baseUrl": "./",
9
- "esModuleInterop": true,
10
- "moduleResolution": "node",
11
- "resolveJsonModule": true,
12
- "declaration": true,
13
- "outDir": "./es",
14
- "skipLibCheck": true
15
- },
16
- "exclude": [
17
- "test",
18
- "dist",
19
- "es",
20
- "node_modules",
21
- "**/*.test.ts",
22
- "__tests__/*",
23
- "scripts/*"
24
- ],
25
- "include": ["./src/*"]
26
- }