@ancon/wildcat-utils 1.12.0 → 1.14.0

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/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./shared/enums.js"),r=require("./shared/isWithinFlag.js"),i=require("./shared/generateId.js"),t=require("./outlet/getListOutletOpeningHoursTable.js"),n=require("./versioning/isVersionALessThanB.js"),s=require("./versioning/cleanVersionString.js"),o=require("./api/getUrlAndParams.js"),g=require("./api/getEndpointWithVersion.js"),l=require("./string/slugify.js"),u=require("./color/lighten.js"),a=require("./color/brighten.js"),c=require("./color/darken.js"),d=require("./user/getFullName.js"),q=require("./user/getFullAddressString.js"),_=require("./logger/Logger.js"),p=require("./logger/types.js"),h=require("./printing/isValidPrinter.js"),V=require("./printing/isValidNetworkPrinter.js"),y=require("./printing/isValidStarCloudPrinter.js"),P=require("./printing/getPrinterType.js");require("moment");require("@ancon/wildcat-types");require("compare-versions");require("tinycolor2");require("@ancon/wildcat-printing");exports.DayOfWeek=e.DayOfWeek;exports.IntervalState=e.IntervalState;exports.IntervalType=e.IntervalType;exports.OrderFormat=e.OrderFormat;exports.isWithinFlag=r;exports.generateId=i;exports.getListOutletOpeningHoursTable=t;exports.isVersionALessThanB=n;exports.cleanVersionString=s;exports.getUrlAndParams=o;exports.getEndpointWithVersion=g;exports.slugify=l;exports.lighten=u;exports.brighten=a;exports.darken=c;exports.getFullName=d;exports.getFullAddressString=q;exports.Logger=_;exports.LogLevel=p.LogLevel;exports.isValidPrinter=h;exports.isValidNetworkPrinter=V;exports.isValidStarCloudPrinter=y;exports.getPrinterType=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./shared/enums.js"),r=require("./shared/isWithinFlag.js"),i=require("./shared/generateId.js"),t=require("./outlet/getListOutletOpeningHoursTable.js"),n=require("./versioning/isVersionALessThanB.js"),s=require("./versioning/cleanVersionString.js"),o=require("./api/getUrlAndParams.js"),g=require("./api/getEndpointWithVersion.js"),u=require("./string/slugify.js"),a=require("./string/truncate.js"),l=require("./color/lighten.js"),c=require("./color/brighten.js"),d=require("./color/darken.js"),q=require("./user/getFullName.js"),_=require("./user/getFullAddressString.js"),p=require("./logger/Logger.js"),h=require("./logger/types.js"),S=require("./logger/sanitizeAsStringDict.js"),V=require("./printing/isValidPrinter.js"),y=require("./printing/isValidNetworkPrinter.js"),P=require("./printing/isValidStarCloudPrinter.js"),L=require("./printing/getPrinterType.js");require("moment");require("@ancon/wildcat-types");require("compare-versions");require("tinycolor2");require("@ancon/wildcat-printing");exports.DayOfWeek=e.DayOfWeek;exports.IntervalState=e.IntervalState;exports.IntervalType=e.IntervalType;exports.OrderFormat=e.OrderFormat;exports.isWithinFlag=r;exports.generateId=i;exports.getListOutletOpeningHoursTable=t;exports.isVersionALessThanB=n;exports.cleanVersionString=s;exports.getUrlAndParams=o;exports.getEndpointWithVersion=g;exports.slugify=u;exports.truncate=a;exports.lighten=l;exports.brighten=c;exports.darken=d;exports.getFullName=q;exports.getFullAddressString=_;exports.Logger=p;exports.LogLevel=h.LogLevel;exports.sanitizeAsStringDict=S;exports.isValidPrinter=V;exports.isValidNetworkPrinter=y;exports.isValidStarCloudPrinter=P;exports.getPrinterType=L;
package/index.mjs CHANGED
@@ -3,21 +3,23 @@ import { default as u } from "./shared/isWithinFlag.mjs";
3
3
  import { default as x } from "./shared/generateId.mjs";
