@sasjs/utils 3.6.1 → 3.6.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.
Files changed (54) hide show
  1. package/.github/workflows/dependency-staleness.yml +46 -0
  2. package/.github/workflows/publish.yml +20 -1
  3. package/.github/workflows/run-tests-windows.yml +6 -3
  4. package/.github/workflows/run-tests.yml +9 -3
  5. package/auth/auth.js +2 -5
  6. package/auth/auth.js.map +1 -1
  7. package/file/file.d.ts +6 -0
  8. package/file/file.js +28 -1
  9. package/file/file.js.map +1 -1
  10. package/file/index.d.ts +1 -1
  11. package/file/index.js +2 -1
  12. package/file/index.js.map +1 -1
  13. package/input/validators.js +2 -8
  14. package/input/validators.js.map +1 -1
  15. package/logger/logger.js +8 -8
  16. package/logger/logger.js.map +1 -1
  17. package/macros/mf_getuniquelibref.sas +2 -4
  18. package/macros/mf_getvalue.sas +24 -9
  19. package/macros/mp_abort.sas +8 -2
  20. package/macros/mp_assert.sas +2 -2
  21. package/macros/mp_assertcols.sas +6 -4
  22. package/macros/mp_assertcolvals.sas +2 -2
  23. package/macros/mp_assertdsobs.sas +2 -2
  24. package/macros/mp_assertscope.sas +2 -2
  25. package/macros/mp_ds2csv.sas +2 -2
  26. package/macros/mp_ds2ddl.sas +388 -24
  27. package/macros/mp_dsmeta.sas +1 -1
  28. package/macros/mp_filterstore.sas +3 -3
  29. package/macros/mp_getmaxvarlengths.sas +1 -1
  30. package/macros/mp_jsonout.sas +2 -1
  31. package/macros/mp_lib2inserts.sas +1 -1
  32. package/macros/mp_retainedkey.sas +4 -4
  33. package/macros/mp_stackdiffs.sas +3 -3
  34. package/macros/mp_storediffs.sas +1 -1
  35. package/macros/mp_validatecol.sas +19 -2
  36. package/package.json +12 -17
  37. package/sasjsCli/getDependencies.js +1 -5
  38. package/sasjsCli/getDependencies.js.map +1 -1
  39. package/sasjsCli/getDependencyPaths.js +1 -5
  40. package/sasjsCli/getDependencyPaths.js.map +1 -1
  41. package/types/targetValidators.js +4 -9
  42. package/types/targetValidators.js.map +1 -1
  43. package/utils/index.d.ts +1 -1
  44. package/utils/index.js +3 -1
  45. package/utils/index.js.map +1 -1
  46. package/utils/url.d.ts +2 -0
  47. package/utils/url.js +14 -1
  48. package/utils/url.js.map +1 -1
  49. package/.github/dependabot.yml +0 -7
  50. package/.github/workflows/dependabot-auto-approve.yml +0 -21
  51. package/.github/workflows/dependabot-auto-merge.yml +0 -23
  52. package/macros/mp_coretable.sas +0 -73
  53. package/macros/mp_getddl.sas +0 -405
  54. package/macros/mp_testservice.sas +0 -39
@@ -0,0 +1,46 @@
1
+ name: Dependency Staleness
2
+
3
+ # Dependabot is not enabled on this repo, so nothing surfaces stale
4
+ # dependencies. The audit gate in the test workflow only fails on
5
+ # known-vulnerable packages; it says nothing about being behind. This runs
6
+ # weekly and writes the outdated direct dependencies to the run summary.
7
+ #
8
+ # It deliberately exits 0 either way. A scheduled job that goes red every week
9
+ # trains people to ignore red; the summary is the signal, and a human decides
10
+ # whether to bump.
11
+
12
+ on:
13
+ schedule:
14
+ - cron: '0 8 * * 1' # Mondays, 08:00 UTC
15
+ workflow_dispatch:
16
+
17
+ jobs:
18
+ report:
19
+ runs-on: ubuntu-latest
20
+ permissions:
21
+ contents: read
22
+
23
+ steps:
24
+ - uses: actions/checkout@v4
25
+
26
+ - name: Use Node.js
27
+ uses: actions/setup-node@v4
28
+ with:
29
+ node-version: 22
30
+
31
+ - name: Install Dependencies
32
+ run: npm ci
33
+
34
+ - name: Report outdated direct dependencies
35
+ run: |
36
+ {
37
+ echo '## Outdated direct dependencies'
38
+ echo
39
+ echo 'Direct dependencies whose latest published version differs from'
40
+ echo 'the pinned one. Dependabot is disabled on this repo, so this is'
41
+ echo 'the substitute - review it and bump deliberately.'
42
+ echo
43
+ echo '```'
44
+ npm outdated --depth=0 || true
45
+ echo '```'
46
+ } >> "$GITHUB_STEP_SUMMARY"
@@ -74,6 +74,25 @@ jobs:
74
74
  env:
75
75
  GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} # <-- app token, not secrets.GITHUB_TOKEN
76
76
 
77
+ # semantic-release only releases when it finds a releasable commit, and the
78
+ # angular convention this repo is configured with does not treat `chore:` or
79
+ # `docs:` as one. This step ran on `if: success()` regardless, so a merge with
80
+ # no releasable commit published the version already in package.json, which
81
+ # npm rejects with "You cannot publish over the previously published
82
+ # versions". Compare against the registry instead, and publish only when
83
+ # there is something new.
77
84
  - name: Publish to npm with trusted publisher
85
+ id: publish
78
86
  if: success()
79
- run: npm publish --access public
87
+ run: |
88
+ local_version=$(node -p "require('./package.json').version")
89
+ published_version=$(npm view @sasjs/utils version 2>/dev/null || echo "")
90
+
91
+ if [ "$local_version" = "$published_version" ]; then
92
+ echo "released=false" >> "$GITHUB_OUTPUT"
93
+ echo "Nothing to publish - $local_version is already on npm"
94
+ exit 0
95
+ fi
96
+
97
+ npm publish --access public
98
+ echo "released=true" >> "$GITHUB_OUTPUT"
@@ -5,6 +5,9 @@ name: SASjs Utils Run Tests on Windows
5
5
 
6
6
  on:
