klenod-plugin-javascript 0.0.5 → 0.0.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4f6fde74797bd463bec37b1ab4cc4e5bac90f10bea16522e1d1d582febc201d1
4
- data.tar.gz: 86e3c4ece111fb18e552b824d5b631b7faf6c6c9672f50580b4034a1472a2c53
3
+ metadata.gz: 30e11e7339a1726052d296fcb54854f6d014c611cd4c48094933e0cc6b74080f
4
+ data.tar.gz: 359efb21736cf969f54d02576d06a822e9797a654d9ca11fbb1b33de9ebeb007
5
5
  SHA512:
6
- metadata.gz: f68198a77686d51e58ca1422e2d6c10028c22bc38b3da98e63a1a04954a2cbb09da7ca7a2d9072a9690c462d32df974f6fcc16d0823f59b772de6fc0ed103beb
7
- data.tar.gz: 549bb4fd0d8c944c1706b0b844cc5a79513866b98c494337bf17ed3bb217eaf42150303f74f7e15693dd8343bec5bcde9470f12f02c754713a2feeb3fd31c8e2
6
+ metadata.gz: '05876d2ec618520716b30663a7b87088f8cf2a206a71f093e49222eb09bcb5f301861ae38bebb5b3f0b986ed873cb596247a943f494d6c75414be83091c92b88'
7
+ data.tar.gz: 7c250eb557f9b10c72a90b175cacab02948a92c838264865aca533769d4670dd0eda1275bb0b4c0ae0a64cdac26db0053de784e3162c65d36ce9fc20bcaf8a92
@@ -43,9 +43,9 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16"
43
43
 
44
44
  [[package]]
45
45
  name = "ast_node"
46
- version = "5.0.0"
46
+ version = "7.0.0"
47
47
  source = "registry+https://github.com/rust-lang/crates.io-index"