4
4
  import { default as V } from "./outlet/getListOutletOpeningHoursTable.mjs";
5
5
  import { default as L } from "./versioning/isVersionALessThanB.mjs";
6
- import { default as y } from "./versioning/cleanVersionString.mjs";
7
- import { default as O } from "./api/getUrlAndParams.mjs";
8
- import { default as T } from "./api/getEndpointWithVersion.mjs";
9
- import { default as v } from "./string/slugify.mjs";
10
- import { default as I } from "./color/lighten.mjs";
11
- import { default as b } from "./color/brighten.mjs";
12
- import { default as c } from "./color/darken.mjs";
6
+ import { default as S } from "./versioning/cleanVersionString.mjs";
7
+ import { default as A } from "./api/getUrlAndParams.mjs";
8
+ import { default as O } from "./api/getEndpointWithVersion.mjs";
9
+ import { default as c } from "./string/slugify.mjs";
10
+ import { default as v } from "./string/truncate.mjs";
11
+ import { default as W } from "./color/lighten.mjs";
12
+ import { default as D } from "./color/brighten.mjs";
13
+ import { default as w } from "./color/darken.mjs";
13
14
  import { default as B } from "./user/getFullName.mjs";
14
- import { default as D } from "./user/getFullAddressString.mjs";
15
- import { default as H } from "./logger/Logger.mjs";
16
- import { LogLevel as j } from "./logger/types.mjs";
17
- import { default as z } from "./printing/isValidPrinter.mjs";
18
- import { default as J } from "./printing/isValidNetworkPrinter.mjs";
19
- import { default as M } from "./printing/isValidStarCloudPrinter.mjs";
20
- import { default as R } from "./printing/getPrinterType.mjs";
15
+ import { default as E } from "./user/getFullAddressString.mjs";
16
+ import { default as U } from "./logger/Logger.mjs";
17
+ import { LogLevel as q } from "./logger/types.mjs";
18
+ import { default as J } from "./logger/sanitizeAsStringDict.mjs";
19
+ import { default as M } from "./printing/isValidPrinter.mjs";
20
+ import { default as R } from "./printing/isValidNetworkPrinter.mjs";
21
+ import { default as Y } from "./printing/isValidStarCloudPrinter.mjs";
22
+ import { default as _ } from "./printing/getPrinterType.mjs";
21
23
  import "moment";
22
24
  import "@ancon/wildcat-types";
23
25
  import "compare-versions";
@@ -27,24 +29,26 @@ export {
27
29
  s as DayOfWeek,
28
30
  i as IntervalState,
29
31
  d as IntervalType,
30
- j as LogLevel,
31
- H as Logger,
32
+ q as LogLevel,
33
+ U as Logger,
32
34
  p as OrderFormat,
33
- b as brighten,
34
- y as cleanVersionString,
35
- c as darken,
35
+ D as brighten,
36
+ S as cleanVersionString,
37
+ w as darken,
36
38
  x as generateId,
37
- T as getEndpointWithVersion,
38
- D as getFullAddressString,
39
+ O as getEndpointWithVersion,
40
+ E as getFullAddressString,
39
41
  B as getFullName,
40
42
  V as getListOutletOpeningHoursTable,
41
- R as getPrinterType,
42
- O as getUrlAndParams,
43
- J as isValidNetworkPrinter,
44
- z as isValidPrinter,
45
- M as isValidStarCloudPrinter,
43
+ _ as getPrinterType,
44
+ A as getUrlAndParams,
45
+ R as isValidNetworkPrinter,
46
+ M as isValidPrinter,
47
+ Y as isValidStarCloudPrinter,
46
48
  L as isVersionALessThanB,
47
49
  u as isWithinFlag,
48
- I as lighten,
49
- v as slugify
50
+ W as lighten,
51
+ J as sanitizeAsStringDict,
52
+ c as slugify,
53
+ v as truncate
50
54
  };
