@openedx/frontend-base 1.0.0-alpha.13 → 1.0.0-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +3 -3
  2. package/dist/runtime/config/index.js +5 -1
  3. package/dist/runtime/config/index.js.map +1 -1
  4. package/dist/runtime/index.d.ts +1 -1
  5. package/dist/runtime/index.js +1 -1
  6. package/dist/runtime/index.js.map +1 -1
  7. package/dist/runtime/initialize.js +4 -1
  8. package/dist/runtime/initialize.js.map +1 -1
  9. package/dist/runtime/jest.config.d.ts +0 -1
  10. package/dist/runtime/jest.config.js +0 -1
  11. package/dist/runtime/jest.config.js.map +1 -1
  12. package/dist/runtime/react/AuthenticatedPageRoute.d.ts +2 -0
  13. package/dist/runtime/react/AuthenticatedPageRoute.js +2 -0
  14. package/dist/runtime/react/AuthenticatedPageRoute.js.map +1 -1
  15. package/dist/runtime/react/NotFoundPage.d.ts +2 -0
  16. package/dist/runtime/react/NotFoundPage.js +14 -0
  17. package/dist/runtime/react/NotFoundPage.js.map +1 -0
  18. package/dist/runtime/react/index.d.ts +1 -0
  19. package/dist/runtime/react/index.js +1 -0
  20. package/dist/runtime/react/index.js.map +1 -1
  21. package/dist/runtime/routing/authenticatedLoader.d.ts +2 -0
  22. package/dist/runtime/routing/authenticatedLoader.js +27 -0
  23. package/dist/runtime/routing/authenticatedLoader.js.map +1 -0
  24. package/dist/runtime/routing/index.d.ts +1 -0
  25. package/dist/runtime/routing/index.js +1 -0
  26. package/dist/runtime/routing/index.js.map +1 -1
  27. package/dist/runtime/routing/utils.js +20 -5
  28. package/dist/runtime/routing/utils.js.map +1 -1
  29. package/dist/runtime/slots/Slot.d.ts +2 -1
  30. package/dist/runtime/slots/Slot.js +9 -4
  31. package/dist/runtime/slots/Slot.js.map +1 -1
  32. package/dist/runtime/slots/SlotContext.d.ts +1 -0
  33. package/dist/runtime/slots/SlotContext.js.map +1 -1
  34. package/dist/runtime/slots/hooks.d.ts +1 -0
  35. package/dist/runtime/slots/hooks.js +3 -3
  36. package/dist/runtime/slots/hooks.js.map +1 -1
  37. package/dist/runtime/slots/utils.d.ts +1 -1
  38. package/dist/runtime/slots/utils.js +2 -2
  39. package/dist/runtime/slots/utils.js.map +1 -1
  40. package/dist/runtime/slots/widget/hooks.d.ts +3 -3
  41. package/dist/runtime/slots/widget/hooks.js.map +1 -1
  42. package/dist/runtime/slots/widget/types.d.ts +8 -0
  43. package/dist/runtime/slots/widget/types.js.map +1 -1
  44. package/dist/runtime/slots/widget/utils.d.ts +2 -2
  45. package/dist/runtime/slots/widget/utils.js +20 -2
  46. package/dist/runtime/slots/widget/utils.js.map +1 -1
  47. package/dist/shell/Logo.js +4 -1
  48. package/dist/shell/Logo.js.map +1 -1
  49. package/dist/shell/dev/devHome/HomePage.js +3 -3
  50. package/dist/shell/dev/devHome/HomePage.js.map +1 -1
  51. package/dist/shell/dev/slotShowcase/HorizontalSlotLayout.js +2 -1
  52. package/dist/shell/dev/slotShowcase/HorizontalSlotLayout.js.map +1 -1
  53. package/dist/shell/dev/slotShowcase/LayoutWithOptions.js +2 -2
  54. package/dist/shell/dev/slotShowcase/LayoutWithOptions.js.map +1 -1
  55. package/dist/shell/dev/slotShowcase/SlotShowcasePage.d.ts +1 -0
  56. package/dist/shell/dev/slotShowcase/SlotShowcasePage.js +10 -1
  57. package/dist/shell/dev/slotShowcase/SlotShowcasePage.js.map +1 -1
  58. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.d.ts +1 -0
  59. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.js +11 -0
  60. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.js.map +1 -0
  61. package/dist/shell/dev/slotShowcase/WidgetWithOptions.js +1 -1
  62. package/dist/shell/dev/slotShowcase/WidgetWithOptions.js.map +1 -1
  63. package/dist/shell/dev/slotShowcase/app.js +76 -40
  64. package/dist/shell/dev/slotShowcase/app.js.map +1 -1
  65. package/dist/shell/header/AuthenticatedMenu.js +0 -2
  66. package/dist/shell/header/AuthenticatedMenu.js.map +1 -1
  67. package/dist/shell/jest.config.d.ts +0 -1
  68. package/dist/shell/jest.config.js +0 -1
  69. package/dist/shell/jest.config.js.map +1 -1
  70. package/dist/shell/router/createRouter.js +12 -1
  71. package/dist/shell/router/createRouter.js.map +1 -1
  72. package/dist/tools/babel.config.d.ts +2 -0
  73. package/dist/tools/babel.config.js +3 -0
  74. package/dist/tools/cli/openedx.js +1 -1
  75. package/dist/tools/cli/utils/formatter.js +1 -8
  76. package/dist/tools/eslint/base.eslint.config.js +4 -3
  77. package/dist/tools/jest/jest.config.d.ts +0 -1
  78. package/dist/tools/jest/jest.config.js +0 -1
  79. package/dist/tools/webpack/common-config/dev/getDevServer.js +1 -3
  80. package/dist/tools/webpack/plugins/html-webpack-new-relic-plugin/HtmlWebpackNewRelicPlugin.d.ts +1 -3
  81. package/dist/tools/webpack/utils/getPublicPath.js +1 -1
  82. package/dist/types.d.ts +2 -0
  83. package/dist/types.js.map +1 -1
  84. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = getPublicPath;