7
7
  pull_request:
8
+ push:
9
+ branches:
10
+ - main
8
11
 
9
12
  jobs:
10
13
  test:
@@ -12,12 +15,12 @@ jobs:
12
15
 
13
16
  strategy:
14
17
  matrix:
15
- node-version: [lts/iron]
18
+ node-version: [22]
16
19
 
17
20
  steps:
18
- - uses: actions/checkout@v2
21
+ - uses: actions/checkout@v4
19
22
  - name: Use Node.js ${{ matrix.node-version }}
20
- uses: actions/setup-node@v2
23
+ uses: actions/setup-node@v4
21
24
  with:
22
25
  node-version: ${{ matrix.node-version }}
23
26
 
@@ -5,6 +5,12 @@ name: SASjs Utils Run Tests
5
5
 
6
6
  on:
7
7
  pull_request:
8
+ # Also run on main. Until this was added the workflow only ran on pull
9
+ # requests, so a failure that started on 19 Aug went unnoticed for six weeks -
10
+ # every PR was red and no branch was green, with nothing to compare against.
11
+ push:
12
+ branches:
13
+ - main
8
14
 
9
15
  jobs:
10
16
  test:
@@ -12,12 +18,12 @@ jobs:
12
18
 
13
19
  strategy:
14
20
  matrix:
15
- node-version: [lts/iron]
21
+ node-version: [22]
16
22
 
17
23
  steps:
18
- - uses: actions/checkout@v2
24
+ - uses: actions/checkout@v4
19
25
  - name: Use Node.js ${{ matrix.node-version }}
20
- uses: actions/setup-node@v2
26
+ uses: actions/setup-node@v4
21
27
  with:
22
28
  node-version: ${{ matrix.node-version }}
23
29
 
package/auth/auth.js CHANGED
@@ -66,7 +66,6 @@ function hasTokenExpired(token) {
66
66
  }
67
67
  exports.hasTokenExpired = hasTokenExpired;
68
68
  function isTokenExpiring(token, timeToLiveSeconds) {
69
- var _a, _b;
70
69
  let payload;
71
70
  try {
72
71
  payload = (0, jwt_decode_1.default)(token);
@@ -78,10 +77,8 @@ function isTokenExpiring(token, timeToLiveSeconds) {
78
77
  throw err;
79
78
  // Opaque tokens cannot be expiry-checked client-side.
80
79
  // Assume the token is usable and let the server reject it if expired.
81
- // Route through process.logger so the message respects the configured
82
- // log level and doesn't pollute stdout in CI/test runs. Falls back to a
83
- // no-op when no logger has been installed (e.g. library-only usage).
84
- (_b = (_a = process.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, 'isTokenExpiring: token is not a decodable JWT, treating it as not expiring.');
80
+ // Deliberately silent - this is routine (opaque tokens are the norm for
81
+ // SAS Logon Manager) and must never appear in CLI output.
85
82
  return false;
86
83
  }
87
84
  // A JWT without an `exp` claim cannot be expiry-checked either.
package/auth/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAyD;AAGzD;;;;;;;;GAQG;AACH,SAAgB,qBAAqB,CACnC,KAAc,EACd,iBAAiB,GAAG,IAAI;IAExB,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;AAClD,CAAC;AARD,sDAQC;AAED;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CACpC,KAAc,EACd,iBAAiB,GAAG,EAAE;IAEtB,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;AAClD,CAAC;AARD,wDAQC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AAClC,CAAC;AALD,0CAKC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,iBAAyB;;IAC/D,IAAI,OAAyB,CAAA;IAC7B,IAAI;QACF,OAAO,GAAG,IAAA,oBAAS,EAAmB,KAAK,CAAC,CAAA;KAC7C;IAAC,OAAO,GAAG,EAAE;QACZ,sEAAsE;QACtE,uCAAuC;QACvC,IAAI,CAAC,CAAC,GAAG,YAAY,8BAAiB,CAAC;YAAE,MAAM,GAAG,CAAA;QAClD,sDAAsD;QACtD,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,qEAAqE;QACrE,MAAA,MAAA,OAAO,CAAC,MAAM,0CAAE,KAAK,mDACnB,6EAA6E,CAC9E,CAAA;QACD,OAAO,KAAK,CAAA;KACb;IAED,gEAAgE;IAChE,uEAAuE;IACvE,qBAAqB;IACrB,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,KAAK,CAAA;IAErC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;IAE5D,OAAO,UAAU,IAAI,iBAAiB,CAAA;AACxC,CAAC;AAED,SAAgB,WAAW,CAAC,KAAa;IACvC,IAAI,OAAqB,CAAA;IACzB,IAAI;QACF,OAAO,GAAG,IAAA,oBAAS,EAAC,KAAK,CAAC,CAAA;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;KAC3C;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AATD,kCASC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAyD;AAGzD;;;;;;;;GAQG;AACH,SAAgB,qBAAqB,CACnC,KAAc,EACd,iBAAiB,GAAG,IAAI;IAExB,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;AAClD,CAAC;AARD,sDAQC;AAED;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CACpC,KAAc,EACd,iBAAiB,GAAG,EAAE;IAEtB,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;AAClD,CAAC;AARD,wDAQC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AAClC,CAAC;AALD,0CAKC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,iBAAyB;IAC/D,IAAI,OAAyB,CAAA;IAC7B,IAAI;QACF,OAAO,GAAG,IAAA,oBAAS,EAAmB,KAAK,CAAC,CAAA;KAC7C;IAAC,OAAO,GAAG,EAAE;QACZ,sEAAsE;QACtE,uCAAuC;QACvC,IAAI,CAAC,CAAC,GAAG,YAAY,8BAAiB,CAAC;YAAE,MAAM,GAAG,CAAA;QAClD,sDAAsD;QACtD,sEAAsE;QACtE,wEAAwE;QACxE,0DAA0D;QAC1D,OAAO,KAAK,CAAA;KACb;IAED,gEAAgE;IAChE,uEAAuE;IACvE,qBAAqB;IACrB,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,KAAK,CAAA;IAErC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;IAE5D,OAAO,UAAU,IAAI,iBAAiB,CAAA;AACxC,CAAC;AAED,SAAgB,WAAW,CAAC,KAAa;IACvC,IAAI,OAAqB,CAAA;IACzB,IAAI;QACF,OAAO,GAAG,IAAA,oBAAS,EAAC,KAAK,CAAC,CAAA;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;KAC3C;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AATD,kCASC"}
package/file/file.d.ts CHANGED
@@ -3,6 +3,12 @@ import fs from 'fs-extra';
3
3
  import { LineEndings } from '../types';
4
4
  export declare function fileExists(filePath: string): Promise<boolean>;
5
5
  export declare function folderExists(folderPath: string): Promise<boolean>;
6
+ /**
7
+ * Returns the paths of every file named `fileName` at or below `folder`.
8
+ * Node's own fs covers this now, so it replaces the unmaintained `find`
9
+ * package. Unreadable folders are skipped rather than throwing.
10
+ */
11
+ export declare function findFilesByName(fileName: string, folder: string): string[];
6
12
  export declare function isFolder(inputPath: string): Promise<boolean>;
7
13
  export declare function readFile(fileName: string, encoding?: BufferEncoding): Promise<string>;
8
14
  export declare function readFileBinary(fileName: string): Promise<Buffer>;
package/file/file.js CHANGED
@@ -31,7 +31,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  return (mod && mod.__esModule) ? mod : { "default": mod };
32
32
  };
33
33
  Object.defineProperty(exports, "__esModule", { value: true });
34
- exports.getLineEnding = exports.isTestFile = exports.testFileRegExp = exports.createReadStream = exports.createWriteStream = exports.getRealPath = exports.base64EncodeFile = exports.base64EncodeImageFile = exports.pathSepEscaped = exports.copy = exports.moveFile = exports.getRelativePath = exports.unifyFilePath = exports.deleteFolder = exports.deleteFile = exports.createFile = exports.createFolder = exports.listFilesAndSubFoldersInFolder = exports.listSubFoldersInFolder = exports.listSasFilesInFolder = exports.listIniFilesInFolder = exports.listFilesInFolder = exports.readFileBinary = exports.readFile = exports.isFolder = exports.folderExists = exports.fileExists = void 0;
34
+ exports.getLineEnding = exports.isTestFile = exports.testFileRegExp = exports.createReadStream = exports.createWriteStream = exports.getRealPath = exports.base64EncodeFile = exports.base64EncodeImageFile = exports.pathSepEscaped = exports.copy = exports.moveFile = exports.getRelativePath = exports.unifyFilePath = exports.deleteFolder = exports.deleteFile = exports.createFile = exports.createFolder = exports.listFilesAndSubFoldersInFolder = exports.listSubFoldersInFolder = exports.listSasFilesInFolder = exports.listIniFilesInFolder = exports.listFilesInFolder = exports.readFileBinary = exports.readFile = exports.isFolder = exports.findFilesByName = exports.folderExists = exports.fileExists = void 0;
35
35
  const fs_extra_1 = __importDefault(require("fs-extra"));
36
36
  const path_1 = __importDefault(require("path"));
37
37
  const utils_1 = require("../utils");
@@ -55,6 +55,33 @@ function folderExists(folderPath) {
55
55
  });
56
56
  }
