Skip to content

Commit 87e439a

Browse files
committed
Improve proptypes.js generated size.
1 parent e0a2e16 commit 87e439a

File tree

1 file changed

+14
-16
lines changed

1 file changed

+14
-16
lines changed

dash/development/_generate_prop_types.py

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -25,58 +25,56 @@
2525

2626
prop_type_file_template = """// AUTOGENERATED FILE - DO NOT EDIT
2727
28-
var PropTypes = window.PropTypes;
29-
28+
var pt = window.PropTypes;
29+
var pk = window['{package_name}'];
3030
3131
{components_prop_types}
3232
"""
3333

34-
component_prop_types_template = (
35-
"window['{package_name}'].{component_name}.propTypes = {prop_types}"
36-
)
34+
component_prop_types_template = "pk.{component_name}.propTypes = {prop_types};"
3735

3836

3937
def generate_type(type_name):
4038
def wrap(*_):
41-
return f"PropTypes.{type_name}"
39+
return f"pt.{type_name}"
4240

4341
return wrap
4442

4543

4644
def generate_union(prop_info):
4745
types = [generate_prop_type(t) for t in prop_info["value"]]
48-
return f"PropTypes.oneOfType([{','.join(types)}])"
46+
return f"pt.oneOfType([{','.join(types)}])"
4947

5048

5149
def generate_shape(prop_info):
5250
props = []
5351
for key, value in prop_info["value"].items():
5452
props.append(f"{key}:{generate_prop_type(value)}")
5553
inner = "{" + ",".join(props) + "}"
56-
return f"PropTypes.shape({inner})"
54+
return f"pt.shape({inner})"
5755

5856

5957
def generate_array_of(prop_info):
6058
inner_type = generate_prop_type(prop_info["value"])
61-
return f"PropTypes.arrayOf({inner_type})"
59+
return f"pt.arrayOf({inner_type})"
6260

6361

6462
def generate_any(*_):
65-
return "PropTypes.any"
63+
return "pt.any"
6664

6765

6866
def generate_enum(prop_info):
6967
values = str([v["value"] for v in prop_info["value"]])
70-
return f"PropTypes.oneOf({values})"
68+
return f"pt.oneOf({values})"
7169

7270

7371
def generate_object_of(prop_info):
74-
return f"PropTypes.objectOf({generate_prop_type(prop_info['value'])})"
72+
return f"pt.objectOf({generate_prop_type(prop_info['value'])})"
7573

7674

7775
def generate_tuple(*_):
7876
# PropTypes don't have a tuple... just generate an array.
79-
return "PropTypes.array"
77+
return "pt.array"
8078

8179

8280
prop_types = {
@@ -135,13 +133,13 @@ def generate_prop_types(
135133

136134
props = []
137135
for prop_name, prop_data in data.get("props", {}).items():
138-
props.append(f" {prop_name}:{generate_prop_type(prop_data['type'])}")
136+
props.append(f"{prop_name}:{generate_prop_type(prop_data['type'])}")
139137

140138
patched.append(
141139
component_prop_types_template.format(
142140
package_name=package_name,
143141
component_name=component_name,
144-
prop_types="{" + ",\n".join(props) + "}",
142+
prop_types="{" + ",\n ".join(props) + "}",
145143
)
146144
)
147145

@@ -151,7 +149,7 @@ def generate_prop_types(
151149
) as f:
152150
f.write(
153151
prop_type_file_template.format(
154-
components_prop_types="\n\n".join(patched)
152+
package_name=package_name, components_prop_types="\n".join(patched)
155153
)
156154
)
157155

0 commit comments

Comments
 (0)