@companieshouse/ch-node-utils 1.3.11 → 1.3.13

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/README.md CHANGED
@@ -106,7 +106,7 @@ The macro requires the following parameters:
106
106
  - `userEmailAddress`: The email address of the logged-in user
107
107
  - `chsMonitorGuiUrl`: The URL for the "Companies you follow" link
108
108
  - `lang`: An object containing language-specific strings for localization
109
- - `displayAuthorisedAgent`: A flag for displaying the "Authorised agent" menu item. If the logged user has ACSP membership, this flag should be set to `'yes'`
109
+ - `displayAuthorisedAgent`: A flag for displaying the "Authorised agent" menu item. If the logged user has ACSP membership, this flag should be set to `'yes'`. If your service uses i18 middleware provided in the `@companieshouse/ch-node-utils` package, then this flag will be set to the correct value automatically. If not, you can use `isAuthorisedAgent` function from `./utils/sessionUtils`.
110
110
 
111
111
  #### Localization
112
112
 
@@ -2,3 +2,4 @@ export declare const QUERY_PAR_LANG = "lang";
2
2
  export declare const NODE_MODULES_LOCALES_PATH = "node_modules/@companieshouse/ch-node-utils/locales";
3
3
  export declare const SHARED_NAVBAR_NAMESPACE = "ch-node-utils-navbar";
4
4
  export declare const SHARED_NUNJUCKS_TRANSLATION_NAMESPACES: Set<string>;
5
+ export declare const ACSP_NUMBER_REGEX: RegExp;
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SHARED_NUNJUCKS_TRANSLATION_NAMESPACES = exports.SHARED_NAVBAR_NAMESPACE = exports.NODE_MODULES_LOCALES_PATH = exports.QUERY_PAR_LANG = void 0;
3
+ exports.ACSP_NUMBER_REGEX = exports.SHARED_NUNJUCKS_TRANSLATION_NAMESPACES = exports.SHARED_NAVBAR_NAMESPACE = exports.NODE_MODULES_LOCALES_PATH = exports.QUERY_PAR_LANG = void 0;
4
4
  exports.QUERY_PAR_LANG = "lang";
5
5
  exports.NODE_MODULES_LOCALES_PATH = 'node_modules/@companieshouse/ch-node-utils/locales';
6
6
  exports.SHARED_NAVBAR_NAMESPACE = "ch-node-utils-navbar";
7
7
  exports.SHARED_NUNJUCKS_TRANSLATION_NAMESPACES = new Set([
8
8
  exports.SHARED_NAVBAR_NAMESPACE
9
9
  ]);
10
+ exports.ACSP_NUMBER_REGEX = /^[0-9A-Z-_]{0,32}$/i;
10
11
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,MAAM,CAAA;AACvB,QAAA,yBAAyB,GAAG,oDAAoD,CAAC;AACjF,QAAA,uBAAuB,GAAG,sBAAsB,CAAA;AAChD,QAAA,sCAAsC,GAAG,IAAI,GAAG,CAAC;IAC5D,+BAAuB;CACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,MAAM,CAAA;AACvB,QAAA,yBAAyB,GAAG,oDAAoD,CAAC;AACjF,QAAA,uBAAuB,GAAG,sBAAsB,CAAA;AAChD,QAAA,sCAAsC,GAAG,IAAI,GAAG,CAAC;IAC1D,+BAAuB;CAC1B,CAAC,CAAC;AACU,QAAA,iBAAiB,GAAG,qBAAqB,CAAC"}
package/lib/index.d.ts CHANGED
@@ -4,4 +4,5 @@ import i18nCh from "./utils/i18nCh";
4
4
  import LocalesService from "./services/locales/locales.service";
5
5
  import { LocalesMiddleware } from "./middleware/manageLocales.middleware";
6
6
  import { QUERY_PAR_LANG } from "./constants/constants";
7
- export { SubDirs, NamedIsoCode, LanguageNames, i18nCh, LocalesMiddleware, LocalesService, QUERY_PAR_LANG };
7
+ import { isAuthorisedAgent } from "./utils/sessionUtils";
8
+ export { SubDirs, NamedIsoCode, LanguageNames, i18nCh, LocalesMiddleware, LocalesService, QUERY_PAR_LANG, isAuthorisedAgent };
package/lib/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QUERY_PAR_LANG = exports.LocalesService = exports.LocalesMiddleware = exports.i18nCh = exports.LanguageNames = exports.NamedIsoCode = exports.SubDirs = void 0;
3
+ exports.isAuthorisedAgent = exports.QUERY_PAR_LANG = exports.LocalesService = exports.LocalesMiddleware = exports.i18nCh = exports.LanguageNames = exports.NamedIsoCode = exports.SubDirs = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const subDirs_1 = tslib_1.__importDefault(require("./utils/subDirs"));
6
6
  exports.SubDirs = subDirs_1.default;
