@memberjunction/react-runtime 2.74.0 → 2.76.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.
Files changed (54) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +27 -0
  3. package/README.md +96 -4
  4. package/dist/compiler/component-compiler.d.ts +0 -1
  5. package/dist/compiler/component-compiler.d.ts.map +1 -1
  6. package/dist/compiler/component-compiler.js +34 -25
  7. package/dist/index.d.ts +2 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +3 -6
  10. package/dist/registry/component-resolver.d.ts +1 -6
  11. package/dist/registry/component-resolver.d.ts.map +1 -1
  12. package/dist/registry/component-resolver.js +19 -19
  13. package/dist/registry/index.d.ts +2 -1
  14. package/dist/registry/index.d.ts.map +1 -1
  15. package/dist/registry/index.js +3 -1
  16. package/dist/runtime/component-hierarchy.d.ts +1 -1
  17. package/dist/runtime/component-hierarchy.d.ts.map +1 -1
  18. package/dist/runtime/component-hierarchy.js +25 -25
  19. package/dist/runtime/index.d.ts +1 -1
  20. package/dist/runtime/index.d.ts.map +1 -1
  21. package/dist/runtime/index.js +1 -2
  22. package/dist/runtime/prop-builder.d.ts +1 -2
  23. package/dist/runtime/prop-builder.d.ts.map +1 -1
  24. package/dist/runtime/prop-builder.js +4 -76
  25. package/dist/types/index.d.ts +2 -0
  26. package/dist/types/index.d.ts.map +1 -1
  27. package/dist/types/index.js +15 -0
  28. package/dist/types/library-config.d.ts +32 -0
  29. package/dist/types/library-config.d.ts.map +1 -0
  30. package/dist/types/library-config.js +2 -0
  31. package/dist/utilities/core-libraries.d.ts +5 -0
  32. package/dist/utilities/core-libraries.d.ts.map +1 -0
  33. package/dist/utilities/core-libraries.js +52 -0
  34. package/dist/utilities/library-loader.d.ts +3 -2
  35. package/dist/utilities/library-loader.d.ts.map +1 -1
  36. package/dist/utilities/library-loader.js +65 -76
  37. package/dist/utilities/standard-libraries.d.ts +13 -24
  38. package/dist/utilities/standard-libraries.d.ts.map +1 -1
  39. package/dist/utilities/standard-libraries.js +58 -47
  40. package/package.json +4 -4
  41. package/samples/entities-1.js +493 -0
  42. package/src/compiler/component-compiler.ts +64 -35
  43. package/src/index.ts +1 -5
  44. package/src/registry/component-resolver.ts +21 -30
  45. package/src/registry/index.ts +2 -1
  46. package/src/runtime/component-hierarchy.ts +26 -26
  47. package/src/runtime/index.ts +0 -1
  48. package/src/runtime/prop-builder.ts +5 -112
  49. package/src/types/index.ts +6 -1
  50. package/src/types/library-config.ts +75 -0
  51. package/src/utilities/core-libraries.ts +61 -0
  52. package/src/utilities/library-loader.ts +113 -93
  53. package/src/utilities/standard-libraries.ts +104 -71
  54. package/tsconfig.tsbuildinfo +1 -1
@@ -1,4 +1,4 @@
1
1
 
2
- > @memberjunction/react-runtime@2.74.0 build
2
+ > @memberjunction/react-runtime@2.76.0 build
3
3
  > tsc
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @memberjunction/react-runtime
2
2
 
3
+ ## 2.76.0
4
+
5
+ ### Minor Changes
6
+
7
+ - ffda243: migration
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [7dabb22]
12
+ - @memberjunction/core@2.76.0
13
+ - @memberjunction/interactive-component-types@2.76.0
14
+ - @memberjunction/global@2.76.0
15
+
16
+ ## 2.75.0
17
+
18
+ ### Minor Changes
19
+
20
+ - 9ccd145: migration
21
+
22
+ ### Patch Changes
23
+
24
+ - 0da7b51: tweaks to types
25
+ - Updated dependencies [b403003]
26
+ - @memberjunction/interactive-component-types@2.75.0
27
+ - @memberjunction/core@2.75.0
28
+ - @memberjunction/global@2.75.0
29
+
3
30
  ## 2.74.0
4
31
 
5
32
  ### Patch Changes
package/README.md CHANGED
@@ -1,19 +1,21 @@
1
1
  # @memberjunction/react-runtime
2
2
 
3
- Platform-agnostic React component runtime for MemberJunction. This package provides core compilation, registry, and execution capabilities for React components in any JavaScript environment.
3
+ Platform-agnostic React component runtime for MemberJunction. This package provides core compilation, registry, execution capabilities, and dynamic library management for React components in any JavaScript environment.
4
4
 
