MCPcopy Index your code
hub / github.com/NativeScript/NativeScript / createViewFromEntry

Method createViewFromEntry

packages/core/ui/builder/index.ts:66–106  ·  view source on GitHub ↗

* Creates view from navigation entry * @param entry NavigationEntry

(entry: ViewEntry)

Source from the content-addressed store, hash-verified

64 * @param entry NavigationEntry
65 */
66 static createViewFromEntry(entry: ViewEntry): View {
67 if (entry.create) {
68 const view = entry.create();
69 if (!view) {
70 throw new Error('Failed to create View with entry.create() function.');
71 }
72
73 return view;
74 } else if (entry.moduleName) {
75 const moduleName = sanitizeModuleName(entry.moduleName);
76 const resolvedCodeModuleName = resolveModuleName(moduleName, ''); //`${moduleName}.xml`;
77 const moduleExports = resolvedCodeModuleName ? global.loadModule(resolvedCodeModuleName) : null;
78 if (moduleExports && moduleExports.createPage) {
79 // Exports has a createPage() method
80 const view = moduleExports.createPage();
81 const resolvedCssModuleName = resolveModuleName(moduleName, 'css'); //entry.moduleName + ".css";
82 if (resolvedCssModuleName) {
83 view.addCssFile(resolvedCssModuleName);
84 }
85
86 return view;
87 } else {
88 let componentView;
89 if (__UI_USE_XML_PARSER__) {
90 const componentModule = loadInternal(moduleName, moduleExports);
91 componentView = componentModule && componentModule.component;
92 } else {
93 const resolvedXmlModuleName = resolveModuleName(moduleName, 'xml');
94 const componentModule = resolvedXmlModuleName ? global.loadModule(resolvedXmlModuleName) : null;
95 if (componentModule?.default) {
96 componentView = new componentModule.default();
97 } else {
98 throw new Error('Failed to load component from module: ' + moduleName);
99 }
100 }
101 return componentView;
102 }
103 }
104
105 throw new Error('Failed to load page XML file for module: ' + entry.moduleName);
106 }
107
108 static parse(value: string | Template, context?: any): View {
109 if (typeof value === 'function') {

Callers 15

createRootViewMethod · 0.80
getModalOptionsFunction · 0.80
navigateMethod · 0.80
replacePageMethod · 0.80
createViewFromEntryFunction · 0.80
navigateWithEntryFunction · 0.80
navigatedToEventHandlerFunction · 0.80
getViewComponentFunction · 0.80

Calls 5

sanitizeModuleNameFunction · 0.90
resolveModuleNameFunction · 0.90
loadInternalFunction · 0.85
addCssFileMethod · 0.80
createMethod · 0.65

Tested by

no test coverage detected