57
57
  exports.folderExists = folderExists;
58
+ /**
59
+ * Returns the paths of every file named `fileName` at or below `folder`.
60
+ * Node's own fs covers this now, so it replaces the unmaintained `find`
61
+ * package. Unreadable folders are skipped rather than throwing.
62
+ */
63
+ function findFilesByName(fileName, folder) {
64
+ const matches = [];
65
+ const walk = (dir) => {
66
+ let entries;
67
+ try {
68
+ entries = fs_extra_1.default.readdirSync(dir, { withFileTypes: true });
69
+ }
70
+ catch (_) {
71
+ return;
72
+ }
73
+ for (const entry of entries) {
74
+ const entryPath = path_1.default.join(dir, entry.name);
75
+ if (entry.isDirectory())
76
+ walk(entryPath);
77
+ else if (entry.name === fileName)
78
+ matches.push(entryPath);
79
+ }
80
+ };
81
+ walk(folder);
82
+ return matches;
83
+ }
84
+ exports.findFilesByName = findFilesByName;
58
85
  function isFolder(inputPath) {
59
86
  return __awaiter(this, void 0, void 0, function* () {
60
87
  return fs_extra_1.default.promises
package/file/file.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/file/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/file/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAyB;AACzB,gDAAuB;AACvB,oCAAuC;AACvC,wCAAyB;AACzB,oCAAsC;AAEtC,SAAsB,UAAU,CAAC,QAAgB;;QAC/C,OAAO,kBAAE,CAAC,QAAQ;aACf,MAAM,CAAC,QAAQ,EAAE,kBAAE,CAAC,SAAS,CAAC,IAAI,CAAC;aACnC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;CAAA;AALD,gCAKC;AAED,SAAsB,YAAY,CAAC,UAAkB;;QACnD,OAAO,kBAAE,CAAC,QAAQ;aACf,MAAM,CAAC,UAAU,EAAE,kBAAE,CAAC,SAAS,CAAC,IAAI,CAAC;aACrC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;CAAA;AALD,oCAKC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,QAAgB,EAAE,MAAc;IAC9D,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE;QAC3B,IAAI,OAAoB,CAAA;QAExB,IAAI;YACF,OAAO,GAAG,kBAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;SACvD;QAAC,OAAO,CAAC,EAAE;YACV,OAAM;SACP;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAE5C,IAAI,KAAK,CAAC,WAAW,EAAE;gBAAE,IAAI,CAAC,SAAS,CAAC,CAAA;iBACnC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;SAC1D;IACH,CAAC,CAAA;IAED,IAAI,CAAC,MAAM,CAAC,CAAA;IAEZ,OAAO,OAAO,CAAA;AAChB,CAAC;AAvBD,0CAuBC;AAED,SAAsB,QAAQ,CAAC,SAAiB;;QAC9C,OAAO,kBAAE,CAAC,QAAQ;aACf,KAAK,CAAC,SAAS,CAAC;aAChB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;aAClC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;CAAA;AALD,4BAKC;AAED,SAAsB,QAAQ,CAC5B,QAAgB,EAChB,WAA2B,MAAM;;QAEjC,OAAO,kBAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACjD,CAAC;CAAA;AALD,4BAKC;AAED,SAAsB,cAAc,CAAC,QAAgB;;QACnD,OAAO,kBAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACvC,CAAC;CAAA;AAFD,wCAEC;AAED,SAAsB,iBAAiB,CAAC,UAAkB;;QACxD,OAAO,kBAAE,CAAC,QAAQ;aACf,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAC5C,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,CAAC;CAAA;AAJD,8CAIC;AAED,SAAsB,oBAAoB,CAAC,UAAkB;;QAC3D,OAAO,CAAC,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CACtB,CAAA;IACH,CAAC;CAAA;AAJD,oDAIC;AACD;;;;;;;GAOG;AACH,SAAsB,oBAAoB,CACxC,UAAkB,EAClB,UAAmB,KAAK,EACxB,iBAA2B,EAAE;;QAE7B,MAAM,eAAe,GAAG,MAAM,8BAA8B,CAC1D,UAAU,EACV,OAAO,EACP,cAAc,CACf,CAAA;QACD,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;QAClE,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAZD,oDAYC;AAED,SAAsB,sBAAsB,CAC1C,UAAkB;;QAElB,OAAO,kBAAE,CAAC,QAAQ;aACf,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAC5C,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC3E,CAAC;CAAA;AAND,wDAMC;AAED,SAAsB,8BAA8B,CAClD,UAAkB,EAClB,UAAmB,IAAI,EACvB,iBAA2B,EAAE;;QAE7B,OAAO,kBAAE,CAAC,QAAQ;aACf,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAC5C,IAAI,CAAC,CAAO,IAAI,EAAE,EAAE;YACnB,IAAI,OAAO,EAAE;gBACX,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;gBAEtD,IAAI,UAAU,CAAC,MAAM,EAAE;oBACrB,IAAI,yBAAyB,GAAa,EAAE,CAAA;oBAE5C,MAAM,IAAA,oBAAY,EAChB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,EACnC,CAAO,CAAC,EAAE,EAAE;wBACV,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAA;wBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;4BACvC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;4BAEhD,yBAAyB,GAAG;gCAC1B,GAAG,yBAAyB;gCAC5B,GAAG,CACD,MAAM,8BAA8B,CAClC,OAAO,EACP,OAAO,EACP,cAAc,CACf,CACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;6BACtC,CAAA;yBACF;oBACH,CAAC,CAAA,CACF,CAAA;oBAED,OAAO;wBACL,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC1D,GAAG,yBAAyB;qBAC7B,CAAA;iBACF;aACF;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC,CAAA,CAAC,CAAA;IACN,CAAC;CAAA;AA5CD,wEA4CC;AAED,SAAsB,YAAY,CAChC,UAAkB;;QAElB,OAAO,kBAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,CAAC;CAAA;AAJD,oCAIC;AAED,SAAsB,UAAU,CAC9B,QAAgB,EAChB,OAAe,EACf,QAAyB;;QAEzB,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;QAClC,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,IAAI,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;YAC9C,eAAe,CAAC,GAAG,EAAE,CAAA;YACrB,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;YAEjD,IAAI,CAAC,CAAC,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE;gBACrC,MAAM,YAAY,CAAC,UAAU,CAAC,CAAA;aAC/B;SACF;QAED,OAAO,kBAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC3D,CAAC;CAAA;AAjBD,gCAiBC;AAED,SAAsB,UAAU,CAAC,QAAgB;;QAC/C,OAAO,kBAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC5B,CAAC;CAAA;AAFD,gCAEC;AAED,SAAsB,YAAY,CAAC,UAAkB;;QACnD,OAAO,kBAAE,CAAC,EAAE,CAAC,UAAU,EAAE;YACvB,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACZ,CAAC,CAAA;IACJ,CAAC;CAAA;AALD,oCAKC;AAED,SAAgB,aAAa,CAC3B,QAAgB,EAChB,SAAS,GAAG,cAAI,CAAC,GAAG,EACpB,kBAAkB,GAAG,GAAG;IAExB,MAAM,UAAU,GAA8B,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IAEtE,IAAI,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAC5C,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CACvC,CAAA;IAED,IAAI,WAAW,EAAE;QACf,MAAM,iBAAiB,GACrB,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,WAAW,CAAE,CAAC,CAAA;QAEzE,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;QAErC,OAAO,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;KAC3D;IAED,OAAO,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC3D,CAAC;AArBD,sCAqBC;AAED,SAAgB,eAAe,CAAC,IAAY,EAAE,EAAU;IACtD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;IACxC,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;IAEpC,IAAI,eAAe,GAAa,EAAE,CAAA;IAClC,IAAI,iBAAiB,GAAa,EAAE,CAAA;IAEpC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAkB,EAAE,CAAS,EAAE,EAAE;QACpD,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE;YACjE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SACjC;aAAM;YACL,IAAI,UAAU;gBAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SACnD;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;IAEjD,MAAM,oBAAoB,GAAG,IAAI,MAAM,CAAC,IAAI,cAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;IAC9E,MAAM,qBAAqB,GAAG,IAAI,MAAM,CACtC,GAAG,cAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CACtC,CAAA;IAED,MAAM,YAAY,GAChB,CAAC,iBAAiB,CAAC,MAAM;QACvB,CAAC,CAAC,KAAK,cAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAClD,CAAC,CAAC,IAAI,cAAI,CAAC,GAAG,EAAE,CAAC;QACnB,EAAE;aACC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;aACvB,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;aACjC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAA;IAEvC,OAAO,YAAY,CAAA;AACrB,CAAC;AAhCD,0CAgCC;AAED,SAAsB,QAAQ,CAC5B,WAAmB,EACnB,WAAmB;;QAEnB,OAAO,kBAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;IACrD,CAAC;CAAA;AALD,4BAKC;AAED,SAAsB,IAAI,CAAC,MAAc,EAAE,WAAmB;;QAC5D,OAAO,kBAAE,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACrC,CAAC;CAAA;AAFD,oBAEC;AAEY,QAAA,cAAc,GAAG,cAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AAE7D,SAAsB,qBAAqB,CAAC,QAAgB;;QAC1D,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5C,IAAI,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAA;YAEvD,IAAI,OAAO,KAAK,KAAK,EAAE;gBACrB,OAAO,GAAG,SAAS,CAAA;aACpB;YAED,OAAO,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACvE,CAAC,CAAC,CAAA;IACJ,CAAC;CAAA;AAVD,sDAUC;AAED,SAAsB,gBAAgB,CAAC,QAAgB;;QACrD,OAAO,kBAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC/D,CAAC;CAAA;AAFD,4CAEC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,kBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAC;AAFD,kCAEC;AAED,SAAsB,iBAAiB,CAAC,QAAgB;;QACtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACrD,IAAI,aAAa,EAAE;YACjB,OAAO,kBAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;SACtD;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACnC,OAAO,kBAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACvD,CAAC;CAAA;AARD,8CAQC;AAEM,MAAM,gBAAgB,GAAG,CAAO,QAAgB,EAAE,EAAE,kDACzD,OAAA,kBAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA,GAAA,CAAA;AADlB,QAAA,gBAAgB,oBACE;AAElB,QAAA,cAAc,GAAG,uBAAuB,CAAA;AAE9C,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,sBAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAAhE,QAAA,UAAU,cAAsD;AAE7E;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CAC/C,IAAI,MAAM,CAAC,mBAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAW,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAW,CAAC,EAAE,CAAA;AADnE,QAAA,aAAa,iBACsD"}
package/file/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { fileExists, folderExists, isFolder, readFile, readFileBinary, listFilesInFolder, listIniFilesInFolder, listSasFilesInFolder, listSubFoldersInFolder, listFilesAndSubFoldersInFolder, createFile, createFolder, createReadStream, createWriteStream, deleteFile, deleteFolder, getRelativePath, unifyFilePath, moveFile, pathSepEscaped, copy, base64EncodeImageFile, base64EncodeFile, getRealPath, isTestFile, testFileRegExp, getLineEnding } from './file';
1
+ export { fileExists, folderExists, findFilesByName, isFolder, readFile, readFileBinary, listFilesInFolder, listIniFilesInFolder, listSasFilesInFolder, listSubFoldersInFolder, listFilesAndSubFoldersInFolder, createFile, createFolder, createReadStream, createWriteStream, deleteFile, deleteFolder, getRelativePath, unifyFilePath, moveFile, pathSepEscaped, copy, base64EncodeImageFile, base64EncodeFile, getRealPath, isTestFile, testFileRegExp, getLineEnding } from './file';
2
2
  export { updateCsv, createCsv, readCsv } from './csvFile';
3
3
  export * from './getAbsolutePath';
package/file/index.js CHANGED
@@ -10,10 +10,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.readCsv = exports.createCsv = exports.updateCsv = exports.getLineEnding = exports.testFileRegExp = exports.isTestFile = exports.getRealPath = exports.base64EncodeFile = exports.base64EncodeImageFile = exports.copy = exports.pathSepEscaped = exports.moveFile = exports.unifyFilePath = exports.getRelativePath = exports.deleteFolder = exports.deleteFile = exports.createWriteStream = exports.createReadStream = exports.createFolder = exports.createFile = exports.listFilesAndSubFoldersInFolder = exports.listSubFoldersInFolder = exports.listSasFilesInFolder = exports.listIniFilesInFolder = exports.listFilesInFolder = exports.readFileBinary = exports.readFile = exports.isFolder = exports.folderExists = exports.fileExists = void 0;
13
+ exports.readCsv = exports.createCsv = exports.updateCsv = exports.getLineEnding = exports.testFileRegExp = exports.isTestFile = exports.getRealPath = exports.base64EncodeFile = exports.base64EncodeImageFile = exports.copy = exports.pathSepEscaped = exports.moveFile = exports.unifyFilePath = exports.getRelativePath = exports.deleteFolder = exports.deleteFile = exports.createWriteStream = exports.createReadStream = exports.createFolder = exports.createFile = exports.listFilesAndSubFoldersInFolder = exports.listSubFoldersInFolder = exports.listSasFilesInFolder = exports.listIniFilesInFolder = exports.listFilesInFolder = exports.readFileBinary = exports.readFile = exports.isFolder = exports.findFilesByName = exports.folderExists = exports.fileExists = void 0;
14
14
  var file_1 = require("./file");
15
15
  Object.defineProperty(exports, "fileExists", { enumerable: true, get: function () { return file_1.fileExists; } });
16
16
  Object.defineProperty(exports, "folderExists", { enumerable: true, get: function () { return file_1.folderExists; } });
17
+ Object.defineProperty(exports, "findFilesByName", { enumerable: true, get: function () { return file_1.findFilesByName; } });
17
18
  Object.defineProperty(exports, "isFolder", { enumerable: true, get: function () { return file_1.isFolder; } });
18
19
  Object.defineProperty(exports, "readFile", { enumerable: true, get: function () { return file_1.readFile; } });
19
20
  Object.defineProperty(exports, "readFileBinary", { enumerable: true, get: function () { return file_1.readFileBinary; } });
package/file/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+BA4Be;AA3Bb,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,gGAAA,QAAQ,OAAA;AACR,gGAAA,QAAQ,OAAA;AACR,sGAAA,cAAc,OAAA;AACd,yGAAA,iBAAiB,OAAA;AACjB,4GAAA,oBAAoB,OAAA;AACpB,4GAAA,oBAAoB,OAAA;AACpB,8GAAA,sBAAsB,OAAA;AACtB,sHAAA,8BAA8B,OAAA;AAC9B,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,wGAAA,gBAAgB,OAAA;AAChB,yGAAA,iBAAiB,OAAA;AACjB,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,gGAAA,QAAQ,OAAA;AACR,sGAAA,cAAc,OAAA;AACd,4FAAA,IAAI,OAAA;AACJ,6GAAA,qBAAqB,OAAA;AACrB,wGAAA,gBAAgB,OAAA;AAChB,mGAAA,WAAW,OAAA;AACX,kGAAA,UAAU,OAAA;AACV,sGAAA,cAAc,OAAA;AACd,qGAAA,aAAa,OAAA;AAGf,qCAAyD;AAAhD,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,kGAAA,OAAO,OAAA;AACtC,oDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+BA6Be;AA5Bb,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,uGAAA,eAAe,OAAA;AACf,gGAAA,QAAQ,OAAA;AACR,gGAAA,QAAQ,OAAA;AACR,sGAAA,cAAc,OAAA;AACd,yGAAA,iBAAiB,OAAA;AACjB,4GAAA,oBAAoB,OAAA;AACpB,4GAAA,oBAAoB,OAAA;AACpB,8GAAA,sBAAsB,OAAA;AACtB,sHAAA,8BAA8B,OAAA;AAC9B,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,wGAAA,gBAAgB,OAAA;AAChB,yGAAA,iBAAiB,OAAA;AACjB,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,gGAAA,QAAQ,OAAA;AACR,sGAAA,cAAc,OAAA;AACd,4FAAA,IAAI,OAAA;AACJ,6GAAA,qBAAqB,OAAA;AACrB,wGAAA,gBAAgB,OAAA;AAChB,mGAAA,WAAW,OAAA;AACX,kGAAA,UAAU,OAAA;AACV,sGAAA,cAAc,OAAA;AACd,qGAAA,aAAa,OAAA;AAGf,qCAAyD;AAAhD,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,kGAAA,OAAO,OAAA;AACtC,oDAAiC"}
@@ -1,14 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.isSpecialMissing = exports.choiceValidator = exports.confirmationValidator = exports.urlValidator = void 0;
7
- const valid_url_1 = __importDefault(require("valid-url"));
8
- const urlValidator = (value, errorMessage) => !!valid_url_1.default.isHttpUri(value) ||
9
- !!valid_url_1.default.isHttpsUri(value) ||
10
- value === '' ||
11
- errorMessage;
4
+ const url_1 = require("../utils/url");
5
+ const urlValidator = (value, errorMessage) => (0, url_1.isHttpUri)(value) || (0, url_1.isHttpsUri)(value) || value === '' || errorMessage;
12
6
  exports.urlValidator = urlValidator;
13
7
  const confirmationValidator = (value) => value === true || value === false;
14
8
  exports.confirmationValidator = confirmationValidator;
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/input/validators.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAgC;AAEzB,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,YAAoB,EAAE,EAAE,CAClE,CAAC,CAAC,mBAAQ,CAAC,SAAS,CAAC,KAAK,CAAC;IAC3B,CAAC,CAAC,mBAAQ,CAAC,UAAU,CAAC,KAAK,CAAC;IAC5B,KAAK,KAAK,EAAE;IACZ,YAAY,CAAA;AAJD,QAAA,YAAY,gBAIX;AAEP,MAAM,qBAAqB,GAAG,CAAC,KAAU,EAAE,EAAE,CAClD,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAA;AADtB,QAAA,qBAAqB,yBACC;AAE5B,MAAM,eAAe,GAAG,CAC7B,KAAa,EACb,eAAuB,EACvB,YAAoB,EACpB,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,eAAe,CAAC,IAAI,YAAY,CAAA;AAJ/C,QAAA,eAAe,mBAIgC;AAE5D,wCAAwC;AACxC,kCAAkC;AAC3B,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;IAC7C,wGAAwG;IACxG,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAEnE,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/input/validators.ts"],"names":[],"mappings":";;;AAAA,sCAAoD;AAE7C,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,YAAoB,EAAE,EAAE,CAClE,IAAA,eAAS,EAAC,KAAK,CAAC,IAAI,IAAA,gBAAU,EAAC,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,IAAI,YAAY,CAAA;AAD1D,QAAA,YAAY,gBAC8C;AAEhE,MAAM,qBAAqB,GAAG,CAAC,KAAU,EAAE,EAAE,CAClD,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAA;AADtB,QAAA,qBAAqB,yBACC;AAE5B,MAAM,eAAe,GAAG,CAC7B,KAAa,EACb,eAAuB,EACvB,YAAoB,EACpB,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,eAAe,CAAC,IAAI,YAAY,CAAA;AAJ/C,QAAA,eAAe,mBAIgC;AAE5D,wCAAwC;AACxC,kCAAkC;AAC3B,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;IAC7C,wGAAwG;IACxG,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAEnE,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B"}
package/logger/logger.js CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Logger = void 0;
7
- const consola_1 = __importDefault(require("consola"));
7
+ const consola_1 = require("consola");
8
8
  const isLowerThanOrEqualTo_1 = require("./isLowerThanOrEqualTo");
9
9
  const isNullOrUndefined_1 = require("./isNullOrUndefined");
10
10
  const logLevel_1 = require("./logLevel");
@@ -16,36 +16,36 @@ class Logger {
16
16
  this._logLevel = logLevel_1.LogLevel.Error;
17
17
  this.trace = (message, ...args) => {
18
18
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Trace)) {
19
- consola_1.default.debug(message, ...this.filterArgs(args));
19
+ consola_1.consola.debug(message, ...this.filterArgs(args));
20
20
  }
21
21
  };
22
22
  this.debug = (message, ...args) => {
23
23
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Debug)) {
24
- consola_1.default.debug(message, ...this.filterArgs(args));
24
+ consola_1.consola.debug(message, ...this.filterArgs(args));
25
25
  }
26
26
  };