48
- checksum = "2eb025ef00a6da925cf40870b9c8d008526b6004ece399cb0974209720f0b194"
48
+ checksum = "edf54a7a1bf98e127c22e9e2b9d19619092c74283fdc14e4d67da69780f90db6"
49
49
  dependencies = [
50
50
  "quote",
51
51
  "swc_macros_common",
@@ -302,9 +302,9 @@ checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c"
302
302
 
303
303
  [[package]]
304
304
  name = "hstr"
305
- version = "3.0.6"
305
+ version = "4.0.1"
306
306
  source = "registry+https://github.com/rust-lang/crates.io-index"
307
- checksum = "83bb87e4b300d73412f6dcc7022ee7741452b51b155c2b06e5994d0770c2dbe2"
307
+ checksum = "23efb2e58d2f27a96edfa907c26016deb120b7ac8c66a19d2748f0e9c145f3cb"
308
308
  dependencies = [
309
309
  "hashbrown 0.14.5",
310
310
  "new_debug_unreachable",
@@ -865,17 +865,6 @@ version = "1.15.2"
865
865
  source = "registry+https://github.com/rust-lang/crates.io-index"
866
866
  checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90"
867
867
 
868
- [[package]]
869
- name = "smartstring"
870
- version = "1.0.1"
871
- source = "registry+https://github.com/rust-lang/crates.io-index"
872
- checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29"
873
- dependencies = [
874
- "autocfg",
875
- "static_assertions",
876
- "version_check",
877
- ]
878
-
879
868
  [[package]]
880
869
  name = "stable_deref_trait"
881
870
  version = "1.2.1"
@@ -901,9 +890,9 @@ dependencies = [
901
890
 
902
891
  [[package]]
903
892
  name = "swc_allocator"
904
- version = "4.0.1"
893
+ version = "5.0.0"
905
894
  source = "registry+https://github.com/rust-lang/crates.io-index"
906
- checksum = "9d7eefd2c8b228a8c73056482b2ae4b3a1071fbe07638e3b55ceca8570cc48bb"
895
+ checksum = "eb41c2f41afa7357a86109f7e058f6b140ab415b8cd196c1a7b54f2703c85417"
907
896
  dependencies = [
908
897
  "allocator-api2",
909
898
  "bumpalo",
@@ -913,9 +902,9 @@ dependencies = [
913
902
 
914
903
  [[package]]
915
904
  name = "swc_atoms"
916
- version = "9.0.3"
905
+ version = "10.0.0"
917
906
  source = "registry+https://github.com/rust-lang/crates.io-index"
918
- checksum = "845f31910b5236db42dba106e8277681098d183b9b65b8dfa88ca8abe464aeff"
907
+ checksum = "c70a493080ceb12dabddb96905a3ddac679fbe9c71ddc81a2a769126e8cde7c4"
919
908
  dependencies = [
920
909
  "hstr",
921
910
  "once_cell",
@@ -924,9 +913,9 @@ dependencies = [
924
913
 
925
914
  [[package]]
926
915
  name = "swc_common"
927
- version = "23.0.2"
916
+ version = "26.0.0"
928
917
  source = "registry+https://github.com/rust-lang/crates.io-index"
929
- checksum = "176fb11b1abd0a175e8ac47d4b061c5c8a9ae13b9196f30d44fe5db9cb7dfcbd"
918
+ checksum = "142d2a06cafce623859ca799f5d1935bb8a886f18b66a2585ddeadff210121d0"
930
919
  dependencies = [
931
920
  "anyhow",
932
921
  "ast_node",
@@ -949,9 +938,9 @@ dependencies = [
949
938
 
950
939
  [[package]]
951
940
  name = "swc_config"
952
- version = "5.0.0"
941
+ version = "6.0.0"
953
942
  source = "registry+https://github.com/rust-lang/crates.io-index"
954
- checksum = "6ee60aaa4eaea81fb9c730e64a0b88c363b5c237b774d114c97cba82f8655fdb"
943
+ checksum = "733985ad1340ea469d0d4366bae9664aa8f246006fa822a7d9365b41e48d7986"
955
944
  dependencies = [
956
945
  "anyhow",
957
946
  "bytes-str",
@@ -975,9 +964,9 @@ dependencies = [
975
964
 
976
965
  [[package]]
977
966
  name = "swc_core"
978
- version = "73.0.0"
967
+ version = "77.1.2"
979
968
  source = "registry+https://github.com/rust-lang/crates.io-index"
980
- checksum = "f32ff8b6aad9a785a5861489a62576262e22d702fbc2f2c134e69278b7e934a3"
969
+ checksum = "400701fb0bc3d13d1d0a1de6f58d91489fa9007eb3c584057bb2adb637fa9a5d"
981
970
  dependencies = [
982
971
  "swc_allocator",
983
972
  "swc_atoms",
@@ -993,9 +982,9 @@ dependencies = [
993
982
 
994
983
  [[package]]
995
984
  name = "swc_ecma_ast"
996
- version = "25.0.0"
985
+ version = "29.0.0"
997
986
  source = "registry+https://github.com/rust-lang/crates.io-index"
998
- checksum = "a207e09f23885ff1f4354ebfdd4e715ccd4a68fca2e7e0df09baafbca850762e"
987
+ checksum = "5a6fd43fc7e90b9d5b252af666c147f5e2ee692add2b075f7f0d6fc2f5357bb6"
999
988
  dependencies = [
1000
989
  "bitflags",
1001
990
  "is-macro",
@@ -1012,9 +1001,9 @@ dependencies = [
1012
1001
 
1013
1002
  [[package]]
1014
1003
  name = "swc_ecma_codegen"
1015
- version = "28.0.2"
1004
+ version = "32.0.0"
1016
1005
  source = "registry+https://github.com/rust-lang/crates.io-index"
1017
- checksum = "a5a2fbf46c8cc66e112b6d8226ae0dacc6b983589df6192b38c7669d7721e02a"
1006
+ checksum = "a1b19a1d9f059fb77b0bc321688c7af59fe687a975581379456962586959c5d1"
1018
1007
  dependencies = [
1019
1008
  "ascii",
1020
1009
  "compact_str",
@@ -1030,6 +1019,7 @@ dependencies = [
1030
1019
  "swc_common",
1031
1020
  "swc_ecma_ast",
1032
1021
  "swc_ecma_codegen_macros",
1022
+ "swc_ecma_utils",
1033
1023
  "tracing",
1034
1024
  ]
1035
1025
 
@@ -1046,9 +1036,9 @@ dependencies = [
1046
1036
 
1047
1037
  [[package]]
1048
1038
  name = "swc_ecma_hooks"
1049
- version = "0.9.0"
1039
+ version = "1.0.0"
1050
1040
  source = "registry+https://github.com/rust-lang/crates.io-index"
1051
- checksum = "9b3085866c59066b1346b50a70e12f28b9c06e44048370f7b20a25a769be92a0"
1041
+ checksum = "f3abc7b19ffc01d358fe6dfce904cc0a9c30c4db6deed11011b67c320f71682c"
1052
1042
  dependencies = [
1053
1043
  "swc_atoms",
1054
1044
  "swc_common",
@@ -1058,18 +1048,18 @@ dependencies = [
1058
1048
 
1059
1049
  [[package]]
1060
1050
  name = "swc_ecma_parser"
1061
- version = "41.1.2"
1051
+ version = "45.1.1"
1062
1052
  source = "registry+https://github.com/rust-lang/crates.io-index"
1063
- checksum = "f0f6c9c63026f4d1a70c3c6703446d42ce7b0fe83d4c33b6fe985faf96753f3e"
1053
+ checksum = "52c29766d4f60c867b48e4d433a4d6c1247f86e4fd1e5ca2babcdd2128806f91"
1064
1054
  dependencies = [
1065
1055
  "bitflags",
1056
+ "compact_str",
1066
1057
  "either",
1067
1058
  "num-bigint",
1068
1059
  "phf",
1069
1060
  "rustc-hash",
1070
1061
  "seq-macro",
1071
1062
  "serde",
1072
- "smartstring",
1073
1063
  "swc_atoms",
1074
1064
  "swc_common",
1075
1065
  "swc_ecma_ast",
@@ -1078,9 +1068,9 @@ dependencies = [
1078
1068
 
1079
1069
  [[package]]
1080
1070
  name = "swc_ecma_transforms_base"
1081
- version = "45.0.0"
1071
+ version = "49.0.1"
1082
1072
  source = "registry+https://github.com/rust-lang/crates.io-index"
1083
- checksum = "b61d73ff2b8c5d023cd97ff0026a50edf4e70f72d6acf93d65d7a6a9bde4a86a"
1073
+ checksum = "9c5b5b6a31a512d23854cb6fabc9347596bde4106cd3a65dc4f9072bbb0514b4"
1084
1074
  dependencies = [
1085
1075
  "better_scoped_tls",
1086
1076
  "indexmap",
@@ -1100,9 +1090,9 @@ dependencies = [
1100
1090
 
1101
1091
  [[package]]
1102
1092
  name = "swc_ecma_transforms_react"
1103
- version = "51.0.0"
1093
+ version = "55.0.1"
1104
1094
  source = "registry+https://github.com/rust-lang/crates.io-index"
1105
- checksum = "a71661a8f91f22d2dd33add8d08f0bbef0e942868d6fad1e664593c10c9d8f74"
1095
+ checksum = "4d051cd9043cd7ca24eb154606e6a6914ed13d0dca686bd681a5277d99a8e4c7"
1106
1096
  dependencies = [
1107
1097
  "base64",
1108
1098
  "bytes-str",
@@ -1125,9 +1115,9 @@ dependencies = [
1125
1115
 
1126
1116
  [[package]]
1127
1117
  name = "swc_ecma_transforms_typescript"
1128
- version = "51.0.0"
1118
+ version = "55.0.2"
1129
1119
  source = "registry+https://github.com/rust-lang/crates.io-index"
1130
- checksum = "74bf3cc7e20997e2918144504ecebc0f0c79af13cfa04feac5a55699e2cb5a5d"
1120
+ checksum = "f6ff33eb8a13dced33261de7778097e18ac33e2ff0ffe7b071f1837b54679d61"
1131
1121
  dependencies = [
1132
1122
  "bytes-str",
1133
1123
  "rustc-hash",
@@ -1143,9 +1133,9 @@ dependencies = [
1143
1133
 
1144
1134
  [[package]]
1145
1135
  name = "swc_ecma_utils"
1146
- version = "31.0.2"
1136
+ version = "35.0.1"
1147
1137
  source = "registry+https://github.com/rust-lang/crates.io-index"
1148
- checksum = "04108a8cd1db73a46e8703e146568e4966b4afbecd238fe5cc4a10bf7e39a42e"
1138
+ checksum = "a0cf1613b3f833d4713998914154e8335eacbec9a3ceb328ee37dc7618cdb468"
1149
1139
  dependencies = [
1150
1140
  "dragonbox_ecma",
1151
1141
  "indexmap",
@@ -1162,9 +1152,9 @@ dependencies = [
1162
1152
 
1163
1153
  [[package]]
1164
1154
  name = "swc_ecma_visit"
1165
- version = "25.0.0"
1155
+ version = "29.0.0"
1166
1156
  source = "registry+https://github.com/rust-lang/crates.io-index"
1167
- checksum = "1f9cb1e958e57fa6427c106674a12190c4578684beee783e3a0508f048d1b372"
1157
+ checksum = "a830a070fea84a3a8a8c556463f0551e3bfc6cf2f8bdeecd62fa753e22a72289"
1168
1158
  dependencies = [
1169
1159
  "new_debug_unreachable",
1170
1160
  "num-bigint",
@@ -9,4 +9,4 @@ crate-type = ["cdylib"]
9
9
 
10
10
  [dependencies]
11
11
  magnus = "0.8.2"
12
- swc_core = { version = "73.0.0", features = ["common", "ecma_ast", "ecma_codegen", "ecma_parser", "ecma_parser_typescript", "ecma_transforms_react", "ecma_transforms_typescript", "ecma_visit"] }
12
+ swc_core = { version = "77.1.2", features = ["common", "ecma_ast", "ecma_codegen", "ecma_parser", "ecma_parser_typescript", "ecma_transforms_react", "ecma_transforms_typescript", "ecma_visit"] }
@@ -107,7 +107,7 @@ module Klenod
107
107
  imports = result.metadata[:javascript_imports]
108
108
  return result unless source && imports
109
109
 
110
- edit = rewrite_imports(module_id, source, original_source, imports, resolved_dependencies, dependency_records)
110
+ edit = rewrite_imports(module_id, source, original_source, imports, resolved_dependencies, dependency_records, context)
111
111
  source_map_asset = nil
112
112
  code = edit.code
113
113
  custom_element_descriptor = nil
@@ -121,7 +121,7 @@ module Klenod
121
121
  if source_maps_enabled?(context)
122
122
  source_map_json = edit.source_map.to_json
123
123
  source_map_hash = Hashing.short(source_map_json)
124
- source_map_output_path = "/assets/#{asset_name(module_id)}.#{source_map_hash}.js.map"
124
+ source_map_output_path = "/#{asset_name(module_id)}.#{source_map_hash}.js.map"
125
125
  source_map_asset =
126
126
  Asset.new(
127
127
  module_id.path,
@@ -136,10 +136,10 @@ module Klenod
136
136
  end
137
137
 
138
138
  hash = Hashing.short(code)
139
- output_path = "/assets/#{asset_name(module_id)}.#{hash}.js"
139
+ output_path = "/#{asset_name(module_id)}.#{hash}.js"
140
140
  asset_javascript_assets = asset_javascript_assets(resolved_dependencies, dependency_records)
141
141
  metadata = {type: :javascript}
142
- css_preload_assets = css_preload_assets(resolved_dependencies, dependency_records)
142
+ css_preload_assets = css_preload_assets(resolved_dependencies, dependency_records, context)
143
143
  metadata[:preload_assets] = css_preload_assets unless css_preload_assets.empty?
144
144
  asset =
145
145
  Asset.new(
@@ -151,13 +151,14 @@ module Klenod
151
151
  CONTENT_TYPE,
152
152
  metadata
153
153
  )
154
+ asset.url = context.asset_url(asset.output_path)
154
155
 
155
156
  result.with(
156
- code: module_source(output_path, custom_element_descriptor: custom_element_descriptor&.merge(asset_path: output_path)),
157
+ code: module_source(asset.url, custom_element_descriptor: custom_element_descriptor&.merge(asset_path: asset.url)),
157
158
  assets: [asset, source_map_asset, *asset_javascript_assets].compact,
158
159
  metadata: result.metadata.merge(
159
- javascript_asset_path: output_path,
160
- javascript_custom_element_descriptor: custom_element_descriptor&.merge(asset_path: output_path)
160
+ javascript_asset_path: asset.url,
161
+ javascript_custom_element_descriptor: custom_element_descriptor&.merge(asset_path: asset.url)
161
162
  )
162
163
  )
163
164
  end
@@ -245,7 +246,7 @@ module Klenod
245
246
  SourceLocation.new(match[:path], match[:line].to_i, match[:column].to_i)
246
247
  end
247
248
 
248
- def rewrite_imports(module_id, source, original_source, imports, resolved_dependencies, dependency_records)
249
+ def rewrite_imports(module_id, source, original_source, imports, resolved_dependencies, dependency_records, context)
249
250
  resolved_by_range =
250
251
  resolved_dependencies.to_h do |resolved_dependency|
251
252
  metadata = resolved_dependency.dependency.metadata
@@ -259,23 +260,23 @@ module Klenod
259
260
  dependency, record = resolved_by_range[[import.start_offset, import.end_offset]]
260
261
  next [] unless dependency
261
262
 
262
- import_edits(module_id, source, dependency, record)
263
+ import_edits(module_id, source, dependency, record, context)
263
264
  end
264
265
 
265
266
  SourceMap::Editor.new(source, identity_source_map(module_id, source, original_source)).apply(edits)
266
267
  end
267
268
 
268
- def import_edits(module_id, source, dependency, record)
269
+ def import_edits(module_id, source, dependency, record, context)
269
270
  if (stylesheet_asset = css_javascript_stylesheet_asset(record))
270
271
  validate_css_import!(module_id, source, dependency)
271
- edits = [SourceMap::Edit.replace(dependency.metadata.fetch(:start_offset), dependency.metadata.fetch(:end_offset), stylesheet_asset.output_path)]
272
+ edits = [SourceMap::Edit.replace(dependency.metadata.fetch(:start_offset), dependency.metadata.fetch(:end_offset), stylesheet_asset.url)]
272
273
  if dependency.metadata.fetch(:attributes)[:type].nil?
273
274
  edits << SourceMap::Edit.replace(dependency.metadata.fetch(:attribute_insert_offset), dependency.metadata.fetch(:attribute_insert_offset), %( with { type: "css" }))
274
275
  end
275
276
  return edits
276
277
  end
277
278
 
278
- if (asset_path = asset_javascript_asset_path(record))
279
+ if (asset_path = asset_javascript_asset_path(record, context))
279
280
  validate_asset_import!(module_id, source, dependency)
280
281
  return [SourceMap::Edit.replace(dependency.metadata.fetch(:start_offset), dependency.metadata.fetch(:end_offset), asset_path)]
281
282
  end
@@ -283,8 +284,9 @@ module Klenod
283
284
  [SourceMap::Edit.replace(dependency.metadata.fetch(:start_offset), dependency.metadata.fetch(:end_offset), record.metadata.fetch(:javascript_asset_path))]
284
285
  end
285
286
 
286
- def asset_javascript_asset_path(record)
287
- asset_javascript_metadata_asset(record)&.output_path
287
+ def asset_javascript_asset_path(record, _context)
288
+ asset = asset_javascript_metadata_asset(record)
289
+ asset&.url
288
290
  end
289
291
 
290
292
  def asset_javascript_assets(resolved_dependencies, dependency_records)
@@ -322,11 +324,11 @@ module Klenod
322
324
  record.assets.find { it.metadata[:type] == :css_javascript_stylesheet } || record.assets.find { it.metadata[:type] == :css }
323
325
  end
324
326
 
325
- def css_preload_assets(resolved_dependencies, dependency_records)
327
+ def css_preload_assets(resolved_dependencies, dependency_records, context)
326
328
  resolved_dependencies.filter_map do |resolved_dependency|
327
329
  record = dependency_records.fetch(resolved_dependency.dependency.id)
328
330
  asset = css_javascript_stylesheet_asset(record)
329
- {path: asset.output_path, as: "style"} if asset
331
+ {path: asset.url, as: "style"} if asset
330
332
  end.uniq
331
333
  end
332
334
 
@@ -4,7 +4,7 @@ module Klenod
4
4
  module Build
5
5
  module Plugins
6
6
  module JavaScriptPlugin
7
- VERSION = "0.0.5"
7
+ VERSION = "0.0.6"
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: klenod-plugin-javascript
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrés Alin
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - '='
17
17
  - !ruby/object:Gem::Version
18
- version: 0.0.5
18
+ version: 0.0.6
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - '='
24
24
  - !ruby/object:Gem::Version
25
- version: 0.0.5
25
+ version: 0.0.6
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rb_sys
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +81,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - ">="
83
83
  - !ruby/object:Gem::Version
84
- version: 4.0.6
84
+ version: '4.0'
85
85
  required_rubygems_version: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="