5
5
  ## Overview
6
6
 
7
- The React Runtime package enables dynamic compilation and execution of React components from source code. It works in both browser and Node.js environments, making it suitable for client-side rendering and server-side testing.
7
+ The React Runtime package enables dynamic compilation and execution of React components from source code, with flexible external library management. It works in both browser and Node.js environments, making it suitable for client-side rendering, server-side testing, and multi-tenant applications with different library requirements.
8
8
 
9
9
  ## Features
10
10
 
11
11
  - **Dynamic Compilation**: Transform JSX and React code at runtime using Babel
12
12
  - **Component Registry**: Manage compiled components with namespace support
13
13
  - **Dependency Resolution**: Handle component hierarchies and dependencies
14
+ - **Dynamic Library Management**: Configure and load external libraries at runtime
14
15
  - **Error Boundaries**: Comprehensive error handling for React components
15
16
  - **Platform Agnostic**: Works in any JavaScript environment
16
17
  - **Type Safe**: Full TypeScript support with strict typing
18
+ - **Organization-Specific Libraries**: Support for different library sets per organization
17
19
 
18
20
  ## Installation
19
21
 
@@ -66,6 +68,85 @@ if (result.success) {
66
68
  }
67
69
  ```
68
70
 
71
+ ## Dynamic Library Management (New)
72
+
73
+ ### Loading Libraries with Configuration
74
+
75
+ ```typescript
76
+ import { LibraryLoader, StandardLibraryManager } from '@memberjunction/react-runtime';
77
+
78
+ // Define custom library configuration
79
+ const libraryConfig = {
80
+ libraries: [
81
+ {
82
+ id: 'lodash',
83
+ name: 'lodash',
84
+ displayName: 'Lodash',
85
+ category: 'utility',
86
+ globalVariable: '_',
87
+ version: '4.17.21',
88
+ cdnUrl: 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js',
89
+ description: 'Utility library',
90
+ isEnabled: true,
91
+ isCore: false
92
+ },
93
+ {
94
+ id: 'chart-js',
95
+ name: 'Chart',
96
+ displayName: 'Chart.js',
97
+ category: 'charting',
98
+ globalVariable: 'Chart',
99
+ version: '4.4.0',
100
+ cdnUrl: 'https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.0/chart.umd.js',
101
+ isEnabled: true,
102
+ isCore: false
103
+ }
104
+ // ... more libraries
105
+ ],
106
+ metadata: {
107
+ version: '1.0.0',
108
+ lastUpdated: '2024-01-01'
109
+ }
110
+ };
111
+
112
+ // Load libraries with custom configuration
113
+ const result = await LibraryLoader.loadAllLibraries(libraryConfig);
114
+ ```
115
+
116
+ ### Managing Library Configurations
117
+
118
+ ```typescript
119
+ import { StandardLibraryManager } from '@memberjunction/react-runtime';
120
+
121
+ // Set a custom configuration
122
+ StandardLibraryManager.setConfiguration(libraryConfig);
123
+
124
+ // Get enabled libraries
125
+ const enabledLibs = StandardLibraryManager.getEnabledLibraries();
126
+
127
+ // Get libraries by category
128
+ const chartingLibs = StandardLibraryManager.getLibrariesByCategory('charting');
129
+ const uiLibs = StandardLibraryManager.getLibrariesByCategory('ui');
130
+
131
+ // Get component libraries (excludes runtime-only libraries)
132
+ const componentLibs = StandardLibraryManager.getComponentLibraries();
133
+
134
+ // Reset to default configuration
135
+ StandardLibraryManager.resetToDefault();
136
+ ```
137
+
138
+ ### Library Categories
139
+
140
+ Libraries are organized into categories:
141
+ - **`runtime`**: Core runtime libraries (React, ReactDOM, Babel) - not exposed to components
142
+ - **`ui`**: UI component libraries (Ant Design, React Bootstrap)
143
+ - **`charting`**: Data visualization libraries (Chart.js, D3.js)
144
+ - **`utility`**: Utility libraries (Lodash, Day.js)
145
+
146
+ ### Runtime-Only Libraries
147
+
148
+ Libraries marked with `isRuntimeOnly: true` are used by the runtime infrastructure but not exposed to generated components. This includes React, ReactDOM, and Babel.
149
+
69
150
  ### Using the Component
70
151
 
71
152
  ```typescript
