@sava-info-systems/api-maker-with-extensions 2.3.0 → 3.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/.dockerignore +5 -1
- package/Dockerfile +1 -35
- package/Dockerfile.base +22 -0
- package/Dockerfile.extended-base +44 -0
- package/dist/1025.5c34b11ab88519fd.js +1 -0
- package/dist/1097.3c5b2b4587cefa6e.js +1 -0
- package/dist/115.8d10b2b963e7d632.js +1 -0
- package/dist/148.f8f560a5f818328e.js +1 -0
- package/dist/1558.576af7585833e289.js +1 -0
- package/dist/1678.14f917ee37080d63.js +1 -0
- package/dist/1754.fc6d6e9f6c1e96d5.js +1 -0
- package/dist/1928.9c9375dd036b025a.js +1 -0
- package/dist/1957.b718aa368330b524.js +1 -0
- package/dist/2140.bb097d69bcb6a1e5.js +1 -0
- package/dist/2295.aa3514c8d1238cb2.js +1 -0
- package/dist/238.553f30dbe5124419.js +1 -0
- package/dist/2473.260a6b26a70eaa8d.js +1 -0
- package/dist/2579.b02fe6a8ba3a2e71.js +1 -0
- package/dist/2714.b41d14f7378785df.js +1 -0
- package/dist/2735.4046cae4c68ac75f.js +1 -0
- package/dist/292.bb85e0ea91dcc118.js +1 -0
- package/dist/3139.5dd9289cc24b4100.js +1 -0
- package/dist/3450.588aafa515b19133.js +1 -0
- package/dist/3664.ed1232e3c70195fc.js +1 -0
- package/dist/3752.d4e0a280a37c1426.js +1 -0
- package/dist/3rdpartylicenses.txt +1 -1
- package/dist/4110.b9ebfd9a7382c450.js +1 -0
- package/dist/4186.2fd0537d5bc6d882.js +1 -0
- package/dist/4211.b6b9f495b100e985.js +1 -0
- package/dist/4575.1fee055d10b57afc.js +1 -0
- package/dist/4842.ccf765ed3e9753a7.js +1 -0
- package/dist/485.7870367c9475fed8.js +1 -0
- package/dist/{4895.a54759704d1994b1.js → 4895.fa7b24d66157c531.js} +1 -1
- package/dist/5334.e0a2450fc295f659.js +1 -0
- package/dist/5421.2c2c0fbf926792db.js +1 -0
- package/dist/5434.0997994b319a866a.js +1 -0
- package/dist/5679.e362a3e10cb1b953.js +1 -0
- package/dist/5761.6c20b09245ac31ef.js +1 -0
- package/dist/5765.8d761aef1708e8a1.js +1 -0
- package/dist/6236.969b45cad747277c.js +1 -0
- package/dist/6393.1b7b097f17d75290.js +1 -0
- package/dist/6401.f18e3c98d6deaa22.js +1 -0
- package/dist/6650.05ea40acd68697c3.js +1 -0
- package/dist/7368.85d940d08fdca6e2.js +1 -0
- package/dist/7436.4a62f7ef13cffb21.js +1 -0
- package/dist/7470.d24359dc7a3ef75a.js +1 -0
- package/dist/7649.8e5ff8a951b474e0.js +1 -0
- package/dist/7975.d3d7064d527ac017.js +1 -0
- package/dist/7977.85b17bdb465e9a90.js +1 -0
- package/dist/7987.c1637bec96a9cc03.js +1 -0
- package/dist/8125.8390bc1b477ec6b9.js +1 -0
- package/dist/8266.0bf85311cf40ddff.js +1 -0
- package/dist/8296.fe54c3787977fad3.js +1 -0
- package/dist/885.7e1ec0f82adbdd6f.js +1 -0
- package/dist/891.fee03277c7f1c29d.js +1 -0
- package/dist/{913.4580b4ce4307a40f.js → 913.e49eb351997bc25c.js} +1 -1
- package/dist/9243.eaa2c312b42fc4b3.js +1 -0
- package/dist/9575.8404e98d640fd9f9.js +1 -0
- package/dist/9939.537c5e355804804b.js +1 -0
- package/dist/assets/images/icons/api-group-light.svg +11 -0
- package/dist/assets/images/icons/api-group.svg +5 -5
- package/dist/assets/images/icons/api-maker-deployment-light.svg +5 -0
- package/dist/assets/images/icons/api-maker-deployment.svg +3 -3
- package/dist/assets/images/icons/api-user-light.svg +12 -0
- package/dist/assets/images/icons/api-user.svg +2 -2
- package/dist/assets/images/icons/comparator-light.svg +61 -0
- package/dist/assets/images/icons/comparator.svg +2 -2
- package/dist/assets/images/icons/custom-light.svg +6 -0
- package/dist/assets/images/icons/custom.svg +5 -5
- package/dist/assets/images/icons/database-light.svg +29 -0
- package/dist/assets/images/icons/database.svg +6 -6
- package/dist/assets/images/icons/db-m-light.svg +10 -0
- package/dist/assets/images/icons/db-m.svg +4 -4
- package/dist/assets/images/icons/db-token-generator-light.svg +4 -0
- package/dist/assets/images/icons/db-token-generator.svg +4 -0
- package/dist/assets/images/icons/dev-light.svg +13 -0
- package/dist/assets/images/icons/dev.svg +4 -4
- package/dist/assets/images/icons/diagram-light.svg +28 -0
- package/dist/assets/images/icons/diagram.svg +9 -9
- package/dist/assets/images/icons/event-light.svg +16 -0
- package/dist/assets/images/icons/event.svg +4 -4
- package/dist/assets/images/icons/film-movies-icon.svg +3 -3
- package/dist/assets/images/icons/finder-light.svg +14 -0
- package/dist/assets/images/icons/finder.svg +3 -3
- package/dist/assets/images/icons/i18n-light.svg +11 -0
- package/dist/assets/images/icons/i18n.svg +6 -6
- package/dist/assets/images/icons/increment-light.svg +5 -0
- package/dist/assets/images/icons/increment.svg +2 -2
- package/dist/assets/images/icons/license-light.svg +6 -0
- package/dist/assets/images/icons/license.svg +4 -4
- package/dist/assets/images/icons/log-light.svg +17 -0
- package/dist/assets/images/icons/log-profile-light.svg +23 -0
- package/dist/assets/images/icons/log-profile.svg +7 -7
- package/dist/assets/images/icons/log.svg +6 -6
- package/dist/assets/images/icons/masters.svg +3 -3
- package/dist/assets/images/icons/native-process-logs-light.svg +13 -0
- package/dist/assets/images/icons/native-process-logs.svg +6 -6
- package/dist/assets/images/icons/nodes-light.svg +5 -0
- package/dist/assets/images/icons/nodes.svg +2 -2
- package/dist/assets/images/icons/notes-light.svg +16 -0
- package/dist/assets/images/icons/notes.svg +2 -2
- package/dist/assets/images/icons/process_initializers-light.svg +20 -0
- package/dist/assets/images/icons/process_initializers.svg +7 -7
- package/dist/assets/images/icons/rsa_encryption-light.svg +6 -0
- package/dist/assets/images/icons/rsa_encryption.svg +2 -2
- package/dist/assets/images/icons/sandbox-light.svg +11 -0
- package/dist/assets/images/icons/sandbox.svg +2 -2
- package/dist/assets/images/icons/scanning-period-light.svg +13 -0
- package/dist/assets/images/icons/scanning-period.svg +4 -4
- package/dist/assets/images/icons/schedulers-light.svg +8 -0
- package/dist/assets/images/icons/schedulers.svg +5 -5
- package/dist/assets/images/icons/secret-light.svg +15 -0
- package/dist/assets/images/icons/secret.svg +2 -2
- package/dist/assets/images/icons/swagger-logo-light.svg +9 -0
- package/dist/assets/images/icons/swagger-logo.svg +2 -2
- package/dist/assets/images/icons/systems-light.svg +8 -0
- package/dist/assets/images/icons/systems.svg +3 -3
- package/dist/assets/images/icons/testing-light.svg +12 -0
- package/dist/assets/images/icons/testing.svg +6 -6
- package/dist/assets/images/icons/third-party-light.svg +19 -0
- package/dist/assets/images/icons/third-party.svg +4 -4
- package/dist/assets/images/icons/typescript-light.svg +12 -0
- package/dist/assets/images/icons/typescript.svg +2 -2
- package/dist/assets/images/icons/ui-maker-light.svg +23 -0
- package/dist/assets/images/icons/ui-maker.svg +10 -10
- package/dist/assets/images/icons/utility-light.svg +19 -0
- package/dist/assets/images/icons/utility.svg +2 -2
- package/dist/assets/images/icons/vulnerability-light.svg +20 -0
- package/dist/assets/images/icons/vulnerability.svg +5 -5
- package/dist/assets/images/icons/web-light.svg +16 -0
- package/dist/assets/images/icons/web.svg +3 -3
- package/dist/assets/images/logo/api_maker_logo_dark.svg +29 -0
- package/dist/assets/images/logo/api_maker_logo_full_white.svg +29 -0
- package/dist/assets/images/logo/api_maker_logo_light.svg +22 -0
- package/dist/assets/images/logo/apple-touch-icon.png +0 -0
- package/dist/assets/images/logo/favicon-192x192.png +0 -0
- package/dist/assets/images/logo/favicon-32x32.png +0 -0
- package/dist/assets/images/logo/favicon-512x512.png +0 -0
- package/dist/assets/images/logo/logo_docs-light.svg +15 -0
- package/dist/assets/images/logo/logo_docs.svg +3 -3
- package/dist/assets/images/logo/logo_store-light.svg +17 -0
- package/dist/assets/images/logo/logo_store.svg +3 -3
- package/dist/assets/images/logo/store_logo-dark.svg +11 -0
- package/dist/assets/images/logo/store_logo-light.svg +11 -0
- package/dist/assets/images/logo/store_logo.svg +2 -2
- package/dist/assets/primeng-theme/primeng-theme-overrides.scss +1426 -31
- package/dist/assets/public/diagram-viewer/index.html +59 -20
- package/dist/assets/public/diagram-viewer/index.js +1 -1
- package/dist/assets/public/monaco-editor/index.html +105 -9
- package/dist/assets/public/monaco-editor/index.js +1 -1
- package/dist/assets/public/table-viewer/index.html +124 -38
- package/dist/assets/schema-types/InterfaceProps.ts +71 -13
- package/dist/assets/schema-types/store-types.ts +2 -0
- package/dist/assets/schema-types/types.ts +65 -17
- package/dist/assets/styles/bootstrap-overrides.scss +170 -7
- package/dist/assets/styles/colors-dark.scss +320 -33
- package/dist/assets/styles/colors-light.scss +453 -9
- package/dist/assets/styles/out/styles.css.map +1 -1
- package/dist/assets/styles/styles.scss +213 -24
- package/dist/assets/styles/variables.scss +2 -2
- package/dist/bootstrap-overrides.css +1 -0
- package/dist/colors-dark.css +1 -0
- package/dist/colors-light.css +1 -0
- package/dist/{common.912ad7a22e5de63a.js → common.86c514055f788290.js} +1 -1
- package/dist/index.html +111 -27
- package/dist/main.0ac98a72f1b9c1dd.js +1 -0
- package/dist/runtime.0e9fc303007ced09.js +1 -0
- package/dist/styles-global.css +1 -0
- package/dist/{styles.242217e145c3f7ab.css → styles.c1032bc4f4d7829b.css} +1 -1
- package/main.js +1 -1
- package/package-sandbox.json +1 -1
- package/package.json +9 -9
- package/pnpm-workspace.yaml +15 -0
- package/sandbox.js +1 -1
- package/src/assets/schema-types/store-types.ts +2 -0
- package/src/assets/schema-types/types.ts +65 -17
- package/src/schema-types/store-types.js +2 -0
- package/src/schema-types/types.js +1 -0
- package/src/tools/.github/copilot-instructions.md +17 -9
- package/src/tools/local-client.js +1 -1
- package/dist/1025.a0db9347453600d0.js +0 -1
- package/dist/1097.d0d6fd13031aa1f0.js +0 -1
- package/dist/148.1dc7d9e0cfe45510.js +0 -1
- package/dist/1558.0aae3e5c538d3815.js +0 -1
- package/dist/1678.ed1e4a269e0f42bc.js +0 -1
- package/dist/1754.691f142aa1eabe28.js +0 -1
- package/dist/1928.2b376f7cf66ed038.js +0 -1
- package/dist/1957.ab7fda21d9978597.js +0 -1
- package/dist/2140.1ce150285aebe3cc.js +0 -1
- package/dist/2295.4fa1d4b5ff482f3a.js +0 -1
- package/dist/238.891233aa670bdd2b.js +0 -1
- package/dist/2473.4b2bb1ad5b1cc99d.js +0 -1
- package/dist/2579.6558b67b2d98f116.js +0 -1
- package/dist/2714.0d6939336a02dd0a.js +0 -1
- package/dist/2735.86437a8639a0c1bb.js +0 -1
- package/dist/292.f6482cd1a572ba4b.js +0 -1
- package/dist/3139.0921102d181c220d.js +0 -1
- package/dist/3450.9b5cfc83039b02b5.js +0 -1
- package/dist/3664.4a1dd7f16f8b57fb.js +0 -1
- package/dist/4110.d108e786ecbdfd1b.js +0 -1
- package/dist/4186.ac3e8af0efeeac14.js +0 -1
- package/dist/4211.1bfe72ce0b7b2f76.js +0 -1
- package/dist/443.7e3946651373e09a.js +0 -1
- package/dist/4575.169008cbbbae66bb.js +0 -1
- package/dist/4842.e7649d81606ad80d.js +0 -1
- package/dist/485.b546656b466cb8a4.js +0 -1
- package/dist/5334.72c1c6d89fdf136e.js +0 -1
- package/dist/5421.2067001c10533303.js +0 -1
- package/dist/5679.4e22239895c7f520.js +0 -1
- package/dist/5761.331ca41ab64cca92.js +0 -1
- package/dist/5765.2b640be5d177d794.js +0 -1
- package/dist/6236.6c0fc469f0c96549.js +0 -1
- package/dist/6393.173ecdfc3b022973.js +0 -1
- package/dist/6401.374823002788afe7.js +0 -1
- package/dist/6650.1d18ee25901d68be.js +0 -1
- package/dist/7368.9ebf62d518f8ad7a.js +0 -1
- package/dist/7436.640bf5fe48814cbe.js +0 -1
- package/dist/7470.b1ce7eedb9cedb2d.js +0 -1
- package/dist/7649.ab4744cfe713eec0.js +0 -1
- package/dist/7975.578a00ebd1160a1e.js +0 -1
- package/dist/7977.afeded970bac8b66.js +0 -1
- package/dist/7987.5958ad5b81873058.js +0 -1
- package/dist/8125.b2f908096882ed45.js +0 -1
- package/dist/8266.aca59a0a04590ab1.js +0 -1
- package/dist/8296.a387c28f5702c5e8.js +0 -1
- package/dist/885.be44d92efca1aaf6.js +0 -1
- package/dist/891.5e08c81e5200413e.js +0 -1
- package/dist/9243.08630ad94e1fddba.js +0 -1
- package/dist/9575.30ac91b65602c0ca.js +0 -1
- package/dist/9939.a3389cc6764e3cbc.js +0 -1
- package/dist/assets/images/logo/API Maker Logo 2021 black.svg +0 -47
- package/dist/assets/images/logo/API Maker Logo 2021.svg +0 -49
- package/dist/assets/images/logo/logo.svg +0 -41
- package/dist/assets/styles/out/bootstrap-overrides.css +0 -2
- package/dist/assets/styles/out/colors-dark.css +0 -2
- package/dist/assets/styles/out/colors-light.css +0 -2
- package/dist/assets/styles/out/monaco-editor-overrides.css +0 -2
- package/dist/assets/styles/out/styles.css +0 -2
- package/dist/assets/styles/out/variables.css +0 -2
- package/dist/favicon.ico +0 -0
- package/dist/main.2046fb4b0dd1b8e0.js +0 -1
- package/dist/runtime.a86d5cd27767506e.js +0 -1
|
@@ -66,6 +66,8 @@ export interface ISandboxReqAuthObj {
|
|
|
66
66
|
authAMUser?: any;
|
|
67
67
|
/** API Maker database user authentication token. */
|
|
68
68
|
authAMDB?: any;
|
|
69
|
+
/** Custom authorization provided by user */
|
|
70
|
+
authCustom?: any;
|
|
69
71
|
|
|
70
72
|
/** Google authentication token. */
|
|
71
73
|
authGoogle?: any;
|
|
@@ -202,6 +204,11 @@ export interface IAuthInfoObjects {
|
|
|
202
204
|
/** Groups/roles assigned to the API Maker database user. */
|
|
203
205
|
authAMDBGroups?: any[]; // IGroup[]
|
|
204
206
|
|
|
207
|
+
/** Custom authorization token information */
|
|
208
|
+
authCustomInfo?: any;
|
|
209
|
+
/** Groups/roles assigned to the API Maker database user. */
|
|
210
|
+
authCustomGroups?: any[]; // IGroup[]
|
|
211
|
+
|
|
205
212
|
/** Google authentication token information. */
|
|
206
213
|
authGoogleInfo?: IAuthTokenGoogle;
|
|
207
214
|
/** Groups/roles assigned to the Google authenticated user. */
|
|
@@ -788,7 +795,7 @@ export interface ISecretType {
|
|
|
788
795
|
common?: ISecretTypeCommon; // it is general purpose secret key section.
|
|
789
796
|
}
|
|
790
797
|
|
|
791
|
-
export interface ISecretTypeCommon extends Pick<IAuthTokenInfoCommon, '
|
|
798
|
+
export interface ISecretTypeCommon extends Pick<IAuthTokenInfoCommon, 'authProviders'> {
|
|
792
799
|
hashingAlgorithm?: 'SHA256'; // change in IPropertyHashing also
|
|
793
800
|
nonce?: string; // if it is available, it will be used for hashing, if not available secret will be used for hashing
|
|
794
801
|
|
|
@@ -811,8 +818,9 @@ export interface ISecretTypeCommon extends Pick<IAuthTokenInfoCommon, 'authToken
|
|
|
811
818
|
|
|
812
819
|
export interface IAuthTokenInfo {
|
|
813
820
|
authTokenType?: EAuthTokenType;
|
|
814
|
-
authTokenAM?: IAuthTokenAM
|
|
815
|
-
authTokenAMDB?:
|
|
821
|
+
authTokenAM?: IAuthTokenAM;
|
|
822
|
+
authTokenAMDB?: IAuthTokenAMDBRequest;
|
|
823
|
+
authTokenCustom?: IAuthTokenAMDBRequest;
|
|
816
824
|
|
|
817
825
|
authTokenAWS?: IAuthTokenAWS;
|
|
818
826
|
authTokenAzureAD?: IAuthTokenAzureAD;
|
|
@@ -832,14 +840,18 @@ export interface IAuthTokenAM {
|
|
|
832
840
|
expiresInSeconds?: number;
|
|
833
841
|
}
|
|
834
842
|
|
|
835
|
-
export interface IRefreshTokenAM {
|
|
836
|
-
|
|
837
|
-
|
|
843
|
+
// export interface IRefreshTokenAM {
|
|
844
|
+
// name?: string;
|
|
845
|
+
// refresh_token: string;
|
|
846
|
+
// }
|
|
838
847
|
|
|
839
848
|
/**
|
|
840
849
|
* API Maker database user authentication configuration.
|
|
841
850
|
*/
|
|
842
|
-
export interface IAuthTokenAMDB
|
|
851
|
+
export interface IAuthTokenAMDB {
|
|
852
|
+
/** Name of DB authorization token generator. It will be used in get-token api with username & pass to generate token. */
|
|
853
|
+
name?: string;
|
|
854
|
+
|
|
843
855
|
/** Database instance name. */
|
|
844
856
|
instance?: string;
|
|
845
857
|
/** Database name. */
|
|
@@ -860,9 +872,9 @@ export interface IAuthTokenAMDB extends Partial<IAuthTokenAM> {
|
|
|
860
872
|
passwordChangedAtColumn?: string;
|
|
861
873
|
|
|
862
874
|
/**
|
|
863
|
-
*
|
|
864
|
-
*
|
|
865
|
-
* DB
|
|
875
|
+
* column name which holds values of, comma separated groups assigned to this db user.
|
|
876
|
+
* "*" = means all groups of api user.
|
|
877
|
+
* DB user can hit API if he/she has access in any of these groups.
|
|
866
878
|
*/
|
|
867
879
|
groupsColumn?: string;
|
|
868
880
|
/**
|
|
@@ -877,12 +889,19 @@ export interface IAuthTokenAMDB extends Partial<IAuthTokenAM> {
|
|
|
877
889
|
sortUsersForTesting?: any;
|
|
878
890
|
/** Fields to select from user records. */
|
|
879
891
|
select?: any;
|
|
892
|
+
/** Token expiration time in seconds. */
|
|
893
|
+
expiresInSeconds?: number;
|
|
894
|
+
/** If true, code will be executed on native process otherwise executed on sandbox. */
|
|
895
|
+
runOnNativeProcess?: boolean;
|
|
896
|
+
}
|
|
880
897
|
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
898
|
+
export interface IAuthTokenAMDBRequest {
|
|
899
|
+
/** Name of token generator */
|
|
900
|
+
name?: string;
|
|
901
|
+
/** Username. */
|
|
902
|
+
u: string;
|
|
903
|
+
/** Password. */
|
|
904
|
+
p: string;
|
|
886
905
|
}
|
|
887
906
|
|
|
888
907
|
/**
|
|
@@ -1332,6 +1351,22 @@ export interface IArrayOperation {
|
|
|
1332
1351
|
upsert?: boolean;
|
|
1333
1352
|
}
|
|
1334
1353
|
|
|
1354
|
+
/**
|
|
1355
|
+
* Request structure for token generation API calls.
|
|
1356
|
+
*/
|
|
1357
|
+
export interface IGetTokenRequest {
|
|
1358
|
+
/** Name of token generator */
|
|
1359
|
+
name?: string;
|
|
1360
|
+
/** Username. */
|
|
1361
|
+
u: string;
|
|
1362
|
+
/** Password. */
|
|
1363
|
+
p: string;
|
|
1364
|
+
/** Refresh token for obtaining a new access token without re-authenticating. */
|
|
1365
|
+
refresh_token?: string;
|
|
1366
|
+
/** Token expiration time in seconds. Used to get only AM user token. */
|
|
1367
|
+
expiresInSeconds?: number;
|
|
1368
|
+
}
|
|
1369
|
+
|
|
1335
1370
|
/**
|
|
1336
1371
|
* Response structure for token generation API calls.
|
|
1337
1372
|
*/
|
|
@@ -1349,10 +1384,14 @@ export interface IGetTokenResponse {
|
|
|
1349
1384
|
|
|
1350
1385
|
export interface IAuthTokenInfoCommon {
|
|
1351
1386
|
apiAccessType?: EAPIAccessType; // api level setting
|
|
1352
|
-
|
|
1387
|
+
|
|
1388
|
+
/** Provide names of token generators */
|
|
1389
|
+
authProviders?: string[];
|
|
1353
1390
|
}
|
|
1354
1391
|
|
|
1355
1392
|
export interface IInstanceApiSettingsTypes extends IAuthTokenInfoCommon {
|
|
1393
|
+
/** Folder name of this item in git. It has to be unique, and it can contain [a-zA-Z0-9_ -] characters only. */
|
|
1394
|
+
name?: string;
|
|
1356
1395
|
enableCaching?: boolean; // collection level setting
|
|
1357
1396
|
acceptOnlyEncryptedData?: boolean; // database & collection & api level setting
|
|
1358
1397
|
}
|
|
@@ -1415,6 +1454,13 @@ export interface ICustomApiSettingsTypes extends IAuthTokenInfoCommon {
|
|
|
1415
1454
|
*/
|
|
1416
1455
|
runOnNativeProcess?: boolean;
|
|
1417
1456
|
|
|
1457
|
+
/**
|
|
1458
|
+
* Maximum time (in seconds) the system will allow this custom API to complete its operation.
|
|
1459
|
+
* Converted to milliseconds and sent as the 'x-am-sandbox-timeout' header.
|
|
1460
|
+
* @default 10
|
|
1461
|
+
*/
|
|
1462
|
+
customApiTimeoutInSeconds?: number;
|
|
1463
|
+
|
|
1418
1464
|
/**
|
|
1419
1465
|
* List of all possible error messages this API can return.
|
|
1420
1466
|
* Used for API documentation and client-side error handling.
|
|
@@ -1612,6 +1658,8 @@ export enum EAuthTokenType {
|
|
|
1612
1658
|
AM = 'AM',
|
|
1613
1659
|
/** Database-backed user authentication. */
|
|
1614
1660
|
AM_DB = 'AM_DB',
|
|
1661
|
+
/** Write your own logic to generate token and validate token */
|
|
1662
|
+
CUSTOM_TOKEN_GENERATOR = 'CUSTOM_TOKEN_GENERATOR',
|
|
1615
1663
|
/** Google OAuth authentication. */
|
|
1616
1664
|
GOOGLE = 'GOOGLE',
|
|
1617
1665
|
/** AWS Cognito authentication. */
|
|
@@ -1829,7 +1877,7 @@ export interface IAMGlobalSysSystem {
|
|
|
1829
1877
|
getSecret(): any; // we can call it without any param also, in store and in tp it will return object of that part.
|
|
1830
1878
|
callExternalApi<T>(data: ICallApiFromBackend | ICallApiFromBackend[] | ICallApiFromBackendProcess | ICallApiFromBackendProcess[] | (ICallApiFromBackend | ICallApiFromBackendProcess)[]): Promise<ICallExternalApiResp<T>>;
|
|
1831
1879
|
callExternalApi(data: ICallApiFromBackend | ICallApiFromBackend[] | ICallApiFromBackendProcess | ICallApiFromBackendProcess[] | (ICallApiFromBackend | ICallApiFromBackendProcess)[]): Promise<ICallExternalApiResp<any>>;
|
|
1832
|
-
getToken(data:
|
|
1880
|
+
getToken(data: IGetTokenRequest | IGetTokenRequest[]): any;
|
|
1833
1881
|
executeQuery(query: IExecuteQuery): any;
|
|
1834
1882
|
/**
|
|
1835
1883
|
* It should be used SQL based databases only.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
.card { border-radius: 0 !important;}
|
|
10
10
|
|
|
11
11
|
.card-header {
|
|
12
|
-
padding: .25rem
|
|
12
|
+
padding: .25rem 1rem;
|
|
13
13
|
font-weight: bold;
|
|
14
14
|
border-radius: 0 !important;
|
|
15
15
|
}
|
|
@@ -43,20 +43,136 @@
|
|
|
43
43
|
.modal-header {
|
|
44
44
|
line-height: 1.5rem; // to keep header text in vertically center.
|
|
45
45
|
font-weight: bold;
|
|
46
|
+
align-items: center; // vertically centre the title + close button (Bootstrap defaults to flex-start)
|
|
46
47
|
}
|
|
47
48
|
|
|
48
|
-
.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
// New UI standard: round close button. Geometry here is theme-agnostic (same in
|
|
50
|
+
// dark & light); the surface/border/hover colours live in colors-dark/-light.scss.
|
|
51
|
+
// Covers both the in-header close button AND the absolutely-positioned close that
|
|
52
|
+
// some full-screen modals (e.g. the test-case layout) drop straight into .modal-content.
|
|
53
|
+
.modal-header .close,
|
|
54
|
+
.modal-content > .close {
|
|
55
|
+
display: inline-flex;
|
|
56
|
+
align-items: center;
|
|
57
|
+
justify-content: center;
|
|
58
|
+
width: 1.75rem;
|
|
59
|
+
height: 1.75rem;
|
|
60
|
+
padding: 0;
|
|
61
|
+
vertical-align: middle; // centre against sibling inline content (some headers wrap it in a float-right div)
|
|
62
|
+
border-radius: 50%;
|
|
63
|
+
line-height: 1;
|
|
64
|
+
opacity: 1; // Bootstrap dims .close to 0.5 by default
|
|
65
|
+
transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
|
|
66
|
+
|
|
67
|
+
// the X glyph sits centred; sized to the round button
|
|
68
|
+
span { display: inline-flex; }
|
|
69
|
+
i { font-size: 0.95rem; line-height: 1; }
|
|
70
|
+
|
|
71
|
+
// Normalise the close glyph app-wide. Modals use three different close icons:
|
|
72
|
+
// fa-window-close (\f410, boxy square) · fa-times-circle (\f057, circled X)
|
|
73
|
+
// · fa-times (\f00d, plain X). The first two read as a "box/circle inside the
|
|
74
|
+
// round button". Force them all to a clean plain X (\f00d) so every modal's
|
|
75
|
+
// round close button is identical, without editing each template.
|
|
76
|
+
// (Font Awesome 5 Free, solid weight 900.)
|
|
77
|
+
i.fa-window-close::before,
|
|
78
|
+
i.fa-times-circle::before { content: "\f00d"; }
|
|
79
|
+
}
|
|
80
|
+
// Flush-right only when it's a flex child of the header (not the absolutely-positioned variant).
|
|
81
|
+
.modal-header .close { margin: 0 0 0 auto; }
|
|
82
|
+
// Absolutely-positioned corner close (test-case / system-logs full-screen modals): its sibling
|
|
83
|
+
// action icons sit at the same inline `top: 0.25rem` but on a 1.3rem (`line-height-1-3`) line, so
|
|
84
|
+
// their centre is at 0.9rem; the 1.75rem round button pinned at the same top centres at 1.125rem —
|
|
85
|
+
// ~0.225rem lower. Pull it up by exactly that half-height difference so it lines up with the icons.
|
|
86
|
+
.modal-content > .close { margin-top: -0.225rem; }
|
|
87
|
+
.modal-header .close:hover,
|
|
88
|
+
.modal-header .close:focus { opacity: 1; outline: none; }
|
|
89
|
+
|
|
90
|
+
// Some modals group the close button with a docs link / info icon in a
|
|
91
|
+
// `float-right` wrapper. Those children have different heights (e.g. the 25px
|
|
92
|
+
// docs logo), so on a shared inline baseline the round close button reads as
|
|
93
|
+
// off-centre. Lay the wrapper out as a centred flex row so every action—incl.
|
|
94
|
+
// the close button—sits on one vertically-centred line. Order keeps Close last.
|
|
95
|
+
.modal-header > .float-right {
|
|
96
|
+
float: none !important;
|
|
97
|
+
display: inline-flex;
|
|
98
|
+
align-items: center;
|
|
99
|
+
gap: 0.65rem; // even, comfortable spacing between header actions (docs / info / close)
|
|
100
|
+
margin-left: auto; // push the action group to the right edge…
|
|
101
|
+
padding-left: 1rem; // …but never let it crowd the title text
|
|
102
|
+
}
|
|
103
|
+
.modal-header > .float-right .close { margin: 0; order: 1; }
|
|
104
|
+
|
|
105
|
+
// New UI standard: header action icons (docs logo + info / help glyphs) share a
|
|
106
|
+
// consistent size and sit centred next to the round close button. Drop the ad-hoc
|
|
107
|
+
// inline sizing/margins (font-size:25px, ml-2/3, mt-n1/n2) the templates carry.
|
|
108
|
+
.modal-header > .float-right {
|
|
109
|
+
// Docs wordmark logo — fixed height (the SVG is 235×145, so width auto keeps ratio),
|
|
110
|
+
// a touch recessed, brightening on hover like a link.
|
|
111
|
+
a {
|
|
112
|
+
display: inline-flex;
|
|
113
|
+
align-items: center;
|
|
114
|
+
margin: 0 !important;
|
|
115
|
+
}
|
|
116
|
+
img {
|
|
117
|
+
height: 20px !important;
|
|
118
|
+
width: auto !important;
|
|
119
|
+
margin: 0 !important; // neutralise mt-n1/n2 + ml/mr that skewed centring
|
|
120
|
+
opacity: 0.9;
|
|
121
|
+
transition: opacity 0.15s ease;
|
|
122
|
+
}
|
|
123
|
+
a:hover img { opacity: 1; }
|
|
124
|
+
|
|
125
|
+
// Info / help action — normalise the inline font-size:1.4em + harsh text-info to
|
|
126
|
+
// a consistent glyph that matches the close button's scale and brand colour.
|
|
127
|
+
> span {
|
|
128
|
+
font-size: 1rem !important;
|
|
129
|
+
display: inline-flex;
|
|
130
|
+
align-items: center;
|
|
131
|
+
margin: 0 !important;
|
|
132
|
+
}
|
|
133
|
+
> span i { font-size: 1.15rem; line-height: 1; transition: color 0.15s ease; }
|
|
52
134
|
}
|
|
53
135
|
|
|
54
136
|
.nav-link { padding: 0.5rem 1rem !important;}
|
|
55
137
|
|
|
138
|
+
// Pin navbar item metrics so swapping bootswatch themes (slate <-> cerulean) can't reflow the
|
|
139
|
+
// navbar (prevents the menu "dancing" on dark/light toggle). Theme-agnostic — same in both modes.
|
|
140
|
+
.navbar { min-height: 44px; }
|
|
141
|
+
.navbar-nav .nav-link {
|
|
142
|
+
padding: 0.5rem 1rem !important;
|
|
143
|
+
line-height: 1.5 !important;
|
|
144
|
+
font-size: $font-size !important;
|
|
145
|
+
font-weight: 400 !important;
|
|
146
|
+
}
|
|
147
|
+
.navbar-nav .nav-link.active,
|
|
148
|
+
.navbar-nav .nav-item.show > .nav-link { font-weight: 400 !important; } // no bold jump on active
|
|
149
|
+
|
|
150
|
+
// Menu (dropdown) separator — brand-tinted hairline, visible in both themes.
|
|
151
|
+
.dropdown-divider {
|
|
152
|
+
border-top: 1px solid rgba(97, 175, 239, 0.20);
|
|
153
|
+
margin: 0.3rem 0.5rem;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// Pin heading sizes so the bootswatch slate/cerulean swap renders them identically (same in dark & light).
|
|
157
|
+
h1, .h1 { font-size: 2.5rem !important; }
|
|
158
|
+
h2, .h2 { font-size: 2rem !important; }
|
|
159
|
+
h3, .h3 { font-size: 1.75rem !important; }
|
|
160
|
+
h4, .h4 { font-size: 1.40625rem !important; }
|
|
161
|
+
h5, .h5 { font-size: 1.171875rem !important; }
|
|
162
|
+
h6, .h6 { font-size: 0.9375rem !important; }
|
|
163
|
+
|
|
164
|
+
// Heading standard (theme-agnostic) — spacing/weight/line-height. Color is set per theme.
|
|
165
|
+
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
|
|
166
|
+
margin-bottom: 0.5rem;
|
|
167
|
+
font-weight: 500;
|
|
168
|
+
line-height: 1.2;
|
|
169
|
+
}
|
|
170
|
+
|
|
56
171
|
.nav-pills .nav-link, .nav-tabs .nav-link, .nav-tabs .nav-link:hover {color: var(--content-primary--shade--four);}
|
|
57
172
|
|
|
58
173
|
.navbar-brand {
|
|
59
|
-
padding-top: 0.3125rem !important;
|
|
174
|
+
//padding-top: 0.3125rem !important;
|
|
175
|
+
padding-top: 0 !important;
|
|
60
176
|
padding-bottom: 0.3125rem !important;
|
|
61
177
|
font-size: 1.25rem !important;
|
|
62
178
|
}
|
|
@@ -67,7 +183,28 @@
|
|
|
67
183
|
border: none !important;
|
|
68
184
|
}
|
|
69
185
|
|
|
70
|
-
|
|
186
|
+
// ==== Consistent input HEIGHT across both themes ====
|
|
187
|
+
// bootswatch slate (dark) and cerulean (light) ship DIFFERENT .form-control padding +
|
|
188
|
+
// font-size, and since the height is calc(1.5em + padding + 2px) (em-based) the inputs
|
|
189
|
+
// render at different heights per theme. Pin font-size + padding + line-height + border
|
|
190
|
+
// so every input is identical in dark & light, everywhere in the app.
|
|
191
|
+
.form-control {
|
|
192
|
+
font-size: $font-size !important; // 0.875rem
|
|
193
|
+
padding: 0.375rem 0.75rem !important;
|
|
194
|
+
line-height: 1.5 !important;
|
|
195
|
+
border-width: 1px !important;
|
|
196
|
+
height: calc(1.5em + 0.75rem + 2px) !important;
|
|
197
|
+
}
|
|
198
|
+
.form-control-sm, .col-form-label-sm { font-size: $font-size !important; }
|
|
199
|
+
.form-control-sm {
|
|
200
|
+
padding: 0.25rem 0.5rem !important;
|
|
201
|
+
line-height: 1.5 !important;
|
|
202
|
+
border-width: 1px !important;
|
|
203
|
+
height: calc(1.5em + 0.5rem + 2px) !important;
|
|
204
|
+
}
|
|
205
|
+
// input-group prefix/suffix boxes must match the input height (same padding/line-height/font).
|
|
206
|
+
.input-group-sm .input-group-text, .input-group-sm .form-control { font-size: $font-size !important; }
|
|
207
|
+
textarea.form-control, textarea.form-control-sm { height: auto !important; } // textareas size to rows
|
|
71
208
|
|
|
72
209
|
//.modal-content { max-height: calc(100vh - 72px);}
|
|
73
210
|
.modal-content { max-height: calc(100vh - 68px); } // 72px is giving scroll in case of log profile.
|
|
@@ -92,3 +229,29 @@
|
|
|
92
229
|
|
|
93
230
|
// file upload classes
|
|
94
231
|
.custom-file-input:lang(en) ~ .custom-file-label::after {padding: 5px; height: 30px;}
|
|
232
|
+
|
|
233
|
+
// Override Bootswatch's harsh .btn black border + text-shadow (doesn't suit the brand gradient buttons).
|
|
234
|
+
.btn {
|
|
235
|
+
border-color: transparent;
|
|
236
|
+
text-shadow: none;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
// ==== Consistent button HEIGHT + font across both themes ====
|
|
240
|
+
// Same root cause as inputs: bootswatch slate (dark) uses padding 0.75rem 1rem / font 0.9375rem,
|
|
241
|
+
// cerulean (light) uses 0.375rem 0.75rem / font 1rem — so buttons render at different heights per
|
|
242
|
+
// theme. Pin font-size + padding + line-height + border so buttons are identical in dark & light.
|
|
243
|
+
// EXCLUDE explicitly-sized icon buttons (.btn-xsm-custom, .btn-icon-only) — they set their
|
|
244
|
+
// own width/height/padding and must not be re-padded by these consistency rules.
|
|
245
|
+
.btn:not(.btn-xsm-custom):not(.btn-icon-only) {
|
|
246
|
+
font-size: $font-size !important; // 0.875rem
|
|
247
|
+
padding: 0.375rem 0.75rem !important;
|
|
248
|
+
line-height: 1.5 !important;
|
|
249
|
+
border-width: 1px !important;
|
|
250
|
+
}
|
|
251
|
+
.btn-sm:not(.btn-xsm-custom):not(.btn-icon-only),
|
|
252
|
+
.btn-group-sm > .btn:not(.btn-xsm-custom):not(.btn-icon-only) {
|
|
253
|
+
font-size: $font-size !important;
|
|
254
|
+
padding: 0.25rem 0.5rem !important;
|
|
255
|
+
line-height: 1.5 !important;
|
|
256
|
+
border-width: 1px !important;
|
|
257
|
+
}
|