auth-yes/archive/.forum/ast/users_fragments.tsx.ast

771 lines
60 KiB
Plaintext

(program [0, 0] - [204, 0]
(import_statement [0, 0] - [0, 68]
(import_clause [0, 7] - [0, 30]
(named_imports [0, 7] - [0, 30]
(import_specifier [0, 9] - [0, 28]
name: (identifier [0, 9] - [0, 28]))))
source: (string [0, 36] - [0, 67]
(string_fragment [0, 37] - [0, 66])))
(export_statement [2, 0] - [203, 2]
declaration: (lexical_declaration [2, 7] - [203, 2]
(variable_declarator [2, 13] - [203, 1]
name: (identifier [2, 13] - [2, 35])
value: (arrow_function [2, 38] - [203, 1]
parameters: (formal_parameters [2, 38] - [6, 2]
(required_parameter [2, 39] - [6, 1]
pattern: (object_pattern [2, 39] - [4, 1]
(shorthand_property_identifier_pattern [3, 2] - [3, 7]))
type: (type_annotation [4, 1] - [6, 1]
(object_type [4, 3] - [6, 1]
(property_signature [5, 2] - [5, 14]
name: (property_identifier [5, 2] - [5, 7])
type: (type_annotation [5, 7] - [5, 14]
(array_type [5, 9] - [5, 14]
(predefined_type [5, 9] - [5, 12]))))))))
body: (statement_block [6, 6] - [203, 1]
(return_statement [7, 2] - [202, 4]
(parenthesized_expression [7, 9] - [202, 3]
(jsx_element [8, 4] - [201, 26]
open_tag: (jsx_opening_element [8, 4] - [8, 75]
name: (identifier [8, 5] - [8, 24])
attribute: (jsx_attribute [8, 25] - [8, 47]
(property_identifier [8, 25] - [8, 30])
(string [8, 31] - [8, 47]
(string_fragment [8, 32] - [8, 46])))
attribute: (jsx_attribute [8, 48] - [8, 74]
(property_identifier [8, 48] - [8, 59])
(string [8, 60] - [8, 74]
(string_fragment [8, 61] - [8, 73]))))
(jsx_self_closing_element [9, 6] - [12, 8]
name: (identifier [9, 7] - [9, 10])
attribute: (jsx_attribute [10, 8] - [10, 26]
(property_identifier [10, 8] - [10, 10])
(string [10, 11] - [10, 26]
(string_fragment [10, 12] - [10, 25])))
attribute: (jsx_attribute [11, 8] - [11, 126]
(property_identifier [11, 8] - [11, 13])
(string [11, 14] - [11, 126]
(string_fragment [11, 15] - [11, 125]))))
(jsx_element [14, 6] - [46, 12]
open_tag: (jsx_opening_element [14, 6] - [14, 142]
name: (identifier [14, 7] - [14, 10])
attribute: (jsx_attribute [14, 11] - [14, 141]
(property_identifier [14, 11] - [14, 16])
(string [14, 17] - [14, 141]
(string_fragment [14, 18] - [14, 140]))))
(jsx_element [15, 8] - [23, 14]
open_tag: (jsx_opening_element [15, 8] - [15, 13]
name: (identifier [15, 9] - [15, 12]))
(jsx_element [16, 10] - [18, 15]
open_tag: (jsx_opening_element [16, 10] - [16, 110]
name: (identifier [16, 11] - [16, 13])
attribute: (jsx_attribute [16, 14] - [16, 109]
(property_identifier [16, 14] - [16, 19])
(string [16, 20] - [16, 109]
(string_fragment [16, 21] - [16, 108]))))
(jsx_text [16, 110] - [18, 10])
close_tag: (jsx_closing_element [18, 10] - [18, 15]
name: (identifier [18, 12] - [18, 14])))
(jsx_element [19, 10] - [22, 14]
open_tag: (jsx_opening_element [19, 10] - [19, 82]
name: (identifier [19, 11] - [19, 12])
attribute: (jsx_attribute [19, 13] - [19, 81]
(property_identifier [19, 13] - [19, 18])
(string [19, 19] - [19, 81]
(string_fragment [19, 20] - [19, 80]))))
(jsx_text [19, 82] - [22, 10])
close_tag: (jsx_closing_element [22, 10] - [22, 14]
name: (identifier [22, 12] - [22, 13])))
close_tag: (jsx_closing_element [23, 8] - [23, 14]
name: (identifier [23, 10] - [23, 13])))
(jsx_element [25, 8] - [45, 14]
open_tag: (jsx_opening_element [25, 8] - [25, 90]
name: (identifier [25, 9] - [25, 12])
attribute: (jsx_attribute [25, 13] - [25, 89]
(property_identifier [25, 13] - [25, 18])
(string [25, 19] - [25, 89]
(string_fragment [25, 20] - [25, 88]))))
(jsx_self_closing_element [26, 10] - [32, 12]
name: (identifier [26, 11] - [26, 16])
attribute: (jsx_attribute [27, 12] - [27, 23]
(property_identifier [27, 12] - [27, 16])
(string [27, 17] - [27, 23]
(string_fragment [27, 18] - [27, 22])))
attribute: (jsx_attribute [28, 12] - [28, 32]
(property_identifier [28, 12] - [28, 14])
(string [28, 15] - [28, 32]
(string_fragment [28, 16] - [28, 31])))
attribute: (jsx_attribute [29, 12] - [29, 52]
(property_identifier [29, 12] - [29, 23])
(string [29, 24] - [29, 52]
(string_fragment [29, 25] - [29, 51])))
attribute: (jsx_attribute [30, 12] - [30, 39]
(property_identifier [30, 12] - [30, 19])
(string [30, 20] - [30, 39]
(string_fragment [30, 21] - [30, 38])))
attribute: (jsx_attribute [31, 12] - [31, 90]
(property_identifier [31, 12] - [31, 17])
(string [31, 18] - [31, 90]
(string_fragment [31, 19] - [31, 89]))))
(jsx_element [33, 10] - [44, 16]
open_tag: (jsx_opening_element [33, 10] - [41, 11]
name: (identifier [33, 11] - [33, 14])
attribute: (jsx_attribute [34, 12] - [34, 22]
(property_identifier [34, 12] - [34, 17])
(string [34, 18] - [34, 22]
(string_fragment [34, 19] - [34, 21])))
attribute: (jsx_attribute [35, 12] - [35, 23]
(property_identifier [35, 12] - [35, 18])
(string [35, 19] - [35, 23]
(string_fragment [35, 20] - [35, 22])))
attribute: (jsx_attribute [36, 12] - [36, 31]
(property_identifier [36, 12] - [36, 19])
(string [36, 20] - [36, 31]
(string_fragment [36, 21] - [36, 30])))
attribute: (jsx_attribute [37, 12] - [37, 23]
(property_identifier [37, 12] - [37, 16])
(string [37, 17] - [37, 23]
(string_fragment [37, 18] - [37, 22])))
attribute: (jsx_attribute [38, 12] - [38, 33]
(property_identifier [38, 12] - [38, 18])
(string [38, 19] - [38, 33]
(string_fragment [38, 20] - [38, 32])))
attribute: (jsx_attribute [39, 12] - [39, 28]
(property_identifier [39, 12] - [39, 24])
(string [39, 25] - [39, 28]
(string_fragment [39, 26] - [39, 27])))
attribute: (jsx_attribute [40, 12] - [40, 141]
(property_identifier [40, 12] - [40, 17])
(string [40, 18] - [40, 141]
(string_fragment [40, 19] - [40, 140]))))
(jsx_element [42, 12] - [42, 51]
open_tag: (jsx_opening_element [42, 12] - [42, 42]
name: (identifier [42, 13] - [42, 19])
attribute: (jsx_attribute [42, 20] - [42, 27]
(property_identifier [42, 20] - [42, 22])
(string [42, 23] - [42, 27]
(string_fragment [42, 24] - [42, 26])))
attribute: (jsx_attribute [42, 28] - [42, 35]
(property_identifier [42, 28] - [42, 30])
(string [42, 31] - [42, 35]
(string_fragment [42, 32] - [42, 34])))
attribute: (jsx_attribute [42, 36] - [42, 41]
(property_identifier [42, 36] - [42, 37])
(string [42, 38] - [42, 41]
(string_fragment [42, 39] - [42, 40]))))
close_tag: (jsx_closing_element [42, 42] - [42, 51]
name: (identifier [42, 44] - [42, 50])))
(jsx_element [43, 12] - [43, 63]
open_tag: (jsx_opening_element [43, 12] - [43, 56]
name: (identifier [43, 13] - [43, 17])
attribute: (jsx_attribute [43, 18] - [43, 25]
(property_identifier [43, 18] - [43, 20])
(string [43, 21] - [43, 25]
(string_fragment [43, 22] - [43, 24])))
attribute: (jsx_attribute [43, 26] - [43, 33]
(property_identifier [43, 26] - [43, 28])
(string [43, 29] - [43, 33]
(string_fragment [43, 30] - [43, 32])))
attribute: (jsx_attribute [43, 34] - [43, 44]
(property_identifier [43, 34] - [43, 36])
(string [43, 37] - [43, 44]
(string_fragment [43, 38] - [43, 43])))
attribute: (jsx_attribute [43, 45] - [43, 55]
(property_identifier [43, 45] - [43, 47])
(string [43, 48] - [43, 55]
(string_fragment [43, 49] - [43, 54]))))
close_tag: (jsx_closing_element [43, 56] - [43, 63]
name: (identifier [43, 58] - [43, 62])))
close_tag: (jsx_closing_element [44, 10] - [44, 16]
name: (identifier [44, 12] - [44, 15])))
close_tag: (jsx_closing_element [45, 8] - [45, 14]
name: (identifier [45, 10] - [45, 13])))
close_tag: (jsx_closing_element [46, 6] - [46, 12]
name: (identifier [46, 8] - [46, 11])))
(jsx_expression [48, 6] - [48, 38]
(comment [48, 7] - [48, 37]))
(jsx_element [49, 6] - [116, 12]
open_tag: (jsx_opening_element [49, 6] - [49, 60]
name: (identifier [49, 7] - [49, 10])
attribute: (jsx_attribute [49, 11] - [49, 36]
(property_identifier [49, 11] - [49, 16])
(string [49, 17] - [49, 36]
(string_fragment [49, 18] - [49, 35])))
attribute: (jsx_attribute [49, 37] - [49, 59]
(property_identifier [49, 37] - [49, 42])
(string [49, 43] - [49, 59]
(string_fragment [49, 44] - [49, 58]))))
(jsx_element [50, 8] - [115, 14]
open_tag: (jsx_opening_element [50, 8] - [50, 37]
name: (identifier [50, 9] - [50, 12])
attribute: (jsx_attribute [50, 13] - [50, 36]
(property_identifier [50, 13] - [50, 18])
(string [50, 19] - [50, 36]
(string_fragment [50, 20] - [50, 35]))))
(jsx_element [51, 10] - [114, 18]
open_tag: (jsx_opening_element [51, 10] - [51, 33]
name: (identifier [51, 11] - [51, 16])
attribute: (jsx_attribute [51, 17] - [51, 32]
(property_identifier [51, 17] - [51, 19])
(string [51, 20] - [51, 32]
(string_fragment [51, 21] - [51, 31]))))
(jsx_element [52, 12] - [59, 20]
open_tag: (jsx_opening_element [52, 12] - [52, 19]
name: (identifier [52, 13] - [52, 18]))
(jsx_element [53, 14] - [58, 19]
open_tag: (jsx_opening_element [53, 14] - [53, 18]
name: (identifier [53, 15] - [53, 17]))
(jsx_element [54, 16] - [54, 33]
open_tag: (jsx_opening_element [54, 16] - [54, 20]
name: (identifier [54, 17] - [54, 19]))
(jsx_text [54, 20] - [54, 28])
close_tag: (jsx_closing_element [54, 28] - [54, 33]
name: (identifier [54, 30] - [54, 32])))
(jsx_element [55, 16] - [55, 37]
open_tag: (jsx_opening_element [55, 16] - [55, 20]
name: (identifier [55, 17] - [55, 19]))
(jsx_text [55, 20] - [55, 32])
close_tag: (jsx_closing_element [55, 32] - [55, 37]
name: (identifier [55, 34] - [55, 36])))
(jsx_element [56, 16] - [56, 39]
open_tag: (jsx_opening_element [56, 16] - [56, 20]
name: (identifier [56, 17] - [56, 19]))
(jsx_text [56, 20] - [56, 34])
close_tag: (jsx_closing_element [56, 34] - [56, 39]
name: (identifier [56, 36] - [56, 38])))
(jsx_element [57, 16] - [57, 32]
open_tag: (jsx_opening_element [57, 16] - [57, 20]
name: (identifier [57, 17] - [57, 19]))
(jsx_text [57, 20] - [57, 27])
close_tag: (jsx_closing_element [57, 27] - [57, 32]
name: (identifier [57, 29] - [57, 31])))
close_tag: (jsx_closing_element [58, 14] - [58, 19]
name: (identifier [58, 16] - [58, 18])))
close_tag: (jsx_closing_element [59, 12] - [59, 20]
name: (identifier [59, 14] - [59, 19])))
(jsx_element [60, 12] - [113, 20]
open_tag: (jsx_opening_element [60, 12] - [60, 19]
name: (identifier [60, 13] - [60, 18]))
(jsx_expression [61, 14] - [112, 17]
(call_expression [61, 15] - [112, 16]
function: (member_expression [61, 15] - [61, 24]
object: (identifier [61, 15] - [61, 20])
property: (property_identifier [61, 21] - [61, 24]))
arguments: (arguments [61, 24] - [112, 16]
(arrow_function [61, 25] - [112, 15]
parameters: (formal_parameters [61, 25] - [61, 31]
(required_parameter [61, 26] - [61, 30]
pattern: (identifier [61, 26] - [61, 30])))
body: (statement_block [61, 35] - [112, 15]
(lexical_declaration [62, 16] - [66, 36]
(variable_declarator [62, 22] - [66, 35]
name: (identifier [62, 22] - [62, 33])
value: (ternary_expression [62, 36] - [66, 35]
condition: (binary_expression [62, 36] - [62, 68]
left: (member_expression [62, 36] - [62, 55]
object: (identifier [62, 36] - [62, 40])
property: (property_identifier [62, 41] - [62, 55]))
right: (string [62, 60] - [62, 68]
(string_fragment [62, 61] - [62, 67])))
consequence: (string [63, 20] - [63, 35]
(string_fragment [63, 21] - [63, 34]))
alternative: (ternary_expression [64, 20] - [66, 35]
condition: (binary_expression [64, 20] - [64, 55]
left: (member_expression [64, 20] - [64, 39]
object: (identifier [64, 20] - [64, 24])
property: (property_identifier [64, 25] - [64, 39]))
right: (string [64, 44] - [64, 55]
(string_fragment [64, 45] - [64, 54])))
consequence: (string [65, 20] - [65, 34]
(string_fragment [65, 21] - [65, 33]))
alternative: (string [66, 20] - [66, 35]
(string_fragment [66, 21] - [66, 34]))))))
(return_statement [68, 16] - [111, 18]
(parenthesized_expression [68, 23] - [111, 17]
(jsx_element [69, 18] - [110, 23]
open_tag: (jsx_opening_element [69, 18] - [75, 19]
name: (identifier [69, 19] - [69, 21])
attribute: (jsx_attribute [70, 20] - [70, 33]
(property_identifier [70, 20] - [70, 23])
(jsx_expression [70, 24] - [70, 33]
(member_expression [70, 25] - [70, 32]
object: (identifier [70, 25] - [70, 29])
property: (property_identifier [70, 30] - [70, 32]))))
attribute: (jsx_attribute [71, 20] - [71, 36]
(property_identifier [71, 20] - [71, 25])
(string [71, 26] - [71, 36]
(string_fragment [71, 27] - [71, 35])))
attribute: (jsx_attribute [72, 20] - [74, 60]
(property_identifier [72, 20] - [72, 31])
(jsx_expression [72, 32] - [74, 60]
(call_expression [72, 33] - [74, 59]
function: (member_expression [72, 33] - [74, 57]
object: (template_string [72, 33] - [74, 45]
(template_substitution [72, 34] - [72, 50]
(member_expression [72, 36] - [72, 49]
object: (identifier [72, 36] - [72, 40])
property: (property_identifier [72, 41] - [72, 49])))
(string_fragment [72, 50] - [72, 51])
(template_substitution [72, 51] - [74, 21]
(binary_expression [73, 22] - [73, 45]
left: (member_expression [73, 22] - [73, 39]
object: (identifier [73, 22] - [73, 26])
property: (property_identifier [73, 27] - [73, 39]))
right: (string [73, 43] - [73, 45])))
(string_fragment [74, 21] - [74, 22])
(template_substitution [74, 22] - [74, 44]
(member_expression [74, 24] - [74, 43]
object: (identifier [74, 24] - [74, 28])
property: (property_identifier [74, 29] - [74, 43]))))
property: (property_identifier [74, 46] - [74, 57]))
arguments: (arguments [74, 57] - [74, 59])))))
(jsx_element [76, 20] - [80, 25]
open_tag: (jsx_opening_element [76, 20] - [76, 24]
name: (identifier [76, 21] - [76, 23]))
(jsx_element [77, 22] - [79, 31]
open_tag: (jsx_opening_element [77, 22] - [77, 90]
name: (identifier [77, 23] - [77, 29])
attribute: (jsx_attribute [77, 30] - [77, 89]
(property_identifier [77, 30] - [77, 35])
(string [77, 36] - [77, 89]
(string_fragment [77, 37] - [77, 88]))))
(jsx_text [77, 90] - [78, 25])
(jsx_expression [78, 25] - [78, 40]
(member_expression [78, 26] - [78, 39]
object: (identifier [78, 26] - [78, 30])
property: (property_identifier [78, 31] - [78, 39])))
close_tag: (jsx_closing_element [79, 22] - [79, 31]
name: (identifier [79, 24] - [79, 30])))
close_tag: (jsx_closing_element [80, 20] - [80, 25]
name: (identifier [80, 22] - [80, 24])))
(jsx_element [81, 20] - [81, 55]
open_tag: (jsx_opening_element [81, 20] - [81, 24]
name: (identifier [81, 21] - [81, 23]))
(jsx_expression [81, 24] - [81, 50]
(binary_expression [81, 25] - [81, 49]
left: (member_expression [81, 25] - [81, 42]
object: (identifier [81, 25] - [81, 29])
property: (property_identifier [81, 30] - [81, 42]))
right: (string [81, 46] - [81, 49]
(string_fragment [81, 47] - [81, 48]))))
close_tag: (jsx_closing_element [81, 50] - [81, 55]
name: (identifier [81, 52] - [81, 54])))
(jsx_element [82, 20] - [86, 25]
open_tag: (jsx_opening_element [82, 20] - [82, 24]
name: (identifier [82, 21] - [82, 23]))
(jsx_element [83, 22] - [85, 29]
open_tag: (jsx_opening_element [83, 22] - [83, 59]
name: (identifier [83, 23] - [83, 27])
attribute: (jsx_attribute [83, 28] - [83, 58]
(property_identifier [83, 28] - [83, 33])
(jsx_expression [83, 34] - [83, 58]
(template_string [83, 35] - [83, 57]
(string_fragment [83, 36] - [83, 42])
(template_substitution [83, 42] - [83, 56]
(identifier [83, 44] - [83, 55]))))))
(jsx_expression [84, 24] - [84, 45]
(member_expression [84, 25] - [84, 44]
object: (identifier [84, 25] - [84, 29])
property: (property_identifier [84, 30] - [84, 44])))
close_tag: (jsx_closing_element [85, 22] - [85, 29]
name: (identifier [85, 24] - [85, 28])))
close_tag: (jsx_closing_element [86, 20] - [86, 25]
name: (identifier [86, 22] - [86, 24])))
(jsx_element [87, 20] - [109, 25]
open_tag: (jsx_opening_element [87, 20] - [87, 24]
name: (identifier [87, 21] - [87, 23]))
(jsx_element [88, 22] - [108, 28]
open_tag: (jsx_opening_element [88, 22] - [88, 84]
name: (identifier [88, 23] - [88, 26])
attribute: (jsx_attribute [88, 27] - [88, 83]
(property_identifier [88, 27] - [88, 32])
(string [88, 33] - [88, 83]
(string_fragment [88, 34] - [88, 82]))))
(jsx_element [89, 24] - [107, 28]
open_tag: (jsx_opening_element [89, 24] - [93, 25]
name: (identifier [89, 25] - [89, 26])
attribute: (jsx_attribute [90, 26] - [90, 58]
(property_identifier [90, 26] - [90, 30])
(jsx_expression [90, 31] - [90, 58]
(template_string [90, 32] - [90, 57]
(string_fragment [90, 33] - [90, 46])
(template_substitution [90, 46] - [90, 56]
(member_expression [90, 48] - [90, 55]
object: (identifier [90, 48] - [90, 52])
property: (property_identifier [90, 53] - [90, 55]))))))
attribute: (jsx_attribute [91, 26] - [91, 45]
(property_identifier [91, 26] - [91, 31])
(string [91, 32] - [91, 45]
(string_fragment [91, 33] - [91, 44])))
attribute: (jsx_attribute [92, 26] - [92, 208]
(property_identifier [92, 26] - [92, 31])
(string [92, 32] - [92, 208]
(string_fragment [92, 33] - [92, 207]))))
(jsx_element [94, 26] - [105, 32]
open_tag: (jsx_opening_element [94, 26] - [101, 27]
name: (identifier [94, 27] - [94, 30])
attribute: (jsx_attribute [95, 28] - [95, 38]
(property_identifier [95, 28] - [95, 33])
(string [95, 34] - [95, 38]
(string_fragment [95, 35] - [95, 37])))
attribute: (jsx_attribute [96, 28] - [96, 39]
(property_identifier [96, 28] - [96, 34])
(string [96, 35] - [96, 39]
(string_fragment [96, 36] - [96, 38])))
attribute: (jsx_attribute [97, 28] - [97, 47]
(property_identifier [97, 28] - [97, 35])
(string [97, 36] - [97, 47]
(string_fragment [97, 37] - [97, 46])))
attribute: (jsx_attribute [98, 28] - [98, 39]
(property_identifier [98, 28] - [98, 32])
(string [98, 33] - [98, 39]
(string_fragment [98, 34] - [98, 38])))
attribute: (jsx_attribute [99, 28] - [99, 49]
(property_identifier [99, 28] - [99, 34])
(string [99, 35] - [99, 49]
(string_fragment [99, 36] - [99, 48])))
attribute: (jsx_attribute [100, 28] - [100, 44]
(property_identifier [100, 28] - [100, 40])
(string [100, 41] - [100, 44]
(string_fragment [100, 42] - [100, 43]))))
(jsx_element [102, 28] - [102, 54]
open_tag: (jsx_opening_element [102, 28] - [102, 47]
name: (identifier [102, 29] - [102, 33])
attribute: (jsx_attribute [102, 34] - [102, 46]
(property_identifier [102, 34] - [102, 35])
(string [102, 36] - [102, 46]
(string_fragment [102, 37] - [102, 45]))))
close_tag: (jsx_closing_element [102, 47] - [102, 54]
name: (identifier [102, 49] - [102, 53])))
(jsx_element [103, 28] - [104, 35]
open_tag: (jsx_opening_element [103, 28] - [103, 94]
name: (identifier [103, 29] - [103, 33])
attribute: (jsx_attribute [103, 34] - [103, 93]
(property_identifier [103, 34] - [103, 35])
(string [103, 36] - [103, 93]
(string_fragment [103, 37] - [103, 92]))))
close_tag: (jsx_closing_element [104, 28] - [104, 35]
name: (identifier [104, 30] - [104, 34])))
close_tag: (jsx_closing_element [105, 26] - [105, 32]
name: (identifier [105, 28] - [105, 31])))
(jsx_element [106, 26] - [106, 45]
open_tag: (jsx_opening_element [106, 26] - [106, 32]
name: (identifier [106, 27] - [106, 31]))
(jsx_text [106, 32] - [106, 38])
close_tag: (jsx_closing_element [106, 38] - [106, 45]
name: (identifier [106, 40] - [106, 44])))
close_tag: (jsx_closing_element [107, 24] - [107, 28]
name: (identifier [107, 26] - [107, 27])))
close_tag: (jsx_closing_element [108, 22] - [108, 28]
name: (identifier [108, 24] - [108, 27])))
close_tag: (jsx_closing_element [109, 20] - [109, 25]
name: (identifier [109, 22] - [109, 24])))
close_tag: (jsx_closing_element [110, 18] - [110, 23]
name: (identifier [110, 20] - [110, 22]))))))))))
close_tag: (jsx_closing_element [113, 12] - [113, 20]
name: (identifier [113, 14] - [113, 19])))
close_tag: (jsx_closing_element [114, 10] - [114, 18]
name: (identifier [114, 12] - [114, 17])))
close_tag: (jsx_closing_element [115, 8] - [115, 14]
name: (identifier [115, 10] - [115, 13])))
close_tag: (jsx_closing_element [116, 6] - [116, 12]
name: (identifier [116, 8] - [116, 11])))
(jsx_expression [118, 6] - [118, 40]
(comment [118, 7] - [118, 39]))
(jsx_element [119, 6] - [185, 12]
open_tag: (jsx_opening_element [119, 6] - [123, 7]
name: (identifier [119, 7] - [119, 10])
attribute: (jsx_attribute [120, 8] - [120, 28]
(property_identifier [120, 8] - [120, 10])
(string [120, 11] - [120, 28]
(string_fragment [120, 12] - [120, 27])))
attribute: (jsx_attribute [121, 8] - [121, 27]
(property_identifier [121, 8] - [121, 13])
(string [121, 14] - [121, 27]
(string_fragment [121, 15] - [121, 26])))
attribute: (jsx_attribute [122, 8] - [122, 65]
(property_identifier [122, 8] - [122, 13])
(string [122, 14] - [122, 65]
(string_fragment [122, 15] - [122, 64]))))
(jsx_expression [124, 8] - [184, 11]
(call_expression [124, 9] - [184, 10]
function: (member_expression [124, 9] - [124, 18]
object: (identifier [124, 9] - [124, 14])
property: (property_identifier [124, 15] - [124, 18]))
arguments: (arguments [124, 18] - [184, 10]
(arrow_function [124, 19] - [184, 9]
parameters: (formal_parameters [124, 19] - [124, 25]
(required_parameter [124, 20] - [124, 24]
pattern: (identifier [124, 20] - [124, 24])))
body: (statement_block [124, 29] - [184, 9]
(lexical_declaration [125, 10] - [129, 30]
(variable_declarator [125, 16] - [129, 29]
name: (identifier [125, 16] - [125, 27])
value: (ternary_expression [125, 30] - [129, 29]
condition: (binary_expression [125, 30] - [125, 62]
left: (member_expression [125, 30] - [125, 49]
object: (identifier [125, 30] - [125, 34])
property: (property_identifier [125, 35] - [125, 49]))
right: (string [125, 54] - [125, 62]
(string_fragment [125, 55] - [125, 61])))
consequence: (string [126, 14] - [126, 29]
(string_fragment [126, 15] - [126, 28]))
alternative: (ternary_expression [127, 14] - [129, 29]
condition: (binary_expression [127, 14] - [127, 49]
left: (member_expression [127, 14] - [127, 33]
object: (identifier [127, 14] - [127, 18])
property: (property_identifier [127, 19] - [127, 33]))
right: (string [127, 38] - [127, 49]
(string_fragment [127, 39] - [127, 48])))
consequence: (string [128, 14] - [128, 28]
(string_fragment [128, 15] - [128, 27]))
alternative: (string [129, 14] - [129, 29]
(string_fragment [129, 15] - [129, 28]))))))
(return_statement [131, 10] - [183, 12]
(parenthesized_expression [131, 17] - [183, 11]
(jsx_element [132, 12] - [182, 18]
open_tag: (jsx_opening_element [132, 12] - [139, 13]
name: (identifier [132, 13] - [132, 16])
attribute: (jsx_attribute [133, 14] - [133, 36]
(property_identifier [133, 14] - [133, 19])
(string [133, 20] - [133, 36]
(string_fragment [133, 21] - [133, 35])))
attribute: (jsx_attribute [134, 14] - [134, 27]
(property_identifier [134, 14] - [134, 17])
(jsx_expression [134, 18] - [134, 27]
(member_expression [134, 19] - [134, 26]
object: (identifier [134, 19] - [134, 23])
property: (property_identifier [134, 24] - [134, 26]))))
attribute: (jsx_attribute [135, 14] - [137, 54]
(property_identifier [135, 14] - [135, 25])
(jsx_expression [135, 26] - [137, 54]
(call_expression [135, 27] - [137, 53]
function: (member_expression [135, 27] - [137, 51]
object: (template_string [135, 27] - [137, 39]
(template_substitution [135, 28] - [135, 44]
(member_expression [135, 30] - [135, 43]
object: (identifier [135, 30] - [135, 34])
property: (property_identifier [135, 35] - [135, 43])))
(string_fragment [135, 44] - [135, 45])
(template_substitution [135, 45] - [137, 15]
(binary_expression [136, 16] - [136, 39]
left: (member_expression [136, 16] - [136, 33]
object: (identifier [136, 16] - [136, 20])
property: (property_identifier [136, 21] - [136, 33]))
right: (string [136, 37] - [136, 39])))
(string_fragment [137, 15] - [137, 16])
(template_substitution [137, 16] - [137, 38]
(member_expression [137, 18] - [137, 37]
object: (identifier [137, 18] - [137, 22])
property: (property_identifier [137, 23] - [137, 37]))))
property: (property_identifier [137, 40] - [137, 51]))
arguments: (arguments [137, 51] - [137, 53]))))
attribute: (jsx_attribute [138, 14] - [138, 39]
(property_identifier [138, 14] - [138, 19])
(string [138, 20] - [138, 39]
(string_fragment [138, 21] - [138, 38]))))
(jsx_element [140, 14] - [159, 20]
open_tag: (jsx_opening_element [140, 14] - [140, 123]
name: (identifier [140, 15] - [140, 18])
attribute: (jsx_attribute [140, 19] - [140, 122]
(property_identifier [140, 19] - [140, 24])
(string [140, 25] - [140, 122]
(string_fragment [140, 26] - [140, 121]))))
(jsx_element [141, 16] - [154, 22]
open_tag: (jsx_opening_element [141, 16] - [141, 79]
name: (identifier [141, 17] - [141, 20])
attribute: (jsx_attribute [141, 21] - [141, 78]
(property_identifier [141, 21] - [141, 26])
(string [141, 27] - [141, 78]
(string_fragment [141, 28] - [141, 77]))))
(jsx_element [142, 18] - [145, 24]
open_tag: (jsx_opening_element [142, 18] - [142, 246]
name: (identifier [142, 19] - [142, 22])
attribute: (jsx_attribute [142, 23] - [142, 245]
(property_identifier [142, 23] - [142, 28])
(string [142, 29] - [142, 245]
(string_fragment [142, 30] - [142, 244]))))
(jsx_expression [143, 20] - [144, 37]
(call_expression [143, 21] - [144, 36]
function: (member_expression [143, 21] - [144, 34]
object: (call_expression [143, 21] - [143, 67]
function: (member_expression [143, 21] - [143, 64]
object: (parenthesized_expression [143, 21] - [143, 57]
(binary_expression [143, 22] - [143, 56]
left: (member_expression [143, 22] - [143, 39]
object: (identifier [143, 22] - [143, 26])
property: (property_identifier [143, 27] - [143, 39]))
right: (member_expression [143, 43] - [143, 56]
object: (identifier [143, 43] - [143, 47])
property: (property_identifier [143, 48] - [143, 56]))))
property: (property_identifier [143, 58] - [143, 64]))
arguments: (arguments [143, 64] - [143, 67]
(number [143, 65] - [143, 66])))
property: (property_identifier [144, 23] - [144, 34]))
arguments: (arguments [144, 34] - [144, 36])))
close_tag: (jsx_closing_element [145, 18] - [145, 24]
name: (identifier [145, 20] - [145, 23])))
(jsx_element [146, 18] - [153, 24]
open_tag: (jsx_opening_element [146, 18] - [146, 23]
name: (identifier [146, 19] - [146, 22]))
(jsx_element [147, 20] - [149, 25]
open_tag: (jsx_opening_element [147, 20] - [147, 91]
name: (identifier [147, 21] - [147, 23])
attribute: (jsx_attribute [147, 24] - [147, 90]
(property_identifier [147, 24] - [147, 29])
(string [147, 30] - [147, 90]
(string_fragment [147, 31] - [147, 89]))))
(jsx_expression [148, 22] - [148, 58]
(binary_expression [148, 23] - [148, 57]
left: (member_expression [148, 23] - [148, 40]
object: (identifier [148, 23] - [148, 27])
property: (property_identifier [148, 28] - [148, 40]))
right: (member_expression [148, 44] - [148, 57]
object: (identifier [148, 44] - [148, 48])
property: (property_identifier [148, 49] - [148, 57]))))
close_tag: (jsx_closing_element [149, 20] - [149, 25]
name: (identifier [149, 22] - [149, 24])))
(jsx_element [150, 20] - [152, 27]
open_tag: (jsx_opening_element [150, 20] - [150, 103]
name: (identifier [150, 21] - [150, 25])
attribute: (jsx_attribute [150, 26] - [150, 102]
(property_identifier [150, 26] - [150, 31])
(string [150, 32] - [150, 102]
(string_fragment [150, 33] - [150, 101]))))
(jsx_text [150, 103] - [151, 23])
(jsx_expression [151, 23] - [151, 38]
(member_expression [151, 24] - [151, 37]
object: (identifier [151, 24] - [151, 28])
property: (property_identifier [151, 29] - [151, 37])))
close_tag: (jsx_closing_element [152, 20] - [152, 27]
name: (identifier [152, 22] - [152, 26])))
close_tag: (jsx_closing_element [153, 18] - [153, 24]
name: (identifier [153, 20] - [153, 23])))
close_tag: (jsx_closing_element [154, 16] - [154, 22]
name: (identifier [154, 18] - [154, 21])))
(jsx_element [156, 16] - [158, 23]
open_tag: (jsx_opening_element [156, 16] - [156, 53]
name: (identifier [156, 17] - [156, 21])
attribute: (jsx_attribute [156, 22] - [156, 52]
(property_identifier [156, 22] - [156, 27])
(jsx_expression [156, 28] - [156, 52]
(template_string [156, 29] - [156, 51]
(string_fragment [156, 30] - [156, 36])
(template_substitution [156, 36] - [156, 50]
(identifier [156, 38] - [156, 49]))))))
(jsx_expression [157, 18] - [157, 39]
(member_expression [157, 19] - [157, 38]
object: (identifier [157, 19] - [157, 23])
property: (property_identifier [157, 24] - [157, 38])))
close_tag: (jsx_closing_element [158, 16] - [158, 23]
name: (identifier [158, 18] - [158, 22])))
close_tag: (jsx_closing_element [159, 14] - [159, 20]
name: (identifier [159, 16] - [159, 19])))
(jsx_element [161, 14] - [181, 20]
open_tag: (jsx_opening_element [161, 14] - [161, 73]
name: (identifier [161, 15] - [161, 18])
attribute: (jsx_attribute [161, 19] - [161, 72]
(property_identifier [161, 19] - [161, 24])
(string [161, 25] - [161, 72]
(string_fragment [161, 26] - [161, 71]))))
(jsx_element [162, 16] - [180, 20]
open_tag: (jsx_opening_element [162, 16] - [166, 17]
name: (identifier [162, 17] - [162, 18])
attribute: (jsx_attribute [163, 18] - [163, 50]
(property_identifier [163, 18] - [163, 22])
(jsx_expression [163, 23] - [163, 50]
(template_string [163, 24] - [163, 49]
(string_fragment [163, 25] - [163, 38])
(template_substitution [163, 38] - [163, 48]
(member_expression [163, 40] - [163, 47]
object: (identifier [163, 40] - [163, 44])
property: (property_identifier [163, 45] - [163, 47]))))))
attribute: (jsx_attribute [164, 18] - [164, 37]
(property_identifier [164, 18] - [164, 23])
(string [164, 24] - [164, 37]
(string_fragment [164, 25] - [164, 36])))
attribute: (jsx_attribute [165, 18] - [165, 152]
(property_identifier [165, 18] - [165, 23])
(string [165, 24] - [165, 152]
(string_fragment [165, 25] - [165, 151]))))
(jsx_element [167, 18] - [178, 24]
open_tag: (jsx_opening_element [167, 18] - [174, 19]
name: (identifier [167, 19] - [167, 22])
attribute: (jsx_attribute [168, 20] - [168, 30]
(property_identifier [168, 20] - [168, 25])
(string [168, 26] - [168, 30]
(string_fragment [168, 27] - [168, 29])))
attribute: (jsx_attribute [169, 20] - [169, 31]
(property_identifier [169, 20] - [169, 26])
(string [169, 27] - [169, 31]
(string_fragment [169, 28] - [169, 30])))
attribute: (jsx_attribute [170, 20] - [170, 39]
(property_identifier [170, 20] - [170, 27])
(string [170, 28] - [170, 39]
(string_fragment [170, 29] - [170, 38])))
attribute: (jsx_attribute [171, 20] - [171, 31]
(property_identifier [171, 20] - [171, 24])
(string [171, 25] - [171, 31]
(string_fragment [171, 26] - [171, 30])))
attribute: (jsx_attribute [172, 20] - [172, 41]
(property_identifier [172, 20] - [172, 26])
(string [172, 27] - [172, 41]
(string_fragment [172, 28] - [172, 40])))
attribute: (jsx_attribute [173, 20] - [173, 36]
(property_identifier [173, 20] - [173, 32])
(string [173, 33] - [173, 36]
(string_fragment [173, 34] - [173, 35]))))
(jsx_element [175, 20] - [175, 46]
open_tag: (jsx_opening_element [175, 20] - [175, 39]
name: (identifier [175, 21] - [175, 25])
attribute: (jsx_attribute [175, 26] - [175, 38]
(property_identifier [175, 26] - [175, 27])
(string [175, 28] - [175, 38]
(string_fragment [175, 29] - [175, 37]))))
close_tag: (jsx_closing_element [175, 39] - [175, 46]
name: (identifier [175, 41] - [175, 45])))
(jsx_element [176, 20] - [177, 27]
open_tag: (jsx_opening_element [176, 20] - [176, 86]
name: (identifier [176, 21] - [176, 25])
attribute: (jsx_attribute [176, 26] - [176, 85]
(property_identifier [176, 26] - [176, 27])
(string [176, 28] - [176, 85]
(string_fragment [176, 29] - [176, 84]))))
close_tag: (jsx_closing_element [177, 20] - [177, 27]
name: (identifier [177, 22] - [177, 26])))
close_tag: (jsx_closing_element [178, 18] - [178, 24]
name: (identifier [178, 20] - [178, 23])))
(jsx_element [179, 18] - [179, 42]
open_tag: (jsx_opening_element [179, 18] - [179, 24]
name: (identifier [179, 19] - [179, 23]))
(jsx_text [179, 24] - [179, 35])
close_tag: (jsx_closing_element [179, 35] - [179, 42]
name: (identifier [179, 37] - [179, 41])))
close_tag: (jsx_closing_element [180, 16] - [180, 20]
name: (identifier [180, 18] - [180, 19])))
close_tag: (jsx_closing_element [181, 14] - [181, 20]
name: (identifier [181, 16] - [181, 19])))
close_tag: (jsx_closing_element [182, 12] - [182, 18]
name: (identifier [182, 14] - [182, 17]))))))))))
close_tag: (jsx_closing_element [185, 6] - [185, 12]
name: (identifier [185, 8] - [185, 11])))
(jsx_element [187, 6] - [198, 14]
open_tag: (jsx_opening_element [187, 6] - [187, 13]
name: (identifier [187, 7] - [187, 12]))
(jsx_expression [188, 8] - [197, 10]
(template_string [188, 9] - [197, 9]
(string_fragment [188, 10] - [197, 8])))
close_tag: (jsx_closing_element [198, 6] - [198, 14]
name: (identifier [198, 8] - [198, 13])))
(jsx_element [200, 6] - [200, 54]
open_tag: (jsx_opening_element [200, 6] - [200, 45]
name: (identifier [200, 7] - [200, 13])
attribute: (jsx_attribute [200, 14] - [200, 44]
(property_identifier [200, 14] - [200, 17])
(string [200, 18] - [200, 44]
(string_fragment [200, 19] - [200, 43]))))
close_tag: (jsx_closing_element [200, 45] - [200, 54]
name: (identifier [200, 47] - [200, 53])))
close_tag: (jsx_closing_element [201, 4] - [201, 26]
name: (identifier [201, 6] - [201, 25])))))))))))