27
27
  this.info = (message, ...args) => {
28
28
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Info)) {
29
- consola_1.default.info(message, ...this.filterArgs(args));
29
+ consola_1.consola.info(message, ...this.filterArgs(args));
30
30
  }
31
31
  };
32
32
  this.success = (message, ...args) => {
33
33
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Info)) {
34
- consola_1.default.success(message, ...this.filterArgs(args));
34
+ consola_1.consola.success(message, ...this.filterArgs(args));
35
35
  }
36
36
  };
37
37
  this.warn = (message, ...args) => {
38
38
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Warn)) {
39
- consola_1.default.warn(message, ...args);
39
+ consola_1.consola.warn(message, ...this.filterArgs(args));
40
40
  }
41
41
  };
42
42
  this.error = (message, ...args) => {
43
43
  if ((0, isLowerThanOrEqualTo_1.isLowerThanOrEqualTo)(this._logLevel, logLevel_1.LogLevel.Error)) {
44
- consola_1.default.error(message, ...this.filterArgs(args));
44
+ consola_1.consola.error(message, ...this.filterArgs(args));
45
45
  }
46
46
  };
47
47
  this.log = (message, ...args) => {
48
- consola_1.default.log(message, ...this.filterArgs(args));
48
+ consola_1.consola.log(message, ...this.filterArgs(args));
49
49
  };
