1
0
mirror of https://github.com/sasjs/adapter.git synced 2026-04-21 05:01:31 +00:00

Compare commits

...

355 Commits

Author SHA1 Message Date
Yury Shkoda 8e9cf98985 fix(deps): semantic-release, @sasjs/test-framework 2022-06-24 15:47:34 +03:00
Yury Shkoda c3a0ad1f41 fix(workflow): added actions/setup-node@v2 2022-06-20 20:43:11 +03:00
Yury Shkoda 9b6a42e412 fix(workflows): fixed npmpublish workflow 2022-06-20 20:33:44 +03:00
Yury Shkoda dd788ae423 chore(lint): fixed linting 2022-06-20 19:48:42 +03:00
Yury Shkoda a113c95441 chore(deps): added prettier dev dependency 2022-06-20 19:36:12 +03:00
Yury Shkoda 489947bcae chore(lint): fixed linting issues 2022-06-20 19:26:29 +03:00
Yury Shkoda 1596173dda fix(deps): regenerated package-lock 2022-06-20 19:24:09 +03:00
Allan Bowe bb1b2ddcb2 Merge pull request #719 from sasjs/issue-718
fix: parse the logs before appending the request to request array whe…
2022-06-20 17:53:44 +02:00
sabhas a3cc274ef1 chore: no need to appendRequest from then block when there is jobExecutionError 2022-06-10 15:38:03 +05:00
sabhas 451d0906fa chore: update error message 2022-06-10 15:31:09 +05:00
sabhas dd6b89b0d0 fix: parse the logs before appending the request to request array when server type is sasjs 2022-06-09 23:11:47 +05:00
Allan Bowe f0525c5796 Merge pull request #674 from sasjs/numeric-missing
fix: special missings accept - regular missing .
2022-05-23 14:11:30 +03:00
Allan Bowe 01bcfe176a Merge pull request #712 from sasjs/issue-711
When expires csrf token, re-fetch and empty webout fix
2022-05-23 14:03:42 +03:00
medjedovic 076ed1cc7a chore: added special missing test 2022-05-23 12:59:48 +02:00
medjedovic 0a3289b577 chore(git): Merge branch 'master' into numeric-missing 2022-05-23 12:47:13 +02:00
Allan Bowe cbb55ff426 chore: updating README in server tests to deploy backend 2022-05-20 17:43:49 +00:00
medjedovic 6d47174a5e fix: csrf token fetch and empty webout promise finish 2022-05-20 16:43:46 +02:00
Allan Bowe ae13ca523c Merge pull request #474 from sasjs/auto-tests
sasjs-tests automation
2022-05-17 12:17:08 +03:00
medjedovic 843cee4dbe chore: fixed test err handling 2022-05-16 15:42:12 +02:00
Yury Shkoda 1ac88ae102 chore: changed let to const 2022-05-12 10:04:38 +03:00
Yury Shkoda a79766c00c chore(cypress): removed comment 2022-05-12 09:54:27 +03:00
Yury Shkoda 3bc70b91b8 fix(npm): pined dep versions 2022-05-12 09:49:04 +03:00
Yury Shkoda b0b1c32180 feat(npm): ignored files not needed for npm package 2022-05-12 09:35:43 +03:00
Yury Shkoda 5b81e0bf4a chore: add blank lines at the end of the files 2022-05-12 09:14:24 +03:00
Yury Shkoda 54a33ac98a chore(lint): fixed lint issues in cypress folder 2022-05-12 09:06:52 +03:00
Yury Shkoda dd237ceeec feat(lint): add cypress folder to lint scripts 2022-05-12 09:06:05 +03:00
medjedovic 552540fb88 fix: sasjs log not append to requests 2022-05-11 23:00:32 +02:00
medjedovic 6d50d4030e chore(git): Merge branch 'master' into auto-tests 2022-05-11 18:00:03 +02:00
Allan Bowe 8856c3b6ec Merge pull request #708 from sasjs/client-deprecate
ClientID when login to SASJS server deprecation
2022-05-11 17:27:57 +03:00
Saad Jutt b8ea618f1e fix: removed getAuthCode function 2022-05-11 19:22:01 +05:00
Saad Jutt 10c72e6483 fix(login): making login requet with CSRF for SASJS server 2022-05-11 19:07:30 +05:00
Saad Jutt 9d03b54fba chore: Merge branch 'master' into client-deprecate 2022-05-11 19:02:37 +05:00
Allan Bowe 38ad9abfbc Merge pull request #709 from sasjs/lint-precommit
chore: running lint as pre-commit hook
2022-05-11 15:32:02 +03:00
medjedovic 42d9a85cfa chore: pull request template update 2022-05-11 14:24:09 +02:00
medjedovic 39f14cc5a0 chore: formatting 2022-05-11 12:04:44 +02:00
medjedovic 29a65052dc chore: pre commit hook 2022-05-10 14:54:34 +02:00
medjedovic 63328163ab chore: pre-push run lint 2022-05-10 14:09:41 +02:00
Allan Bowe aebf4ea8d8 Update pre-commit 2022-05-10 12:22:40 +01:00
Allan Bowe 59e3edf4b3 Update pre-commit 2022-05-10 11:42:35 +01:00
medjedovic 8f309143e9 chore: comment 2022-05-10 12:37:50 +02:00
medjedovic a65d4257a5 chore: running lint as pre-commit hook 2022-05-10 12:32:05 +02:00
medjedovic 5d2f1d306a style: lint 2022-05-09 16:08:49 +02:00
medjedovic f7bd63ee7f chore: removing clientid 2022-05-09 16:05:50 +02:00
medjedovic a4cd320272 chore: utils import fix 2022-05-09 15:47:24 +02:00
medjedovic c243f25477 fix: deprecating sasjs client id 2022-05-09 13:26:17 +02:00
medjedovic 382a19ccfc chore: ci 2022-05-04 13:19:26 +02:00
medjedovic acc56e3a53 chore: ci 2022-05-04 13:10:11 +02:00
medjedovic 1d0fb1774a ci: fix 2022-05-04 12:56:56 +02:00
medjedovic b67340cc70 chore: ci 2022-04-29 16:12:51 +02:00
medjedovic 831023fe1c chore: ci 2022-04-29 15:58:12 +02:00
medjedovic 04f7cdf8ff chore: ci 2022-04-29 15:42:33 +02:00
medjedovic d01a6a60ad chore: ci 2022-04-29 15:34:45 +02:00
medjedovic 7c17f0f584 chore: ci 2022-04-29 15:25:39 +02:00
medjedovic 092b995d14 ci: test 2022-04-29 15:23:21 +02:00
medjedovic eb296bf93c chore: ci fix 2022-04-29 14:53:20 +02:00
medjedovic e2e15ce8e1 fix: sasjs login login callback 2022-04-29 14:26:34 +02:00
medjedovic 3c59db91cd chore(git): Merge branch 'master' into auto-tests 2022-04-29 12:40:51 +02:00
medjedovic a97b2f43ca chore: sasjs login fix 2022-04-29 12:40:38 +02:00
medjedovic fdd3a261e5 chore: package-lock refresh 2022-04-29 11:24:24 +02:00
medjedovic f69e5afaf0 style: lint 2022-04-28 20:48:21 +02:00
medjedovic 7b78f65c4a fix: utils import, tests fix, auto testing script 2022-04-28 20:46:36 +02:00
Allan Bowe 72ed5e3fab chore: update test suite README with lrecl option 2022-04-28 11:11:46 +01:00
Muhammad Saad 6bfd7024ce Merge pull request #705 from sasjs/issue-703
sasjs server type - request and job execution auth fix
2022-04-27 19:18:44 -07:00
medjedovic aabe473ef6 style: lint 2022-04-27 16:26:37 +02:00
medjedovic 8a7d08c3b9 chore(git): Merge branch 'master' into auto-tests 2022-04-27 16:26:02 +02:00
medjedovic fdc3e1cce8 style: lint 2022-04-26 17:41:35 +02:00
medjedovic fc47222830 fix: web request method - login callback handling 2022-04-26 17:37:13 +02:00
Yury Shkoda 0a5de21386 Merge pull request #704 from sasjs/chore
chore: removed console.log
2022-04-26 17:34:58 +03:00
Yury Shkoda 1cbe57d512 chore: removed console.log 2022-04-26 17:25:21 +03:00
medjedovic 936e4f8c0a fix: sasjs server type - request and job execution auth fix 2022-04-26 16:18:36 +02:00
Allan Bowe 4ebf949912 Merge pull request #699 from sasjs/special-missing
Special missing function from @sasjs/utils
2022-04-26 13:54:11 +03:00
medjedovic c00c8007e5 chore: utils update 2022-04-26 12:27:55 +02:00
medjedovic 54516665bf chore: string escaping 2022-04-22 11:54:59 +02:00
medjedovic ecec2e77c0 chore: error improved 2022-04-21 15:45:59 +02:00
Allan Bowe 102898ac33 Merge pull request #700 from sasjs/parse-log-in-executeScript
fix: parse log in executeScript method on sasjs server
2022-04-18 21:31:31 +03:00
sabhas 7370a2be4c fix: can not read property map of undefined 2022-04-18 23:28:12 +05:00
sabhas 135d019026 chore: update tsdoc for executeScript method 2022-04-18 22:56:51 +05:00
sabhas e2651344d7 fix: parse log in executeScript method on sasjs server 2022-04-18 22:50:27 +05:00
medjedovic 9bf3885868 chore: test fix 2022-04-18 14:54:50 +02:00
medjedovic caa5aa47dc fix: isSpecialMissing from utils 2022-04-18 14:49:57 +02:00
Allan Bowe 7a42bc1b88 Merge pull request #698 from sasjs/executeScriptSASjs
feat: add method for executing scripts on sasjs server
2022-04-13 21:49:46 +03:00
Allan Bowe 6c02ee4cd6 Update SASjs.ts 2022-04-13 19:49:16 +01:00
sabhas 73ee214b61 feat: add method for executing scripts on sasjs server 2022-04-13 18:22:26 +05:00
Muhammad Saad 77487bfa35 Merge pull request #696 from sasjs/certificate-error
fix(error): throw Certificate error wherever possible
2022-04-08 14:32:02 -07:00
Saad Jutt 9cf0165cf7 chore(error): removed extra prefix of Error: 2022-04-08 14:13:41 +05:00
Saad Jutt e4d4b3142f chore: updated error message 2022-04-08 00:01:15 +05:00
Saad Jutt a87be39b44 fix(error): throw Certificate error wherever possible 2022-04-07 23:57:44 +05:00
Allan Bowe 8ea621ac98 Merge pull request #687 from sasjs/issue-686
fix: file upload on SASJS SERVER
2022-04-04 12:37:29 +03:00
medjedovic ea61119919 chore(git): Merge branch 'master' into issue-686 2022-03-31 15:09:21 +02:00
Allan Bowe 01235616a0 Merge pull request #690 from sasjs/issue-689
fix: update code for extracting JSON URL on viya4 when debug is enabled
2022-03-31 15:54:20 +03:00
Muhammad Saad 10051cb7d1 Merge pull request #692 from sasjs/deploy-to-sasjs-server
fix(deploy): to SASJS with complete JSON object
2022-03-31 17:18:17 +05:00
Saad Jutt 7b0ad2d60d chore: sasjs/utils version bump 2022-03-31 16:39:46 +05:00
Saad Jutt fc0a450e94 fix(deploy): to SASJS with complete JSON object 2022-03-31 04:20:49 +05:00
sabhas 6cab245cde fix: update code for extracting json url when debug is enabled 2022-03-30 01:22:03 +05:00
medjedovic ed90cd8036 chore: uploadFile test added 2022-03-28 17:32:30 +02:00
Allan Bowe 784bab4522 fix: adding README for new sendMacVars service 2022-03-28 12:30:01 +00:00
Allan Bowe ee97e8211e Merge pull request #685 from sasjs/issue-684
fix: blob is not defined
2022-03-28 14:26:58 +03:00
medjedovic b0eb8b07a8 style: lint 2022-03-25 18:11:20 +01:00
medjedovic 1d1ef7179e fix: file upload on SASJS SERVER
Also fixed appendRequest when debug on while on SASJS SERVER
2022-03-25 18:05:47 +01:00
sabhas d0eb1a7bfb fix: should not create blob in node 2022-03-24 02:43:14 +05:00
Allan Bowe 256e4ef314 Merge pull request #681 from sasjs/sasjs-deploy-with-streaming-app
feat(deploy): stream app deployment on SASJS server
2022-03-21 23:54:40 +02:00
Saad Jutt 6a6dfc5e9d chore: corrected authorised in SASjs.ts only 2022-03-22 02:49:46 +05:00
Saad Jutt 5140848039 chore: sasjs deploy return template type 2022-03-22 02:38:20 +05:00
Saad Jutt 31baf01d3e feat(deploy): stream app deployment on SASJS server 2022-03-22 01:18:02 +05:00
Allan Bowe 804e78cf0c Merge pull request #678 from sasjs/issue-677
fix: return requestPromise from sas9JobExecutor
2022-03-11 12:54:17 +02:00
sabhas f6a621fe46 chore: update comments 2022-03-11 14:22:45 +05:00
sabhas c47d0c9789 fix: return requestPromise from sas9JobExecutor #677 2022-03-11 14:16:44 +05:00
Allan Bowe 1ddc71b017 Create CNAME 2022-03-10 12:08:46 +00:00
Allan Bowe 3e507885ab Merge pull request #676 from sasjs/issue-675
fix: no need to stringify res/err in sas9JobExecutor before appending…
2022-03-10 14:06:50 +02:00
sabhas e92d0d73b5 chore: add comments 2022-03-10 16:17:09 +05:00
sabhas 00a99e752c fix: no need to stringify res/err in sas9JobExecutor before appending request #675 2022-03-10 15:44:38 +05:00
Allan Bowe b13f3d2fcb Merge pull request #667 from sasjs/sas-viya-auth-code-responses
fix: raising error with details we get from server
2022-03-09 11:34:40 +02:00
medjedovic d2ea67e5d6 chore: docs 2022-03-08 18:32:45 +01:00
medjedovic b0df4cb7ee fix: special missings accept - regular missing . 2022-03-08 18:28:48 +01:00
Allan Bowe 16f034766f Merge pull request #673 from sasjs/issue-672
fix: fallback to contextName from sasjs config if provided…
2022-03-07 15:44:19 +02:00
sabhas 31004da20d chore: lint fix 2022-03-07 18:01:12 +05:00
sabhas a607c56bb3 fix(issue-672): fallback to contextName from sasjs config if provided contextName is empty 2022-03-07 17:49:36 +05:00
Allan Bowe f372adca5b Merge pull request #666 from sasjs/fix-typedoc-configuration
fix: typedoc configuration
2022-03-04 12:24:33 +02:00
Allan Bowe 76a51a3e9c Merge pull request #671 from sasjs/issue-669
fix: Viya 4 provides incorrect memberCount in the folders API
2022-03-04 12:23:38 +02:00
sabhas 6adf8a2e78 chore: update comment 2022-03-04 15:08:50 +05:00
sabhas 5a92d96ba2 fix: Viya 4 provides incorrect memberCount 2022-03-04 14:47:35 +05:00
Yury Shkoda 827c93886a Merge pull request #668 from sasjs/special-missings
fix: special missing values
2022-03-04 11:07:31 +03:00
Yury Shkoda f6abb61c69 fix(convert-to-csv): return empty string if table is not an array 2022-03-03 17:31:23 +03:00
Yury Shkoda 4f3478c215 chore: Merge branch 'special-missings' of https://github.com/sasjs/adapter into special-missings 2022-03-03 15:13:58 +03:00
Yury Shkoda 5927910a52 refactor(convert-to-csv): change func arguments 2022-03-03 15:07:01 +03:00
medjedovic 88f1c2f843 chore: added viya web approach test (special missing) 2022-03-03 13:00:14 +01:00
Yury Shkoda ff5dc5f196 fix(special-missing): fix generateFileUploadForm func 2022-03-03 10:59:27 +03:00
Yury Shkoda f0f33cee52 chore(sasjs-tests): improve spelling and code readability 2022-03-03 10:58:51 +03:00
Saad Jutt 495e4b9069 test: updated RequestClient specs 2022-03-02 20:42:14 +05:00
Saad Jutt 2e843e3f36 fix: raising error with details we get from server 2022-03-02 20:25:56 +05:00
sabhas 1ee69cd6dc chore: use exact version 0.4.0 for typedoc-plugin-rename-defaults 2022-03-02 12:40:28 +05:00
sabhas 6b9e0ed2cf chore: merge master 2022-03-02 12:38:38 +05:00
sabhas 36d14bc75e chore: fix code styles 2022-03-02 12:25:18 +05:00
Yury Shkoda 82e061a09c Merge pull request #662 from sasjs/update-dependencies
chore(deps): update dependencies
2022-03-02 09:30:58 +03:00
sabhas 8de08bfc39 chore: update documentation 2022-03-02 00:17:42 +05:00
sabhas e317393132 fix: typedoc configuration fixed 2022-03-02 00:16:30 +05:00
medjedovic 888a2b9bd3 chore: test special missings with lowercase value 2022-03-01 17:17:11 +01:00
Allan Bowe b9defdd1dc Merge pull request #661 from sasjs/issue-660
fix(viya): updated getAccessTokenForViya with headers based on latest docs
2022-03-01 17:53:04 +02:00
medjedovic 6e8b19eda1 chore: special missings, test assertion improved, added failing test 2022-03-01 15:32:30 +01:00
Vladislav Parhomchik 83350b5dd8 chore(deps): update dependencies 2022-03-01 17:17:06 +03:00
Saad Jutt 2e14d4f28c test(viya): updated specs for getAccessTokenForViya 2022-03-01 17:53:04 +05:00
Saad Jutt 96cb77da45 fix(viya): updated getAccessTokenForViya with headers based on latest docs 2022-03-01 17:42:28 +05:00
Allan Bowe 1ee07eeecf Update README.md 2022-02-28 18:04:59 +00:00
Allan Bowe b4c0946883 Merge pull request #658 from sasjs/return-log-for-web-job-executor
fix: WebJobExecutor also returns log along result
2022-02-25 11:59:31 +02:00
Saad Jutt efcf3b273c fix: WebJobExecutor also returns log along result 2022-02-24 22:02:17 +05:00
Allan Bowe 761bf8de38 Merge pull request #657 from sasjs/sas9-job-execution-log-fix
fix: changed return code in case of job execution error
2022-02-24 15:53:07 +02:00
Saad Jutt 5ccfc18a35 fix: changed return code in case of job execution error 2022-02-24 04:06:18 +05:00
Muhammad Saad 92434e48ad Merge pull request #655 from sasjs/node-form-data-fix
fix: not to use NodeFormData function on web
2022-02-22 17:20:00 +05:00
Saad Jutt d3c91e143a fix: parse empty string in res to empty {} 2022-02-22 17:09:47 +05:00
Saad Jutt 872e73b5f0 fix: not to use NodeFormData function on web 2022-02-22 17:06:27 +05:00
Allan Bowe af4ad3a7af Merge pull request #654 from sasjs/axios-setting-for-larger-deploy-to-sasjs-server
fix: added additional params to axios POST while deploy to SASJS server
2022-02-22 13:21:12 +02:00
Saad Jutt 1ff67ed93c fix: added additional params to axios POST while deploy to SASJS server 2022-02-22 16:09:15 +05:00
Allan Bowe d2739d1791 Merge pull request #653 from sasjs/form-data-fix
fix: reverted sasjsJobExecutor no need for that
2022-02-22 11:15:16 +02:00
Allan Bowe 487cb489f3 fix: comments and logic tidy up 2022-02-22 08:38:25 +00:00
Saad Jutt d9cb2db61f fix: reverted sasjsJobExecutor no need for that 2022-02-22 06:53:29 +05:00
Muhammad Saad 35f37ac796 Merge pull request #650 from sasjs/sasjs-server-webout
fix: no need to parse if webout is an object
2022-02-21 15:54:12 +04:00
Saad Jutt d7ad0288b9 fix: no need to parse if webout is an object 2022-02-21 16:45:41 +05:00
Allan Bowe 9c98cabe6c Merge pull request #649 from sasjs/sasjs-server-log-parsing
fix: adopted new log structure of SASJS server
2022-02-20 23:27:36 +02:00
Saad Jutt a6f6897543 fix: adopted new log structure of SASJS server 2022-02-20 20:50:38 +05:00
Allan Bowe 2ea3925977 Merge pull request #647 from sasjs/issue-623
feat(sasjs-config): add optional attribute requestHistoryLimit
2022-02-18 16:25:49 +02:00
sabhas 489df78391 chore: lint fix 2022-02-18 15:30:24 +05:00
Allan Bowe 842c7f9b23 chore: adding docs for requestHistoryLimit 2022-02-17 20:46:09 +00:00
sabhas fe3f6d6287 feat(sasjs-config): add optional attribute requestHistoryLimit 2022-02-17 23:39:55 +05:00
munja 9728ebd98d chore: reducing dependabot limit to 2 per month 2022-02-17 11:07:03 +00:00
Allan Bowe 8e116d81d7 Merge pull request #641 from sasjs/issue-624
fix(special-missing): fix convertToCSV format object
2022-02-17 13:05:24 +02:00
Yury Shkoda fbca91144d test(generateFileUploadForm): add test data 2022-02-17 13:49:21 +03:00
Allan Bowe c392390147 Merge pull request #642 from sasjs/sasjs-server-job-executor
feat: execute job on SASJS server
2022-02-17 12:48:41 +02:00
Yury Shkoda 9b239abda0 test(generateFileUploadForm): add unit test 2022-02-17 13:34:13 +03:00
Allan Bowe 78945d9f45 Merge pull request #638 from sasjs/sasjsconfig-pathsasjs
fix: made pathsasjs non optional in sasjs config
2022-02-17 11:39:29 +02:00
Allan Bowe 1e0365de1c Merge pull request #643 from sasjs/sas9-deploy-bug
fix: reverted axios-cookiejar-support package
2022-02-17 11:38:29 +02:00
Saad Jutt c8d71b0267 fix: reverted axios-cookiejar-support package 2022-02-17 07:20:48 +05:00
Saad Jutt bfc534da15 feat: execute job on SASJS server 2022-02-17 02:01:19 +05:00
Yury Shkoda d3dff44918 fix(special-missings): fix convertToCSV format object 2022-02-16 17:13:00 +03:00
Yury Shkoda 4026b03005 Merge pull request #636 from sasjs/cli-issue-1108
feat(executeJobSASjs): add parse _webout in response
2022-02-15 12:46:55 +03:00
Yury Shkoda eab19a0e6e chore(deps): bump axios to fix follow-redirects issue 2022-02-15 09:59:26 +03:00
Yury Shkoda 1d7b7d654d chore(git): Merge remote-tracking branch 'origin/master' into cli-issue-1108 2022-02-15 09:52:05 +03:00
sabhas 2c4152a593 fix: made pathsasjs non optional in sasjs config 2022-02-14 02:02:41 +05:00
Allan Bowe de51946850 Merge pull request #637 from sasjs/sasjs-server-deployment-with-auth
fix(SASJS): sasjs server deployment with auth + refresh token bug
2022-02-11 18:20:35 +02:00
Saad Jutt ebd55c5b02 chore: provided JSDoc for deployToSASjs 2022-02-11 21:18:18 +05:00
Saad Jutt f48089cb8c fix(SASJS): sasjs server deployment with auth + refresh token bug 2022-02-11 21:04:51 +05:00
Yury Shkoda 30a99f9cc5 fix(executeJobSASjs): add parse webout response 2022-02-11 13:10:38 +03:00
Yury Shkoda b1979f63ef feat(executeJobSASjs): add _returnLog query option 2022-02-10 16:58:15 +03:00
Yury Shkoda 97c3cfd574 Merge pull request #622 from sasjs/update-dependencies
chore: update dependencies
2022-02-01 15:51:40 +03:00
Yury Shkoda 56df578ab2 chore(writeStream): refactor function and improve test 2022-01-31 10:21:20 +03:00
Yury Shkoda 556ab608c5 chore(jest-extended): fix jest-extended import 2022-01-31 10:20:53 +03:00
Yury Shkoda 0633a6de84 chore(deps): fix issues after deps bump 2022-01-31 10:20:05 +03:00
Vladislav Parhomchik a39f9bb7e8 chore: update dependencies 2022-01-26 14:11:41 +03:00
Yury Shkoda a0172337ea Merge pull request #617 from sasjs/axios-bump
Fix axios vulnerability
2022-01-18 22:01:35 +03:00
Yury Shkoda 56683bcee2 chore(npm): fixed all dependencies 2022-01-18 20:08:25 +03:00
Yury Shkoda 8d99612695 chore(ci/cd): add check npm audit step 2022-01-18 19:33:18 +03:00
Yury Shkoda f232fe158c chore(ci/cd): improve user list for review lottery 2022-01-18 19:32:40 +03:00
Yury Shkoda 11b218702b fix(dependencies): numped axios 2022-01-18 19:31:24 +03:00
Yury Shkoda a957e1d359 Merge pull request #615 from sasjs/issue-607
Support special missing values
2022-01-18 14:58:24 +03:00
Allan Bowe c6b25d2d49 chore(docs): adding SASJS as a valid serverType 2022-01-09 13:47:09 +00:00
Allan Bowe ca5eb1dbbe chore(docs): explaining the ability to export types using the webout() macro 2022-01-09 13:45:28 +00:00
Yury Shkoda c3bc3c051b chore(git): Merge branch 'issue-607' of https://github.com/sasjs/adapter into issue-607 2022-01-06 16:50:42 +03:00
Yury Shkoda dbb95b7763 feat: improve convertToCsv function 2022-01-06 16:49:58 +03:00
Allan Bowe 6ca887ba56 chore(docs): fixing missing param 2022-01-06 13:01:31 +00:00
Allan Bowe 70e26c57d9 chore(docs): updating readme with new special missing support. Also adding a .gitpod.yml file for a better gitpod experience. 2022-01-06 12:34:01 +00:00
Yury Shkoda 1a5c84cd0f test(formatDataForRequest): improved test coverage 2022-01-05 18:35:02 +03:00
Yury Shkoda fbce35b272 feat(nullVars): add SAS null vars support 2022-01-05 16:54:16 +03:00
Yury Shkoda 84ed3e7d03 chore(sasjs-tests): fixed npm dependencies and scripts 2022-01-05 16:51:00 +03:00
Yury Shkoda 0f7f3e0a11 Merge pull request #614 from sasjs/hot-fix-sasjs-server
fix(sasjs): restrict usage of localstorage for node env
2022-01-05 14:51:33 +03:00
Saad Jutt 437bbe114b fix(sasjs): restrict usage of localstorage for node env 2022-01-05 16:39:59 +05:00
Yury Shkoda 9f7870b804 Merge pull request #608 from sasjs/readme_update
chore(readme): support for special missings
2021-12-30 14:32:08 +03:00
munja 9f00cd646e chore(readme): support for special missings 2021-12-30 09:56:08 +00:00
Yury Shkoda 4e125ce38f Merge pull request #605 from sasjs/issue-604
Improve error handling and job/session state polling
2021-12-22 19:11:37 +03:00
Yury Shkoda 4a963ffbf5 feat(polling-state): improve logging 2021-12-22 18:46:06 +03:00
Yury Shkoda f25d9ec09d test(RequestClient): cover handleError method 2021-12-21 16:41:08 +03:00
Yury Shkoda 4197ad5aa8 test(RequestClient): fix error handling 2021-12-21 11:40:59 +03:00
Yury Shkoda 2ebd6e11ba test(RequestClient): fix error handling 2021-12-21 11:40:27 +03:00
Yury Shkoda 098e7f8590 fix(errors): fixed error handling function 2021-12-20 10:57:53 +03:00
Yury Shkoda 42aec96410 feat(pollJobState): improved loggging 2021-12-20 10:56:52 +03:00
Allan Bowe f2905ee169 Merge pull request #602 from sasjs/hot-fix-sasjs-server
fix: response from SASJS Server with/without debug on
2021-12-15 17:42:29 +00:00
Saad Jutt 1ba9291746 fix: response from SASJS Server with/without debug on 2021-12-15 21:32:02 +05:00
Muhammad Saad c44766ea14 Merge pull request #600 from sasjs/sasjs-server-access-refresh-tokens
feat: get access token & refresh tokens for server type SASJS
2021-12-15 12:56:57 +05:00
Saad Jutt 2c10b9c65c chore: typedoc updated 2021-12-13 17:01:59 +05:00
Saad Jutt c56874fe00 feat: login for web with server type SASJS 2021-12-09 17:13:47 +05:00
Saad Jutt ebe9c2ffeb feat: get access token & refresh tokens for server type SASJS 2021-12-09 11:43:50 +05:00
Allan Bowe b645d1495b Merge pull request #586 from sasjs/handle-sasjs-server-response
fix: handle sasjs server response
2021-12-08 09:09:42 +00:00
medjedovic 3a4a4c3460 chore: sasjs path optional 2021-12-06 17:44:08 +01:00
Saad Jutt 182de51f9b chore: added comments 2021-12-05 19:27:07 +05:00
Saad Jutt 712d1549c7 feat(server): added sasjs server support 2021-12-05 18:31:36 +05:00
Allan Bowe 5a478c8936 Merge pull request #594 from sasjs/issue-588
fix: sas9JobExecutor issues
2021-12-03 11:13:15 +00:00
medjedovic c9ecc1dde4 chore: requestClient naming 2021-12-03 11:54:52 +01:00
medjedovic bdf9e2fd5b fix: sas9JobExecutor not returning response 2021-11-26 15:32:10 +01:00
Vladislav Parhomchik 0b795b26c0 Merge pull request #589 from sasjs/issue-587
Pinned typedoc version to 0.19.2
2021-11-26 12:47:21 +03:00
medjedovic 96aac0cfa2 fix: Sas9JobExecutor appendRequest 2021-11-24 20:26:02 +01:00
Yury Shkoda a82e1f33e3 docs: update docs 2021-11-24 11:23:27 +03:00
Yury Shkoda 058c887cd3 chore(docs): pinned typedoc version 2021-11-24 11:19:41 +03:00
Allan Bowe 81d959c7c1 fix: parsing _webout from response regardless of debug status 2021-11-18 19:56:12 +00:00
sabhas 7c5adeabb5 feat: parse response in webJobExecutor when server type is sasjs server 2021-11-19 00:35:02 +05:00
Yury Shkoda cb88376bda Merge pull request #576 from sasjs/update-dependencies
chore(deps): update dependencies
2021-11-01 15:50:51 +03:00
Yury Shkoda 4c8ddeca25 chore(deps): regenerate package-lock with --legacy-peer-deps option 2021-11-01 15:26:31 +03:00
Yury Shkoda d264a3f239 chore(ci/cd): used node lts/fermium for GH actions 2021-11-01 14:58:27 +03:00
Yury Shkoda 840b1aa1bf chore(deps): regenerate package-lock.json 2021-11-01 14:47:48 +03:00
Yury Shkoda e26fd307c8 chore(git): merge branch 'master' into update-dependencies 2021-11-01 14:45:38 +03:00
Allan Bowe 62deaf9f03 Merge pull request #581 from sasjs/package-lock-and-node-version
fix: updated package-lock + updated node version for workflow
2021-10-29 09:35:50 +01:00
Saad Jutt 865bf71f7d fix: updated package-lock + updated node version for workflow 2021-10-29 13:32:59 +05:00
Allan Bowe 734c5bccaa Merge pull request #564 from sasjs/issue-555
BREAKING CHANGE: boolean allowInsecure is replaced with Https Agent Config
2021-10-29 09:12:56 +01:00
Saad Jutt bc82cb5f5e chore: TSDoc comment updated 2021-10-29 00:29:14 +05:00
Allan Bowe f25c76fdfd fix: merge 2021-10-28 13:50:29 +00:00
Allan Bowe e649b41e9e Merge pull request #579 from sasjs/sasjs/server-support
chore: removed legacy code
2021-10-28 14:02:17 +01:00
Yury Shkoda a962979765 chore: removed legacy code 2021-10-28 15:44:17 +03:00
Yury Shkoda 01d76fa66f Merge pull request #574 from sasjs/sasjs/server
Add sasjs/server support
2021-10-28 15:36:45 +03:00
Yury Shkoda 49cfde9f7d chore(sasjs/server): fix deploy endpoint 2021-10-28 15:13:14 +03:00
Yury Shkoda ce04ffea05 fix(SASjsApiClient): change SASjs Server endpoints 2021-10-28 10:21:15 +03:00
medjedovic 9dc0499f66 chore: allow insecure remove 2021-10-27 13:20:59 +02:00
Allan Bowe bc1a7dc54f chore: lint fix 2021-10-27 09:53:42 +00:00
Allan Bowe 93c267fd4e Update AuthManager.ts 2021-10-27 12:20:40 +03:00
Yury Shkoda 0457eb6663 fix: fix calls to SASjsApi endpoints 2021-10-27 11:16:35 +03:00
Yury Shkoda 519494718b chore: address PR comments 2021-10-27 11:15:28 +03:00
Vladislav Parhomchik de5c38f0fb chore(deps): versions fix, authmanager default returns 2021-10-26 15:46:51 +03:00
Vladislav Parhomchik 208470e7d9 chore(deps): update dependencies 2021-10-26 13:06:03 +03:00
Yury Shkoda 0321f77451 chore: update dependencies 2021-10-20 15:08:58 +03:00
Yury Shkoda 6c5fdc01eb chore: merge branch 'sasjs/server' of https://github.com/sasjs/adapter into sasjs/server 2021-10-20 15:05:03 +03:00
Yury Shkoda 2aa0cd8d7a chore: remove tmp utilities 2021-10-20 15:01:21 +03:00
Yury Shkoda 397bc4524f chore: change 'SASBase' to 'SASjs' 2021-10-20 15:00:52 +03:00
Yury Shkoda 8dce9f3e48 chore(npm): update @sasjs/utils version 2021-10-20 14:59:02 +03:00
medjedovic 8e9f1df1ce chore: fixing the error when using in angular, added isNode check for imports 2021-10-12 16:45:39 +02:00
Saad Jutt ff4915f7f3 chore: comment file removed 2021-10-07 13:47:28 +05:00
Saad Jutt 6ff8eece7b chore: removed httpsAgent type + clean up 2021-10-07 13:45:50 +05:00
Saad Jutt 2849e6ed07 test(RequestClient): updated 2021-10-06 14:06:00 +05:00
Yury Shkoda 90b11fe3fa feat(deploy): add appLoc 2021-10-04 17:01:25 +03:00
Yury Shkoda 147609842d Merge pull request #565 from sasjs/modifying-npmignore
chore: add .all-contributorsrc to .npmignore
2021-10-04 09:17:54 +03:00
Yury Shkoda dd6f9cd617 chore(npm): add empty line to the end of .npmignore 2021-10-04 09:10:37 +03:00
Saad Jutt 7f590c35da test(RequestClient): fixed to use actual axios 2021-10-01 15:42:04 +05:00
Vladislav Parhomchik a38de108e3 chore: add .all-contributorsrc to .npmignore 2021-10-01 10:31:30 +03:00
Saad Jutt e975e7de97 test(RequestClient): specs for communicating with self-signed server 2021-10-01 12:03:44 +05:00
Yury Shkoda d418a7e971 fix(http): extend valid responce statuses up to 400 2021-09-30 14:33:33 +03:00
Yury Shkoda a5b5052a5f fix(baseSAS): removed sasjs/server logic 2021-09-30 14:31:54 +03:00
Yury Shkoda 7638595523 chore(git): fix .gitignore 2021-09-30 14:30:47 +03:00
Allan Bowe 70d64f6eec Merge pull request #556 from sasjs/test-framework
chore: bump up test-framework
2021-09-29 22:42:54 +01:00
Saad Jutt f0ecfa57e5 BREAKING CHANGE: boolean allowInsecure is replaced configuration of Https Agent 2021-09-28 16:02:12 +05:00
Yury Shkoda 5f3416ecd7 chore(utils): add tmpFolder utils 2021-09-28 10:39:54 +03:00
Yury Shkoda d8b1a72da2 chore(types): add FileTree types 2021-09-28 10:39:18 +03:00
Yury Shkoda 7e64819eb2 feat(sasjs/server): add SASBaseApiClient class 2021-09-28 10:38:29 +03:00
Yury Shkoda 2f1d403af4 chore(deps): use @sasjs/utils tarball 2021-09-28 10:33:11 +03:00
Yury Shkoda 075d410f7d chore(git): ignore tmp folder 2021-09-28 10:31:36 +03:00
Muhammad Saad f964bcef9e Merge pull request #559 from sasjs/job-executor-bugs
fix: Job executor bugs
2021-09-22 20:08:17 +05:00
Allan Bowe 5784232d4e chore: updating readme 2021-09-20 17:50:18 +00:00
Yury Shkoda 70ecc8b50e Merge pull request #553 from sasjs/update-deps
chore(deps): update dependencies
2021-09-20 15:48:57 +03:00
Saad Jutt 369a035e8a fix(webJobExecutor): append resend request for viya's getJobUri authentication 2021-09-20 13:28:41 +05:00
Saad Jutt e5655033c1 fix(jobExecutor): appending resend requests before login call 2021-09-20 12:52:49 +05:00
Yury Shkoda c7af30bfa3 chore(deps): add caret to axios version 2021-09-17 16:36:22 +03:00
Yury Shkoda c8da3a54cf chore(axios): override default request transformer 2021-09-17 16:29:15 +03:00
Yury Shkoda 100da16803 chore(deps): bump axios to 0.21.4 2021-09-17 16:28:44 +03:00
Allan Bowe dc91679040 Merge pull request #558 from sasjs/issue-554
fix: viya debug response null due to wrong content-type
2021-09-17 15:18:58 +03:00
medjedovic 28c8ebfc65 fix: viya debug response null due to wrong content-type 2021-09-16 14:58:18 +02:00
Yury Shkoda 0c4d30afe3 Merge pull request #557 from sasjs/dependabot-upd
chore(dependabot): change schedule interval
2021-09-16 14:18:27 +03:00
Yury Shkoda bc015b72b6 chore(dependabot): change schedule interval 2021-09-16 14:08:53 +03:00
medjedovic 085a3f84e9 chore: bump up test-framework 2021-09-16 10:37:56 +02:00
Yury Shkoda f241d75f0a chore(deps): pin axios version to 0.21.1 2021-09-14 17:23:19 +03:00
Muhammad Saad 8a883c09f6 Merge pull request #549 from sasjs/improvements-file-uploader
fix: FileUploader extends BaseJobExecutor
2021-09-14 18:47:26 +05:00
Vladislav Parhomchik 42d01b4044 chore(deps): update dependencies 2021-09-14 11:09:47 +03:00
Saad Jutt 15ff90025a fix(fileUploader): added loginCallback 2021-09-14 05:58:40 +05:00
Saad Jutt 10cf4998f5 fix(loginPrompt): z-index added 2021-09-13 18:02:26 +05:00
Saad Jutt f714f20f29 chore(fileUploader): support loginCallback and re-submit request 2021-09-13 17:45:35 +05:00
Saad Jutt 19adcc3115 chore: FileUploader extends BaseJobExecutor 2021-09-13 17:42:41 +05:00
Muhammad Saad bb6b25bac7 Merge pull request #548 from sasjs/code-improvements
chore(imprvements): code changes for fileUploader
2021-09-13 17:40:00 +05:00
Saad Jutt ec9dbd7ad6 chore(imprvements): code changes for fileUploader 2021-09-13 07:30:26 +05:00
Allan Bowe 2cfba99bda Merge pull request #540 from sasjs/issue-532
fix: move SASjsRequest array from BaseJobExecutor class to RequestClient class
2021-09-11 17:17:33 +03:00
Krishna Acondy 2ccc7b5499 chore(request-client): rename method 2021-09-09 07:41:20 +01:00
sabhas 9c099b899c fix: If the request client has already been instantiated, update config 2021-09-09 11:03:48 +05:00
sabhas d52c5b26a0 chore: merge master into issue-532 2021-09-08 15:16:06 +05:00
sabhas 46ef7b19f6 fix: before instantiating RequestClient check if its already instantiated 2021-09-08 15:02:22 +05:00
sabhas 73f50c0435 chore: merge master into issue-532 2021-09-06 13:39:58 +05:00
sabhas 5ee57f3d07 chore: added jsdoc header 2021-09-03 14:54:35 +05:00
sabhas 146b0715bf fix: set debug: false in config of fileUploader tests 2021-09-03 13:57:39 +05:00
sabhas dfc1d567a5 fix: append sasjs requests array from uploadFile 2021-09-03 13:55:49 +05:00
sabhas 779200f5fc fix: throw error if null or undefined is passed to getValidJson 2021-09-03 13:54:02 +05:00
sabhas cf4c4cfca9 fix: move SASjsRequest array from BaseJobExecutor class to RequestClient class 2021-09-03 13:51:58 +05:00
medjedovic 1e5e803c92 chore(git): Merge branch 'master' into auto-tests 2021-08-16 13:49:38 +02:00
medjedovic ad34a9a4db chore: sleep removed 2021-08-16 12:12:52 +02:00
medjedovic 11e006741f chore: openvpn version 2021-08-16 11:17:41 +02:00
medjedovic 0bf385d1e0 fix: login issues 2021-07-29 14:27:17 +02:00
medjedovic b217499b59 chore: addressing comments 2021-07-28 18:18:26 +02:00
medjedovic d123296359 chore: code comment 2021-07-27 14:55:24 +02:00
medjedovic 50ab866652 style: lint 2021-07-27 14:15:23 +02:00
medjedovic f1252537a6 chore(git): Merge branch 'fixing-sas9-tests' into auto-tests 2021-07-27 14:12:11 +02:00
medjedovic b1682b6f32 ci: script test done 2021-07-27 14:07:16 +02:00
medjedovic ded7990096 fix: viya with web approach adding 2 underscores in front of program param 2021-07-27 14:05:34 +02:00
medjedovic 52e95e3455 ci: script test 2021-07-27 12:38:33 +02:00
medjedovic 1d13252045 ci: script test 2021-07-27 12:19:14 +02:00
medjedovic f4630309de chore: ci script fixing 2021-07-27 12:18:44 +02:00
medjedovic 27b6e46973 chore(git): Merge branch 'master' into auto-tests 2021-07-26 19:45:23 +02:00
medjedovic e5262a18d4 chore: sending message to slack if cypress with sasjs-tests fails 2021-07-26 19:38:59 +02:00
medjedovic cf10e83e91 test: cypress running with debug on and off, testing all request approaches 2021-07-26 19:16:47 +02:00
medjedovic 0bd156141c chore(git): Merge branch 'master' into fixing-sas9-tests 2021-07-26 14:53:52 +02:00
medjedovic 890608a3e8 test: requests for every approach 2021-07-26 14:52:26 +02:00
medjedovic a615c5fdb6 style: lint 2021-07-24 18:07:17 +02:00
medjedovic ca7ee83f7f chore: fixing multiple login attempts by adding pause between calling functions 2021-07-24 18:06:15 +02:00
medjedovic 97a530cc66 style: lint 2021-07-22 14:44:13 +02:00
medjedovic 317c8c81a0 chore: JES test disable on SAS9 2021-07-22 13:48:11 +02:00
medjedovic c87776ca1b chore(git): Merge branch 'master' into fixing-sas9-tests 2021-07-22 13:44:23 +02:00
medjedovic 04032831c3 fix: debug on test & make error and parse log test 2021-07-22 13:43:50 +02:00
medjedovic c8fb141048 chore: run sasjs testing as a part of npm release 2021-07-20 11:19:41 +02:00
medjedovic a429581089 test: fix 2021-07-16 12:32:48 +02:00
medjedovic dd05258dd2 test: fixing 2021-07-16 12:32:35 +02:00
medjedovic c0e5327e49 chore: cypress fix 2021-07-16 12:09:59 +02:00
medjedovic ffba2acad0 chore: script fix 2021-07-16 12:02:03 +02:00
medjedovic 64c624bf2e chore: config.json fix 2021-07-16 11:56:15 +02:00
medjedovic 2506d28dd4 chore: script fdix deploy sas9 2021-07-16 11:41:18 +02:00
medjedovic b6a438d222 chore: script fix 2021-07-16 11:38:17 +02:00
medjedovic 6f24a55a04 chore: script replace in files install timing 2021-07-16 11:35:15 +02:00
medjedovic 55045eb101 chore: script adapter version 2021-07-16 11:33:21 +02:00
medjedovic f5e367a645 chore: cpn added 2021-07-16 11:29:22 +02:00
medjedovic 017dc3a8b5 chore: script fix 2021-07-16 11:27:53 +02:00
medjedovic 7285a3f40b chore: adding known_hosts 2021-07-16 11:23:49 +02:00
medjedovic 438b39ceca chore: script fix 2021-07-16 11:20:26 +02:00
medjedovic a39b9ea38f chore: auto deploying sasjs-tests 2021-07-16 11:14:42 +02:00
medjedovic 836c3ba518 chore(git): Merge branch 'master' into auto-tests 2021-07-16 10:22:50 +02:00
medjedovic 2d2b4660dc chore(git): Merge branch 'tests-fixing' into auto-tests 2021-07-16 10:21:13 +02:00
medjedovic f25035ae1d chore: cypress added and sasjs test written 2021-07-15 14:30:51 +02:00
medjedovic ff32f648da chore: tests fixing 2021-07-15 13:41:39 +02:00
311 changed files with 54578 additions and 97324 deletions
+12
View File
@@ -0,0 +1,12 @@
#!/bin/sh
# Using `--silent` helps for showing any errs in the first line of the response
# The first line is picked up by the VS Code GIT UI popup when rc is not 0
if npm run --silent lint:silent ; then
exit 0
else
npm run --silent lint:fix
echo "❌ Prettier check failed! We ran lint:fix for you. Please add & commit again."
exit 1
fi
+3 -3
View File
@@ -1,7 +1,7 @@
version: 2 version: 2
updates: updates:
- package-ecosystem: npm - package-ecosystem: npm
directory: "/" directory: '/'
schedule: schedule:
interval: daily interval: monthly
open-pull-requests-limit: 10 open-pull-requests-limit: 2
-3
View File
@@ -2,11 +2,8 @@ groups:
- name: SASjs Devs # name of the group - name: SASjs Devs # name of the group
reviewers: 1 # how many reviewers do you want to assign? reviewers: 1 # how many reviewers do you want to assign?
usernames: # github usernames of the reviewers usernames: # github usernames of the reviewers
- krishna-acondy
- YuryShkoda - YuryShkoda
- saadjutt01
- medjedovicm - medjedovicm
- allanbowe
- sabhas - sabhas
- name: SASjs QA - name: SASjs QA
reviewers: 1 reviewers: 1
+30
View File
@@ -0,0 +1,30 @@
cipher AES-256-CBC
setenv FORWARD_COMPATIBLE 1
client
server-poll-timeout 4
nobind
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 443 tcp
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 1194 udp
remote vpn.analytium.co.uk 1194 udp
dev tun
dev-type tun
ns-cert-type server
setenv opt tls-version-min 1.0 or-highest
reneg-sec 604800
sndbuf 0
rcvbuf 0
# NOTE: LZO commands are pushed by the Access Server at connect time.
# NOTE: The below line doesn't disable LZO.
comp-lzo no
verb 3
setenv PUSH_PEER_INFO
ca ca.crt
cert user.crt
key user.key
tls-auth tls.key 1
+67 -7
View File
@@ -4,7 +4,6 @@
name: SASjs Build name: SASjs Build
on: on:
push:
pull_request: pull_request:
jobs: jobs:
@@ -13,25 +12,86 @@ jobs:
strategy: strategy:
matrix: matrix:
node-version: [15.x] node-version: [lts/fermium]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }} - name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1 uses: actions/setup-node@v2
with: with:
node-version: ${{ matrix.node-version }} node-version: ${{ matrix.node-version }}
cache: npm
- name: Check npm audit
run: npm audit --production --audit-level=low
- name: Install Dependencies - name: Install Dependencies
run: npm ci run: npm ci
- name: Check code style - name: Check code style
run: npm run lint run: npm run lint
- name: Run unit tests - name: Run unit tests
run: npm test run: npm test
- name: Generate coverage report
uses: artiomtr/jest-coverage-report-action@v2.0-rc.2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Build Package - name: Build Package
run: npm run package:lib run: npm run package:lib
env: env:
CI: true CI: true
- name: Install SSH Key
uses: shimataro/ssh-key-action@v2
with:
key: ${{ secrets.DCGITLAB_KEY }}
known_hosts: 'placeholder'
- name: Write VPN Files
run: |
echo "$CA_CRT" > .github/vpn/ca.crt
echo "$USER_CRT" > .github/vpn/user.crt
echo "$USER_KEY" > .github/vpn/user.key
echo "$TLS_KEY" > .github/vpn/tls.key
shell: bash
env:
CA_CRT: ${{ secrets.CA_CRT}}
USER_CRT: ${{ secrets.USER_CRT }}
USER_KEY: ${{ secrets.USER_KEY }}
TLS_KEY: ${{ secrets.TLS_KEY }}
- name: Install Open VPN
run: |
sudo apt install apt-transport-https
sudo wget https://swupdate.openvpn.net/repos/openvpn-repo-pkg-key.pub
sudo apt-key add openvpn-repo-pkg-key.pub
sudo wget -O /etc/apt/sources.list.d/openvpn3.list https://swupdate.openvpn.net/community/openvpn3/repos/openvpn3-focal.list
sudo apt update
sudo apt install openvpn3=16~beta+focal
- name: Start Open VPN 3
run: openvpn3 session-start --config .github/vpn/config.ovpn
- name: Deploy sasjs-tests
run: |
npm install -g replace-in-files-cli
cd sasjs-tests
replace-in-files --regex='"@sasjs/adapter".*' --replacement='"@sasjs/adapter":"latest",' ./package.json
npm i
replace-in-files --regex='"serverUrl".*' --replacement='"serverUrl":"${{ secrets.SASJS_SERVER_URL }}",' ./public/config.json
replace-in-files --regex='"userName".*' --replacement='"userName":"${{ secrets.SASJS_USERNAME }}",' ./public/config.json
replace-in-files --regex='"password".*' --replacement='"password":"${{ secrets.SASJS_PASSWORD }}",' ./public/config.json
replace-in-files --regex='"serverType".*' --replacement='"serverType":"SASJS",' ./public/config.json
npm run update:adapter && npm run build
scp -o stricthostkeychecking=no -r ./build/* ${{ secrets.DCGITLAB_DEPLOY_PATH_VIYA }}
- name: Run cypress on sasjs
run: |
replace-in-files --regex='"sasjsTestsUrl".*' --replacement='"sasjsTestsUrl":"${{ secrets.SASJS_TEST_URL_VIYA }}",' ./cypress.json
replace-in-files --regex='"username".*' --replacement='"username":"${{ secrets.SASJS_USERNAME }}",' ./cypress.json
replace-in-files --regex='"password".*' --replacement='"password":"${{ secrets.SASJS_PASSWORD }}",' ./cypress.json
sh ./sasjs-cypress-run.sh ${{ secrets.DISCORD_WEBHOOK }} https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}
# For some reason if coverage report action is run before other commands, those commands can't access the directories and files on which they depend on
- name: Generate coverage report
uses: artiomtr/jest-coverage-report-action@v2.0-rc.2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
+15 -2
View File
@@ -11,15 +11,28 @@ on:
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy:
matrix:
node-version: [lts/fermium]
steps: steps:
- name: Checkout - uses: actions/checkout@v2
uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Install Dependencies - name: Install Dependencies
run: npm ci run: npm ci
- name: Check code style - name: Check code style
run: npm run lint run: npm run lint
- name: Build Project - name: Build Project
run: npm run build run: npm run build
- name: Semantic Release - name: Semantic Release
uses: cycjimmy/semantic-release-action@v2 uses: cycjimmy/semantic-release-action@v2
env: env:
+2
View File
@@ -0,0 +1,2 @@
tasks:
- init: npm install && npm run build
+11
View File
@@ -3,3 +3,14 @@ docs/
.github/ .github/
*.md *.md
*.spec.ts *.spec.ts
.all-contributorsrc
cypress/
.gitpod.yml
.prettierrc
cypress.json
jest.config.js
sasjs-cypress-run.sh
tsconfig.json
tslint.json
typedoc.json
webpack.config.js
+1 -1
View File
@@ -16,5 +16,5 @@ No PR (that involves a non-trivial code change) should be merged, unless all ite
- [ ] All `sasjs-cli` unit tests are passing (`npm test`). - [ ] All `sasjs-cli` unit tests are passing (`npm test`).
- [ ] All `sasjs-tests` are passing (instructions available [here](https://github.com/sasjs/adapter/blob/master/sasjs-tests/README.md)). - (CI Runs this) All `sasjs-tests` are passing. If you want to run it manually (instructions available [here](https://github.com/sasjs/adapter/blob/master/sasjs-tests/README.md)).
- [ ] [Data Controller](https://datacontroller.io) builds and is functional on both SAS 9 and Viya - [ ] [Data Controller](https://datacontroller.io) builds and is functional on both SAS 9 and Viya
+106 -18
View File
@@ -20,9 +20,9 @@
SASjs is a open-source framework for building Web Apps on SAS® platforms. You can use as much or as little of it as you like. This repository contains the JS adapter, the part that handles the to/from SAS communication on the client side. There are 3 ways to install it: SASjs is a open-source framework for building Web Apps on SAS® platforms. You can use as much or as little of it as you like. This repository contains the JS adapter, the part that handles the to/from SAS communication on the client side. There are 3 ways to install it:
1 - `npm install @sasjs/adapter` - for use in a node project 1 - `npm install @sasjs/adapter` - for use in a nodeJS project (recommended)
2 - [Download](https://cdn.jsdelivr.net/npm/@sasjs/adapter@2/index.js) and use a copy of the latest JS file 2 - [Download](https://cdn.jsdelivr.net/npm/@sasjs/adapter@3/index.min.js) and use a copy of the latest JS file
3 - Reference directly from the CDN - in which case click [here](https://www.jsdelivr.com/package/npm/@sasjs/adapter?tab=collection) and select "SRI" to get the script tag with the integrity hash. 3 - Reference directly from the CDN - in which case click [here](https://www.jsdelivr.com/package/npm/@sasjs/adapter?tab=collection) and select "SRI" to get the script tag with the integrity hash.
@@ -36,7 +36,7 @@ Ok ok. Deploy this [example.html](https://raw.githubusercontent.com/sasjs/adapte
The backend part can be deployed as follows: The backend part can be deployed as follows:
``` ```sas
%let appLoc=/Public/app/readme; /* Metadata or Viya Folder per SASjs config */ %let appLoc=/Public/app/readme; /* Metadata or Viya Folder per SASjs config */
filename mc url "https://raw.githubusercontent.com/sasjs/core/main/all.sas"; filename mc url "https://raw.githubusercontent.com/sasjs/core/main/all.sas";
%inc mc; /* compile macros (can also be downloaded & compiled seperately) */ %inc mc; /* compile macros (can also be downloaded & compiled seperately) */
@@ -85,18 +85,23 @@ let sasJs = new SASjs.default(
); );
``` ```
If you've installed it via NPM, you can import it as a default import like so: If you've installed it via NPM, you can import it as a default import like so:
``` ```js
import SASjs from '@sasjs/adapter'; import SASjs from '@sasjs/adapter';
``` ```
You can then instantiate it with: You can then instantiate it with:
``` ```js
const sasJs = new SASjs({your config}) const sasJs = new SASjs({your config})
``` ```
More on the config later. More on the config later.
### SAS Logon ### SAS Logon
The login process can be handled directly, as below, or as a callback function to a SAS request. All authentication from the adapter is done against SASLogon. There are two approaches that can be taken, which are configured using the `LoginMechanism` attribute of the sasJs config object (above):
* `LoginMechanism:'Redirected'` - this approach enables authentication through a SASLogon window, supporting complex authentication flows (such as 2FA) and avoids the need to handle passwords in the application itself. The styling of the window can be modified using CSS.
* `LoginMechanism:'Default'` - this approach requires that the username and password are captured, and used within the `.login()` method. This can be helpful for development, or automated testing.
Sample code for logging in with the `Default` approach:
```javascript ```javascript
sasJs.logIn('USERNAME','PASSWORD' sasJs.logIn('USERNAME','PASSWORD'
@@ -109,6 +114,8 @@ sasJs.logIn('USERNAME','PASSWORD'
} }
``` ```
More examples of using authentication, and more, can be found in the [SASjs Seed Apps](https://github.com/search?q=topic%3Asasjs-app+org%3Asasjs+fork%3Atrue) on github.
### Request / Response ### Request / Response
A simple request can be sent to SAS in the following fashion: A simple request can be sent to SAS in the following fashion:
@@ -119,6 +126,7 @@ sasJs.request("/path/to/my/service", dataObject)
console.log(response.tablewith2cols1row[0].COL1.value) console.log(response.tablewith2cols1row[0].COL1.value)
}) })
``` ```
We supply the path to the SAS service, and a data object. The data object can be null (for services with no input), or can contain one or more tables in the following format: We supply the path to the SAS service, and a data object. The data object can be null (for services with no input), or can contain one or more tables in the following format:
```javascript ```javascript
@@ -141,39 +149,119 @@ The response object will contain returned tables and columns. Table names are a
The adapter will also cache the logs (if debug enabled) and even the work tables. For performance, it is best to keep debug mode off. The adapter will also cache the logs (if debug enabled) and even the work tables. For performance, it is best to keep debug mode off.
### Variable Types
The SAS type (char/numeric) of the values is determined according to a set of rules:
* If the values are numeric, the SAS type is numeric
* If the values are all string, the SAS type is character
* If the values contain a single character (a-Z + underscore + .) AND a numeric, then the SAS type is numeric (with special missing values).
* `null` is set to either '.' or '' depending on the assigned or derived type per the above rules. If entire column is `null` then the type will be numeric.
The following table illustrates the formats applied to columns under various scenarios:
|JS Values |SAS Format|
|---|---|
|'a', 'a' |$char1.|
|0, '_' |best.|
|'Z', 0 |best.|
|'a', 'aaa' |$char3.|
|null, 'a', 'aaa' | $char3.|
|null, 'a', 0 | best.|
|null, null | best.|
|null, '' | $char1.|
|null, 'a' | $char1.|
|'a' | $char1.|
|'a', null | $char1.|
|'a', null, 0 | best.|
Validation is also performed on the values. The following combinations will throw errors:
|JS Values |SAS Format|
|---|---|
|null, 'aaaa', 0 | Error: mixed types. 'aaaa' is not a special missing value.|
|0, 'a', '!' | Error: mixed types. '!' is not a special missing value|
|1.1, '.', 0| Error: mixed types. For regular nulls, use `null`|
### Variable Format Override
The auto-detect functionality above is thwarted in the following scenarios:
* A character column containing only `null` values (is considered numeric)
* A numeric column containing only special missing values (is considered character)
To cater for these scenarios, an optional array of formats can be passed along with the data to ensure that SAS will read them in correctly.
To understand these formats, it should be noted that the JSON data is NOT passed directly (as JSON) to SAS. It is first converted into CSV, and the header row is actually an `infile` statement in disguise. It looks a bit like this:
```csv
CHARVAR1:$char4. CHARVAR2:$char1. NUMVAR:best.
LOAD,,0
ABCD,X,.
```
To provide overrides to this header row, the tables object can be constructed as follows (with a leading '$' in the table name):
```javascript
let specialData={
"tablewith2cols2rows": [
{"col1": "val1","specialMissingsCol": "A"},
{"col1": "val2","specialMissingsCol": "_"}
],
"$tablewith2cols2rows":{"formats":{"specialMissingsCol":"best."}
}
};
```
It is not necessary to provide formats for ALL the columns, only the ones that need to be overridden.
## SAS Inputs / Outputs ## SAS Inputs / Outputs
The SAS side is handled by a number of macros in the [macro core](https://github.com/sasjs/core) library. The SAS side is handled by a number of macros in the [macro core](https://github.com/sasjs/core) library.
The following snippet shows the process of SAS tables arriving / leaving: The following snippet shows the process of SAS tables arriving / leaving:
```sas ```sas
/* fetch all input tables sent from frontend - they arrive as work tables */ /* fetch all input tables sent from frontend - they arrive as work tables */
%webout(FETCH) %webout(FETCH)
/* some sas code */ /* some sas code */
data some sas tables; data a b c;
set from js; set from js;
run; run;
%webout(OPEN) /* open the JSON to be returned */ %webout(OPEN) /* Open the JSON to be returned */
%webout(OBJ,some) /* `some` table is sent in object format */ %webout(OBJ,a) /* Rows in table `a` are objects (easy to use) */
%webout(ARR,sas) /* `sas` table is sent in array format, smaller filesize */ %webout(ARR,b) /* Rows in table `b` are arrays (compact) */
%webout(OBJ,tables,fmt=N) /* unformatted (raw) data */ %webout(OBJ,c,fmt=N) /* Table `c` is sent unformatted (raw) */
%webout(OBJ,tables,label=newtable) /* rename tables on export */ %webout(OBJ,c,label=d) /* Rename as `d` on JS side */
%webout(CLOSE) /* close the JSON and send some extra useful variables too */ %webout(CLOSE) /* Close the JSON and add default variables */
```
By default, special SAS numeric missings (_a-Z) are converted to `null` in the JSON. If you'd like to preserve these, use the `missing=STRING` option as follows:
```sas
%webout(OBJ,a,missing=STRING)
```
In this case, special missings (such as `.a`, `.b`) are converted to javascript string values (`'A', 'B'`).
Where an entire column is made up of special missing numerics, there would be no way to distinguish it from a single-character column by looking at the values. To cater for this scenario, it is possible to export the variable types (and other attributes such as label and format) by adding a `showmeta` param to the `webout()` macro as follows:
```sas
%webout(OBJ,a,missing=STRING,showmeta=YES)
``` ```
## Configuration ## Configuration
Configuration on the client side involves passing an object on startup, which can also be passed with each request. Technical documentation on the SASjsConfig class is available [here](https://adapter.sasjs.io/classes/types.sasjsconfig.html). The main config items are: Configuration on the client side involves passing an object on startup, which can also be passed with each request. Technical documentation on the SASjsConfig class is available [here](https://adapter.sasjs.io/classes/types.sasjsconfig.html). The main config items are:
* `appLoc` - this is the folder under which the SAS services will be created. * `appLoc` - this is the folder (eg in metadata or SAS Drive) under which the SAS services are created.
* `serverType` - either `SAS9` or `SASVIYA`. * `serverType` - either `SAS9`, `SASVIYA` or `SASJS`. The `SASJS` server type is for use with [sasjs/server](https://github.com/sasjs/server).
* `serverUrl` - the location (including http protocol and port) of the SAS Server. Can be omitted, eg if serving directly from the SAS Web Server, or in streaming mode. * `serverUrl` - the location (including http protocol and port) of the SAS Server. Can be omitted, eg if serving directly from the SAS Web Server, or in streaming mode.
* `debug` - if `true` then SAS Logs and extra debug information is returned. * `debug` - if `true` then SAS Logs and extra debug information is returned.
* `LoginMechanism` - either `Default` or `Redirected`. See [SAS Logon](#sas-logon) section.
* `useComputeApi` - Only relevant when the serverType is `SASVIYA`. If `true` the [Compute API](#using-the-compute-api) is used. If `false` the [JES API](#using-the-jes-api) is used. If `null` or `undefined` the [Web](#using-jes-web-app) approach is used. * `useComputeApi` - Only relevant when the serverType is `SASVIYA`. If `true` the [Compute API](#using-the-compute-api) is used. If `false` the [JES API](#using-the-jes-api) is used. If `null` or `undefined` the [Web](#using-jes-web-app) approach is used.
* `contextName` - Compute context on which the requests will be called. If missing or not provided, defaults to `Job Execution Compute context`. * `contextName` - Compute context on which the requests will be called. If missing or not provided, defaults to `Job Execution Compute context`.
* `requestHistoryLimit` - Request history limit. Increasing this limit may affect browser performance, especially with debug (logs) enabled. Default is 10.
The adapter supports a number of approaches for interfacing with Viya (`serverType` is `SASVIYA`). For maximum performance, be sure to [configure your compute context](https://sasjs.io/guide-viya/#shared-account-and-server-re-use) with `reuseServerProcesses` as `true` and a system account in `runServerAs`. This functionality is available since Viya 3.5. This configuration is supported when [creating contexts using the CLI](https://sasjs.io/sasjs-cli-context/#sasjs-context-create). The adapter supports a number of approaches for interfacing with Viya (`serverType` is `SASVIYA`). For maximum performance, be sure to [configure your compute context](https://sasjs.io/guide-viya/#shared-account-and-server-re-use) with `reuseServerProcesses` as `true` and a system account in `runServerAs`. This functionality is available since Viya 3.5. This configuration is supported when [creating contexts using the CLI](https://sasjs.io/sasjs-cli-context/#sasjs-context-create).
@@ -196,7 +284,7 @@ Here we are running Jobs using the Job Execution Service except this time we are
This approach (`useComputeApi: false`) also ensures that jobs are displayed in Environment Manager. This approach (`useComputeApi: false`) also ensures that jobs are displayed in Environment Manager.
``` ```json
{ {
appLoc:"/Your/Path", appLoc:"/Your/Path",
serverType:"SASVIYA", serverType:"SASVIYA",
@@ -210,12 +298,12 @@ This approach is by far the fastest, as a result of the optimisations we have bu
With this approach (`useComputeApi: true`), the requests/logs will _not_ appear in the list in Environment manager. With this approach (`useComputeApi: true`), the requests/logs will _not_ appear in the list in Environment manager.
``` ```json
{ {
appLoc:"/Your/Path", appLoc:"/Your/Path",
serverType:"SASVIYA", serverType:"SASVIYA",
useComputeApi: true, useComputeApi: true,
contextName: 'yourComputeContext' contextName: "yourComputeContext"
} }
``` ```
+35
View File
@@ -0,0 +1,35 @@
const td = require('typedoc')
const ts = require('typescript')
const typedocJson = require('./typedoc.json')
async function createTSDocs() {
if (!typedocJson.entryPoints?.length) {
throw new Error(
'Typedoc error: entryPoints option is missing in typedoc configuration.'
)
}
if (!typedocJson.out) {
throw new Error(
'Typedoc error: out option is missing in typedoc configuration.'
)
}
const app = new td.Application()
app.options.addReader(new td.TSConfigReader())
app.bootstrap({
...typedocJson,
tsconfig: 'tsconfig.json'
})
const project = app.converter.convert(app.getEntryPoints() ?? [])
if (project) {
await app.generateDocs(project, typedocJson.out)
} else {
throw new Error('Typedoc error: error creating the TS docs.')
}
}
createTSDocs()
+11
View File
@@ -0,0 +1,11 @@
{
"chromeWebSecurity": false,
"defaultCommandTimeout": 20000,
"env": {
"sasjsTestsUrl": "",
"username": "",
"password": "",
"screenshotOnRunFailure": false,
"testingFinishTimeout": 600000
}
}
+78
View File
@@ -0,0 +1,78 @@
const sasjsTestsUrl = Cypress.env('sasjsTestsUrl')
const username = Cypress.env('username')
const password = Cypress.env('password')
const testingFinishTimeout = Cypress.env('testingFinishTimeout')
context('sasjs-tests', function () {
this.beforeAll(() => {
cy.visit(sasjsTestsUrl)
})
this.beforeEach(() => {
cy.reload()
})
it('Should have all tests successfull', (done) => {
cy.get('body').then(($body) => {
if ($body.find('input[placeholder="User Name"]').length > 0) {
cy.get('input[placeholder="User Name"]').type(username)
cy.get('input[placeholder="Password"]').type(password)
cy.get('.submit-button').click()
}
cy.get('input[placeholder="User Name"]', { timeout: 40000 })
.should('not.exist')
.then(() => {
cy.get('.ui.massive.icon.primary.left.labeled.button')
.click()
.then(() => {
cy.get('.ui.massive.loading.primary.button', {
timeout: testingFinishTimeout
})
.should('not.exist')
.then(() => {
cy.get('span.icon.failed')
.should('not.exist')
.then(() => {
done()
})
})
})
})
})
})
it('Should have all tests successfull with debug on', (done) => {
cy.get('body').then(($body) => {
if ($body.find('input[placeholder="User Name"]').length > 0) {
cy.get('input[placeholder="User Name"]').type(username)
cy.get('input[placeholder="Password"]').type(password)
cy.get('.submit-button').click()
}
cy.get('.ui.fitted.toggle.checkbox label')
.click()
.then(() => {
cy.get('input[placeholder="User Name"]', { timeout: 40000 })
.should('not.exist')
.then(() => {
cy.get('.ui.massive.icon.primary.left.labeled.button')
.click()
.then(() => {
cy.get('.ui.massive.loading.primary.button', {
timeout: testingFinishTimeout
})
.should('not.exist')
.then(() => {
cy.get('span.icon.failed')
.should('not.exist')
.then(() => {
done()
})
})
})
})
})
})
})
})
+31
View File
@@ -0,0 +1,31 @@
const wp = require('@cypress/webpack-preprocessor')
const webpackOptions = {
resolve: {
extensions: ['.ts', '.js']
},
module: {
rules: [
{
test: /\.ts$/,
loaders: ['ts-loader'],
exclude: [/node_modules/]
},
{
test: /\.(html|css)$/,
loader: 'raw-loader',
exclude: /\.async\.(html|css)$/
},
{
test: /\.async\.(html|css)$/,
loaders: ['file?name=[name].[hash].[ext]', 'extract']
}
]
}
}
const options = {
webpackOptions
}
module.exports = wp(options)
+42
View File
@@ -0,0 +1,42 @@
/// <reference types="cypress" />
// ***********************************************************
// This example plugins/index.js can be used to load plugins
//
// You can change the location of this file or turn off loading
// the plugins file with the 'pluginsFile' configuration option.
//
// You can read more here:
// https://on.cypress.io/plugins-guide
// ***********************************************************
// This function is called when a project is opened or re-opened (e.g. due to
// the project's config changing)
const wp = require('@cypress/webpack-preprocessor')
/**
* @type {Cypress.PluginConfig}
*/
module.exports = (on, config) => {
// `on` is used to hook into various events Cypress emits
// `config` is the resolved Cypress config
const options = {
webpackOptions: require('../webpack.config.js')
}
on('file:preprocessor', wp(options))
on('before:browser:launch', (browser = {}, launchOptions) => {
if (browser.name === 'chrome') {
launchOptions.args.push('--disable-site-isolation-trials')
launchOptions.args.push('--auto-open-devtools-for-tabs')
launchOptions.args.push('--aggressive-cache-discard')
launchOptions.args.push('--disable-cache')
launchOptions.args.push('--disable-application-cache')
launchOptions.args.push('--disable-offline-load-stale-cache')
launchOptions.args.push('--disk-cache-size=0')
return launchOptions
}
})
}
+10
View File
@@ -0,0 +1,10 @@
{
"compilerOptions": {
"strict": true,
"baseUrl": "../node_modules",
"target": "es6",
"lib": ["es2019", "dom"],
"types": ["cypress"]
},
"include": ["**/*.ts"]
}
+23
View File
@@ -0,0 +1,23 @@
module.exports = {
mode: 'development',
resolve: {
extensions: ['.ts', '.js']
},
module: {
rules: [
{
test: /\.ts$/,
exclude: [/node_modules/],
use: [
{
loader: 'ts-loader',
options: {
// skip typechecking for speed
transpileOnly: true
}
}
]
}
]
}
}
+1
View File
@@ -0,0 +1 @@
TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
-1
View File
@@ -1 +0,0 @@
theme: jekyll-theme-minimal
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+99
View File
@@ -0,0 +1,99 @@
:root {
--light-hl-0: #000000;
--dark-hl-0: #D4D4D4;
--light-hl-1: #0000FF;
--dark-hl-1: #569CD6;
--light-hl-2: #001080;
--dark-hl-2: #9CDCFE;
--light-hl-3: #795E26;
--dark-hl-3: #DCDCAA;
--light-hl-4: #A31515;
--dark-hl-4: #CE9178;
--light-hl-5: #AF00DB;
--dark-hl-5: #C586C0;
--light-hl-6: #0070C1;
--dark-hl-6: #4FC1FF;
--light-hl-7: #008000;
--dark-hl-7: #6A9955;
--light-hl-8: #098658;
--dark-hl-8: #B5CEA8;
--light-hl-9: #000000;
--dark-hl-9: #C8C8C8;
--light-hl-10: #CD3131;
--dark-hl-10: #F44747;
--light-code-background: #F5F5F5;
--dark-code-background: #1E1E1E;
}
@media (prefers-color-scheme: light) { :root {
--hl-0: var(--light-hl-0);
--hl-1: var(--light-hl-1);
--hl-2: var(--light-hl-2);
--hl-3: var(--light-hl-3);
--hl-4: var(--light-hl-4);
--hl-5: var(--light-hl-5);
--hl-6: var(--light-hl-6);
--hl-7: var(--light-hl-7);
--hl-8: var(--light-hl-8);
--hl-9: var(--light-hl-9);
--hl-10: var(--light-hl-10);
--code-background: var(--light-code-background);
} }
@media (prefers-color-scheme: dark) { :root {
--hl-0: var(--dark-hl-0);
--hl-1: var(--dark-hl-1);
--hl-2: var(--dark-hl-2);
--hl-3: var(--dark-hl-3);
--hl-4: var(--dark-hl-4);
--hl-5: var(--dark-hl-5);
--hl-6: var(--dark-hl-6);
--hl-7: var(--dark-hl-7);
--hl-8: var(--dark-hl-8);
--hl-9: var(--dark-hl-9);
--hl-10: var(--dark-hl-10);
--code-background: var(--dark-code-background);
} }
body.light {
--hl-0: var(--light-hl-0);
--hl-1: var(--light-hl-1);
--hl-2: var(--light-hl-2);
--hl-3: var(--light-hl-3);
--hl-4: var(--light-hl-4);
--hl-5: var(--light-hl-5);
--hl-6: var(--light-hl-6);
--hl-7: var(--light-hl-7);
--hl-8: var(--light-hl-8);
--hl-9: var(--light-hl-9);
--hl-10: var(--light-hl-10);
--code-background: var(--light-code-background);
}
body.dark {
--hl-0: var(--dark-hl-0);
--hl-1: var(--dark-hl-1);
--hl-2: var(--dark-hl-2);
--hl-3: var(--dark-hl-3);
--hl-4: var(--dark-hl-4);
--hl-5: var(--dark-hl-5);
--hl-6: var(--dark-hl-6);
--hl-7: var(--dark-hl-7);
--hl-8: var(--dark-hl-8);
--hl-9: var(--dark-hl-9);
--hl-10: var(--dark-hl-10);
--code-background: var(--dark-code-background);
}
.hl-0 { color: var(--hl-0); }
.hl-1 { color: var(--hl-1); }
.hl-2 { color: var(--hl-2); }
.hl-3 { color: var(--hl-3); }
.hl-4 { color: var(--hl-4); }
.hl-5 { color: var(--hl-5); }
.hl-6 { color: var(--hl-6); }
.hl-7 { color: var(--hl-7); }
.hl-8 { color: var(--hl-8); }
.hl-9 { color: var(--hl-9); }
.hl-10 { color: var(--hl-10); }
pre, code { background: var(--code-background); }
File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 480 B

After

Width:  |  Height:  |  Size: 480 B

Before

Width:  |  Height:  |  Size: 855 B

After

Width:  |  Height:  |  Size: 855 B

File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,231 +0,0 @@
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>FileUploader | @sasjs/adapter</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<ul class="results-priority" style="display:none">
</ul>
<a href="../index.html" class="title">@sasjs/adapter</a>
&emsp;<a href="https://github.com/sasjs/adapter" class="title">SASjs on Github</a>
&emsp;<a href="https://sasjs.io" class="title">SASjs.io</a>
&emsp;<a href="https://github.com/sasjs/cli" class="title">SASjs CLI</a>
&emsp;<a href="https://github.com/sasjs/react-seed-app" class="title">React Seed App</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../modules/reflection-724.html"></a>
</li>
<li>
<a href="../modules/reflection-724.reflection-187.html"></a>
</li>
<li>
<a href="reflection-724.reflection-187.fileuploader.html">FileUploader</a>
</li>
</ul>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-3 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation outline primary">
<a style="margin-left:0em" href="../globals.html">Globals</a>
<ul style="display:none">
{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}
</ul>
</nav>
</div>
<div class="col-7 offset-3 col-content">
<h1>Class FileUploader</h1>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">FileUploader</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="reflection-724.reflection-187.fileuploader.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.fileuploader.html#uploadfile" class="tsd-kind-icon">uploadFile</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new <wbr>File<wbr>Uploader<span class="tsd-signature-symbol">(</span>appLoc<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, serverUrl<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, jobsPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, setCsrfTokenWeb<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span>, csrfToken<span class="tsd-signature-symbol">?: </span><a href="../interfaces/types.csrftoken.html" class="tsd-signature-type">CsrfToken</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="reflection-724.reflection-187.fileuploader.html" class="tsd-signature-type">FileUploader</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/FileUploader.ts#L7">
FileUploader.ts:7
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>appLoc: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>serverUrl: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>jobsPath: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>setCsrfTokenWeb: <span class="tsd-signature-type">any</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> csrfToken: <a href="../interfaces/types.csrftoken.html" class="tsd-signature-type">CsrfToken</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> = null</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="reflection-724.reflection-187.fileuploader.html" class="tsd-signature-type">FileUploader</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="uploadfile" class="tsd-anchor"></a>
<h3>upload<wbr>File</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">upload<wbr>File<span class="tsd-signature-symbol">(</span>sasJob<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, files<span class="tsd-signature-symbol">: </span><a href="../interfaces/types.uploadfile.html" class="tsd-signature-type">UploadFile</a><span class="tsd-signature-symbol">[]</span>, params<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/FileUploader.ts#L20">
FileUploader.ts:20
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>sasJob: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>files: <a href="../interfaces/types.uploadfile.html" class="tsd-signature-type">UploadFile</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
<li>
<h5>params: <span class="tsd-signature-type">any</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
</section>
<!--{&quot;options&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;tsconfig&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;inputFiles&quot;:[&quot;/Users/allan/git/adapter/src/FileUploader.ts&quot;,&quot;/Users/allan/git/adapter/src/SAS9ApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASViyaApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASjs.ts&quot;,&quot;/Users/allan/git/adapter/src/SessionManager.ts&quot;,&quot;/Users/allan/git/adapter/src/index.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Context.ts&quot;,&quot;/Users/allan/git/adapter/src/types/CsrfToken.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ErrorResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Folder.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Job.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobDefinition.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobResult.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Link.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsConfig.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsWaitingRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ServerType.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Session.ts&quot;,&quot;/Users/allan/git/adapter/src/types/UploadFile.ts&quot;,&quot;/Users/allan/git/adapter/src/types/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/asyncForEach.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/compareTimestamps.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/convertToCsv.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/formatDataForRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isAuthorizeFormRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isIeOrEdge.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginSuccess.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUri.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUrl.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/makeRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/needsRetry.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseAndSubmitAuthorizeForm.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseGeneratedCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSasViyaLog.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSourceCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseWeboutResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/serialize.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/splitChunks.ts&quot;],&quot;mode&quot;:1,&quot;includeDeclarations&quot;:true,&quot;entryPoint&quot;:&quot;&quot;,&quot;exclude&quot;:[&quot;**/*+(index|.spec|.e2e).ts&quot;],&quot;externalPattern&quot;:[],&quot;excludeExternals&quot;:true,&quot;excludeNotExported&quot;:true,&quot;excludeNotDocumented&quot;:false,&quot;excludePrivate&quot;:true,&quot;excludeProtected&quot;:false,&quot;ignoreCompilerErrors&quot;:true,&quot;disableSources&quot;:false,&quot;includes&quot;:&quot;&quot;,&quot;media&quot;:&quot;&quot;,&quot;out&quot;:&quot;docs&quot;,&quot;json&quot;:&quot;&quot;,&quot;theme&quot;:&quot;./node_modules/typedoc-neo-theme/bin/default&quot;,&quot;name&quot;:&quot;&quot;,&quot;includeVersion&quot;:false,&quot;excludeTags&quot;:[],&quot;readme&quot;:&quot;&quot;,&quot;defaultCategory&quot;:&quot;Other&quot;,&quot;categoryOrder&quot;:[],&quot;categorizeByGroup&quot;:true,&quot;gitRevision&quot;:&quot;&quot;,&quot;gitRemote&quot;:&quot;origin&quot;,&quot;gaID&quot;:&quot;&quot;,&quot;gaSite&quot;:&quot;auto&quot;,&quot;hideGenerator&quot;:false,&quot;toc&quot;:[],&quot;disableOutputCheck&quot;:true,&quot;help&quot;:false,&quot;version&quot;:false,&quot;plugin&quot;:[],&quot;logger&quot;:&quot;console&quot;,&quot;listInvalidSymbolLinks&quot;:false,&quot;links&quot;:[{&quot;label&quot;:&quot;SASjs on Github&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/adapter&quot;},{&quot;label&quot;:&quot;SASjs.io&quot;,&quot;url&quot;:&quot;https://sasjs.io&quot;},{&quot;label&quot;:&quot;SASjs CLI&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/cli&quot;},{&quot;label&quot;:&quot;React Seed App&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/react-seed-app&quot;}],&quot;outline&quot;:[{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}],&quot;source&quot;:[{&quot;path&quot;:&quot;https://github.com/sasjs/adapter/blob/master/src/&quot;,&quot;line&quot;:&quot;L&quot;}],&quot;disableAutoModuleName&quot;:&quot;false&quot;}-->
</div>
<div class="col-2 col-menu secondary-menu">
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.fileuploader.html" class="tsd-kind-icon">File<wbr>Uploader</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="reflection-724.reflection-187.fileuploader.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.fileuploader.html#uploadfile" class="tsd-kind-icon">upload<wbr>File</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sas9apiclient.html" class="tsd-kind-icon">SAS9<wbr>Api<wbr>Client</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasviyaapiclient.html" class="tsd-kind-icon">SASViya<wbr>Api<wbr>Client</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasjs.html" class="tsd-kind-icon">SASjs</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sessionmanager.html" class="tsd-kind-icon">Session<wbr>Manager</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
</body>
</html>
@@ -1,312 +0,0 @@
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>SAS9ApiClient | @sasjs/adapter</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<ul class="results-priority" style="display:none">
</ul>
<a href="../index.html" class="title">@sasjs/adapter</a>
&emsp;<a href="https://github.com/sasjs/adapter" class="title">SASjs on Github</a>
&emsp;<a href="https://sasjs.io" class="title">SASjs.io</a>
&emsp;<a href="https://github.com/sasjs/cli" class="title">SASjs CLI</a>
&emsp;<a href="https://github.com/sasjs/react-seed-app" class="title">React Seed App</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../modules/reflection-724.html"></a>
</li>
<li>
<a href="../modules/reflection-724.reflection-187.html"></a>
</li>
<li>
<a href="reflection-724.reflection-187.sas9apiclient.html">SAS9ApiClient</a>
</li>
</ul>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-3 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation outline primary">
<a style="margin-left:0em" href="../globals.html">Globals</a>
<ul style="display:none">
{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}
</ul>
</nav>
</div>
<div class="col-7 offset-3 col-content">
<h1>Class SAS9ApiClient</h1>
<section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography tsd-comment-shorttext">
<div class="lead">
<p>A client for interfacing with the SAS9 REST API.</p>
</div>
</div></section>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">SAS9ApiClient</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="reflection-724.reflection-187.sas9apiclient.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.sas9apiclient.html#executescript" class="tsd-kind-icon">executeScript</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.sas9apiclient.html#getconfig" class="tsd-kind-icon">getConfig</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.sas9apiclient.html#setconfig" class="tsd-kind-icon">setConfig</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new SAS9<wbr>Api<wbr>Client<span class="tsd-signature-symbol">(</span>serverUrl<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="reflection-724.reflection-187.sas9apiclient.html" class="tsd-signature-type">SAS9ApiClient</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SAS9ApiClient.ts#L7">
SAS9ApiClient.ts:7
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>serverUrl: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="reflection-724.reflection-187.sas9apiclient.html" class="tsd-signature-type">SAS9ApiClient</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="executescript" class="tsd-anchor"></a>
<h3>execute<wbr>Script</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">execute<wbr>Script<span class="tsd-signature-symbol">(</span>linesOfCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span>, serverName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, repositoryName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SAS9ApiClient.ts#L35">
SAS9ApiClient.ts:35
</a>
</li>
</ul>
</aside>
<div class="tsd-comment tsd-typography tsd-comment-shorttext">
<div class="lead">
<p>Executes code on a SAS9 server.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>linesOfCode: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
<div class="tsd-comment tsd-typography tsd-comment-text">
<p>an array of code lines to execute.</p>
</div>
</li>
<li>
<h5>serverName: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography tsd-comment-text">
<p>the server to execute the code on.</p>
</div>
</li>
<li>
<h5>repositoryName: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography tsd-comment-text">
<p>the repository to execute the code in.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getconfig" class="tsd-anchor"></a>
<h3>get<wbr>Config</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Config<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">object</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SAS9ApiClient.ts#L15">
SAS9ApiClient.ts:15
</a>
</li>
</ul>
</aside>
<div class="tsd-comment tsd-typography tsd-comment-shorttext">
<div class="lead">
<p>Returns an object containing server URL.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">object</span></h4>
<ul class="tsd-parameters">
<li class="tsd-parameter">
<h5>server<wbr>Url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5>
</li>
</ul>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="setconfig" class="tsd-anchor"></a>
<h3>set<wbr>Config</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">set<wbr>Config<span class="tsd-signature-symbol">(</span>serverUrl<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SAS9ApiClient.ts#L25">
SAS9ApiClient.ts:25
</a>
</li>
</ul>
</aside>
<div class="tsd-comment tsd-typography tsd-comment-shorttext">
<div class="lead">
<p>Updates server URL which is not null.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>serverUrl: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography tsd-comment-text">
<p>URL of the server to be set.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
<!--{&quot;options&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;tsconfig&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;inputFiles&quot;:[&quot;/Users/allan/git/adapter/src/FileUploader.ts&quot;,&quot;/Users/allan/git/adapter/src/SAS9ApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASViyaApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASjs.ts&quot;,&quot;/Users/allan/git/adapter/src/SessionManager.ts&quot;,&quot;/Users/allan/git/adapter/src/index.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Context.ts&quot;,&quot;/Users/allan/git/adapter/src/types/CsrfToken.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ErrorResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Folder.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Job.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobDefinition.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobResult.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Link.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsConfig.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsWaitingRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ServerType.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Session.ts&quot;,&quot;/Users/allan/git/adapter/src/types/UploadFile.ts&quot;,&quot;/Users/allan/git/adapter/src/types/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/asyncForEach.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/compareTimestamps.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/convertToCsv.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/formatDataForRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isAuthorizeFormRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isIeOrEdge.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginSuccess.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUri.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUrl.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/makeRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/needsRetry.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseAndSubmitAuthorizeForm.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseGeneratedCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSasViyaLog.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSourceCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseWeboutResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/serialize.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/splitChunks.ts&quot;],&quot;mode&quot;:1,&quot;includeDeclarations&quot;:true,&quot;entryPoint&quot;:&quot;&quot;,&quot;exclude&quot;:[&quot;**/*+(index|.spec|.e2e).ts&quot;],&quot;externalPattern&quot;:[],&quot;excludeExternals&quot;:true,&quot;excludeNotExported&quot;:true,&quot;excludeNotDocumented&quot;:false,&quot;excludePrivate&quot;:true,&quot;excludeProtected&quot;:false,&quot;ignoreCompilerErrors&quot;:true,&quot;disableSources&quot;:false,&quot;includes&quot;:&quot;&quot;,&quot;media&quot;:&quot;&quot;,&quot;out&quot;:&quot;docs&quot;,&quot;json&quot;:&quot;&quot;,&quot;theme&quot;:&quot;./node_modules/typedoc-neo-theme/bin/default&quot;,&quot;name&quot;:&quot;&quot;,&quot;includeVersion&quot;:false,&quot;excludeTags&quot;:[],&quot;readme&quot;:&quot;&quot;,&quot;defaultCategory&quot;:&quot;Other&quot;,&quot;categoryOrder&quot;:[],&quot;categorizeByGroup&quot;:true,&quot;gitRevision&quot;:&quot;&quot;,&quot;gitRemote&quot;:&quot;origin&quot;,&quot;gaID&quot;:&quot;&quot;,&quot;gaSite&quot;:&quot;auto&quot;,&quot;hideGenerator&quot;:false,&quot;toc&quot;:[],&quot;disableOutputCheck&quot;:true,&quot;help&quot;:false,&quot;version&quot;:false,&quot;plugin&quot;:[],&quot;logger&quot;:&quot;console&quot;,&quot;listInvalidSymbolLinks&quot;:false,&quot;links&quot;:[{&quot;label&quot;:&quot;SASjs on Github&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/adapter&quot;},{&quot;label&quot;:&quot;SASjs.io&quot;,&quot;url&quot;:&quot;https://sasjs.io&quot;},{&quot;label&quot;:&quot;SASjs CLI&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/cli&quot;},{&quot;label&quot;:&quot;React Seed App&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/react-seed-app&quot;}],&quot;outline&quot;:[{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}],&quot;source&quot;:[{&quot;path&quot;:&quot;https://github.com/sasjs/adapter/blob/master/src/&quot;,&quot;line&quot;:&quot;L&quot;}],&quot;disableAutoModuleName&quot;:&quot;false&quot;}-->
</div>
<div class="col-2 col-menu secondary-menu">
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.fileuploader.html" class="tsd-kind-icon">File<wbr>Uploader</a>
</li>
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sas9apiclient.html" class="tsd-kind-icon">SAS9<wbr>Api<wbr>Client</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sas9apiclient.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sas9apiclient.html#executescript" class="tsd-kind-icon">execute<wbr>Script</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sas9apiclient.html#getconfig" class="tsd-kind-icon">get<wbr>Config</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sas9apiclient.html#setconfig" class="tsd-kind-icon">set<wbr>Config</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasviyaapiclient.html" class="tsd-kind-icon">SASViya<wbr>Api<wbr>Client</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasjs.html" class="tsd-kind-icon">SASjs</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sessionmanager.html" class="tsd-kind-icon">Session<wbr>Manager</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
</body>
</html>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,271 +0,0 @@
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>SessionManager | @sasjs/adapter</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<ul class="results-priority" style="display:none">
</ul>
<a href="../index.html" class="title">@sasjs/adapter</a>
&emsp;<a href="https://github.com/sasjs/adapter" class="title">SASjs on Github</a>
&emsp;<a href="https://sasjs.io" class="title">SASjs.io</a>
&emsp;<a href="https://github.com/sasjs/cli" class="title">SASjs CLI</a>
&emsp;<a href="https://github.com/sasjs/react-seed-app" class="title">React Seed App</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../modules/reflection-724.html"></a>
</li>
<li>
<a href="../modules/reflection-724.reflection-187.html"></a>
</li>
<li>
<a href="reflection-724.reflection-187.sessionmanager.html">SessionManager</a>
</li>
</ul>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-3 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation outline primary">
<a style="margin-left:0em" href="../globals.html">Globals</a>
<ul style="display:none">
{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}
</ul>
</nav>
</div>
<div class="col-7 offset-3 col-content">
<h1>Class SessionManager</h1>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">SessionManager</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="reflection-724.reflection-187.sessionmanager.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.sessionmanager.html#clearsession" class="tsd-kind-icon">clearSession</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="reflection-724.reflection-187.sessionmanager.html#getsession" class="tsd-kind-icon">getSession</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new <wbr>Session<wbr>Manager<span class="tsd-signature-symbol">(</span>serverUrl<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, contextName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, setCsrfToken<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="reflection-724.reflection-187.sessionmanager.html" class="tsd-signature-type">SessionManager</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SessionManager.ts#L6">
SessionManager.ts:6
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>serverUrl: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>contextName: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5>setCsrfToken: <span class="tsd-signature-type">function</span></h5>
<ul class="tsd-parameters">
<li class="tsd-parameter-siganture">
<ul class="tsd-signatures tsd-kind-type-literal">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>csrfToken<span class="tsd-signature-symbol">: </span><a href="../interfaces/types.csrftoken.html" class="tsd-signature-type">CsrfToken</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>csrfToken: <a href="../interfaces/types.csrftoken.html" class="tsd-signature-type">CsrfToken</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="reflection-724.reflection-187.sessionmanager.html" class="tsd-signature-type">SessionManager</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="clearsession" class="tsd-anchor"></a>
<h3>clear<wbr>Session</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">clear<wbr>Session<span class="tsd-signature-symbol">(</span>id<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, accessToken<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SessionManager.ts#L37">
SessionManager.ts:37
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>id: <span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> accessToken: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getsession" class="tsd-anchor"></a>
<h3>get<wbr>Session</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Session<span class="tsd-signature-symbol">(</span>accessToken<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../interfaces/types.session.html" class="tsd-signature-type">Session</a><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in
<a href="https://github.com/sasjs/adapter/blob/master/src/SessionManager.ts#L19">
SessionManager.ts:19
</a>
</li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> accessToken: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../interfaces/types.session.html" class="tsd-signature-type">Session</a><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
</section>
<!--{&quot;options&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;tsconfig&quot;:&quot;/Users/allan/git/adapter&quot;,&quot;inputFiles&quot;:[&quot;/Users/allan/git/adapter/src/FileUploader.ts&quot;,&quot;/Users/allan/git/adapter/src/SAS9ApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASViyaApiClient.ts&quot;,&quot;/Users/allan/git/adapter/src/SASjs.ts&quot;,&quot;/Users/allan/git/adapter/src/SessionManager.ts&quot;,&quot;/Users/allan/git/adapter/src/index.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Context.ts&quot;,&quot;/Users/allan/git/adapter/src/types/CsrfToken.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ErrorResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Folder.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Job.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobDefinition.ts&quot;,&quot;/Users/allan/git/adapter/src/types/JobResult.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Link.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsConfig.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/SASjsWaitingRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/types/ServerType.ts&quot;,&quot;/Users/allan/git/adapter/src/types/Session.ts&quot;,&quot;/Users/allan/git/adapter/src/types/UploadFile.ts&quot;,&quot;/Users/allan/git/adapter/src/types/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/asyncForEach.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/compareTimestamps.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/convertToCsv.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/formatDataForRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/index.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isAuthorizeFormRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isIeOrEdge.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginRequired.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isLoginSuccess.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUri.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/isUrl.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/makeRequest.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/needsRetry.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseAndSubmitAuthorizeForm.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseGeneratedCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSasViyaLog.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseSourceCode.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/parseWeboutResponse.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/serialize.ts&quot;,&quot;/Users/allan/git/adapter/src/utils/splitChunks.ts&quot;],&quot;mode&quot;:1,&quot;includeDeclarations&quot;:true,&quot;entryPoint&quot;:&quot;&quot;,&quot;exclude&quot;:[&quot;**/*+(index|.spec|.e2e).ts&quot;],&quot;externalPattern&quot;:[],&quot;excludeExternals&quot;:true,&quot;excludeNotExported&quot;:true,&quot;excludeNotDocumented&quot;:false,&quot;excludePrivate&quot;:true,&quot;excludeProtected&quot;:false,&quot;ignoreCompilerErrors&quot;:true,&quot;disableSources&quot;:false,&quot;includes&quot;:&quot;&quot;,&quot;media&quot;:&quot;&quot;,&quot;out&quot;:&quot;docs&quot;,&quot;json&quot;:&quot;&quot;,&quot;theme&quot;:&quot;./node_modules/typedoc-neo-theme/bin/default&quot;,&quot;name&quot;:&quot;&quot;,&quot;includeVersion&quot;:false,&quot;excludeTags&quot;:[],&quot;readme&quot;:&quot;&quot;,&quot;defaultCategory&quot;:&quot;Other&quot;,&quot;categoryOrder&quot;:[],&quot;categorizeByGroup&quot;:true,&quot;gitRevision&quot;:&quot;&quot;,&quot;gitRemote&quot;:&quot;origin&quot;,&quot;gaID&quot;:&quot;&quot;,&quot;gaSite&quot;:&quot;auto&quot;,&quot;hideGenerator&quot;:false,&quot;toc&quot;:[],&quot;disableOutputCheck&quot;:true,&quot;help&quot;:false,&quot;version&quot;:false,&quot;plugin&quot;:[],&quot;logger&quot;:&quot;console&quot;,&quot;listInvalidSymbolLinks&quot;:false,&quot;links&quot;:[{&quot;label&quot;:&quot;SASjs on Github&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/adapter&quot;},{&quot;label&quot;:&quot;SASjs.io&quot;,&quot;url&quot;:&quot;https://sasjs.io&quot;},{&quot;label&quot;:&quot;SASjs CLI&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/cli&quot;},{&quot;label&quot;:&quot;React Seed App&quot;,&quot;url&quot;:&quot;https://github.com/sasjs/react-seed-app&quot;}],&quot;outline&quot;:[{&quot;SAS Adapter&quot;:{&quot;SASjs&quot;:&quot;classes/reflection-717.reflection-180.sasjs&quot;,&quot;Types&quot;:&quot;modules/types&quot;},&quot;SAS Viya API Client&quot;:&quot;classes/reflection-717.reflection-180.sasviyaapiclient&quot;,&quot;SAS 9 API Client&quot;:&quot;classes/reflection-717.reflection-180.sas9apiclient&quot;}],&quot;source&quot;:[{&quot;path&quot;:&quot;https://github.com/sasjs/adapter/blob/master/src/&quot;,&quot;line&quot;:&quot;L&quot;}],&quot;disableAutoModuleName&quot;:&quot;false&quot;}-->
</div>
<div class="col-2 col-menu secondary-menu">
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.fileuploader.html" class="tsd-kind-icon">File<wbr>Uploader</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sas9apiclient.html" class="tsd-kind-icon">SAS9<wbr>Api<wbr>Client</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasviyaapiclient.html" class="tsd-kind-icon">SASViya<wbr>Api<wbr>Client</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sasjs.html" class="tsd-kind-icon">SASjs</a>
</li>
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-parent-kind-module root">
<a href="reflection-724.reflection-187.sessionmanager.html" class="tsd-kind-icon">Session<wbr>Manager</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sessionmanager.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sessionmanager.html#clearsession" class="tsd-kind-icon">clear<wbr>Session</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="reflection-724.reflection-187.sessionmanager.html#getsession" class="tsd-kind-icon">get<wbr>Session</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
</body>
</html>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More