@asgardeo/javascript 0.1.7 → 0.1.9

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/dist/index.d.ts CHANGED
@@ -62,6 +62,8 @@ export { I18nBundle, I18nTranslations, I18nMetadata } from './models/i18n';
62
62
  export { default as AsgardeoJavaScriptClient } from './AsgardeoJavaScriptClient';
63
63
  export { default as createTheme } from './theme/createTheme';
64
64
  export { ThemeColors, ThemeConfig, Theme, ThemeMode, ThemeDetection } from './theme/types';
65
+ export { default as bem } from './utils/bem';
66
+ export { default as formatDate } from './utils/formatDate';
65
67
  export { default as processUsername } from './utils/processUsername';
66
68
  export { default as deepMerge } from './utils/deepMerge';
67
69
  export { default as deriveOrganizationHandleFromBaseUrl } from './utils/deriveOrganizationHandleFromBaseUrl';
package/dist/index.js CHANGED
@@ -615,14 +615,7 @@ var extractUserClaimsFromIdToken_default = extractUserClaimsFromIdToken;
615
615
  var AsgardeoError = class _AsgardeoError extends Error {
616
616
  constructor(message, code, origin) {
617
617
  const _origin = _AsgardeoError.resolveOrigin(origin);
618
- const prefix = `\u{1F6E1}\uFE0F Asgardeo - ${_origin}:`;
619
- const regex = new RegExp(`\u{1F6E1}\uFE0F\\s*Asgardeo\\s*-\\s*${_origin}:`, "i");
620
- const sanitized = message.replace(regex, "");
621
- const _message = `${prefix} ${sanitized.trim()}
622
-
623
- (code="${code}")
624
- `;
625
- super(_message);
618
+ super(message);
626
619
  __publicField(this, "code");
627
620
  __publicField(this, "origin");
628
621
  this.name = new.target.name;
@@ -639,8 +632,10 @@ var AsgardeoError = class _AsgardeoError extends Error {
639
632
  return `@asgardeo/${origin}`;
640
633
  }
641
634
  toString() {
635
+ const prefix = `\u{1F6E1}\uFE0F Asgardeo - ${this.origin}:`;
642
636
  return `[${this.name}]
643
- Message: ${this.message}`;
637
+ ${prefix} ${this.message}
638
+ (code="${this.code}")`;
644
639
  }
645
640
  };
646
641
 
@@ -1411,9 +1406,9 @@ var _AsgardeoAuthClient = class _AsgardeoAuthClient {
1411
1406
  *
1412
1407
  * @preserve
1413
1408
  */
1414
- async getDecodedIdToken(userId) {
1415
- const idToken = (await this._storageManager.getSessionData(userId)).id_token;
1416
- const payload = this._cryptoHelper.decodeIdToken(idToken);
1409
+ async getDecodedIdToken(userId, idToken) {
1410
+ const _idToken = (await this._storageManager.getSessionData(userId)).id_token;
1411
+ const payload = this._cryptoHelper.decodeIdToken(_idToken ?? idToken);
1417
1412
  return payload;
1418
1413
  }
1419
1414
  /**
@@ -2709,10 +2704,10 @@ var updateMeProfile = async ({
2709
2704
  throw error2;
2710
2705
  }
2711
2706
  throw new AsgardeoAPIError(
2712
- `Network or parsing error: ${error2 instanceof Error ? error2.message : "Unknown error"}`,
2707
+ error2?.response?.data?.detail || "An error occurred while updating the user profile. Please try again.",
2713
2708
  "updateMeProfile-NetworkError-001",
2714
2709
  "javascript",
2715
- 0,
2710
+ error2?.data?.status,
2716
2711
  "Network Error"
2717
2712
  );
2718
2713
  }
@@ -2908,34 +2903,47 @@ var lightTheme = {
2908
2903
  },
2909
2904
  primary: {
2910
2905
  main: "#1a73e8",
2911
- contrastText: "#ffffff"
2906
+ contrastText: "#ffffff",
2907
+ dark: "#174ea6"
2912
2908
  },
2913
2909
  secondary: {
2914
2910
  main: "#424242",
2915
- contrastText: "#ffffff"
2911
+ contrastText: "#ffffff",
2912
+ dark: "#212121"
2916
2913
  },
2917
2914
  background: {
2918
2915
  surface: "#ffffff",
2919
2916
  disabled: "#f0f0f0",
2917
+ dark: "#212121",
2920
2918
  body: {
2921
- main: "#1a1a1a"
2919
+ main: "#1a1a1a",
2920
+ dark: "#212121"
2922
2921
  }
2923
2922
  },
2924
2923
  error: {
2925
2924
  main: "#d32f2f",
2926
- contrastText: "#ffffff"
2925
+ contrastText: "#d52828",
2926
+ dark: "#b71c1c"
2927
+ },
2928
+ info: {
2929
+ main: "#bbebff",
2930
+ contrastText: "#43aeda",
2931
+ dark: "#01579b"
2927
2932
  },
2928
2933
  success: {
2929
2934
  main: "#4caf50",
2930
- contrastText: "#ffffff"
2935
+ contrastText: "#00a807",
2936
+ dark: "#388e3c"
2931
2937
  },
2932
2938
  warning: {
2933
2939
  main: "#ff9800",
2934
- contrastText: "#ffffff"
2940
+ contrastText: "#be7100",
2941
+ dark: "#f57c00"
2935
2942
  },
2936
2943
  text: {
2937
2944
  primary: "#1a1a1a",
2938
- secondary: "#666666"
2945
+ secondary: "#666666",
2946
+ dark: "#212121"
2939
2947
  },
2940
2948
  border: "#e0e0e0"
2941
2949
  },
@@ -3004,34 +3012,47 @@ var darkTheme = {
3004
3012
  },
3005
3013
  primary: {
3006
3014
  main: "#1a73e8",
3007
- contrastText: "#ffffff"
3015
+ contrastText: "#ffffff",
3016
+ dark: "#174ea6"
3008
3017
  },
3009
3018
  secondary: {
3010
3019
  main: "#424242",
3011
- contrastText: "#ffffff"
3020
+ contrastText: "#ffffff",
3021
+ dark: "#212121"
3012
3022
  },
3013
3023
  background: {
3014
3024
  surface: "#121212",
3015
3025
  disabled: "#1f1f1f",
3026
+ dark: "#212121",
3016
3027
  body: {
3017
- main: "#ffffff"
3028
+ main: "#ffffff",
3029
+ dark: "#212121"
3018
3030
  }
3019
3031
  },
3020
3032
  error: {
3021
3033
  main: "#d32f2f",
3022
- contrastText: "#ffffff"
3034
+ contrastText: "#d52828",
3035
+ dark: "#b71c1c"
3036
+ },
3037
+ info: {
3038
+ main: "#bbebff",
3039
+ contrastText: "#43aeda",
3040
+ dark: "#01579b"
3023
3041
  },
3024
3042
  success: {
3025
3043
  main: "#4caf50",
3026
- contrastText: "#ffffff"
3044
+ contrastText: "#00a807",
3045
+ dark: "#388e3c"
3027
3046
  },
3028
3047
  warning: {
3029
3048
  main: "#ff9800",
3030
- contrastText: "#ffffff"
3049
+ contrastText: "#be7100",
3050
+ dark: "#f57c00"
3031
3051
  },
3032
3052
  text: {
3033
3053
  primary: "#ffffff",
3034
- secondary: "#b3b3b3"
3054
+ secondary: "#b3b3b3",
3055
+ dark: "#212121"
3035
3056
  },
3036
3057
  border: "#404040"
3037
3058
  },
@@ -3158,6 +3179,12 @@ var toCssVariables = (theme) => {
3158
3179
  if (theme.colors?.warning?.contrastText) {
3159
3180
  cssVars[`--${prefix}-color-warning-contrastText`] = theme.colors.warning.contrastText;
3160
3181
  }
3182
+ if (theme.colors?.info?.main) {
3183
+ cssVars[`--${prefix}-color-info-main`] = theme.colors.info.main;
3184
+ }
3185
+ if (theme.colors?.info?.contrastText) {
3186
+ cssVars[`--${prefix}-color-info-contrastText`] = theme.colors.info.contrastText;
3187
+ }
3161
3188
  if (theme.colors?.text?.primary) {
3162
3189
  cssVars[`--${prefix}-color-text-primary`] = theme.colors.text.primary;
3163
3190
  }
@@ -3285,6 +3312,10 @@ var toThemeVars = (theme) => {
3285
3312
  main: `var(--${prefix}-color-error-main)`,
3286
3313
  contrastText: `var(--${prefix}-color-error-contrastText)`
3287
3314
  },
3315
+ info: {
3316
+ contrastText: `var(--${prefix}-color-info-contrastText)`,
3317
+ main: `var(--${prefix}-color-info-main)`
3318
+ },
3288
3319
  success: {
3289
3320
  main: `var(--${prefix}-color-success-main)`,
3290
3321
  contrastText: `var(--${prefix}-color-success-contrastText)`
@@ -3407,6 +3438,34 @@ var createTheme = (config = {}, isDark = false) => {
3407
3438
  };
3408
3439
  var createTheme_default = createTheme;
3409
3440
 
3441
+ // src/utils/bem.ts
3442
+ var bem = (baseClass, element, modifier) => {
3443
+ let className = baseClass;
3444
+ if (element) {
3445
+ className += `__${element}`;
3446
+ }
3447
+ if (modifier) {
3448
+ className += `--${modifier}`;
3449
+ }
3450
+ return className;
3451
+ };
3452
+ var bem_default = bem;
3453
+
3454
+ // src/utils/formatDate.ts
3455
+ var formatDate = (dateString) => {
3456
+ if (!dateString) return "-";
3457
+ try {
3458
+ return new Date(dateString).toLocaleDateString("en-US", {
3459
+ year: "numeric",
3460
+ month: "long",
3461
+ day: "numeric"
3462
+ });
3463
+ } catch {
3464
+ return dateString;
3465
+ }
3466
+ };
3467
+ var formatDate_default = formatDate;
3468
+
3410
3469
  // src/utils/deepMerge.ts
3411
3470
  var isPlainObject = (value) => {
3412
3471
  return typeof value === "object" && value !== null && !Array.isArray(value) && !(value instanceof Date) && !(value instanceof RegExp) && Object.prototype.toString.call(value) === "[object Object]";
@@ -3715,6 +3774,11 @@ var translations = {
3715
3774
  "username.password.title": "Sign In",
3716
3775
  "username.password.subtitle": "Enter your username and password to continue.",
3717
3776
  /* |---------------------------------------------------------------| */
3777
+ /* | User Profile | */
3778
+ /* |---------------------------------------------------------------| */
3779
+ "user.profile.title": "Profile",
3780
+ "user.profile.update.generic.error": "An error occurred while updating your profile. Please try again.",
3781
+ /* |---------------------------------------------------------------| */
3718
3782
  /* | Organization Switcher | */
3719
3783
  /* |---------------------------------------------------------------| */
3720
3784
  "organization.switcher.select.organization": "Select Organization",
@@ -3823,7 +3887,10 @@ var withVendorCSSClassPrefix = (className) => `${VendorConstants_default.VENDOR_
3823
3887
  var withVendorCSSClassPrefix_default = withVendorCSSClassPrefix;
3824
3888
 
3825
3889
  // src/utils/transformBrandingPreferenceToTheme.ts
3826
- var extractColorValue = (colorVariant) => {
3890
+ var extractColorValue = (colorVariant, preferDark = false) => {
3891
+ if (preferDark && colorVariant?.dark && colorVariant.dark.trim()) {
3892
+ return colorVariant.dark;
3893
+ }
3827
3894
  return colorVariant?.main;
3828
3895
  };
3829
3896
  var extractContrastText = (colorVariant) => {
@@ -3850,36 +3917,49 @@ var transformThemeVariant = (themeVariant, isDark = false) => {
3850
3917
  activatedOpacity: 0.12
3851
3918
  },
3852
3919
  primary: {
3853
- main: extractColorValue(colors?.primary),
3854
- contrastText: extractContrastText(colors?.primary)
3920
+ main: extractColorValue(colors?.primary, isDark),
3921
+ contrastText: extractContrastText(colors?.primary),
3922
+ dark: colors?.primary?.dark || colors?.primary?.main
3855
3923
  },
3856
3924
  secondary: {
3857
- main: extractColorValue(colors?.secondary),
3858
- contrastText: extractContrastText(colors?.secondary)
3925
+ main: extractColorValue(colors?.secondary, isDark),
3926
+ contrastText: extractContrastText(colors?.secondary),
3927
+ dark: colors?.secondary?.dark || colors?.secondary?.main
3859
3928
  },
3860
3929
  background: {
3861
- surface: extractColorValue(colors?.background?.surface),
3862
- disabled: extractColorValue(colors?.background?.surface),
3930
+ surface: extractColorValue(colors?.background?.surface, isDark),
3931
+ disabled: extractColorValue(colors?.background?.surface, isDark),
3932
+ dark: colors?.background?.surface?.dark || colors?.background?.surface?.main,
3863
3933
  body: {
3864
- main: extractColorValue(colors?.background?.body)
3934
+ main: extractColorValue(colors?.background?.body, isDark),
3935
+ dark: colors?.background?.body?.dark || colors?.background?.body?.main
3865
3936
  }
3866
3937
  },
3867
3938
  text: {
3868
3939
  primary: colors?.text?.primary,
3869
- secondary: colors?.text?.secondary
3940
+ secondary: colors?.text?.secondary,
3941
+ dark: colors?.text?.dark || colors?.text?.primary
3870
3942
  },
3871
3943
  border: colors?.outlined?.default,
3872
3944
  error: {
3873
- main: extractColorValue(colors?.alerts?.error),
3874
- contrastText: extractContrastText(colors?.alerts?.error)
3945
+ main: extractColorValue(colors?.alerts?.error, isDark),
3946
+ contrastText: extractContrastText(colors?.alerts?.error),
3947
+ dark: colors?.alerts?.error?.dark || colors?.alerts?.error?.main
3948
+ },
3949
+ info: {
3950
+ main: extractColorValue(colors?.alerts?.info, isDark),
3951
+ contrastText: extractContrastText(colors?.alerts?.info),
3952
+ dark: colors?.alerts?.info?.dark || colors?.alerts?.info?.main
3875
3953
  },
3876
3954
  success: {
3877
- main: extractColorValue(colors?.alerts?.info),
3878
- contrastText: extractContrastText(colors?.alerts?.info)
3955
+ main: extractColorValue(colors?.alerts?.neutral, isDark),
3956
+ contrastText: extractContrastText(colors?.alerts?.neutral),
3957
+ dark: colors?.alerts?.neutral?.dark || colors?.alerts?.neutral?.main
3879
3958
  },
3880
3959
  warning: {
3881
- main: extractColorValue(colors?.alerts?.warning),
3882
- contrastText: extractContrastText(colors?.alerts?.warning)
3960
+ main: extractColorValue(colors?.alerts?.warning, isDark),
3961
+ contrastText: extractContrastText(colors?.alerts?.warning),
3962
+ dark: colors?.alerts?.warning?.dark || colors?.alerts?.warning?.main
3883
3963
  }
3884
3964
  },
3885
3965
  // Extract border radius from buttons or inputs
@@ -3929,17 +4009,9 @@ var transformBrandingPreferenceToTheme = (brandingPreference, forceTheme) => {
3929
4009
  var transformBrandingPreferenceToTheme_default = transformBrandingPreferenceToTheme;
3930
4010
 
3931
4011
  // src/utils/logger.ts
3932
- var LogLevel = /* @__PURE__ */ ((LogLevel2) => {
3933
- LogLevel2[LogLevel2["DEBUG"] = 0] = "DEBUG";
3934
- LogLevel2[LogLevel2["INFO"] = 1] = "INFO";
3935
- LogLevel2[LogLevel2["WARN"] = 2] = "WARN";
3936
- LogLevel2[LogLevel2["ERROR"] = 3] = "ERROR";
3937
- LogLevel2[LogLevel2["SILENT"] = 4] = "SILENT";
3938
- return LogLevel2;
3939
- })(LogLevel || {});
3940
4012
  var PREFIX = "\u{1F6E1}\uFE0F Asgardeo";
3941
4013
  var DEFAULT_CONFIG = {
3942
- level: 1 /* INFO */,
4014
+ level: "info",
3943
4015
  prefix: `${PREFIX}`,
3944
4016
  timestamps: true,
3945
4017
  showLevel: true
@@ -4005,13 +4077,13 @@ var Logger = class _Logger {
4005
4077
  */
4006
4078
  getLevelString(level) {
4007
4079
  switch (level) {
4008
- case 0 /* DEBUG */:
4080
+ case "debug":
4009
4081
  return "DEBUG";
4010
- case 1 /* INFO */:
4082
+ case "info":
4011
4083
  return "INFO";
4012
- case 2 /* WARN */:
4084
+ case "warn":
4013
4085
  return "WARN";
4014
- case 3 /* ERROR */:
4086
+ case "error":
4015
4087
  return "ERROR";
4016
4088
  default:
4017
4089
  return "UNKNOWN";
@@ -4032,16 +4104,16 @@ var Logger = class _Logger {
4032
4104
  const levelStr = this.getLevelString(level);
4033
4105
  let coloredLevel;
4034
4106
  switch (level) {
4035
- case 0 /* DEBUG */:
4107
+ case "debug":
4036
4108
  coloredLevel = `${COLORS.gray}[${levelStr}]${COLORS.reset}`;
4037
4109
  break;
4038
- case 1 /* INFO */:
4110
+ case "info":
4039
4111
  coloredLevel = `${COLORS.blue}[${levelStr}]${COLORS.reset}`;
4040
4112
  break;
4041
- case 2 /* WARN */:
4113
+ case "warn":
4042
4114
  coloredLevel = `${COLORS.yellow}[${levelStr}]${COLORS.reset}`;
4043
4115
  break;
4044
- case 3 /* ERROR */:
4116
+ case "error":
4045
4117
  coloredLevel = `${COLORS.red}[${levelStr}]${COLORS.reset}`;
4046
4118
  break;
4047
4119
  default:
@@ -4089,16 +4161,16 @@ var Logger = class _Logger {
4089
4161
  const levelStr = this.getLevelString(level);
4090
4162
  parts.push(`%c[${levelStr}]`);
4091
4163
  switch (level) {
4092
- case 0 /* DEBUG */:
4164
+ case "debug":
4093
4165
  styles.push(BROWSER_STYLES.debug);
4094
4166
  break;
4095
- case 1 /* INFO */:
4167
+ case "info":
4096
4168
  styles.push(BROWSER_STYLES.info);
4097
4169
  break;
4098
- case 2 /* WARN */:
4170
+ case "warn":
4099
4171
  styles.push(BROWSER_STYLES.warn);
4100
4172
  break;
4101
- case 3 /* ERROR */:
4173
+ case "error":
4102
4174
  styles.push(BROWSER_STYLES.error);
4103
4175
  break;
4104
4176
  default:
@@ -4109,16 +4181,16 @@ var Logger = class _Logger {
4109
4181
  styles.push("color: inherit; font-weight: normal;");
4110
4182
  const formattedMessage = parts.join(" ");
4111
4183
  switch (level) {
4112
- case 0 /* DEBUG */:
4184
+ case "debug":
4113
4185
  console.debug(formattedMessage, ...styles, ...args);
4114
4186
  break;
4115
- case 1 /* INFO */:
4187
+ case "info":
4116
4188
  console.info(formattedMessage, ...styles, ...args);
4117
4189
  break;
4118
- case 2 /* WARN */:
4190
+ case "warn":
4119
4191
  console.warn(formattedMessage, ...styles, ...args);
4120
4192
  break;
4121
- case 3 /* ERROR */:
4193
+ case "error":
4122
4194
  console.error(formattedMessage, ...styles, ...args);
4123
4195
  break;
4124
4196
  default:
@@ -4131,16 +4203,16 @@ var Logger = class _Logger {
4131
4203
  logToNode(level, message, ...args) {
4132
4204
  const formattedMessage = this.formatForNode(level, message);
4133
4205
  switch (level) {
4134
- case 0 /* DEBUG */:
4206
+ case "debug":
4135
4207
  console.debug(formattedMessage, ...args);
4136
4208
  break;
4137
- case 1 /* INFO */:
4209
+ case "info":
4138
4210
  console.info(formattedMessage, ...args);
4139
4211
  break;
4140
- case 2 /* WARN */:
4212
+ case "warn":
4141
4213
  console.warn(formattedMessage, ...args);
4142
4214
  break;
4143
- case 3 /* ERROR */:
4215
+ case "error":
4144
4216
  console.error(formattedMessage, ...args);
4145
4217
  break;
4146
4218
  default:
@@ -4151,25 +4223,25 @@ var Logger = class _Logger {
4151
4223
  * Log debug message
4152
4224
  */
4153
4225
  debug(message, ...args) {
4154
- this.logMessage(0 /* DEBUG */, message, ...args);
4226
+ this.logMessage("debug", message, ...args);
4155
4227
  }
4156
4228
  /**
4157
4229
  * Log info message
4158
4230
  */
4159
4231
  info(message, ...args) {
4160
- this.logMessage(1 /* INFO */, message, ...args);
4232
+ this.logMessage("info", message, ...args);
4161
4233
  }
4162
4234
  /**
4163
4235
  * Log warning message
4164
4236
  */
4165
4237
  warn(message, ...args) {
4166
- this.logMessage(2 /* WARN */, message, ...args);
4238
+ this.logMessage("warn", message, ...args);
4167
4239
  }
4168
4240
  /**
4169
4241
  * Log error message
4170
4242
  */
4171
4243
  error(message, ...args) {
4172
- this.logMessage(3 /* ERROR */, message, ...args);
4244
+ this.logMessage("error", message, ...args);
4173
4245
  }
4174
4246
  /**
4175
4247
  * Create a child logger with additional prefix
@@ -4210,7 +4282,7 @@ var createComponentLogger = (component) => {
4210
4282
  var createPackageLogger = (packageName) => {
4211
4283
  return createLogger({
4212
4284
  prefix: `${PREFIX} - ${packageName}`,
4213
- level: 1 /* INFO */,
4285
+ level: "info",
4214
4286
  timestamps: true,
4215
4287
  showLevel: true
4216
4288
  });
@@ -4240,12 +4312,12 @@ export {
4240
4312
  FieldType,
4241
4313
  FlowMode,
4242
4314
  IsomorphicCrypto,
4243
- LogLevel,
4244
4315
  OIDCRequestConstants_default as OIDCRequestConstants,
4245
4316
  StorageManager_default as StorageManager,
4246
4317
  TokenConstants_default as TokenConstants,
4247
4318
  VendorConstants_default as VendorConstants,
4248
4319
  WellKnownSchemaIds,
4320
+ bem_default as bem,
4249
4321
  configure as configureLogger,
4250
4322
  createComponentLogger,
4251
4323
  createLogger,
@@ -4263,6 +4335,7 @@ export {
4263
4335
  extractPkceStorageKeyFromState_default as extractPkceStorageKeyFromState,
4264
4336
  extractUserClaimsFromIdToken_default as extractUserClaimsFromIdToken,
4265
4337
  flattenUserSchema_default as flattenUserSchema,
4338
+ formatDate_default as formatDate,
4266
4339
  generateFlattenedUserProfile_default as generateFlattenedUserProfile,
4267
4340
  generateUserProfile_default as generateUserProfile,
4268
4341
  get_default as get,