@@ -15,4 +15,6 @@ const manageLocales_middleware_1 = require("./middleware/manageLocales.middlewar
15
15
  Object.defineProperty(exports, "LocalesMiddleware", { enumerable: true, get: function () { return manageLocales_middleware_1.LocalesMiddleware; } });
16
16
  const constants_1 = require("./constants/constants");
17
17
  Object.defineProperty(exports, "QUERY_PAR_LANG", { enumerable: true, get: function () { return constants_1.QUERY_PAR_LANG; } });
18
+ const sessionUtils_1 = require("./utils/sessionUtils");
19
+ Object.defineProperty(exports, "isAuthorisedAgent", { enumerable: true, get: function () { return sessionUtils_1.isAuthorisedAgent; } });
18
20
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,sEAAsC;AAQnC,kBARI,iBAAO,CAQJ;AAPV,+EAAkE;AAS/D,wBATI,uBAAa,CASJ;AADb,6FARoB,4BAAY,OAQpB;AAPf,oEAAoC;AASjC,iBATI,gBAAM,CASJ;AART,iGAA+D;AAU5D,yBAVI,yBAAc,CAUJ;AATjB,oFAAyE;AAQtE,kGARM,4CAAiB,OAQN;AAPpB,qDAAsD;AASnD,+FATM,0BAAc,OASN"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,sEAAsC;AASlC,kBATG,iBAAO,CASH;AARX,+EAAoE;AAUhE,wBAVG,uBAAa,CAUH;AADb,6FAToB,4BAAY,OASpB;AARhB,oEAAoC;AAUhC,iBAVG,gBAAM,CAUH;AATV,iGAA+D;AAW3D,yBAXG,yBAAc,CAWH;AAVlB,oFAAyE;AASrE,kGATK,4CAAiB,OASL;AARrB,qDAAsD;AAUlD,+FAVK,0BAAc,OAUL;AATlB,uDAAyD;AAUrD,kGAVK,gCAAiB,OAUL"}
@@ -6,6 +6,7 @@ const constants_1 = require("../constants/constants");
6
6
  const locales_service_1 = tslib_1.__importDefault(require("../services/locales/locales.service"));
7
7
  const languageNames_1 = tslib_1.__importDefault(require("../utils/languageNames"));
8
8
  const log_1 = tslib_1.__importDefault(require("../utils/log"));
