@techextensor/tab-sdk 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +16 -0
- package/.vscode/extensions.json +6 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +27 -0
- package/documents/LibraryCreationGuide.md +82 -0
- package/documents/Method Access/analytics.md +6 -0
- package/documents/Method Access/app.md +22 -0
- package/documents/Method Access/auth.md +14 -0
- package/documents/Method Access/crud.md +17 -0
- package/documents/Method Access/file.md +5 -0
- package/documents/Method Access/form.md +14 -0
- package/documents/Method Access/http.md +4 -0
- package/documents/Method Access/metadata-utils.md +62 -0
- package/documents/Method Access/release.md +5 -0
- package/documents/Method Access/report.md +6 -0
- package/documents/Method Access/store.md +75 -0
- package/documents/Method Access/transition.md +5 -0
- package/documents/Method Access/translator.md +16 -0
- package/documents/Method Access/ui-actions.md +22 -0
- package/nx.json +35 -0
- package/package.json +46 -0
- package/projects/tab-sdk/README.md +24 -0
- package/projects/tab-sdk/ng-package.json +7 -0
- package/projects/tab-sdk/package.json +19 -0
- package/projects/tab-sdk/project.json +37 -0
- package/projects/tab-sdk/src/lib/app/analytics.service.ts +54 -0
- package/projects/tab-sdk/src/lib/app/app.service.ts +188 -0
- package/projects/tab-sdk/src/lib/app/file.service.ts +92 -0
- package/projects/tab-sdk/src/lib/app/release.service.ts +38 -0
- package/projects/tab-sdk/src/lib/app/report.service.ts +51 -0
- package/projects/tab-sdk/src/lib/app/translator.service.ts +80 -0
- package/projects/tab-sdk/src/lib/auth/auth.service.ts +119 -0
- package/projects/tab-sdk/src/lib/crud/crud.service.ts +187 -0
- package/projects/tab-sdk/src/lib/enum/store.enum.ts +4 -0
- package/projects/tab-sdk/src/lib/enum/ui.enum.ts +11 -0
- package/projects/tab-sdk/src/lib/http/http.service.ts +63 -0
- package/projects/tab-sdk/src/lib/interface/http.interface.ts +8 -0
- package/projects/tab-sdk/src/lib/interface/ui.interface.ts +28 -0
- package/projects/tab-sdk/src/lib/store/store.service.ts +831 -0
- package/projects/tab-sdk/src/lib/tab-sdk.service.ts +84 -0
- package/projects/tab-sdk/src/lib/ui/form.service.ts +92 -0
- package/projects/tab-sdk/src/lib/ui/ui.service.ts +404 -0
- package/projects/tab-sdk/src/lib/util/util.service.ts +53 -0
- package/projects/tab-sdk/src/lib/workflow/transition.service.ts +40 -0
- package/projects/tab-sdk/src/public-api.ts +10 -0
- package/projects/tab-sdk/tsconfig.lib.json +15 -0
- package/projects/tab-sdk/tsconfig.lib.prod.json +11 -0
- package/projects/tab-sdk/tsconfig.spec.json +15 -0
- package/tsconfig.json +37 -0
package/.editorconfig
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Editor configuration, see https://editorconfig.org
|
|
2
|
+
root = true
|
|
3
|
+
|
|
4
|
+
[*]
|
|
5
|
+
charset = utf-8
|
|
6
|
+
indent_style = space
|
|
7
|
+
indent_size = 2
|
|
8
|
+
insert_final_newline = true
|
|
9
|
+
trim_trailing_whitespace = true
|
|
10
|
+
|
|
11
|
+
[*.ts]
|
|
12
|
+
quote_type = single
|
|
13
|
+
|
|
14
|
+
[*.md]
|
|
15
|
+
max_line_length = off
|
|
16
|
+
trim_trailing_whitespace = false
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"configurations": [
|
|
5
|
+
{
|
|
6
|
+
"name": "ng serve",
|
|
7
|
+
"type": "chrome",
|
|
8
|
+
"request": "launch",
|
|
9
|
+
"preLaunchTask": "npm: start",
|
|
10
|
+
"url": "http://localhost:4200/"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"name": "ng test",
|
|
14
|
+
"type": "chrome",
|
|
15
|
+
"request": "launch",
|
|
16
|
+
"preLaunchTask": "npm: test",
|
|
17
|
+
"url": "http://localhost:9876/debug.html"
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"tasks": [
|
|
5
|
+
{
|
|
6
|
+
"type": "npm",
|
|
7
|
+
"script": "start",
|
|
8
|
+
"isBackground": true,
|
|
9
|
+
"problemMatcher": {
|
|
10
|
+
"owner": "typescript",
|
|
11
|
+
"pattern": "$tsc",
|
|
12
|
+
"background": {
|
|
13
|
+
"activeOnStart": true,
|
|
14
|
+
"beginsPattern": {
|
|
15
|
+
"regexp": "(.*?)"
|
|
16
|
+
},
|
|
17
|
+
"endsPattern": {
|
|
18
|
+
"regexp": "bundle generation complete"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"type": "npm",
|
|
25
|
+
"script": "test",
|
|
26
|
+
"isBackground": true,
|
|
27
|
+
"problemMatcher": {
|
|
28
|
+
"owner": "typescript",
|
|
29
|
+
"pattern": "$tsc",
|
|
30
|
+
"background": {
|
|
31
|
+
"activeOnStart": true,
|
|
32
|
+
"beginsPattern": {
|
|
33
|
+
"regexp": "(.*?)"
|
|
34
|
+
},
|
|
35
|
+
"endsPattern": {
|
|
36
|
+
"regexp": "bundle generation complete"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
]
|
|
42
|
+
}
|
package/README.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# TabSdk
|
|
2
|
+
|
|
3
|
+
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 18.1.3.
|
|
4
|
+
|
|
5
|
+
## Development server
|
|
6
|
+
|
|
7
|
+
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files.
|
|
8
|
+
|
|
9
|
+
## Code scaffolding
|
|
10
|
+
|
|
11
|
+
Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
|
|
12
|
+
|
|
13
|
+
## Build
|
|
14
|
+
|
|
15
|
+
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
16
|
+
|
|
17
|
+
## Running unit tests
|
|
18
|
+
|
|
19
|
+
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
20
|
+
|
|
21
|
+
## Running end-to-end tests
|
|
22
|
+
|
|
23
|
+
Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
|
|
24
|
+
|
|
25
|
+
## Further help
|
|
26
|
+
|
|
27
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
## Step 1: Create a new Angular workspace
|
|
2
|
+
```bash
|
|
3
|
+
# Create a new Angular workspace without an application
|
|
4
|
+
ng new tab-sdk --create-application=false --directory=.
|
|
5
|
+
cd tab-sdk
|
|
6
|
+
```
|
|
7
|
+
|
|
8
|
+
## Step 2: Generate the library
|
|
9
|
+
```bash
|
|
10
|
+
# Generate a library in the workspace
|
|
11
|
+
ng generate library tab-sdk --prefix=tab
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Step 3: Update library configuration
|
|
15
|
+
Edit the `projects/tab-sdk/package.json` file to match your requirements:
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"name": "@techextensor/tab-sdk",
|
|
20
|
+
"version": "0.0.0",
|
|
21
|
+
"peerDependencies": {
|
|
22
|
+
"@angular/common": "^17.3.0",
|
|
23
|
+
"@angular/core": "^17.3.0",
|
|
24
|
+
"rxjs": "^7.8.0",
|
|
25
|
+
"@angular/router": "^17.3.0"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"tslib": "^2.3.0",
|
|
29
|
+
},
|
|
30
|
+
"sideEffects": false,
|
|
31
|
+
"publishConfig": {
|
|
32
|
+
"access": "public"
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"updateVersion": "npm version patch"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Step 4: Install dependencies
|
|
41
|
+
```bash
|
|
42
|
+
# Clear any potential caches
|
|
43
|
+
npm cache clean --force
|
|
44
|
+
|
|
45
|
+
# Install dependencies
|
|
46
|
+
npm install
|
|
47
|
+
|
|
48
|
+
# Install the core utility specifically
|
|
49
|
+
npm install @techextensor/tab-core-utility@2.2.98
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Step 5: Build the library
|
|
53
|
+
```bash
|
|
54
|
+
# Build the library
|
|
55
|
+
ng build tab-sdk
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Step 6: Publish the library (when ready)
|
|
59
|
+
```bash
|
|
60
|
+
# Navigate to the dist folder
|
|
61
|
+
cd dist/tab-sdk
|
|
62
|
+
|
|
63
|
+
# Publish to npm
|
|
64
|
+
npm publish
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Library Structure
|
|
68
|
+
After generation, your library structure should look like:
|
|
69
|
+
```
|
|
70
|
+
projects/
|
|
71
|
+
tab-sdk/
|
|
72
|
+
src/
|
|
73
|
+
lib/
|
|
74
|
+
tab-sdk.service.ts
|
|
75
|
+
public-api.ts
|
|
76
|
+
test.ts
|
|
77
|
+
ng-package.json
|
|
78
|
+
package.json
|
|
79
|
+
tsconfig.lib.json
|
|
80
|
+
tsconfig.lib.prod.json
|
|
81
|
+
tsconfig.spec.json
|
|
82
|
+
```
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Analytics Service
|
|
2
|
+
|
|
3
|
+
## Performance Analytics
|
|
4
|
+
- TabSdk.analytics.getSummaryOfPerformance(payload: PerformanceAnalyticsPayload)
|
|
5
|
+
- TabSdk.analytics.getDetailOfPerformance(payload: PerformanceAnalyticsPayload)
|
|
6
|
+
- TabSdk.analytics.insertScreenPerformanceAnalytics(payload: ScreenPerformancePayload)
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# App Service
|
|
2
|
+
|
|
3
|
+
## App Build & Configuration
|
|
4
|
+
- TabSdk.app.syncAppFields(payload: SyncAppFieldsRequest)
|
|
5
|
+
- TabSdk.app.rebuild()
|
|
6
|
+
- TabSdk.app.registerAppObject(payload: RegisterAppObjectsRequest)
|
|
7
|
+
- TabSdk.app.setTabComponents(connectionId: string)
|
|
8
|
+
|
|
9
|
+
## Schema & Metadata
|
|
10
|
+
- TabSdk.app.getSchemaFile()
|
|
11
|
+
- TabSdk.app.getPermission()
|
|
12
|
+
|
|
13
|
+
## Data Operations
|
|
14
|
+
- TabSdk.app.getDataJsonByType(payload: GetDataJsonByTypeReq)
|
|
15
|
+
- TabSdk.app.refreshGlobalSearchData(payload: SyncOldDataModel)
|
|
16
|
+
|
|
17
|
+
## Validation & Testing
|
|
18
|
+
- TabSdk.app.performValidation(connectionId: string)
|
|
19
|
+
- TabSdk.app.testConnection(connectionId: string)
|
|
20
|
+
|
|
21
|
+
## DSQ (Data Source Query) Operations
|
|
22
|
+
- TabSdk.app.cloneDsq(payload: CloneDSQRequest)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Auth Util Service
|
|
2
|
+
|
|
3
|
+
## Authentication
|
|
4
|
+
- TabSdk.auth.login(loginRequest)
|
|
5
|
+
- TabSdk.auth.refreshToken(tokenDetails)
|
|
6
|
+
|
|
7
|
+
## User Management
|
|
8
|
+
- TabSdk.auth.registerUser(userDetails, headers?)
|
|
9
|
+
- TabSdk.auth.resetPassword(resetPasswordRequest)
|
|
10
|
+
- TabSdk.auth.changePassword(changePasswordRequest)
|
|
11
|
+
- TabSdk.auth.getUserDetails(userDetailsRequest, headers?)
|
|
12
|
+
|
|
13
|
+
## Tenant Management
|
|
14
|
+
- TabSdk.auth.registerTenant(tenantDetails)
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Crud Service
|
|
2
|
+
|
|
3
|
+
## Crud operations
|
|
4
|
+
|
|
5
|
+
- TabSdk.crud.get(payload: GetPayload, headers?: any);
|
|
6
|
+
- TabSdk.crud.insert(payload: InsertPayload, headers?: any);
|
|
7
|
+
- TabSdk.crud.update(payload: UpdatePayload, headers?: any);
|
|
8
|
+
- TabSdk.crud.delete(payload: DeletePayload, headers?: any);
|
|
9
|
+
|
|
10
|
+
## Specialized data operations
|
|
11
|
+
|
|
12
|
+
- TabSdk.crud.getSearchData(payload: SearchDataPayload, params?: any);
|
|
13
|
+
- TabSdk.crud.getRecordHistory(payload: RcordHistoryPayload);
|
|
14
|
+
- TabSdk.crud.import(payload: ImprotDataPayload);
|
|
15
|
+
- TabSdk.crud.executeSp(sp: string, headers?: any);
|
|
16
|
+
- TabSdk.crud.executeSelectQuery(selectQueryId: string, parameters?: any);
|
|
17
|
+
- TabSdk.crud.executeSelectExecutor(data: APISelectQuery, parameters?: any);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Form Service
|
|
2
|
+
|
|
3
|
+
## Form Processing
|
|
4
|
+
- TabSdk.form.processRequest(requestPayload: ProcessRequestPayload)
|
|
5
|
+
|
|
6
|
+
## Screen Operations
|
|
7
|
+
- TabSdk.form.getScreenData(screenId: string, requestPayload: any)
|
|
8
|
+
- TabSdk.form.getScreen(screenId: string, config?: GetScreenConfig)
|
|
9
|
+
|
|
10
|
+
## Component Builders
|
|
11
|
+
- TabSdk.form.buildFormIOComponents(appObjectId: string, type: BuildFormComponentType)
|
|
12
|
+
|
|
13
|
+
## Template Parsing
|
|
14
|
+
- TabSdk.form.parseTemplate(requestPayload: TemplateParsePayload, onFailedParseOnServer: boolean)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Metadata Utils
|
|
2
|
+
|
|
3
|
+
## App Object
|
|
4
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)
|
|
5
|
+
- TabSdk.metadataUtils.getAllAppObjects()
|
|
6
|
+
- TabSdk.metadataUtils.getAllAppObjects(filterFn)
|
|
7
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.parentAppObject
|
|
8
|
+
- TabSdk.metadataUtils.searchMetadata(term)[MetadataEntityType.APP_OBJECTS]
|
|
9
|
+
|
|
10
|
+
## Field
|
|
11
|
+
- TabSdk.metadataUtils.getAllFields()
|
|
12
|
+
- TabSdk.metadataUtils.getAllFields(filterFn)
|
|
13
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.fields()
|
|
14
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.field(idOrName)
|
|
15
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.findFields(filterFn)
|
|
16
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.lookupFields()
|
|
17
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.fields()[index].Field
|
|
18
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.parentAppObject?.fields()
|
|
19
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.fields()[index].Field
|
|
20
|
+
- TabSdk.metadataUtils.searchMetadata(term)[MetadataEntityType.APP_FIELDS]
|
|
21
|
+
|
|
22
|
+
## Data Source Query
|
|
23
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)
|
|
24
|
+
- TabSdk.metadataUtils.getAllDataSourceQueries()
|
|
25
|
+
- TabSdk.metadataUtils.getAllDataSourceQueries(filterFn)
|
|
26
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQueries()
|
|
27
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)
|
|
28
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.findDataSourceQueries(filterFn)
|
|
29
|
+
- TabSdk.metadataUtils.searchMetadata(term)[MetadataEntityType.DATA_SOURCE_QUERIES]
|
|
30
|
+
|
|
31
|
+
## DSQ Field
|
|
32
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.fields()
|
|
33
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.findFields(filterFn)
|
|
34
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.fields()
|
|
35
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.findFields(filterFn)
|
|
36
|
+
|
|
37
|
+
## DSQ Parameter/Filter/Sort
|
|
38
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.parameters()
|
|
39
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.mandatoryParameters()
|
|
40
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.parameter(name)
|
|
41
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.filters()
|
|
42
|
+
- TabSdk.metadataUtils.getDataSourceQueryByIdOrName(nameOrId)?.sorts()
|
|
43
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.parameters()
|
|
44
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.mandatoryParameters()
|
|
45
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.parameter(name)
|
|
46
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.filters()
|
|
47
|
+
- TabSdk.metadataUtils.getAppObjectByIdOrName(nameOrId)?.dataSourceQuery(idOrName)?.sorts()
|
|
48
|
+
|
|
49
|
+
## App Screen
|
|
50
|
+
- TabSdk.metadataUtils.getAppScreenByIdOrName(nameOrId)
|
|
51
|
+
- TabSdk.metadataUtils.getAllAppScreens()
|
|
52
|
+
- TabSdk.metadataUtils.getAllAppScreens(filterFn)
|
|
53
|
+
- TabSdk.metadataUtils.searchMetadata(term)[MetadataEntityType.APP_SCREENS]
|
|
54
|
+
|
|
55
|
+
## Organization
|
|
56
|
+
- TabSdk.metadataUtils.getOrgInfoByIdOrTenantCode(nameOrTenantCode)
|
|
57
|
+
- TabSdk.metadataUtils.getAllOrgInfos()
|
|
58
|
+
- TabSdk.metadataUtils.getAllOrgInfos(filterFn)
|
|
59
|
+
|
|
60
|
+
## Global Search
|
|
61
|
+
- TabSdk.metadataUtils.searchMetadata(term)
|
|
62
|
+
- TabSdk.metadataUtils.searchMetadata(term, entityTypes)
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Store Service
|
|
2
|
+
|
|
3
|
+
## Direct Properties
|
|
4
|
+
|
|
5
|
+
### Tenant Properties
|
|
6
|
+
- TabSdk.store.tenantId
|
|
7
|
+
- TabSdk.store.tenantName
|
|
8
|
+
- TabSdk.store.subdomain
|
|
9
|
+
- TabSdk.store.removeTenantId()
|
|
10
|
+
- TabSdk.store.removeTenantName()
|
|
11
|
+
- TabSdk.store.removeSubdomain()
|
|
12
|
+
|
|
13
|
+
### App Properties
|
|
14
|
+
- TabSdk.store.appId
|
|
15
|
+
- TabSdk.store.appName
|
|
16
|
+
- TabSdk.store.removeAppId()
|
|
17
|
+
- TabSdk.store.removeAppName()
|
|
18
|
+
|
|
19
|
+
### Environment Properties
|
|
20
|
+
- TabSdk.store.environmentId
|
|
21
|
+
- TabSdk.store.environmentName
|
|
22
|
+
- TabSdk.store.removeEnvironmentId()
|
|
23
|
+
- TabSdk.store.removeEnvironmentName()
|
|
24
|
+
|
|
25
|
+
### Token Properties
|
|
26
|
+
- TabSdk.store.token
|
|
27
|
+
- TabSdk.store.refreshToken
|
|
28
|
+
- TabSdk.store.refreshTokenExpiry
|
|
29
|
+
- TabSdk.store.staticToken
|
|
30
|
+
- TabSdk.store.removeToken()
|
|
31
|
+
- TabSdk.store.removeRefreshToken()
|
|
32
|
+
- TabSdk.store.removeRefreshTokenExpiry()
|
|
33
|
+
- TabSdk.store.removeStaticToken()
|
|
34
|
+
|
|
35
|
+
### User Properties (Read-only)
|
|
36
|
+
- TabSdk.store.userId
|
|
37
|
+
- TabSdk.store.userRoles
|
|
38
|
+
- TabSdk.store.userTeams
|
|
39
|
+
|
|
40
|
+
## Local Storage Methods
|
|
41
|
+
- TabSdk.store.setLocal(key, value)
|
|
42
|
+
- TabSdk.store.getLocal(key)
|
|
43
|
+
- TabSdk.store.removeLocal(key)
|
|
44
|
+
- TabSdk.store.clearLocal()
|
|
45
|
+
|
|
46
|
+
## Session Storage Methods
|
|
47
|
+
- TabSdk.store.setSession(key, value)
|
|
48
|
+
- TabSdk.store.getSession(key)
|
|
49
|
+
- TabSdk.store.removeSession(key)
|
|
50
|
+
- TabSdk.store.clearSession()
|
|
51
|
+
|
|
52
|
+
## Info Object Methods
|
|
53
|
+
|
|
54
|
+
### Organization Info
|
|
55
|
+
- TabSdk.store.setOrgInfo(orgInfo)
|
|
56
|
+
- TabSdk.store.getOrgInfo()
|
|
57
|
+
|
|
58
|
+
### App Info
|
|
59
|
+
- TabSdk.store.setAppInfo(appInfo)
|
|
60
|
+
- TabSdk.store.getAppInfo()
|
|
61
|
+
|
|
62
|
+
### Environment Info
|
|
63
|
+
- TabSdk.store.setEnvironmentInfo(envInfo)
|
|
64
|
+
- TabSdk.store.getEnvironmentInfo()
|
|
65
|
+
|
|
66
|
+
### Token Info
|
|
67
|
+
- TabSdk.store.setTokenInfo(tokenInfo)
|
|
68
|
+
- TabSdk.store.getTokenInfo()
|
|
69
|
+
|
|
70
|
+
### User Info
|
|
71
|
+
- TabSdk.store.setUserInfo(userInfo)
|
|
72
|
+
- TabSdk.store.getUserInfo()
|
|
73
|
+
|
|
74
|
+
## Authentication Methods
|
|
75
|
+
- TabSdk.store.clearAuth()
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Translator Service
|
|
2
|
+
|
|
3
|
+
## Language Management
|
|
4
|
+
|
|
5
|
+
- TabSdk.translator.getCurrentLanguage()
|
|
6
|
+
- TabSdk.translator.getLanguageChanges()
|
|
7
|
+
- TabSdk.translator.changeLanguage(payload: TranslatePayload)
|
|
8
|
+
|
|
9
|
+
## Translation Operations
|
|
10
|
+
|
|
11
|
+
- TabSdk.translator.translate(key: string, params?: any)
|
|
12
|
+
- TabSdk.translator.getTranslation(key: string, params?: any)
|
|
13
|
+
|
|
14
|
+
## Integration
|
|
15
|
+
|
|
16
|
+
- TabSdk.translator.registerIntegration(handler: (lang: string, translations: any) => void)
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# UI Service
|
|
2
|
+
|
|
3
|
+
## Screen
|
|
4
|
+
- TabSdk.ui.openScreen(options)
|
|
5
|
+
- TabSdk.ui.showSidebar(options)
|
|
6
|
+
- TabSdk.ui.showDialog(options)
|
|
7
|
+
|
|
8
|
+
## Navigation
|
|
9
|
+
- TabSdk.ui.navigateTo(options)
|
|
10
|
+
- TabSdk.ui.openInNewTab(options)
|
|
11
|
+
- TabSdk.ui.navigateToUrl(url)
|
|
12
|
+
- TabSdk.ui.navigateToSubdomain(options)
|
|
13
|
+
|
|
14
|
+
## Notification
|
|
15
|
+
- TabSdk.ui.notify(options)
|
|
16
|
+
- TabSdk.ui.showSuccess(options)
|
|
17
|
+
- TabSdk.ui.showWarning(options)
|
|
18
|
+
- TabSdk.ui.showError(options)
|
|
19
|
+
- TabSdk.ui.showInfo(options)
|
|
20
|
+
|
|
21
|
+
## Confirmation Dialog
|
|
22
|
+
- TabSdk.ui.confirm(options)
|
package/nx.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./node_modules/nx/schemas/nx-schema.json",
|
|
3
|
+
"targetDefaults": {
|
|
4
|
+
"build": {
|
|
5
|
+
"cache": true,
|
|
6
|
+
"dependsOn": [
|
|
7
|
+
"^build"
|
|
8
|
+
],
|
|
9
|
+
"inputs": [
|
|
10
|
+
"production",
|
|
11
|
+
"^production"
|
|
12
|
+
]
|
|
13
|
+
},
|
|
14
|
+
"test": {
|
|
15
|
+
"cache": true,
|
|
16
|
+
"inputs": [
|
|
17
|
+
"default",
|
|
18
|
+
"^production"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"namedInputs": {
|
|
23
|
+
"sharedGlobals": [],
|
|
24
|
+
"default": [
|
|
25
|
+
"{projectRoot}/**/*",
|
|
26
|
+
"sharedGlobals"
|
|
27
|
+
],
|
|
28
|
+
"production": [
|
|
29
|
+
"default",
|
|
30
|
+
"!{projectRoot}/tsconfig.spec.json",
|
|
31
|
+
"!{projectRoot}/**/*.spec.[jt]s"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
"nxCloudId": "67e131fbd158442904e3e63c"
|
|
35
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@techextensor/tab-sdk",
|
|
3
|
+
"version": "0.0.0",
|
|
4
|
+
"scripts": {
|
|
5
|
+
"ng": "ng",
|
|
6
|
+
"start": "nx serve",
|
|
7
|
+
"build": "nx build",
|
|
8
|
+
"watch": "nx build --watch --configuration development",
|
|
9
|
+
"test": "nx test"
|
|
10
|
+
},
|
|
11
|
+
"private": false,
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@angular/animations": "^17.3.0",
|
|
14
|
+
"@angular/common": "^17.3.0",
|
|
15
|
+
"@angular/compiler": "^17.3.0",
|
|
16
|
+
"@angular/core": "^17.3.0",
|
|
17
|
+
"@angular/forms": "^17.3.0",
|
|
18
|
+
"@angular/platform-browser": "^17.3.0",
|
|
19
|
+
"@angular/platform-browser-dynamic": "^17.3.0",
|
|
20
|
+
"@angular/router": "^17.3.0",
|
|
21
|
+
"@techextensor/tab-core-utility": "^2.2.156",
|
|
22
|
+
"rxjs": "~7.8.0",
|
|
23
|
+
"tslib": "^2.3.0",
|
|
24
|
+
"zone.js": "~0.14.3"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"@angular-devkit/build-angular": "^17.3.0",
|
|
28
|
+
"@angular-devkit/core": "^17.3.0",
|
|
29
|
+
"@angular-devkit/schematics": "^17.3.0",
|
|
30
|
+
"@angular/cli": "^17.3.0",
|
|
31
|
+
"@angular/compiler-cli": "^17.3.0",
|
|
32
|
+
"@nx/angular": "20.6.2",
|
|
33
|
+
"@nx/workspace": "20.6.2",
|
|
34
|
+
"@schematics/angular": "^17.3.0",
|
|
35
|
+
"@types/jasmine": "~5.1.0",
|
|
36
|
+
"jasmine-core": "~5.1.0",
|
|
37
|
+
"karma": "~6.4.0",
|
|
38
|
+
"karma-chrome-launcher": "~3.2.0",
|
|
39
|
+
"karma-coverage": "~2.2.0",
|
|
40
|
+
"karma-jasmine": "~5.1.0",
|
|
41
|
+
"karma-jasmine-html-reporter": "~2.1.0",
|
|
42
|
+
"ng-packagr": "^17.3.0",
|
|
43
|
+
"nx": "20.6.2",
|
|
44
|
+
"typescript": "~5.4.2"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# TabSdk
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 18.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project tab-sdk` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project tab-sdk`.
|
|
8
|
+
> Note: Don't forget to add `--project tab-sdk` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build tab-sdk` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build tab-sdk`, go to the dist folder `cd dist/tab-sdk` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test tab-sdk` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@techextensor/tab-sdk",
|
|
3
|
+
"version": "0.0.16",
|
|
4
|
+
"peerDependencies": {
|
|
5
|
+
"@angular/common": "^17.3.0",
|
|
6
|
+
"@angular/core": "^17.3.0",
|
|
7
|
+
"@techextensor/tab-core-utility": "^2.2.156"
|
|
8
|
+
},
|
|
9
|
+
"scripts": {
|
|
10
|
+
"updateVersion": "npm version patch"
|
|
11
|
+
},
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"tslib": "^2.3.0"
|
|
14
|
+
},
|
|
15
|
+
"sideEffects": false,
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
|
3
|
+
"name": "tab-sdk",
|
|
4
|
+
"projectType": "library",
|
|
5
|
+
"sourceRoot": "projects/tab-sdk/src",
|
|
6
|
+
"prefix": "lib",
|
|
7
|
+
"targets": {
|
|
8
|
+
"build": {
|
|
9
|
+
"executor": "@angular-devkit/build-angular:ng-packagr",
|
|
10
|
+
"options": {
|
|
11
|
+
"project": "projects/tab-sdk/ng-package.json"
|
|
12
|
+
},
|
|
13
|
+
"configurations": {
|
|
14
|
+
"production": {
|
|
15
|
+
"tsConfig": "projects/tab-sdk/tsconfig.lib.prod.json"
|
|
16
|
+
},
|
|
17
|
+
"development": {
|
|
18
|
+
"tsConfig": "projects/tab-sdk/tsconfig.lib.json"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"defaultConfiguration": "production",
|
|
22
|
+
"outputs": [
|
|
23
|
+
"{workspaceRoot}/dist/tab-sdk"
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
"test": {
|
|
27
|
+
"executor": "@angular-devkit/build-angular:karma",
|
|
28
|
+
"options": {
|
|
29
|
+
"tsConfig": "projects/tab-sdk/tsconfig.spec.json",
|
|
30
|
+
"polyfills": [
|
|
31
|
+
"zone.js",
|
|
32
|
+
"zone.js/testing"
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|