50
50
  this.table = (data, options, disableStyling) => {
51
51
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
@@ -19,15 +19,13 @@
19
19
  @param [in] prefix= (mclib) first part of the returned libref. As librefs can
20
20
  be as long as 8 characters, a maximum length of 7 characters is premitted
21
21
  for this prefix.
22
- @param [in] maxtries= (1000) Deprecated parameter. Remains here to ensure a
23
- non-breaking change. Will be removed in v5.
24
22
 
25
23
  @version 9.2
26
24
  @author Allan Bowe
27
25
  **/
28
26
 
29
- %macro mf_getuniquelibref(prefix=mc,maxtries=1000);
30
- %local x;
27
+ %macro mf_getuniquelibref(prefix=mc);
28
+ %local x maxtries;
31
29
 
32
30
  %if ( %length(&prefix) gt 7 ) %then %do;
33
31
  %put %str(ERR)OR: The prefix parameter cannot exceed 7 characters.;
@@ -2,6 +2,7 @@
2
2
  @file
3
3
  @brief Retrieves a value from a dataset. Returned value is fetched from the
4
4
  'fetchobs=' record (row 1 by default), after applying the optional filter.
5
+ Returns a vartype-specific missing value if no row is returned.
5
6
 
6
7
  @details Be sure to <code>%quote()</code> your where clause. Example usage:
7
8
 
@@ -9,7 +10,7 @@
9
10
  %put %mf_getvalue(sashelp.class,name);
10
11
 
11
12
  <h4> SAS Macros </h4>
12
- @li mf_getattrn.sas
13
+ @li mf_getvartype.sas
13
14
 
14
15
  <h4> Related Macros </h4>
15
16
  @li mp_setkeyvalue.sas
@@ -18,27 +19,41 @@
18
19
  @param [in] variable the variable which contains the value to return.
19
20
  @param [in] filter= (1) contents of where clause
20
21
  @param [in] fetchobs= (1) observation to fetch. NB: Filter applies first.
22
+ @param [in] warn= (0) Set to 1 to raise a w@rning log message on attempt to
23
+ read past end of the input dataset.
24
+
21
25
 
22
26
  @version 9.2
23
27
  @author Allan Bowe
24
28
  **/
25
29
 
26
- %macro mf_getvalue(libds,variable,filter=1,fetchobs=1
30
+ %macro mf_getvalue(libds,variable,filter=1,fetchobs=1,warn=0
27
31
  )/*/STORE SOURCE*/;
28
- %local dsid;
32
+ %local dsid rc vartype;
33
+
34
+ %let vartype = %mf_getvartype(&libds,&variable);
29
35
 
30
36
  %let dsid=%sysfunc(open(&libds(where=(&filter))));
31
37
  %if (&dsid) %then %do;
32
- %local rc &variable;
33
38
  %syscall set(dsid);
34
39
  %let rc = %sysfunc(fetchobs(&dsid,&fetchobs));
35
40
  %if (&rc ne 0) %then %do;
36
- %put NOTE: Problem reading obs &fetchobs from &libds..;
37
41
  %put %sysfunc(sysmsg());
38
- /* Coerce an rc value of -1 (read past end of data) to a 4
39
- that, in SAS condition code terms, represents the sysmsg
40
- w@rning it generates. */
41
- %if &rc eq -1 %then %let rc = 4;
42
+ /* Set the requested variable to a missing value */
43
+ /* Need only consider numerics - char variables are already empty*/
44
+ %if (&vartype eq N) %then %let &variable = .;
45
+ %if (&warn) %then %do;
46
+ %if (&rc eq -1) %then %do; /* read past end of data */
47
+ %put %sysfunc(
48
+ compbl(
49
+ %quote(WARN%str(ING): Missing value returned as no rows were)
50
+ %quote(found in &libds for filter (%superq(filter)))
51
+ %quote(and/or fetchobs (&fetchobs).)
52
+ )
53
+ );
54
+ %let rc=4;
55
+ %end;
56
+ %end;
42
57
  /* And update SYSCC if the &rc value is higher */
43
58
  %let syscc = %sysfunc(max(&syscc,&rc));
44
59
  %end;
@@ -61,7 +61,7 @@
61
61
  @cond
62
62
  **/
63
63
 
64
- %macro mp_abort(mac=mp_abort.sas, type=, msg=, iftrue=%str(1=1)
64
+ %macro mp_abort(mac=mp_abort.sas, msg=, iftrue=%str(1=1)
65
65
  , errds=work.mp_abort_errds
66
66
  , mode=REGULAR
67
67
  )/*/STORE SOURCE*/;
@@ -215,7 +215,13 @@ and %superq(SYSPROCESSNAME) ne %str(Compute Server)
215
215
  put ',"_DEBUG":' debug ;
216
216
  if symexist('_metauser') then do;
217
217
  _METAUSER=quote(trim(symget('_METAUSER')));
218
- put ",""_METAUSER"": " _METAUSER;
218
+ put ',"_METAUSER": ' _METAUSER;
219
+ end;
220
+ /* _METAPERSON is not always set when _METAUSER is (e.g. Viya JES
221
+ sessions provide only _METAUSER) - guard it separately or SYMGET
222
+ raises "Invalid argument" and pollutes SYSERRORTEXT inside the
223
+ very abort JSON we are writing here. */
224
+ if symexist('_metaperson') then do;
219
225
  _METAPERSON=quote(trim(symget('_METAPERSON')));
220
226
  put ',"_METAPERSON": ' _METAPERSON;
221
227
  end;
@@ -20,7 +20,7 @@
20
20
  @param [in] desc= (Testing observations) The user provided test description
21
21
  @param [out] outds= (work.test_results) The output dataset to contain the
22
22
  results. If it does not exist, it will be created, with the following format:
23
- |TEST_DESCRIPTION:$256|TEST_RESULT:$4|TEST_COMMENTS:$256|
23
+ |TEST_DESCRIPTION:$256|TEST_RESULT:$5|TEST_COMMENTS:$256|
24
24
  |---|---|---|
25
25
  |User Provided description|PASS|Dataset &inds contained ALL columns|
26
26
 
@@ -35,7 +35,7 @@
35
35
  )/*/STORE SOURCE*/;
36
36
 
37
37
  data ;
38
- length test_result $4 test_description $256 test_comments $256;
38
+ length test_result $5 test_description $256 test_comments $256;
39
39
  test_description=symget('desc');
40
40
  test_comments="&sysmacroname: Test result of "!!symget('iftrue');
41
41
  %if %eval(%unquote(&iftrue)) %then %do;
@@ -35,11 +35,12 @@
35
35
  @param [in] desc= (0) The user provided test description
36
36
  @param [in] test= (ALL) The test to apply. Valid values are:
37
37
  @li ALL - Test is a PASS if ALL columns exist in &inds
38
- @li ANY - Test is a PASS if ANY of the columns exist in &inds
38
+ @li ANY - Test is a PASS if ANY of the columns exist in &inds - including
39
+ when all of them do
39
40
  @li NONE - Test is a PASS if NONE of the columns exist in &inds
40
41
  @param [out] outds= (work.test_results) The output dataset to contain the
41
42
  results. If it does not exist, it will be created, with the following format:
42
- |TEST_DESCRIPTION:$256|TEST_RESULT:$4|TEST_COMMENTS:$256|
43
+ |TEST_DESCRIPTION:$256|TEST_RESULT:$5|TEST_COMMENTS:$256|
43
44
  |---|---|---|
44
45
  |User Provided description|PASS|Dataset &inds contained ALL columns|
45
46
 
@@ -108,7 +109,7 @@
108
109
  %end;
109
110
 
110
111
  data;
111
- length test_result $4 test_description $256 test_comments $256;
112
+ length test_result $5 test_description $256 test_comments $256;
112
113
  test_description=symget('desc');
113
114
  if test_description='0'
114
115
  then test_description="Testing &inds for existence of &test of: &cols";
@@ -121,7 +122,8 @@
121
122
  %end;
122
123
  %end;
123
124
  %else %if &test=ANY %then %do;
124
- %if &result=SOME %then %do;
125
+ /* SOME or ALL - if every column exists then any of them does too */
126
+ %if &result ne NONE %then %do;
125
127
  test_result='PASS';
126
128
  %end;
127
129
  %end;
@@ -45,7 +45,7 @@
45
45
  @li NOVAL - Test is a PASS if there are NO matches in checkvals
46
46
  @param [out] outds= (work.test_results) The output dataset to contain the
47
47
  results. If it does not exist, it will be created, with the following format:
48
- |TEST_DESCRIPTION:$256|TEST_RESULT:$4|TEST_COMMENTS:$256|
48
+ |TEST_DESCRIPTION:$256|TEST_RESULT:$5|TEST_COMMENTS:$256|
49
49
  |---|---|---|
50
50
  |User Provided description|PASS|Column &indscol contained ALL target vals|
51
51
 
@@ -143,7 +143,7 @@
143
143
  )
144
144
 
145
145
  data;
146
- length test_result $4 test_description $256 test_comments $256;
146
+ length test_result $5 test_description $256 test_comments $256;
147
147
  test_description=symget('desc');
148
148
  test_result='FAIL';
149
149
  test_comments="&sysmacroname: &lib..&ds..&col has &result/&orig values "
@@ -25,7 +25,7 @@
25
25
  the provided integer
26
26
  @param [out] outds= (work.test_results) The output dataset to contain the
27
27
  results. If it does not exist, it will be created, with the following format:
28
- |TEST_DESCRIPTION:$256|TEST_RESULT:$4|TEST_COMMENTS:$256|
28
+ |TEST_DESCRIPTION:$256|TEST_RESULT:$5|TEST_COMMENTS:$256|
29
29
  |---|---|---|
30
30
  |User Provided description|PASS|Dataset &inds has XX obs|
31
31
 
@@ -87,7 +87,7 @@
87
87
  %end;
88
88
 
89
89
  data &ds;
90
- length test_result $4 test_description $256 test_comments $256;
90
+ length test_result $5 test_description $256 test_comments $256;
91
91
  test_description=symget('desc');
92
92
  test_result='FAIL';
93
93
  test_comments="&sysmacroname: Dataset &inds has &nobs observations.";
@@ -46,7 +46,7 @@
46
46
  scope snapshot
47
47
  @param [out] outds= (work.test_results) The output dataset to contain the
48
48
  results. If it does not exist, it will be created, with the following format:
49
- |TEST_DESCRIPTION:$256|TEST_RESULT:$4|TEST_COMMENTS:$256|
49
+ |TEST_DESCRIPTION:$256|TEST_RESULT:$5|TEST_COMMENTS:$256|
50
50
  |---|---|---|
51
51
  |User Provided description|PASS|No out of scope variables created or modified|
52
52
 
@@ -131,7 +131,7 @@
131
131
  %end;
132
132
 
133
133
  data ;
134
- length test_result $4 test_description $256 test_comments $256;
134
+ length test_result $5 test_description $256 test_comments $256;
135
135
  test_description=symget('desc');
136
136
  test_comments=symget('test_comments');
137
137
  test_result=symget('test_result');
@@ -41,7 +41,7 @@
41
41
  @li LABEL - Use the variable label (or name, if blank)
42
42
  @li NAME - Use the variable name
43
43
  @li SASJS - Used to create sasjs-formatted input CSVs, eg for use in
44
- mp_testservice.sas. This format will supply an input statement in the
44
+ mx_execute.sas. This format will supply an input statement in the
45
45
  first row, making ingestion by datastep a breeze. Special misisng values
46
46
  will be prefixed with a period (eg `.A`) to enable ingestion on both SAS 9
47
47
  and Viya. Dates / Datetimes etc are identified by the format type (lookup
@@ -93,7 +93,7 @@
93
93
  %if &headerformat=SASJS %then %do;
94
94
  %let delim=",";
95
95
  %let termstr=CRLF;
96
- %mcf_getfmttype(wrap=YES)
96
+ %mcf_getfmttype()
97
97
  %end;
98
98
  %else %if &dlm=COMMA %then %let delim=",";
99
99
  %else %let delim=";";