@@ -1,12 +1,14 @@
1
- import { LogProperties, LogStrategy } from './types';
2
- export default class Logger {
1
+ import { LogStrategy } from './types';
2
+ declare class Logger {
3
3
  private logStrategy;
4
4
  constructor(logStrategy: LogStrategy);
5
+ private sanitize;
5
6
  setLogStrategy(logStrategy: LogStrategy): void;
6
- verbose(message: string, properties?: LogProperties): void;
7
- debug(message: string, properties?: LogProperties): void;
8
- info(message: string, properties?: LogProperties): void;
9
- warn(message: string, properties?: LogProperties): void;
10
- error(message: string, properties?: LogProperties): void;
11
- fatal(message: string, properties?: LogProperties): void;
7
+ verbose<T = unknown>(message: string, data?: T): void;
8
+ debug<T = unknown>(message: string, data?: T): void;
9
+ info<T = unknown>(message: string, data?: T): void;
10
+ warn<T = unknown>(message: string, data?: T): void;
11
+ error<T = unknown>(message: string, data?: T): void;
12
+ fatal<T = unknown>(message: string, data?: T): void;
12
13
  }
14
+ export default Logger;
package/logger/Logger.js CHANGED
@@ -1 +1 @@
1
- "use strict";const g=require("./types.js");class o{constructor(e){this.logStrategy=e}setLogStrategy(e){this.logStrategy=e}verbose(e,t){this.logStrategy.execute(g.LogLevel.Verbose,e,t)}debug(e,t){this.logStrategy.execute(g.LogLevel.Debug,e,t)}info(e,t){this.logStrategy.execute(g.LogLevel.Information,e,t)}warn(e,t){this.logStrategy.execute(g.LogLevel.Warning,e,t)}error(e,t){this.logStrategy.execute(g.LogLevel.Error,e,t)}fatal(e,t){this.logStrategy.execute(g.LogLevel.Fatal,e,t)}}module.exports=o;
1
+ "use strict";const i=require("./types.js");class s{constructor(e){this.logStrategy=e}sanitize(e){return this.logStrategy.sanitize?this.logStrategy.sanitize(e):e}setLogStrategy(e){this.logStrategy=e}verbose(e,t){this.logStrategy.execute(i.LogLevel.Verbose,e,this.sanitize(t))}debug(e,t){this.logStrategy.execute(i.LogLevel.Debug,e,this.sanitize(t))}info(e,t){this.logStrategy.execute(i.LogLevel.Information,e,this.sanitize(t))}warn(e,t){this.logStrategy.execute(i.LogLevel.Warning,e,this.sanitize(t))}error(e,t){this.logStrategy.execute(i.LogLevel.Error,e,this.sanitize(t))}fatal(e,t){this.logStrategy.execute(i.LogLevel.Fatal,e,this.sanitize(t))}}module.exports=s;
package/logger/Logger.mjs CHANGED
@@ -1,28 +1,35 @@
1
- import { LogLevel as r } from "./types.mjs";
1
+ import { LogLevel as i } from "./types.mjs";
2
2
  class a {
3
3
  constructor(t) {
4
4
  this.logStrategy = t;
5
5
  }
6
+ sanitize(t) {
7
+ return this.logStrategy.sanitize ? this.logStrategy.sanitize(t) : t;
8
+ }
6
9
  setLogStrategy(t) {
7
10
  this.logStrategy = t;
8
11
  }
9
12
  verbose(t, e) {
10
- this.logStrategy.execute(r.Verbose, t, e);
13
+ this.logStrategy.execute(i.Verbose, t, this.sanitize(e));
11
14
  }
12
15
  debug(t, e) {
13
- this.logStrategy.execute(r.Debug, t, e);
16
+ this.logStrategy.execute(i.Debug, t, this.sanitize(e));
14
17
  }
15
18
  info(t, e) {
16
- this.logStrategy.execute(r.Information, t, e);
19
+ this.logStrategy.execute(
20
+ i.Information,
21
+ t,
22
+ this.sanitize(e)
23
+ );
17
24
  }
18
25
  warn(t, e) {
19
- this.logStrategy.execute(r.Warning, t, e);
26
+ this.logStrategy.execute(i.Warning, t, this.sanitize(e));
20
27
  }
21
28
  error(t, e) {
22
- this.logStrategy.execute(r.Error, t, e);
29
+ this.logStrategy.execute(i.Error, t, this.sanitize(e));
23
30
  }
24
31
  fatal(t, e) {
25
- this.logStrategy.execute(r.Fatal, t, e);
32
+ this.logStrategy.execute(i.Fatal, t, this.sanitize(e));
26
33
  }
27
34
  }
28
35
  export {
package/logger/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import Logger from './Logger';
2
- import type { LogProperties, LogStrategy } from './types';
2
+ import type { LogStrategy } from './types';
3
3
  import { LogLevel } from './types';
4
- export { Logger, LogLevel, LogProperties, LogStrategy };
4
+ import sanitizeAsStringDict from './sanitizeAsStringDict';
5
+ export { Logger, LogLevel, LogStrategy, sanitizeAsStringDict };
package/logger/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Logger.js"),g=require("./types.js");exports.Logger=e;exports.LogLevel=g.LogLevel;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Logger.js"),r=require("./types.js"),g=require("./sanitizeAsStringDict.js");require("../string/truncate.js");exports.Logger=e;exports.LogLevel=r.LogLevel;exports.sanitizeAsStringDict=g;
package/logger/index.mjs CHANGED
@@ -1,6 +1,9 @@
1
- import { default as r } from "./Logger.mjs";
2
- import { LogLevel as g } from "./types.mjs";
1
+ import { default as t } from "./Logger.mjs";
2
+ import { LogLevel as f } from "./types.mjs";
3
+ import { default as g } from "./sanitizeAsStringDict.mjs";
4
+ import "../string/truncate.mjs";
3
5
  export {
4
- g as LogLevel,
5
- r as Logger
6
+ f as LogLevel,
7
+ t as Logger,
8
+ g as sanitizeAsStringDict
6
9
  };
@@ -0,0 +1,2 @@
1
+ declare function sanitizeAsStringDict<T = unknown>(properties?: T): Record<string, string> | undefined;
2
+ export default sanitizeAsStringDict;
@@ -0,0 +1 @@
1
+ "use strict";const f=require("../string/truncate.js");function m(n,t){return t?`${t}.${n}`:n}function s(n,t,u){return Object.entries(n).reduce((e,[o,r])=>{const i=m(o,u);return t[i]!==void 0?e:typeof r=="string"?(t[i]=f(r,100),e):typeof r=="number"?(t[i]=f(r.toString(),100),e):typeof r=="object"&&r?s(r,e,o):(t[i]=f(String(r),100),t)},t)}function x(n){if(n)return s(n,{})}module.exports=x;
@@ -0,0 +1,20 @@
1
+ import i from "../string/truncate.mjs";
2
+ function s(n, t) {
3
+ return t ? `${t}.${n}` : n;
4
+ }
5
+ function u(n, t, m) {
6
+ return Object.entries(n).reduce(
7
+ (e, [o, r]) => {
8
+ const f = s(o, m);
9
+ return t[f] !== void 0 ? e : typeof r == "string" ? (t[f] = i(r, 100), e) : typeof r == "number" ? (t[f] = i(r.toString(), 100), e) : typeof r == "object" && r ? u(r, e, o) : (t[f] = i(String(r), 100), t);
10
+ },
11
+ t
12
+ );
13
+ }
14
+ function L(n) {
15
+ if (n)
16
+ return u(n, {});
17
+ }
18
+ export {
19
+ L as default
20
+ };
package/logger/types.d.ts CHANGED
@@ -6,7 +6,16 @@ export declare enum LogLevel {
6
6
  Error = 4,
7
7
  Fatal = 5
8
8
  }
9
- export declare type LogProperties = Record<string, unknown>;
10
9
  export interface LogStrategy {
11
- execute: <T extends LogProperties>(logLevel: LogLevel, message: string, properties?: T) => void;
10
+ /**
11
+ * Method which should return a sanitized version of `data`.
12
+ * @param data Additional data from `execute()`
13
+ */
14
+ sanitize?(data?: unknown): unknown;
15
+ /**
16
+ * @param logLevel `LogLevel`
17
+ * @param message Message string
18
+ * @param data Any additional data to log. Sanitized if `sanitize()` method is implemented.
19
+ */
20
+ execute(logLevel: LogLevel, message: string, data?: unknown): void;
12
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ancon/wildcat-utils",
3
- "version": "1.12.0",
3
+ "version": "1.14.0",
4
4
  "private": false,
5
5
  "main": "index.cjs",
6
6
  "module": "index.js",
@@ -56,6 +56,11 @@
56
56
  "require": "./logger/index.cjs",
57
57
  "types": "./logger/index.d.ts"
58
58
  },
59
+ "./logger/sanitizeAsStringDict": {
60
+ "import": "./logger/sanitizeAsStringDict.js",
61
+ "require": "./logger/sanitizeAsStringDict.cjs",
62
+ "types": "./logger/sanitizeAsStringDict.d.ts"
63
+ },
59
64
  "./logger/types": {
60
65
  "import": "./logger/types.js",
61
66
  "require": "./logger/types.cjs",
@@ -131,6 +136,11 @@
131
136
  "require": "./string/slugify.cjs",
132
137
  "types": "./string/slugify.d.ts"
133
138
  },
139
+ "./string/truncate": {
140
+ "import": "./string/truncate.js",
141
+ "require": "./string/truncate.cjs",
142
+ "types": "./string/truncate.d.ts"
143
+ },
134
144
  "./user/getFullAddressString": {
135
145
  "import": "./user/getFullAddressString.js",
136
146
  "require": "./user/getFullAddressString.cjs",
package/string/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  import slugify from './slugify';
2
- export { slugify };
2
+ import truncate from './truncate';
3
+ export { slugify, truncate };
package/string/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./slugify.js");exports.slugify=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./slugify.js"),e=require("./truncate.js");exports.slugify=t;exports.truncate=e;
package/string/index.mjs CHANGED
@@ -1,4 +1,6 @@
1
1
  import { default as e } from "./slugify.mjs";
2
+ import { default as r } from "./truncate.mjs";
2
3
  export {
3
- e as slugify
4
+ e as slugify,
5
+ r as truncate
4
6
  };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Truncate a string to fit within `maxLen` number of characters.
3
+ * @param str String to truncate
4
+ * @param maxLen Max number of characters
5
+ * @param options Options
6
+ * @returns Truncated or original string
7
+ */
8
+ declare function truncate<T = string | undefined | null>(str: T, maxLen: number, options?: {
9
+ trim?: boolean;
10
+ ellipsis?: string;
11
+ }): string;
12
+ export default truncate;
@@ -0,0 +1 @@
1
+ "use strict";function i(u,e,t){const f=(t==null?void 0:t.trim)??!0,l=(t==null?void 0:t.ellipsis)??"...";if(typeof u!="string")return"";let r=u;return e<0||Math.max(0,r.length)>e&&(r=r.substring(0,Math.max(0,e-l.length)),f&&(r=r.trim()),r+=l),r}module.exports=i;
@@ -0,0 +1,10 @@
1
+ function a(l, e, t) {
2
+ const f = (t == null ? void 0 : t.trim) ?? !0, u = (t == null ? void 0 : t.ellipsis) ?? "...";
3
+ if (typeof l != "string")
4
+ return "";
5
+ let r = l;
6
+ return e < 0 || Math.max(0, r.length) > e && (r = r.substring(0, Math.max(0, e - u.length)), f && (r = r.trim()), r += u), r;
7
+ }
8
+ export {
9
+ a as default
10
+ };