4
- function getPublicPath(defaultPath = 'auto') {
4
+ function getPublicPath(defaultPath = '/') {
5
5
  return process.env.PUBLIC_PATH ?? defaultPath;
6
6
  }
package/dist/types.d.ts CHANGED
@@ -42,6 +42,8 @@ export interface OptionalSiteConfig {
42
42
  externalRoutes: ExternalRoute[];
43
43
  externalLinkUrlOverrides: string[];
44
44
  runtimeConfigJsonUrl: string | null;
45
+ commonAppConfig: AppConfig;
46
+ headerLogoImageUrl: string;
45
47
  theme: Theme;
46
48
  accessTokenCookieName: string;
47
49
  languagePreferenceCookieName: string;
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AA8GA,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,6CAAyB,CAAA;IACzB,+CAA2B,CAAA;IAC3B,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B","sourcesContent":["import { FC, ReactElement, ReactNode } from 'react';\nimport { MessageDescriptor } from 'react-intl';\nimport { RouteObject } from 'react-router';\nimport { SlotOperation } from './runtime/slots/types';\n\n// Apps\n\nexport interface ExternalRoute {\n role: string,\n url: string,\n}\n\nexport type RoleRouteObject = RouteObject & {\n handle?: {\n /**\n * A route role is used to identify a route that fulfills a particular role in the site.\n */\n role?: string,\n },\n};\n\nexport type AppConfig = Record<string, unknown>;\n\nexport type AppProvider = FC<{ children?: ReactNode }>;\n\nexport interface App {\n appId: string,\n messages?: LocalizedMessages,\n routes?: RoleRouteObject[],\n providers?: AppProvider[],\n slots?: SlotOperation[],\n config?: AppConfig,\n}\n\n// Site Config\n\nexport interface RequiredSiteConfig {\n siteId: string,\n siteName: string,\n baseUrl: string,\n\n // Backends\n lmsBaseUrl: string,\n\n // Frontends\n loginUrl: string,\n logoutUrl: string,\n}\n\nexport type LocalizedMessages = Record<string, Record<string, string>>;\n\nexport interface OptionalSiteConfig {\n // Site environment\n environment: EnvironmentTypes,\n\n // Apps, routes, and URLs\n apps: App[],\n basename: string,\n externalRoutes: ExternalRoute[],\n externalLinkUrlOverrides: string[],\n runtimeConfigJsonUrl: string | null,\n\n // Theme\n theme: Theme,\n\n // Cookies\n accessTokenCookieName: string,\n languagePreferenceCookieName: string,\n userInfoCookieName: string,\n\n // Paths\n csrfTokenApiPath: string,\n refreshAccessTokenApiPath: string,\n\n // Logging\n ignoredErrorRegex: RegExp | null,\n\n // Analytics\n segmentKey: string | null,\n}\n\nexport type SiteConfig = RequiredSiteConfig & Partial<OptionalSiteConfig>;\n\nexport interface ThemeVariant {\n url: string,\n}\n\nexport interface ThemeDefaults {\n light?: string,\n dark?: string,\n}\n\nexport type ThemeVariants = Record<string, ThemeVariant>;\n\nexport interface Theme {\n core?: ThemeVariant,\n defaults?: ThemeDefaults,\n variants?: ThemeVariants,\n}\n\nexport interface User {\n administrator: boolean,\n email: string,\n name: string,\n roles: string[],\n userId: number,\n username: string,\n avatar: string,\n}\n\nexport enum EnvironmentTypes {\n PRODUCTION = 'production',\n DEVELOPMENT = 'development',\n TEST = 'test',\n}\n\n// Menu Items\n\nexport type MenuItemName = string | MessageDescriptor | ReactElement;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAgHA,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,6CAAyB,CAAA;IACzB,+CAA2B,CAAA;IAC3B,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B","sourcesContent":["import { FC, ReactElement, ReactNode } from 'react';\nimport { MessageDescriptor } from 'react-intl';\nimport { RouteObject } from 'react-router';\nimport { SlotOperation } from './runtime/slots/types';\n\n// Apps\n\nexport interface ExternalRoute {\n role: string,\n url: string,\n}\n\nexport type RoleRouteObject = RouteObject & {\n handle?: {\n /**\n * A route role is used to identify a route that fulfills a particular role in the site.\n */\n role?: string,\n },\n};\n\nexport type AppConfig = Record<string, unknown>;\n\nexport type AppProvider = FC<{ children?: ReactNode }>;\n\nexport interface App {\n appId: string,\n messages?: LocalizedMessages,\n routes?: RoleRouteObject[],\n providers?: AppProvider[],\n slots?: SlotOperation[],\n config?: AppConfig,\n}\n\n// Site Config\n\nexport interface RequiredSiteConfig {\n siteId: string,\n siteName: string,\n baseUrl: string,\n\n // Backends\n lmsBaseUrl: string,\n\n // Frontends\n loginUrl: string,\n logoutUrl: string,\n}\n\nexport type LocalizedMessages = Record<string, Record<string, string>>;\n\nexport interface OptionalSiteConfig {\n // Site environment\n environment: EnvironmentTypes,\n\n // Apps, routes, and URLs\n apps: App[],\n basename: string,\n externalRoutes: ExternalRoute[],\n externalLinkUrlOverrides: string[],\n runtimeConfigJsonUrl: string | null,\n commonAppConfig: AppConfig,\n headerLogoImageUrl: string,\n\n // Theme\n theme: Theme,\n\n // Cookies\n accessTokenCookieName: string,\n languagePreferenceCookieName: string,\n userInfoCookieName: string,\n\n // Paths\n csrfTokenApiPath: string,\n refreshAccessTokenApiPath: string,\n\n // Logging\n ignoredErrorRegex: RegExp | null,\n\n // Analytics\n segmentKey: string | null,\n}\n\nexport type SiteConfig = RequiredSiteConfig & Partial<OptionalSiteConfig>;\n\nexport interface ThemeVariant {\n url: string,\n}\n\nexport interface ThemeDefaults {\n light?: string,\n dark?: string,\n}\n\nexport type ThemeVariants = Record<string, ThemeVariant>;\n\nexport interface Theme {\n core?: ThemeVariant,\n defaults?: ThemeDefaults,\n variants?: ThemeVariants,\n}\n\nexport interface User {\n administrator: boolean,\n email: string,\n name: string,\n roles: string[],\n userId: number,\n username: string,\n avatar: string,\n}\n\nexport enum EnvironmentTypes {\n PRODUCTION = 'production',\n DEVELOPMENT = 'development',\n TEST = 'test',\n}\n\n// Menu Items\n\nexport type MenuItemName = string | MessageDescriptor | ReactElement;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openedx/frontend-base",
3
- "version": "1.0.0-alpha.13",
3
+ "version": "1.0.0-alpha.15",
4
4
  "description": "Build tools, setup and config for frontend apps",
5
5
  "publishConfig": {
6
6
  "access": "public"