9
+ const sessionUtils_1 = require("../utils/sessionUtils");
9
10
  function LocalesMiddleware() {
10
11
  return (req, res, next) => {
11
12
  var _a;
@@ -34,6 +35,9 @@ function LocalesMiddleware() {
34
35
  res.locals.htmlLang = lang;
35
36
  res.locals.pageTitleLang = lang;
36
37
  res.locals.mainLang = lang;
38
+ if ((0, sessionUtils_1.isAuthorisedAgent)(req.session)) {
39
+ res.locals.displayAuthorisedAgent = "yes";
40
+ }
37
41
  return next();
38
42
  };
39
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manageLocales.middleware.js","sourceRoot":"","sources":["../../src/middleware/manageLocales.middleware.ts"],"names":[],"mappings":";;;;AACA,sDAAuD;AACvD,kGAAiE;AACjE,mFAAoD;AACpD,+DAA+B;AAE/B,SAAgB,iBAAiB;IAC9B,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;;QAExD,IAAA,aAAG,EAAC,2CAA2C,CAAC,CAAA;QAChD,IAAI,IAAI,GAAuB,CAAS,GAAG,CAAC,KAAK,CAAC,0BAAc,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,IAAI;aACb,MAAA,GAAG,CAAC,OAAO,0CAAE,YAAY,CAAS,0BAAc,CAAC,CAAA,CAAC,CAAA;QACnF,IAAA,aAAG,EAAC,0DAA0D,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QAC/F,IAAI,IAAI,KAAK,SAAS,IAAI,CAAE,uBAAa,CAAC,iBAAiB,CAAE,yBAAc,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC;YAC3G,IAAI,GAAG,IAAI,CAAA;QACjB,CAAC;QACD,IAAA,aAAG,EAAC,uCAAuC,IAAI,GAAG,CAAC,CAAA;QACnD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACf,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,0BAAc,EAAE,IAAI,CAAC,CAAA;QACjD,CAAC;QACD,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;QAEf,IAAI,UAAU,GAAG,GAAG,CAAC,GAAG,CAAA;QACxB,IAAI,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,CAAC;YAInD,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;YACxC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,0BAAc,CAAC,CAAA;YACxC,UAAU,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;YAC7C,IAAA,aAAG,EAAC,gCAAgC,0BAAc,2BAA2B,UAAU,GAAG,CAAC,CAAA;QAC9F,CAAC;QAED,GAAG,CAAC,GAAG,GAAG,UAAU,CAAA;QACpB,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,EAAE,CAAA;QAG3E,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAA;QAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAA;QAE1B,OAAO,IAAI,EAAE,CAAA;IAChB,CAAC,CAAA;AACJ,CAAC;AAtCD,8CAsCC"}
1
+ {"version":3,"file":"manageLocales.middleware.js","sourceRoot":"","sources":["../../src/middleware/manageLocales.middleware.ts"],"names":[],"mappings":";;;;AACA,sDAAuD;AACvD,kGAAgE;AAChE,mFAAkD;AAClD,+DAA+B;AAC/B,wDAA0D;AAE1D,SAAgB,iBAAiB;IAC7B,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;;QAEvD,IAAA,aAAG,EAAC,2CAA2C,CAAC,CAAA;QAChD,IAAI,IAAI,GAAuB,CAAS,GAAG,CAAC,KAAK,CAAC,0BAAc,CAAC;YAC7D,GAAG,CAAC,IAAI,CAAC,IAAI;aACb,MAAA,GAAG,CAAC,OAAO,0CAAE,YAAY,CAAS,0BAAc,CAAC,CAAA,CAAC,CAAA;QACtD,IAAA,aAAG,EAAC,0DAA0D,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QAC/F,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,uBAAa,CAAC,iBAAiB,CAAC,yBAAc,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC;YAC3G,IAAI,GAAG,IAAI,CAAA;QACf,CAAC;QACD,IAAA,aAAG,EAAC,uCAAuC,IAAI,GAAG,CAAC,CAAA;QACnD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,0BAAc,EAAE,IAAI,CAAC,CAAA;QAClD,CAAC;QACD,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;QAEf,IAAI,UAAU,GAAG,GAAG,CAAC,GAAG,CAAA;QACxB,IAAI,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,CAAC;YAIlD,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;YACxC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,0BAAc,CAAC,CAAA;YACxC,UAAU,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;YAC7C,IAAA,aAAG,EAAC,gCAAgC,0BAAc,2BAA2B,UAAU,GAAG,CAAC,CAAA;QAC/F,CAAC;QAED,GAAG,CAAC,GAAG,GAAG,UAAU,CAAA;QACpB,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,EAAE,CAAA;QAG3E,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAA;QAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAA;QAG1B,IAAI,IAAA,gCAAiB,EAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,MAAM,CAAC,sBAAsB,GAAG,KAAK,CAAC;QAC9C,CAAC;QAED,OAAO,IAAI,EAAE,CAAA;IACjB,CAAC,CAAA;AACL,CAAC;AA3CD,8CA2CC"}
@@ -11,7 +11,8 @@ export default class i18nCh {
11
11
  private getLanguageFolders;
12
12
  private getFoldersFromPath;
13
13
  private changeLanguage;
14
- resolveNamespacesKeys(lang: string, vars?: any): any;
14
+ private loadGenericKey;
15
+ resolveNamespacesKeys(lang: string, vars?: any): Record<string, any>;
15
16
  resolveSingleKey(key: string, lang: string, vars?: any): string;
16
17
  loadNamespaces(nameSpaces?: string[]): void;
17
18
  getResourceBundle(lng: string, ns: string): any;
@@ -93,6 +93,20 @@ class i18nCh {
93
93
  throw new Error(`i18nCh changeLanguage error: ${err}`);
94
94
  });
95
95
  }
96
+ loadGenericKey(lang, ns, value, vars = {}, path = '') {
97
+ let data = {};
98
+ for (const [key, val] of Object.entries(value)) {
99
+ (0, log_1.default)(`${key}`);
100
+ const currentPath = path ? `${path}.${key}` : key;
101
+ if (typeof val === 'object' && val !== null) {
102
+ data[key] = this.loadGenericKey(lang, ns, val, vars, currentPath);
103
+ }
104
+ else {
105
+ data[key] = this.i18nInst.t(currentPath, Object.assign({ lng: lang, ns: ns }, vars));
106
+ }
107
+ }
108
+ return data;
109
+ }
96
110
  resolveNamespacesKeys(lang, vars = {}) {
97
111
  let data = {};
98
112
  try {
@@ -104,10 +118,7 @@ class i18nCh {
104
118
  (0, log_1.default)(`${ns}: ${this.nameSpaces}`);
105
119
  if (this.nameSpaces.includes(ns)) {
106
120
  (0, log_1.default)(`${ns}`);
107
- for (const [key] of Object.entries(value)) {
108
- (0, log_1.default)(`${key}`);
109
- data[key] = this.i18nInst.t(key, { lng: lang, ns: ns, vars });
110
- }
121
+ data = Object.assign(Object.assign({}, data), this.loadGenericKey(lang, ns, value, vars));
111
122
  }
112
123
  }
113
124
  }
@@ -123,7 +134,7 @@ class i18nCh {
123
134
  if (this.i18nInst) {
124
135
  try {
125
136
  this.changeLanguage(lang);
126
- t = this.i18nInst.t(key, { lng: lang, ns: this.nameSpaces, vars });
137
+ t = this.i18nInst.t(key, Object.assign({ lng: lang, ns: this.nameSpaces }, vars));
127
138
  (0, log_1.default)(`searched for key:${key} lang:${lang} and got: ${t}`);
128
139
  }
129
140
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"i18nCh.js","sourceRoot":"","sources":["../../src/utils/i18nCh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18nCh.js","sourceRoot":"","sources":["../../src/utils/i18nCh.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Session } from "@companieshouse/node-session-handler";
2
+ export declare function isAuthorisedAgent(session: Session | undefined): boolean;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isAuthorisedAgent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const SessionKey_1 = require("@companieshouse/node-session-handler/lib/session/keys/SessionKey");
6
+ const SignInInfoKeys_1 = require("@companieshouse/node-session-handler/lib/session/keys/SignInInfoKeys");
7
+ const constants = tslib_1.__importStar(require("../constants/constants"));
8
+ function isAuthorisedAgent(session) {
9
+ var _a;
10
+ const signInInfo = (_a = session === null || session === void 0 ? void 0 : session.data) === null || _a === void 0 ? void 0 : _a[SessionKey_1.SessionKey.SignInInfo];
11
+ const acspNumber = signInInfo === null || signInInfo === void 0 ? void 0 : signInInfo[SignInInfoKeys_1.SignInInfoKeys.AcspNumber];
12
+ return !!acspNumber && constants.ACSP_NUMBER_REGEX.test(acspNumber);
13
+ }
14
+ exports.isAuthorisedAgent = isAuthorisedAgent;
15
+ ;
16
+ //# sourceMappingURL=sessionUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionUtils.js","sourceRoot":"","sources":["../../src/utils/sessionUtils.ts"],"names":[],"mappings":";;;;AACA,iGAA8F;AAC9F,yGAAsG;AACtG,0EAAoD;AAEpD,SAAgB,iBAAiB,CAAE,OAA4B;;IAC3D,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAG,uBAAU,CAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,+BAAc,CAAC,UAAU,CAAW,CAAC;IACrE,OAAO,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACxE,CAAC;AAJD,8CAIC;AAAA,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@companieshouse/ch-node-utils",
3
- "version": "1.3.11",
3
+ "version": "1.3.13",
4
4
  "author": "companieshouse",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -36,16 +36,18 @@
36
36
  },
37
37
  "license": "MIT",
38
38
  "dependencies": {
39
- "@companieshouse/node-session-handler": "^5.0.1",
39
+ "@companieshouse/node-session-handler": "^5.1.4",
40
40
  "express": "^4.18.3",
41
41
  "i18next": "^23.10.1",
42
42
  "i18next-fs-backend": "^2.3.1",
43
+ "ioredis": "^5.4.1",
43
44
  "iso-639-1": "^3.1.2",
44
45
  "tslib": "^2.3.0"
45
46
  },
46
47
  "devDependencies": {
47
48
  "@types/express": "^4.17.21",
48
49
  "@types/i18next": "^13.0.0",
50
+ "@types/ioredis": "4.28.10",
49
51
  "@types/node": "^20.11.28",
50
52
  "typescript": "^5.4.2"
51
53
  },