@@ -73,8 +154,12 @@ if (result.success) {
73
154
  const React = window.React; // or require('react')
74
155
  const ReactDOM = window.ReactDOM; // or require('react-dom')
75
156
 
76
- // Create runtime context
77
- const context = { React, ReactDOM };
157
+ // Create runtime context with loaded libraries
158
+ const context = {
159
+ React,
160
+ ReactDOM,
161
+ libraries: result.libraries // From LibraryLoader
162
+ };
78
163
 
79
164
  // Get the compiled component
80
165
  const MyComponent = runtime.registry.get('MyComponent', 'MyNamespace');
@@ -198,18 +283,23 @@ const runtime = createReactRuntime(Babel, {
198
283
  - `ComponentProps` - Standard props passed to components
199
284
  - `ComponentCallbacks` - Callback functions available to components
200
285
  - `RegistryEntry` - Registry entry with metadata
286
+ - `LibraryConfiguration` - Configuration for external libraries
287
+ - `ExternalLibraryConfig` - Individual library configuration
201
288
 
202
289
  ### Classes
203
290
 
204
291
  - `ComponentCompiler` - Compiles React components from source
205
292
  - `ComponentRegistry` - Manages compiled components
206
293
  - `ComponentResolver` - Resolves component dependencies
294
+ - `StandardLibraryManager` - Manages library configurations
295
+ - `LibraryLoader` - Loads external libraries dynamically
207
296
 
208
297
  ### Utilities
209
298
 
210
299
  - `createErrorBoundary()` - Creates error boundary components
211
300
  - `buildComponentProps()` - Builds standardized component props
212
301
  - `wrapComponent()` - Wraps components with additional functionality
302
+ - `createStandardLibraries()` - Creates standard library object from globals
213
303
 
214
304
  ## Best Practices
215
305
 
@@ -218,6 +308,8 @@ const runtime = createReactRuntime(Babel, {
218
308
  3. **Handle Errors**: Always check compilation results for errors
219
309
  4. **Clean Up**: Use registry cleanup for long-running applications
220
310
  5. **Type Safety**: Leverage TypeScript types for better development experience
311
+ 6. **Library Management**: Configure only necessary libraries for security and performance
312
+ 7. **Runtime Separation**: Keep runtime libraries separate from component libraries
221
313
 
222
314
  ## License
223
315
 
@@ -9,7 +9,6 @@ export declare class ComponentCompiler {
9
9
  private transpileComponent;
10
10
  private wrapComponentCode;
11
11
  private createComponentFactory;
12
- private createStateUpdaterUtility;
13
12
  private validateCompileOptions;
14
13
  private generateComponentId;
15
14
  private getCachedComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"component-compiler.d.ts","sourceRoot":"","sources":["../../src/compiler/component-compiler.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,cAAc,EAEd,iBAAiB,EACjB,cAAc,EAGf,MAAM,UAAU,CAAC;AAoBlB,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,aAAa,CAAM;gBAMf,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAS5C,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAS5B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqElE,OAAO,CAAC,kBAAkB;IAgC1B,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,sBAAsB;IAmD9B,OAAO,CAAC,yBAAyB;IAwBjC,OAAO,CAAC,sBAAsB;IAwB9B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,sBAAsB;IAa9B,UAAU,IAAI,IAAI;IAQlB,YAAY,IAAI,MAAM;IAQtB,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;CAGpD"}
1
+ {"version":3,"file":"component-compiler.d.ts","sourceRoot":"","sources":["../../src/compiler/component-compiler.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,cAAc,EAEd,iBAAiB,EACjB,cAAc,EAGf,MAAM,UAAU,CAAC;AAoBlB,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,aAAa,CAAM;gBAMf,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAS5C,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAS5B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqElE,OAAO,CAAC,kBAAkB;IAgC1B,OAAO,CAAC,iBAAiB;IAoCzB,OAAO,CAAC,sBAAsB;IA2D9B,OAAO,CAAC,sBAAsB;IAiE9B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,sBAAsB;IAa9B,UAAU,IAAI,IAAI;IAQlB,YAAY,IAAI,MAAM;IAQtB,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;CAGpD"}
@@ -81,7 +81,11 @@ class ComponentCompiler {
81
81
  }
82
82
  wrapComponentCode(componentCode, componentName) {
83
83
  return `
84
- function createComponent(React, ReactDOM, useState, useEffect, useCallback, createStateUpdater, libraries, styles, console) {
84
+ function createComponent(
85
+ React, ReactDOM,
86
+ useState, useEffect, useCallback, useMemo, useRef, useContext, useReducer, useLayoutEffect,
87
+ libraries, styles, console
88
+ ) {
85
89
  ${componentCode}
86
90
 
87
91
  // Ensure the component exists
@@ -106,46 +110,51 @@ class ComponentCompiler {
106
110
  }
107
111
  createComponentFactory(transpiledCode, componentName) {
108
112
  try {
109
- const factoryCreator = new Function('React', 'ReactDOM', 'useState', 'useEffect', 'useCallback', 'createStateUpdater', 'libraries', 'styles', 'console', `${transpiledCode}; return createComponent;`);
113
+ const factoryCreator = new Function('React', 'ReactDOM', 'useState', 'useEffect', 'useCallback', 'useMemo', 'useRef', 'useContext', 'useReducer', 'useLayoutEffect', 'libraries', 'styles', 'console', `${transpiledCode}; return createComponent;`);
110
114
  return (context, styles = {}) => {
111
115
  const { React, ReactDOM, libraries = {} } = context;
112
- const createStateUpdater = this.createStateUpdaterUtility();
113
- const createComponentFn = factoryCreator(React, ReactDOM, React.useState, React.useEffect, React.useCallback, createStateUpdater, libraries, styles, console);
114
- return createComponentFn(React, ReactDOM, React.useState, React.useEffect, React.useCallback, createStateUpdater, libraries, styles, console);
116
+ const createComponentFn = factoryCreator(React, ReactDOM, React.useState, React.useEffect, React.useCallback, React.useMemo, React.useRef, React.useContext, React.useReducer, React.useLayoutEffect, libraries, styles, console);
117
+ return createComponentFn(React, ReactDOM, React.useState, React.useEffect, React.useCallback, React.useMemo, React.useRef, React.useContext, React.useReducer, React.useLayoutEffect, libraries, styles, console);
115
118
  };
116
119
  }
117
120
  catch (error) {
118
121
  throw new Error(`Failed to create component factory: ${error.message}`);
119
122
  }
120
123
  }
121
- createStateUpdaterUtility() {
122
- return (statePath, parentStateUpdater) => {
123
- return (componentStateUpdate) => {
124
- if (!statePath) {
125
- parentStateUpdater(componentStateUpdate);
126
- }
127
- else {
128
- const pathParts = statePath.split('.');
129
- const componentKey = pathParts[pathParts.length - 1];
130
- parentStateUpdater({
131
- [componentKey]: componentStateUpdate
132
- });
133
- }
134
- };
135
- };
136
- }
137
124
  validateCompileOptions(options) {
125
+ if (!options) {
126
+ throw new Error('Component compilation failed: No options provided.\n' +
127
+ 'Expected an object with componentName and componentCode properties.\n' +
128
+ 'Example: { componentName: "MyComponent", componentCode: "function MyComponent() { ... }" }');
129
+ }
138
130
  if (!options.componentName) {
139
- throw new Error('Component name is required');
131
+ const providedKeys = Object.keys(options).join(', ');
132
+ throw new Error('Component compilation failed: Component name is required.\n' +
133
+ `Received options with keys: [${providedKeys}]\n` +
134
+ 'Please ensure your component spec includes a "name" property.\n' +
135
+ 'Example: { name: "MyComponent", code: "..." }');
140
136
  }
141
137
  if (!options.componentCode) {
142
- throw new Error('Component code is required');
138
+ throw new Error(`Component compilation failed: Component code is required for "${options.componentName}".\n` +
139
+ 'Please ensure your component spec includes a "code" property with the component source code.\n' +
140
+ 'Example: { name: "MyComponent", code: "function MyComponent() { return <div>Hello</div>; }" }');
143
141
  }
144
142
  if (typeof options.componentCode !== 'string') {
145
- throw new Error('Component code must be a string');
143
+ const actualType = typeof options.componentCode;
144
+ throw new Error(`Component compilation failed: Component code must be a string for "${options.componentName}".\n` +
145
+ `Received type: ${actualType}\n` +
146
+ `Received value: ${JSON.stringify(options.componentCode).substring(0, 100)}...\n` +
147
+ 'Please ensure the code property contains a string of JavaScript/JSX code.');
148
+ }
149
+ if (options.componentCode.trim().length === 0) {
150
+ throw new Error(`Component compilation failed: Component code is empty for "${options.componentName}".\n` +
151
+ 'The code property must contain valid JavaScript/JSX code defining a React component.');
146
152
  }
147
153
  if (!options.componentCode.includes(options.componentName)) {
148
- throw new Error(`Component code must define a component named "${options.componentName}"`);
154
+ throw new Error(`Component compilation failed: Component code must define a component named "${options.componentName}".\n` +
155
+ 'The function/component name in the code must match the componentName property.\n' +
156
+ `Expected to find: function ${options.componentName}(...) or const ${options.componentName} = ...\n` +
157
+ 'Code preview: ' + options.componentCode.substring(0, 200) + '...');
149
158
  }
150
159
  }
151
160
  generateComponentId(componentName) {
package/dist/index.d.ts CHANGED
@@ -8,11 +8,11 @@ export { ComponentRegistry } from './registry';
8
8
  export { ComponentResolver, ComponentSpec, ResolvedComponents } from './registry';
9
9
  export { createErrorBoundary, withErrorBoundary, formatComponentError, createErrorLogger } from './runtime';
10
10
  export { wrapComponent, memoizeComponent, lazyComponent, injectProps, conditionalComponent, withErrorHandler, portalComponent, WrapperOptions } from './runtime';
11
- export { buildComponentProps, cleanupPropBuilder, normalizeCallbacks, normalizeStyles, validateComponentProps, mergeProps, createPropsTransformer, wrapCallbacksWithLogging, extractPropPaths, PropBuilderOptions } from './runtime';
11
+ export { buildComponentProps, normalizeCallbacks, normalizeStyles, validateComponentProps, mergeProps, createPropsTransformer, wrapCallbacksWithLogging, extractPropPaths, PropBuilderOptions } from './runtime';
12
12
  export { ComponentHierarchyRegistrar, registerComponentHierarchy, validateComponentSpec, flattenComponentHierarchy, countComponentsInHierarchy, HierarchyRegistrationResult, ComponentRegistrationError, HierarchyRegistrationOptions } from './runtime';
13
13
  export { RuntimeUtilities, createRuntimeUtilities } from './utilities/runtime-utilities';
14
14
  export { SetupStyles, createDefaultComponentStyles } from './utilities/component-styles';
15
- export { STANDARD_LIBRARY_URLS, StandardLibraries, getCoreLibraryUrls, getUILibraryUrls, getCSSUrls, createStandardLibraries } from './utilities/standard-libraries';
15
+ export { StandardLibraries, StandardLibraryManager, createStandardLibraries } from './utilities/standard-libraries';
16
16
  export { LibraryLoader, LibraryLoadOptions, LibraryLoadResult } from './utilities/library-loader';
17
17
  export { ComponentErrorAnalyzer, FailedComponentInfo } from './utilities/component-error-analyzer';
18
18
  export declare const VERSION = "2.69.1";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAG/C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,YAAY,EACb,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,EAC7B,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,WAAW,EACX,4BAA4B,EAC7B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAG9C,eAAO,MAAM,OAAO,WAAW,CAAC;AAGhC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;CAiB3B,CAAC;AAQF,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,GAAG,EAClB,MAAM,CAAC,EAAE;IACP,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;CACtD;;;;;EAcF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAG/C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,YAAY,EACb,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,EAC7B,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,WAAW,EACX,4BAA4B,EAC7B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAG9C,eAAO,MAAM,OAAO,WAAW,CAAC;AAGhC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;CAiB3B,CAAC;AAQF,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,GAAG,EAClB,MAAM,CAAC,EAAE;IACP,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;CACtD;;;;;EAcF"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.createReactRuntime = exports.DEFAULT_CONFIGS = exports.VERSION = exports.ComponentErrorAnalyzer = exports.LibraryLoader = exports.createStandardLibraries = exports.getCSSUrls = exports.getUILibraryUrls = exports.getCoreLibraryUrls = exports.STANDARD_LIBRARY_URLS = exports.createDefaultComponentStyles = exports.SetupStyles = exports.createRuntimeUtilities = exports.RuntimeUtilities = exports.countComponentsInHierarchy = exports.flattenComponentHierarchy = exports.validateComponentSpec = exports.registerComponentHierarchy = exports.ComponentHierarchyRegistrar = exports.extractPropPaths = exports.wrapCallbacksWithLogging = exports.createPropsTransformer = exports.mergeProps = exports.validateComponentProps = exports.normalizeStyles = exports.normalizeCallbacks = exports.cleanupPropBuilder = exports.buildComponentProps = exports.portalComponent = exports.withErrorHandler = exports.conditionalComponent = exports.injectProps = exports.lazyComponent = exports.memoizeComponent = exports.wrapComponent = exports.createErrorLogger = exports.formatComponentError = exports.withErrorBoundary = exports.createErrorBoundary = exports.ComponentResolver = exports.ComponentRegistry = exports.getJSXConfig = exports.validateBabelPresets = exports.getBabelConfig = exports.DEVELOPMENT_CONFIG = exports.PRODUCTION_CONFIG = exports.DEFAULT_PLUGINS = exports.DEFAULT_PRESETS = exports.ComponentCompiler = void 0;
17
+ exports.createReactRuntime = exports.DEFAULT_CONFIGS = exports.VERSION = exports.ComponentErrorAnalyzer = exports.LibraryLoader = exports.createStandardLibraries = exports.StandardLibraryManager = exports.createDefaultComponentStyles = exports.SetupStyles = exports.createRuntimeUtilities = exports.RuntimeUtilities = exports.countComponentsInHierarchy = exports.flattenComponentHierarchy = exports.validateComponentSpec = exports.registerComponentHierarchy = exports.ComponentHierarchyRegistrar = exports.extractPropPaths = exports.wrapCallbacksWithLogging = exports.createPropsTransformer = exports.mergeProps = exports.validateComponentProps = exports.normalizeStyles = exports.normalizeCallbacks = exports.buildComponentProps = exports.portalComponent = exports.withErrorHandler = exports.conditionalComponent = exports.injectProps = exports.lazyComponent = exports.memoizeComponent = exports.wrapComponent = exports.createErrorLogger = exports.formatComponentError = exports.withErrorBoundary = exports.createErrorBoundary = exports.ComponentSpec = exports.ComponentResolver = exports.ComponentRegistry = exports.getJSXConfig = exports.validateBabelPresets = exports.getBabelConfig = exports.DEVELOPMENT_CONFIG = exports.PRODUCTION_CONFIG = exports.DEFAULT_PLUGINS = exports.DEFAULT_PRESETS = exports.ComponentCompiler = void 0;
18
18
  const compiler_1 = require("./compiler");
19
19
  const registry_1 = require("./registry");
20
20
  const registry_2 = require("./registry");
@@ -33,6 +33,7 @@ var registry_3 = require("./registry");
33
33
  Object.defineProperty(exports, "ComponentRegistry", { enumerable: true, get: function () { return registry_3.ComponentRegistry; } });
34
34
  var registry_4 = require("./registry");
35
35
  Object.defineProperty(exports, "ComponentResolver", { enumerable: true, get: function () { return registry_4.ComponentResolver; } });
36
+ Object.defineProperty(exports, "ComponentSpec", { enumerable: true, get: function () { return registry_4.ComponentSpec; } });
36
37
  var runtime_1 = require("./runtime");
37
38
  Object.defineProperty(exports, "createErrorBoundary", { enumerable: true, get: function () { return runtime_1.createErrorBoundary; } });
38
39
  Object.defineProperty(exports, "withErrorBoundary", { enumerable: true, get: function () { return runtime_1.withErrorBoundary; } });
@@ -48,7 +49,6 @@ Object.defineProperty(exports, "withErrorHandler", { enumerable: true, get: func
48
49
  Object.defineProperty(exports, "portalComponent", { enumerable: true, get: function () { return runtime_2.portalComponent; } });
49
50
  var runtime_3 = require("./runtime");
50
51
  Object.defineProperty(exports, "buildComponentProps", { enumerable: true, get: function () { return runtime_3.buildComponentProps; } });
51
- Object.defineProperty(exports, "cleanupPropBuilder", { enumerable: true, get: function () { return runtime_3.cleanupPropBuilder; } });
52
52
  Object.defineProperty(exports, "normalizeCallbacks", { enumerable: true, get: function () { return runtime_3.normalizeCallbacks; } });
53
53
  Object.defineProperty(exports, "normalizeStyles", { enumerable: true, get: function () { return runtime_3.normalizeStyles; } });
54
54
  Object.defineProperty(exports, "validateComponentProps", { enumerable: true, get: function () { return runtime_3.validateComponentProps; } });
@@ -69,10 +69,7 @@ var component_styles_1 = require("./utilities/component-styles");
69
69
  Object.defineProperty(exports, "SetupStyles", { enumerable: true, get: function () { return component_styles_1.SetupStyles; } });
70
70
  Object.defineProperty(exports, "createDefaultComponentStyles", { enumerable: true, get: function () { return component_styles_1.createDefaultComponentStyles; } });
71
71
  var standard_libraries_1 = require("./utilities/standard-libraries");
72
- Object.defineProperty(exports, "STANDARD_LIBRARY_URLS", { enumerable: true, get: function () { return standard_libraries_1.STANDARD_LIBRARY_URLS; } });
73
- Object.defineProperty(exports, "getCoreLibraryUrls", { enumerable: true, get: function () { return standard_libraries_1.getCoreLibraryUrls; } });
74
- Object.defineProperty(exports, "getUILibraryUrls", { enumerable: true, get: function () { return standard_libraries_1.getUILibraryUrls; } });
75
- Object.defineProperty(exports, "getCSSUrls", { enumerable: true, get: function () { return standard_libraries_1.getCSSUrls; } });
72
+ Object.defineProperty(exports, "StandardLibraryManager", { enumerable: true, get: function () { return standard_libraries_1.StandardLibraryManager; } });
76
73
  Object.defineProperty(exports, "createStandardLibraries", { enumerable: true, get: function () { return standard_libraries_1.createStandardLibraries; } });
77
74
  var library_loader_1 = require("./utilities/library-loader");
78
75
  Object.defineProperty(exports, "LibraryLoader", { enumerable: true, get: function () { return library_loader_1.LibraryLoader; } });
@@ -1,10 +1,5 @@
1
1
  import { ComponentRegistry } from './component-registry';
2
- export interface ComponentSpec {
3
- componentName: string;
4
- componentCode?: string;
5
- childComponents?: ComponentSpec[];
6
- components?: ComponentSpec[];
7
- }
2
+ import { ComponentSpec } from '@memberjunction/interactive-component-types';
8
3
  export interface ResolvedComponents {
9
4
  [componentName: string]: any;
10
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component-resolver.d.ts","sourceRoot":"","sources":["../../src/registry/component-resolver.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAKzD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,aAAa,EAAE,CAAC;IAClC,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;CAC9B;AAKD,MAAM,WAAW,kBAAkB;IACjC,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC;CAC9B;AAMD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAoB;gBAMxB,QAAQ,EAAE,iBAAiB;IAUvC,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,kBAAkB;IAgBxF,OAAO,CAAC,yBAAyB;IAgCjC,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,MAAM,EAAE;IAgBjF,OAAO,CAAC,iBAAiB;IA0BzB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAe9D,OAAO,CAAC,oBAAoB;IAwB5B,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,EAAE;IAuB3C,OAAO,CAAC,kBAAkB;IAwB1B,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,KAAK,CAAC;QACvE,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,GAAG,CAAC;KAChB,CAAC;IAmBF,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,EAAE;IAe3D,OAAO,CAAC,qBAAqB;CAe9B"}
1
+ {"version":3,"file":"component-resolver.d.ts","sourceRoot":"","sources":["../../src/registry/component-resolver.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAK5E,MAAM,WAAW,kBAAkB;IACjC,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC;CAC9B;AAMD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAoB;gBAMxB,QAAQ,EAAE,iBAAiB;IAUvC,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,kBAAkB;IAgBxF,OAAO,CAAC,yBAAyB;IAgCjC,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,MAAM,EAAE;IAgBjF,OAAO,CAAC,iBAAiB;IA0BzB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAe9D,OAAO,CAAC,oBAAoB;IAwB5B,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,EAAE;IAuB3C,OAAO,CAAC,kBAAkB;IAwB1B,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAE,MAAiB,GAAG,KAAK,CAAC;QACvE,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,GAAG,CAAC;KAChB,CAAC;IAmBF,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,EAAE;IAe3D,OAAO,CAAC,qBAAqB;CAe9B"}
@@ -11,16 +11,16 @@ class ComponentResolver {
11
11
  return resolved;
12
12
  }
13
13
  resolveComponentHierarchy(spec, resolved, namespace, visited = new Set()) {
14
- if (visited.has(spec.componentName)) {
15
- console.warn(`Circular dependency detected for component: ${spec.componentName}`);
14
+ if (visited.has(spec.name)) {
15
+ console.warn(`Circular dependency detected for component: ${spec.name}`);
16
16
  return;
17
17
  }
18
- visited.add(spec.componentName);
19
- const component = this.registry.get(spec.componentName, namespace);
18
+ visited.add(spec.name);
19
+ const component = this.registry.get(spec.name, namespace);
20
20
  if (component) {
21
- resolved[spec.componentName] = component;
21
+ resolved[spec.name] = component;
22
22
  }
23
- const children = spec.childComponents || spec.components || [];
23
+ const children = spec.dependencies || [];
24
24
  for (const child of children) {
25
25
  this.resolveComponentHierarchy(child, resolved, namespace, visited);
26
26
  }
@@ -32,13 +32,13 @@ class ComponentResolver {
32
32
  return missing;
33
33
  }
34
34
  checkDependencies(spec, namespace, missing, checked) {
35
- if (checked.has(spec.componentName))
35
+ if (checked.has(spec.name))
36
36
  return;
37
- checked.add(spec.componentName);
38
- if (!this.registry.has(spec.componentName, namespace)) {
39
- missing.push(spec.componentName);
37
+ checked.add(spec.name);
38
+ if (!this.registry.has(spec.name, namespace)) {
39
+ missing.push(spec.name);
40
40
  }
41
- const children = spec.childComponents || spec.components || [];
41
+ const children = spec.dependencies || [];
42
42
  for (const child of children) {
43
43
  this.checkDependencies(child, namespace, missing, checked);
44
44
  }
@@ -50,12 +50,12 @@ class ComponentResolver {
50
50
  return graph;
51
51
  }
52
52
  buildDependencyGraph(spec, graph, visited) {
53
- if (visited.has(spec.componentName))
53
+ if (visited.has(spec.name))
54
54
  return;
55
- visited.add(spec.componentName);
56
- const children = spec.childComponents || spec.components || [];
57
- const dependencies = children.map(child => child.componentName);
58
- graph.set(spec.componentName, dependencies);
55
+ visited.add(spec.name);
56
+ const children = spec.dependencies || [];
57
+ const dependencies = children.map(child => child.name);
58
+ graph.set(spec.name, dependencies);
59
59
  for (const child of children) {
60
60
  this.buildDependencyGraph(child, graph, visited);
61
61
  }
@@ -99,11 +99,11 @@ class ComponentResolver {
99
99
  return flattened;
100
100
  }
101
101
  collectComponentSpecs(spec, collected, visited) {
102
- if (visited.has(spec.componentName))
102
+ if (visited.has(spec.name))
103
103
  return;
104
- visited.add(spec.componentName);
104
+ visited.add(spec.name);
105
105
  collected.push(spec);
106
- const children = spec.childComponents || spec.components || [];
106
+ const children = spec.dependencies || [];
107
107
  for (const child of children) {
108
108
  this.collectComponentSpecs(child, collected, visited);
109
109
  }
@@ -1,3 +1,4 @@
1
1
  export { ComponentRegistry } from './component-registry';
2
- export { ComponentResolver, ComponentSpec, ResolvedComponents } from './component-resolver';
2
+ export { ComponentResolver, ResolvedComponents } from './component-resolver';
3
+ export { ComponentSpec } from '@memberjunction/interactive-component-types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC"}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ComponentResolver = exports.ComponentRegistry = void 0;
3
+ exports.ComponentSpec = exports.ComponentResolver = exports.ComponentRegistry = void 0;
4
4
  var component_registry_1 = require("./component-registry");
5
5
  Object.defineProperty(exports, "ComponentRegistry", { enumerable: true, get: function () { return component_registry_1.ComponentRegistry; } });
6
6
  var component_resolver_1 = require("./component-resolver");
7
7
  Object.defineProperty(exports, "ComponentResolver", { enumerable: true, get: function () { return component_resolver_1.ComponentResolver; } });
8
+ var interactive_component_types_1 = require("@memberjunction/interactive-component-types");
9
+ Object.defineProperty(exports, "ComponentSpec", { enumerable: true, get: function () { return interactive_component_types_1.ComponentSpec; } });
@@ -1,7 +1,7 @@
1
1
  import { ComponentStyles, RuntimeContext } from '../types';
2
2
  import { ComponentCompiler } from '../compiler';
3
3
  import { ComponentRegistry } from '../registry';
4
- import { ComponentSpec } from '../registry/component-resolver';
4
+ import { ComponentSpec } from '@memberjunction/interactive-component-types';
5
5
  export interface HierarchyRegistrationResult {
6
6
  success: boolean;
7
7
  registeredComponents: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"component-hierarchy.d.ts","sourceRoot":"","sources":["../../src/runtime/component-hierarchy.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,eAAe,EACf,cAAc,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAK/D,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,MAAM,EAAE,0BAA0B,EAAE,CAAC;IACrC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAKD,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,GAAG,cAAc,GAAG,YAAY,CAAC;CACtD;AAKD,MAAM,WAAW,4BAA4B;IAE3C,MAAM,CAAC,EAAE,eAAe,CAAC;IAEzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAKD,qBAAa,2BAA2B;IAEpC,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,cAAc;gBAFd,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,cAAc;IASlC,iBAAiB,CACrB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC;IAsDjC,uBAAuB,CAC3B,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,eAAe,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,GACA,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,0BAA0B,CAAA;KAAE,CAAC;YA8EtD,uBAAuB;CAwCtC;AAWD,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,cAAc,EAC9B,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC,CAGtC;AAOD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,EAAE,CA2BnE;AAOD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,EAAE,CASlF;AAQD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,aAAa,EACvB,YAAY,GAAE,OAAe,GAC5B,MAAM,CAaR"}
1
+ {"version":3,"file":"component-hierarchy.d.ts","sourceRoot":"","sources":["../../src/runtime/component-hierarchy.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,eAAe,EACf,cAAc,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAK5E,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,MAAM,EAAE,0BAA0B,EAAE,CAAC;IACrC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAKD,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,GAAG,cAAc,GAAG,YAAY,CAAC;CACtD;AAKD,MAAM,WAAW,4BAA4B;IAE3C,MAAM,CAAC,EAAE,eAAe,CAAC;IAEzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAKD,qBAAa,2BAA2B;IAEpC,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,cAAc;gBAFd,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,cAAc;IASlC,iBAAiB,CACrB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC;IAsDjC,uBAAuB,CAC3B,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,eAAe,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,GACA,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,0BAA0B,CAAA;KAAE,CAAC;YA8EtD,uBAAuB;CAwCtC;AAWD,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,cAAc,EAC9B,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC,CAGtC;AAOD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,EAAE,CA2BnE;AAOD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,EAAE,CASlF;AAQD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,aAAa,EACvB,YAAY,GAAE,OAAe,GAC5B,MAAM,CAaR"}