@@ -4,7 +4,7 @@ use convert_case::{Case, Casing};
44use http:: HttpAddCommand ;
55use local:: LocalAddCommand ;
66use registry:: RegistryAddCommand ;
7- use semver:: VersionReq ;
7+ use semver:: { Version , VersionReq } ;
88use spin_manifest:: {
99 manifest_from_file,
1010 schema:: v2:: { AppManifest , ComponentDependency } ,
@@ -482,17 +482,10 @@ async fn generate_ts_bindings(
482482 package_name. namespace, package_name. name
483483 ) ;
484484
485- let package_name_str = if let Some ( v) = & package_name. version {
486- format ! (
487- "@spin-deps/{}-{}@{}" ,
488- package_name. namespace, package_name. name, v
489- )
490- } else {
491- format ! (
492- "@spin-deps/{}-{}" ,
493- package_name. namespace, package_name. name
494- )
495- } ;
485+ let package_name_str = format ! (
486+ "@spin-deps/{}-{}" ,
487+ package_name. namespace, package_name. name
488+ ) ;
496489
497490 let package_id = resolve
498491 . packages
@@ -503,12 +496,14 @@ async fn generate_ts_bindings(
503496
504497 let world_id = resolve. select_world ( package_id, Some ( "root" ) ) ?;
505498
506- let out_world_name = & package_name
507- . to_string ( )
508- . replace ( "_" , "-" )
509- . replace ( ":" , "-" )
510- . replace ( "@" , "" )
511- . replace ( "/" , "-" ) ;
499+ let out_world_name = & format ! (
500+ "importized-{}-{}" ,
501+ package_name. namespace, package_name. name
502+ )
503+ . replace ( "_" , "-" )
504+ . replace ( ":" , "-" )
505+ . replace ( "@" , "" )
506+ . replace ( "/" , "-" ) ;
512507
513508 resolve. importize ( world_id, Some ( out_world_name. clone ( ) ) ) ?;
514509 let out_world_id = resolve. select_world ( package_id, Some ( & out_world_name) ) ?;
@@ -519,7 +514,11 @@ async fn generate_ts_bindings(
519514
520515 // add a package.json file
521516 let package_json = package_dir. join ( "package.json" ) ;
522- let package_json_content = package_json_content ( & package_name_str, & out_world_name) ;
517+ let package_json_content = package_json_content (
518+ & package_name_str,
519+ & out_world_name,
520+ package_name. version . clone ( ) ,
521+ ) ;
523522 fs:: write ( & package_json, package_json_content)
524523 . await
525524 . context ( "no package json file" ) ?;
@@ -601,9 +600,6 @@ async fn generate_ts_bindings(
601600 final_name, import_path
602601 ) ) ;
603602 re_exports. push ( format ! ( "export {{ {} }};" , final_name) ) ;
604-
605- println ! ( "import * as {} from '{}';" , final_name, import_path) ;
606- println ! ( "export {{ {} }};" , final_name) ;
607603 }
608604 // TODO: spin deps itself does not importing functions
609605 wit_parser:: WorldItem :: Function ( _) => { }
@@ -618,7 +614,7 @@ async fn generate_ts_bindings(
618614 println ! (
619615 "To use the component, run:\n cd {}\n npm install ./{}" ,
620616 root_dir. to_string_lossy( ) ,
621- package_name
617+ package_name_str
622618 ) ;
623619
624620 Ok ( ( ) )
@@ -720,11 +716,14 @@ async fn generate_rust_bindings(
720716 Ok ( ( ) )
721717}
722718
723- fn package_json_content ( package_name : & str , world : & str ) -> String {
719+ fn package_json_content ( package_name : & str , world : & str , version : Option < Version > ) -> String {
720+ let version_str = version
721+ . map ( |v| v. to_string ( ) )
722+ . unwrap_or_else ( || "0.1.0" . to_owned ( ) ) ;
724723 format ! (
725724 r#"{{
726725 "name": "{package_name}",
727- "version": "0.1.0 ",
726+ "version": "{version_str} ",
728727 "description": "Generated Package for {package_name}",
729728 "main": "index.js",
730729 "scripts": {{
0 commit comments