@asciidoctor/core 2.2.5 → 2.2.7

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.
@@ -20909,6 +20909,30 @@ Opal.modules["asciidoctor/js/opal_ext/string"] = function(Opal) {
20909
20909
  })($nesting[0], null, $nesting)
20910
20910
  };
20911
20911
 
20912
+ /* Generated by Opal 0.11.99.dev */
20913
+ Opal.modules["asciidoctor/js/opal_ext/array"] = function(Opal) {
20914
+ var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $klass = Opal.klass;
20915
+
20916
+ Opal.add_stubs(['$==', '$strict_encode64', '$_original_pack']);
20917
+ return (function($base, $super, $parent_nesting) {
20918
+ var self = $klass($base, $super, 'Array');
20919
+
20920
+ var $nesting = [self].concat($parent_nesting), $Array_pack$1;
20921
+
20922
+
20923
+ Opal.alias(self, "_original_pack", "pack");
20924
+ return (Opal.def(self, '$pack', $Array_pack$1 = function $$pack(format) {
20925
+ var self = this;
20926
+
20927
+ if (format['$==']("m0")) {
20928
+ return $$$('::', 'Base64').$strict_encode64(self)
20929
+ } else {
20930
+ return self.$_original_pack(self)
20931
+ }
20932
+ }, $Array_pack$1.$$arity = 1), nil) && 'pack';
20933
+ })($nesting[0], null, $nesting)
20934
+ };
20935
+
20912
20936
  /* Generated by Opal 0.11.99.dev */
20913
20937
  Opal.modules["asciidoctor/js/opal_ext/uri"] = function(Opal) {
20914
20938
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module;
@@ -21048,6 +21072,7 @@ Opal.modules["asciidoctor/js/opal_ext"] = function(Opal) {
21048
21072
  self.$require("asciidoctor/js/opal_ext/file");
21049
21073
  self.$require("asciidoctor/js/opal_ext/match_data");
21050
21074
  self.$require("asciidoctor/js/opal_ext/string");
21075
+ self.$require("asciidoctor/js/opal_ext/array");
21051
21076
  self.$require("asciidoctor/js/opal_ext/uri");
21052
21077
  self.$require("asciidoctor/js/opal_ext/base64");
21053
21078
  self.$require("asciidoctor/js/opal_ext/number");
@@ -21564,9 +21589,9 @@ Opal.modules["asciidoctor/core_ext/hash/merge"] = function(Opal) {
21564
21589
  function $rb_gt(lhs, rhs) {
21565
21590
  return (typeof(lhs) === 'number' && typeof(rhs) === 'number') ? lhs > rhs : lhs['$>'](rhs);
21566
21591
  }
21567
- var $$1, self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $send = Opal.send, $truthy = Opal.truthy, $hash2 = Opal.hash2;
21592
+ var $$1, self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $send = Opal.send, $truthy = Opal.truthy;
21568
21593
 
21569
- Opal.add_stubs(['$==', '$arity', '$instance_method', '$send', '$new', '$<', '$length', '$>', '$inject', '$merge', '$[]']);
21594
+ Opal.add_stubs(['$==', '$arity', '$instance_method', '$send', '$new', '$<', '$length', '$dup', '$>', '$inject', '$merge', '$[]']);
21570
21595
  if ($$($nesting, 'Hash').$instance_method("merge").$arity()['$=='](1)) {
21571
21596
  return $$($nesting, 'Hash').$send("prepend", $send($$($nesting, 'Module'), 'new', [], ($$1 = function(){var self = $$1.$$s || this, $merge$2;
21572
21597
 
@@ -21580,7 +21605,7 @@ Opal.modules["asciidoctor/core_ext/hash/merge"] = function(Opal) {
21580
21605
 
21581
21606
  args = $post_args;;
21582
21607
  if ($truthy($rb_lt((len = args.$length()), 1))) {
21583
- return $send(self, Opal.find_super_dispatcher(self, 'merge', $merge$2, false), [$hash2([], {})], null)
21608
+ return self.$dup()
21584
21609
  } else {
21585
21610
 
21586
21611
  if ($truthy($rb_gt(len, 1))) {
@@ -21657,7 +21682,7 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21657
21682
  }
21658
21683
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $truthy = Opal.truthy, $gvars = Opal.gvars, $send = Opal.send, $hash2 = Opal.hash2;
21659
21684
 
21660
- Opal.add_stubs(['$module_function', '$require', '$include?', '$include', '$==', '$===', '$path', '$message', '$raise', '$warn', '$logger', '$chomp', '$empty?', '$slice', '$unpack', '$[]', '$byteslice', '$bytesize', '$[]=', '$-', '$map', '$rstrip', '$encode', '$encoding', '$nil_or_empty?', '$!=', '$tap', '$each_line', '$<<', '$match?', '$gsub', '$rindex', '$index', '$basename', '$extname', '$!', '$length', '$directory?', '$dirname', '$mkdir_p', '$mkdir', '$private_constant', '$join', '$divmod', '$*', '$+', '$to_s', '$to_i', '$succ', '$class_for_name', '$const_get']);
21685
+ Opal.add_stubs(['$module_function', '$require', '$include?', '$include', '$==', '$===', '$path', '$message', '$raise', '$warn', '$logger', '$chomp', '$empty?', '$slice', '$unpack', '$[]', '$byteslice', '$bytesize', '$[]=', '$-', '$map', '$rstrip', '$encode', '$encoding', '$nil_or_empty?', '$!=', '$tap', '$each_line', '$<<', '$!', '$start_with?', '$match?', '$gsub', '$rindex', '$index', '$basename', '$extname', '$length', '$directory?', '$dirname', '$mkdir_p', '$mkdir', '$private_constant', '$join', '$divmod', '$*', '$+', '$to_s', '$to_i', '$succ', '$class_for_name', '$const_get']);
21661
21686
  return (function($base, $parent_nesting) {
21662
21687
  var self = $module($base, 'Asciidoctor');
21663
21688
 
@@ -21666,7 +21691,7 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21666
21691
  (function($base, $parent_nesting) {
21667
21692
  var self = $module($base, 'Helpers');
21668
21693
 
21669
- var $nesting = [self].concat($parent_nesting), $Helpers_require_library$1, $Helpers_prepare_source_array$2, $Helpers_prepare_source_string$11, $Helpers_uriish$ques$16, $Helpers_encode_uri_component$17, $Helpers_encode_spaces_in_uri$18, $Helpers_rootname$19, $Helpers_basename$20, $Helpers_extname$ques$21, $Helpers_extname$22, $Helpers_extname$23, $Helpers_mkdir_p$24, $Helpers_int_to_roman$25, $Helpers_nextval$27, $Helpers_resolve_class$28, $Helpers_class_for_name$29;
21694
+ var $nesting = [self].concat($parent_nesting), $Helpers_require_library$1, $Helpers_prepare_source_array$2, $Helpers_prepare_source_string$11, $Helpers_uriish$ques$16, $Helpers_uriish$ques$17, $Helpers_encode_uri_component$18, $Helpers_encode_spaces_in_uri$19, $Helpers_rootname$20, $Helpers_basename$21, $Helpers_extname$ques$22, $Helpers_extname$23, $Helpers_extname$24, $Helpers_mkdir_p$25, $Helpers_int_to_roman$26, $Helpers_nextval$28, $Helpers_resolve_class$29, $Helpers_class_for_name$30;
21670
21695
 
21671
21696
 
21672
21697
  self.$module_function();
@@ -21895,15 +21920,24 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21895
21920
  return lines['$<<'](line.$chomp());}, $$15.$$s = self, $$15.$$arity = 1, $$15));}, $$14.$$s = self, $$14.$$arity = 1, $$14))
21896
21921
  };
21897
21922
  }, $Helpers_prepare_source_string$11.$$arity = -2);
21898
-
21899
- Opal.def(self, '$uriish?', $Helpers_uriish$ques$16 = function(str) {
21900
- var $a, self = this;
21923
+ if ($$$('::', 'RUBY_ENGINE')['$==']("jruby")) {
21924
+
21925
+ Opal.def(self, '$uriish?', $Helpers_uriish$ques$16 = function(str) {
21926
+ var $a, $b, self = this;
21901
21927
 
21902
- return ($truthy($a = str['$include?'](":")) ? $$($nesting, 'UriSniffRx')['$match?'](str) : $a)
21903
- }, $Helpers_uriish$ques$16.$$arity = 1);
21928
+ return ($truthy($a = ($truthy($b = str['$include?'](":")) ? str['$start_with?']("uri:classloader:")['$!']() : $b)) ? $$($nesting, 'UriSniffRx')['$match?'](str) : $a)
21929
+ }, $Helpers_uriish$ques$16.$$arity = 1)
21930
+ } else {
21931
+
21932
+ Opal.def(self, '$uriish?', $Helpers_uriish$ques$17 = function(str) {
21933
+ var $a, self = this;
21934
+
21935
+ return ($truthy($a = str['$include?'](":")) ? $$($nesting, 'UriSniffRx')['$match?'](str) : $a)
21936
+ }, $Helpers_uriish$ques$17.$$arity = 1)
21937
+ };
21904
21938
  if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
21905
21939
 
21906
- Opal.def(self, '$encode_uri_component', $Helpers_encode_uri_component$17 = function $$encode_uri_component(str) {
21940
+ Opal.def(self, '$encode_uri_component', $Helpers_encode_uri_component$18 = function $$encode_uri_component(str) {
21907
21941
  var self = this;
21908
21942
 
21909
21943
 
@@ -21911,12 +21945,12 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21911
21945
  return m === '%20' ? '+' : '%' + m.charCodeAt(0).toString(16)
21912
21946
  })
21913
21947
 
21914
- }, $Helpers_encode_uri_component$17.$$arity = 1)
21948
+ }, $Helpers_encode_uri_component$18.$$arity = 1)
21915
21949
  } else {
21916
21950
  nil
21917
21951
  };
21918
21952
 
21919
- Opal.def(self, '$encode_spaces_in_uri', $Helpers_encode_spaces_in_uri$18 = function $$encode_spaces_in_uri(str) {
21953
+ Opal.def(self, '$encode_spaces_in_uri', $Helpers_encode_spaces_in_uri$19 = function $$encode_spaces_in_uri(str) {
21920
21954
  var self = this;
21921
21955
 
21922
21956
  if ($truthy(str['$include?'](" "))) {
@@ -21925,9 +21959,9 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21925
21959
  } else {
21926
21960
  return str
21927
21961
  }
21928
- }, $Helpers_encode_spaces_in_uri$18.$$arity = 1);
21962
+ }, $Helpers_encode_spaces_in_uri$19.$$arity = 1);
21929
21963
 
21930
- Opal.def(self, '$rootname', $Helpers_rootname$19 = function $$rootname(filename) {
21964
+ Opal.def(self, '$rootname', $Helpers_rootname$20 = function $$rootname(filename) {
21931
21965
  var self = this, last_dot_idx = nil;
21932
21966
 
21933
21967
  if ($truthy((last_dot_idx = filename.$rindex(".")))) {
@@ -21940,9 +21974,9 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21940
21974
  } else {
21941
21975
  return filename
21942
21976
  }
21943
- }, $Helpers_rootname$19.$$arity = 1);
21977
+ }, $Helpers_rootname$20.$$arity = 1);
21944
21978
 
21945
- Opal.def(self, '$basename', $Helpers_basename$20 = function $$basename(filename, drop_ext) {
21979
+ Opal.def(self, '$basename', $Helpers_basename$21 = function $$basename(filename, drop_ext) {
21946
21980
  var self = this;
21947
21981
 
21948
21982
 
@@ -21960,16 +21994,16 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21960
21994
  } else {
21961
21995
  return $$$('::', 'File').$basename(filename)
21962
21996
  };
21963
- }, $Helpers_basename$20.$$arity = -2);
21997
+ }, $Helpers_basename$21.$$arity = -2);
21964
21998
 
21965
- Opal.def(self, '$extname?', $Helpers_extname$ques$21 = function(path) {
21999
+ Opal.def(self, '$extname?', $Helpers_extname$ques$22 = function(path) {
21966
22000
  var $a, self = this, last_dot_idx = nil;
21967
22001
 
21968
22002
  return ($truthy($a = (last_dot_idx = path.$rindex("."))) ? path.$index("/", last_dot_idx)['$!']() : $a)
21969
- }, $Helpers_extname$ques$21.$$arity = 1);
22003
+ }, $Helpers_extname$ques$22.$$arity = 1);
21970
22004
  if ($truthy($$$($$$('::', 'File'), 'ALT_SEPARATOR'))) {
21971
22005
 
21972
- Opal.def(self, '$extname', $Helpers_extname$22 = function $$extname(path, fallback) {
22006
+ Opal.def(self, '$extname', $Helpers_extname$23 = function $$extname(path, fallback) {
21973
22007
  var $a, self = this, last_dot_idx = nil;
21974
22008
 
21975
22009
 
@@ -21987,10 +22021,10 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
21987
22021
  } else {
21988
22022
  return fallback
21989
22023
  };
21990
- }, $Helpers_extname$22.$$arity = -2)
22024
+ }, $Helpers_extname$23.$$arity = -2)
21991
22025
  } else {
21992
22026
 
21993
- Opal.def(self, '$extname', $Helpers_extname$23 = function $$extname(path, fallback) {
22027
+ Opal.def(self, '$extname', $Helpers_extname$24 = function $$extname(path, fallback) {
21994
22028
  var self = this, last_dot_idx = nil;
21995
22029
 
21996
22030
 
@@ -22008,10 +22042,10 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22008
22042
  } else {
22009
22043
  return fallback
22010
22044
  };
22011
- }, $Helpers_extname$23.$$arity = -2)
22045
+ }, $Helpers_extname$24.$$arity = -2)
22012
22046
  };
22013
22047
 
22014
- Opal.def(self, '$mkdir_p', $Helpers_mkdir_p$24 = function $$mkdir_p(dir) {
22048
+ Opal.def(self, '$mkdir_p', $Helpers_mkdir_p$25 = function $$mkdir_p(dir) {
22015
22049
  var self = this, parent_dir = nil;
22016
22050
 
22017
22051
  if ($truthy($$$('::', 'File')['$directory?'](dir))) {
@@ -22037,14 +22071,14 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22037
22071
  } else { throw $err; }
22038
22072
  };;
22039
22073
  }
22040
- }, $Helpers_mkdir_p$24.$$arity = 1);
22074
+ }, $Helpers_mkdir_p$25.$$arity = 1);
22041
22075
  Opal.const_set($nesting[0], 'ROMAN_NUMERALS', $hash2(["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"], {"M": 1000, "CM": 900, "D": 500, "CD": 400, "C": 100, "XC": 90, "L": 50, "XL": 40, "X": 10, "IX": 9, "V": 5, "IV": 4, "I": 1}));
22042
22076
  self.$private_constant("ROMAN_NUMERALS");
22043
22077
 
22044
- Opal.def(self, '$int_to_roman', $Helpers_int_to_roman$25 = function $$int_to_roman(val) {
22045
- var $$26, self = this;
22078
+ Opal.def(self, '$int_to_roman', $Helpers_int_to_roman$26 = function $$int_to_roman(val) {
22079
+ var $$27, self = this;
22046
22080
 
22047
- return $send($$($nesting, 'ROMAN_NUMERALS'), 'map', [], ($$26 = function(l, i){var self = $$26.$$s || this, $a, $b, repeat = nil;
22081
+ return $send($$($nesting, 'ROMAN_NUMERALS'), 'map', [], ($$27 = function(l, i){var self = $$27.$$s || this, $a, $b, repeat = nil;
22048
22082
 
22049
22083
 
22050
22084
 
@@ -22056,10 +22090,10 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22056
22090
  i = nil;
22057
22091
  };
22058
22092
  $b = val.$divmod(i), $a = Opal.to_ary($b), (repeat = ($a[0] == null ? nil : $a[0])), (val = ($a[1] == null ? nil : $a[1])), $b;
22059
- return $rb_times(l, repeat);}, $$26.$$s = self, $$26.$$arity = 2, $$26)).$join()
22060
- }, $Helpers_int_to_roman$25.$$arity = 1);
22093
+ return $rb_times(l, repeat);}, $$27.$$s = self, $$27.$$arity = 2, $$27)).$join()
22094
+ }, $Helpers_int_to_roman$26.$$arity = 1);
22061
22095
 
22062
- Opal.def(self, '$nextval', $Helpers_nextval$27 = function $$nextval(current) {
22096
+ Opal.def(self, '$nextval', $Helpers_nextval$28 = function $$nextval(current) {
22063
22097
  var self = this, intval = nil;
22064
22098
 
22065
22099
  if ($truthy($$$('::', 'Integer')['$==='](current))) {
@@ -22069,9 +22103,9 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22069
22103
  } else {
22070
22104
  return current.$succ()
22071
22105
  }
22072
- }, $Helpers_nextval$27.$$arity = 1);
22106
+ }, $Helpers_nextval$28.$$arity = 1);
22073
22107
 
22074
- Opal.def(self, '$resolve_class', $Helpers_resolve_class$28 = function $$resolve_class(object) {
22108
+ Opal.def(self, '$resolve_class', $Helpers_resolve_class$29 = function $$resolve_class(object) {
22075
22109
  var self = this;
22076
22110
 
22077
22111
  if ($truthy($$$('::', 'Class')['$==='](object))) {
@@ -22085,9 +22119,9 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22085
22119
  return nil
22086
22120
  };
22087
22121
  }
22088
- }, $Helpers_resolve_class$28.$$arity = 1);
22122
+ }, $Helpers_resolve_class$29.$$arity = 1);
22089
22123
 
22090
- Opal.def(self, '$class_for_name', $Helpers_class_for_name$29 = function $$class_for_name(qualified_name) {
22124
+ Opal.def(self, '$class_for_name', $Helpers_class_for_name$30 = function $$class_for_name(qualified_name) {
22091
22125
  var self = this, resolved = nil;
22092
22126
 
22093
22127
  try {
@@ -22104,7 +22138,7 @@ Opal.modules["asciidoctor/helpers"] = function(Opal) {
22104
22138
  } finally { Opal.pop_exception() }
22105
22139
  } else { throw $err; }
22106
22140
  }
22107
- }, $Helpers_class_for_name$29.$$arity = 1);
22141
+ }, $Helpers_class_for_name$30.$$arity = 1);
22108
22142
  })($nesting[0], $nesting)
22109
22143
  })($nesting[0], $nesting)
22110
22144
  };
@@ -22474,9 +22508,11 @@ Opal.modules["asciidoctor/logging"] = function(Opal) {
22474
22508
  self.$attr_reader("messages");
22475
22509
 
22476
22510
  Opal.def(self, '$initialize', $MemoryLogger_initialize$6 = function $$initialize() {
22477
- var self = this, $writer = nil;
22511
+ var $iter = $MemoryLogger_initialize$6.$$p, $yield = $iter || nil, self = this, $writer = nil;
22478
22512
 
22513
+ if ($iter) $MemoryLogger_initialize$6.$$p = null;
22479
22514
 
22515
+ $send(self, Opal.find_super_dispatcher(self, 'initialize', $MemoryLogger_initialize$6, false), [nil], null);
22480
22516
 
22481
22517
  $writer = [$$($nesting, 'WARN')];
22482
22518
  $send(self, 'level=', Opal.to_a($writer));
@@ -22544,12 +22580,15 @@ Opal.modules["asciidoctor/logging"] = function(Opal) {
22544
22580
  self.$attr_reader("max_severity");
22545
22581
 
22546
22582
  Opal.def(self, '$initialize', $NullLogger_initialize$12 = function $$initialize() {
22547
- var self = this, $writer = nil;
22583
+ var $iter = $NullLogger_initialize$12.$$p, $yield = $iter || nil, self = this, $writer = nil;
22548
22584
 
22585
+ if ($iter) $NullLogger_initialize$12.$$p = null;
22586
+
22587
+ $send(self, Opal.find_super_dispatcher(self, 'initialize', $NullLogger_initialize$12, false), [nil], null);
22549
22588
 
22550
22589
  $writer = [$$($nesting, 'WARN')];
22551
22590
  $send(self, 'level=', Opal.to_a($writer));
22552
- return $writer[$rb_minus($writer["length"], 1)];
22591
+ return $writer[$rb_minus($writer["length"], 1)];;
22553
22592
  }, $NullLogger_initialize$12.$$arity = 0);
22554
22593
  return (Opal.def(self, '$add', $NullLogger_add$13 = function $$add(severity, message, progname) {
22555
22594
  var $a, self = this;
@@ -22678,7 +22717,7 @@ Opal.modules["asciidoctor/rx"] = function(Opal) {
22678
22717
  Opal.const_set($nesting[0], 'ManpageNamePurposeRx', new RegExp("" + "^(" + ($$($nesting, 'CC_ANY')) + "+?) +- +(" + ($$($nesting, 'CC_ANY')) + "+)$"));
22679
22718
  Opal.const_set($nesting[0], 'ConditionalDirectiveRx', new RegExp("" + "^(\\\\)?(ifdef|ifndef|ifeval|endif)::(\\S*?(?:([,+])\\S*?)?)\\[(" + ($$($nesting, 'CC_ANY')) + "+)?\\]$"));
22680
22719
  Opal.const_set($nesting[0], 'EvalExpressionRx', new RegExp("" + "^(" + ($$($nesting, 'CC_ANY')) + "+?) *([=!><]=|[><]) *(" + ($$($nesting, 'CC_ANY')) + "+)$"));
22681
- Opal.const_set($nesting[0], 'IncludeDirectiveRx', new RegExp("" + "^(\\\\)?include::([^\\[][^\\[]*)\\[(" + ($$($nesting, 'CC_ANY')) + "+)?\\]$"));
22720
+ Opal.const_set($nesting[0], 'IncludeDirectiveRx', new RegExp("" + "^(\\\\)?include::([^\\s\\[](?:[^\\[]*[^\\s\\[])?)\\[(" + ($$($nesting, 'CC_ANY')) + "+)?\\]$"));
22682
22721
  Opal.const_set($nesting[0], 'TagDirectiveRx', /\b(?:tag|(e)nd)::(\S+?)\[\](?=$|[ \r])/m);
22683
22722
  Opal.const_set($nesting[0], 'AttributeEntryRx', new RegExp("" + "^:(!?" + ($$($nesting, 'CG_WORD')) + "[^:]*):(?:[ \\t]+(" + ($$($nesting, 'CC_ANY')) + "*))?$"));
22684
22723
  Opal.const_set($nesting[0], 'InvalidAttributeNameCharsRx', new RegExp("" + "[^" + ($$($nesting, 'CC_WORD')) + "-]"));
@@ -22764,14 +22803,13 @@ Opal.modules["asciidoctor/rx"] = function(Opal) {
22764
22803
  Opal.const_set($nesting[0], 'InlineImageMacroRx', new RegExp("" + "\\\\?i(?:mage|con):([^:\\s\\[](?:[^\\n\\[]*[^\\s\\[])?)\\[(|" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]", 'm'));
22765
22804
  Opal.const_set($nesting[0], 'InlineIndextermMacroRx', new RegExp("" + "\\\\?(?:(indexterm2?):\\[(" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]|\\(\\((" + ($$($nesting, 'CC_ALL')) + "+?)\\)\\)(?!\\)))", 'm'));
22766
22805
  Opal.const_set($nesting[0], 'InlineKbdBtnMacroRx', new RegExp("" + "(\\\\)?(kbd|btn):\\[(" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]", 'm'));
22767
- Opal.const_set($nesting[0], 'InlineLinkRx', new RegExp("" + "(^|link:|" + ($$($nesting, 'CG_BLANK')) + "|&lt;|[>\\(\\)\\[\\];\"'])(\\\\?(?:https?|file|ftp|irc)://[^\\s\\[\\]<]*([^\\s.,\\[\\]<]))(?:\\[(|" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\])?", 'm'));
22806
+ Opal.const_set($nesting[0], 'InlineLinkRx', new RegExp("" + "(^|link:|" + ($$($nesting, 'CG_BLANK')) + "|\\\\?&lt;()|[>\\(\\)\\[\\];\"'])(\\\\?(?:https?|file|ftp|irc)://)(?:([^\\s\\[\\]]+)\\[(|" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]|\\2([^\\s]*?)&gt;|([^\\s\\[\\]<]*([^\\s,.?!\\[\\]<\\)])))", 'm'));
22768
22807
  Opal.const_set($nesting[0], 'InlineLinkMacroRx', new RegExp("" + "\\\\?(?:link|(mailto)):(|[^:\\s\\[][^\\s\\[]*)\\[(|" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]", 'm'));
22769
22808
  Opal.const_set($nesting[0], 'MacroNameRx', new RegExp("" + "^" + ($$($nesting, 'CG_WORD')) + "[" + ($$($nesting, 'CC_WORD')) + "-]*$"));
22770
22809
  Opal.const_set($nesting[0], 'InlineStemMacroRx', new RegExp("" + "\\\\?(stem|(?:latex|ascii)math):([a-z]+(?:,[a-z-]+)*)?\\[(" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]", 'm'));
22771
22810
  Opal.const_set($nesting[0], 'InlineMenuMacroRx', new RegExp("" + "\\\\?menu:(" + ($$($nesting, 'CG_WORD')) + "|[" + ($$($nesting, 'CC_WORD')) + "&][^\\n\\[]*[^\\s\\[])\\[ *(?:|(" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\]))\\]", 'm'));
22772
22811
  Opal.const_set($nesting[0], 'InlineMenuRx', new RegExp("" + "\\\\?\"([" + ($$($nesting, 'CC_WORD')) + "&][^\"]*?[ \\n]+&gt;[ \\n]+[^\"]*)\""));
22773
- Opal.const_set($nesting[0], 'InlinePassRx', $hash(false, ["+", "`", new RegExp("" + "(^|[^" + ($$($nesting, 'CC_WORD')) + ";:])(?:\\[([^\\]]+)\\])?(\\\\?(\\+|`)(\\S|\\S" + ($$($nesting, 'CC_ALL')) + "*?\\S)\\4)(?!" + ($$($nesting, 'CG_WORD')) + ")", 'm')], true, ["`", nil, new RegExp("" + "(^|[^`" + ($$($nesting, 'CC_WORD')) + "])(?:\\[([^\\]]+)\\])?(\\\\?(`)([^`\\s]|[^`\\s]" + ($$($nesting, 'CC_ALL')) + "*?\\S)\\4)(?![`" + ($$($nesting, 'CC_WORD')) + "])", 'm')]));
22774
- Opal.const_set($nesting[0], 'SinglePlusInlinePassRx', new RegExp("" + "^(\\\\)?\\+(\\S|\\S" + ($$($nesting, 'CC_ALL')) + "*?\\S)\\+$", 'm'));
22812
+ Opal.const_set($nesting[0], 'InlinePassRx', $hash(false, ["+", "-]", new RegExp("" + "((?:^|[^" + ($$($nesting, 'CC_WORD')) + ";:\\\\])(?=(\\[)|\\+)|\\\\(?=\\[)|(?=\\\\\\+))(?:\\2(x-|[^\\]]+ x-)\\]|(?:\\[([^\\]]+)\\])?(?=(\\\\)?\\+))(\\5?(\\+|`)(\\S|\\S" + ($$($nesting, 'CC_ALL')) + "*?\\S)\\7)(?!" + ($$($nesting, 'CG_WORD')) + ")", 'm')], true, ["`", nil, new RegExp("" + "(^|[^`" + ($$($nesting, 'CC_WORD')) + "])(?:(\\Z)()|\\[([^\\]]+)\\](?=(\\\\))?)?(\\5?(`)([^`\\s]|[^`\\s]" + ($$($nesting, 'CC_ALL')) + "*?\\S)\\7)(?![`" + ($$($nesting, 'CC_WORD')) + "])", 'm')]));
22775
22813
  Opal.const_set($nesting[0], 'InlinePassMacroRx', new RegExp("" + "(?:(?:(\\\\?)\\[([^\\]]+)\\])?(\\\\{0,2})(\\+\\+\\+?|\\$\\$)(" + ($$($nesting, 'CC_ALL')) + "*?)\\4|(\\\\?)pass:([a-z]+(?:,[a-z-]+)*)?\\[(|" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\])", 'm'));
22776
22814
  Opal.const_set($nesting[0], 'InlineXrefMacroRx', new RegExp("" + "\\\\?(?:&lt;&lt;([" + ($$($nesting, 'CC_WORD')) + "#/.:{]" + ($$($nesting, 'CC_ALL')) + "*?)&gt;&gt;|xref:([" + ($$($nesting, 'CC_WORD')) + "#/.:{]" + ($$($nesting, 'CC_ALL')) + "*?)\\[(?:\\]|(" + ($$($nesting, 'CC_ALL')) + "*?[^\\\\])\\]))", 'm'));
22777
22815
  if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
@@ -22787,7 +22825,11 @@ Opal.modules["asciidoctor/rx"] = function(Opal) {
22787
22825
  Opal.const_set($nesting[0], 'SpaceDelimiterRx', /([^\\])[ \t\n]+/);
22788
22826
  Opal.const_set($nesting[0], 'SubModifierSniffRx', /[+-]/);
22789
22827
  Opal.const_set($nesting[0], 'TrailingDigitsRx', /\d+$/);
22790
- Opal.const_set($nesting[0], 'UriSniffRx', new RegExp("" + "^" + ($$($nesting, 'CG_ALPHA')) + "[" + ($$($nesting, 'CC_ALNUM')) + ".+-]+:/{0,2}"));
22828
+ if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
22829
+ Opal.const_set($nesting[0], 'UriSniffRx', new RegExp("" + "^" + ($$($nesting, 'CG_ALPHA')) + "[" + ($$($nesting, 'CC_ALNUM')) + ".+-]+:/{0,2}"))
22830
+ } else {
22831
+ nil
22832
+ };
22791
22833
  Opal.const_set($nesting[0], 'XmlSanitizeRx', /<[^>]+>/);
22792
22834
  })($nesting[0], $nesting)
22793
22835
  };
@@ -22811,7 +22853,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
22811
22853
  }
22812
22854
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $hash2 = Opal.hash2, $hash = Opal.hash, $truthy = Opal.truthy, $send = Opal.send, $gvars = Opal.gvars;
22813
22855
 
22814
- Opal.add_stubs(['$freeze', '$+', '$keys', '$empty?', '$!', '$===', '$[]', '$join', '$include?', '$extract_passthroughs', '$each', '$sub_specialchars', '$sub_quotes', '$sub_attributes', '$sub_replacements', '$sub_macros', '$highlight_source', '$sub_callouts', '$sub_post_replacements', '$warn', '$logger', '$restore_passthroughs', '$clear', '$split', '$apply_subs', '$==', '$gsub', '$match?', '$compat_mode', '$convert_quoted_text', '$attributes', '$shift', '$store_attribute', '$!=', '$attribute_undefined', '$counter', '$key?', '$downcase', '$attribute_missing', '$info', '$squeeze', '$delete', '$reject', '$start_with?', '$do_replacement', '$extensions', '$inline_macros?', '$inline_macros', '$regexp', '$instance', '$slice', '$length', '$names', '$config', '$merge', '$[]=', '$-', '$normalize_text', '$parse_attributes', '$process_method', '$expand_subs', '$text', '$text=', '$convert', '$class', '$strip', '$>', '$index', '$min', '$compact', '$end_with?', '$map', '$chop', '$new', '$pop', '$rstrip', '$register', '$tr', '$basename', '$parse', '$lstrip', '$split_simple_csv', '$partition', '$extract_attributes_from_text', '$sub', '$encode_uri_component', '$style', '$extname?', '$rindex', '$info?', '$catalog', '$fetch', '$outfilesuffix', '$natural_xrefs', '$resolve_id', '$find', '$footnotes', '$id', '$<', '$size', '$<<', '$attr?', '$attr', '$to_s', '$read_next_id', '$callouts', '$syntax_highlighter', '$highlight?', '$sub_source', '$extract_callouts', '$name', '$to_sym', '$to_i', '$resolve_lines_to_highlight', '$highlight', '$nil_or_empty?', '$restore_callouts', '$count', '$to_a', '$|', '$sort', '$*', '$parse_quoted_text_attributes', '$resolve_pass_subs', '$extract_inner_passthrough', '$basebackend?', '$error', '$chr', '$drop', '$&', '$resolve_subs', '$resolve_block_subs', '$parse_into', '$private', '$=~', '$shorthand_property_syntax', '$each_char']);
22856
+ Opal.add_stubs(['$freeze', '$+', '$keys', '$empty?', '$!', '$===', '$[]', '$join', '$include?', '$extract_passthroughs', '$each', '$sub_specialchars', '$sub_quotes', '$sub_attributes', '$sub_replacements', '$sub_macros', '$highlight_source', '$sub_callouts', '$sub_post_replacements', '$warn', '$logger', '$restore_passthroughs', '$clear', '$split', '$apply_subs', '$==', '$gsub', '$match?', '$compat_mode', '$convert_quoted_text', '$attributes', '$shift', '$store_attribute', '$!=', '$attribute_undefined', '$counter', '$key?', '$downcase', '$attribute_missing', '$info', '$squeeze', '$delete', '$reject', '$start_with?', '$do_replacement', '$extensions', '$inline_macros?', '$inline_macros', '$regexp', '$instance', '$slice', '$length', '$names', '$config', '$merge', '$[]=', '$-', '$normalize_text', '$parse_attributes', '$process_method', '$expand_subs', '$text', '$text=', '$convert', '$class', '$strip', '$>', '$index', '$min', '$compact', '$end_with?', '$map', '$chop', '$new', '$pop', '$rstrip', '$register', '$tr', '$basename', '$parse', '$<<', '$lstrip', '$split_simple_csv', '$partition', '$sub', '$extract_attributes_from_text', '$encode_uri_component', '$style', '$extname?', '$rindex', '$info?', '$catalog', '$fetch', '$outfilesuffix', '$natural_xrefs', '$resolve_id', '$find', '$footnotes', '$id', '$<', '$size', '$attr?', '$attr', '$to_s', '$read_next_id', '$callouts', '$syntax_highlighter', '$highlight?', '$sub_source', '$extract_callouts', '$name', '$to_sym', '$to_i', '$resolve_lines_to_highlight', '$highlight', '$nil_or_empty?', '$restore_callouts', '$count', '$to_a', '$|', '$sort', '$*', '$parse_quoted_text_attributes', '$resolve_pass_subs', '$basebackend?', '$error', '$chr', '$drop', '$&', '$resolve_subs', '$resolve_block_subs', '$parse_into', '$private', '$shorthand_property_syntax', '$each_char']);
22815
22857
  return (function($base, $parent_nesting) {
22816
22858
  var self = $module($base, 'Asciidoctor');
22817
22859
 
@@ -22820,7 +22862,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
22820
22862
  (function($base, $parent_nesting) {
22821
22863
  var self = $module($base, 'Substitutors');
22822
22864
 
22823
- var $nesting = [self].concat($parent_nesting), $Substitutors_apply_subs$1, $Substitutors_apply_normal_subs$3, $Substitutors_apply_header_subs$4, $Substitutors_apply_reftext_subs$5, $Substitutors_sub_specialchars$6, $Substitutors_sub_quotes$7, $Substitutors_sub_attributes$10, $Substitutors_sub_replacements$16, $Substitutors_sub_macros$19, $Substitutors_sub_post_replacements$42, $Substitutors_sub_source$45, $Substitutors_sub_callouts$46, $Substitutors_highlight_source$48, $Substitutors_resolve_lines_to_highlight$49, $Substitutors_extract_passthroughs$52, $Substitutors_restore_passthroughs$56, $Substitutors_resolve_subs$58, $Substitutors_resolve_block_subs$60, $Substitutors_resolve_pass_subs$61, $Substitutors_expand_subs$62, $Substitutors_commit_subs$64, $Substitutors_parse_attributes$65, $Substitutors_extract_attributes_from_text$66, $Substitutors_extract_callouts$67, $Substitutors_restore_callouts$70, $Substitutors_extract_inner_passthrough$73, $Substitutors_convert_quoted_text$74, $Substitutors_do_replacement$75, $Substitutors_parse_quoted_text_attributes$76, $Substitutors_normalize_text$77, $Substitutors_split_simple_csv$78;
22865
+ var $nesting = [self].concat($parent_nesting), $Substitutors_apply_subs$1, $Substitutors_apply_normal_subs$3, $Substitutors_apply_header_subs$4, $Substitutors_apply_reftext_subs$5, $Substitutors_sub_specialchars$6, $Substitutors_sub_quotes$7, $Substitutors_sub_attributes$10, $Substitutors_sub_replacements$16, $Substitutors_sub_macros$19, $Substitutors_sub_post_replacements$42, $Substitutors_sub_source$45, $Substitutors_sub_callouts$46, $Substitutors_highlight_source$48, $Substitutors_resolve_lines_to_highlight$49, $Substitutors_extract_passthroughs$52, $Substitutors_restore_passthroughs$56, $Substitutors_resolve_subs$58, $Substitutors_resolve_block_subs$60, $Substitutors_resolve_pass_subs$61, $Substitutors_expand_subs$62, $Substitutors_commit_subs$64, $Substitutors_parse_attributes$65, $Substitutors_extract_attributes_from_text$66, $Substitutors_extract_callouts$67, $Substitutors_restore_callouts$70, $Substitutors_convert_quoted_text$73, $Substitutors_do_replacement$74, $Substitutors_parse_quoted_text_attributes$75, $Substitutors_normalize_text$76, $Substitutors_split_simple_csv$77;
22824
22866
 
22825
22867
 
22826
22868
  Opal.const_set($nesting[0], 'SpecialCharsRx', /[<&>]/);
@@ -23316,7 +23358,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
23316
23358
  ($truthy($c = attrs['$[]']("alt")) ? $c : (($writer = ["alt", (($writer = ["default-alt", $$($nesting, 'Helpers').$basename(target, true).$tr("_-", " ")]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)])]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]));
23317
23359
  return $$($nesting, 'Inline').$new(self, "image", nil, $hash2(["type", "target", "attributes"], {"type": type, "target": target, "attributes": attrs})).$convert();}, $$30.$$s = self, $$30.$$arity = 0, $$30))};
23318
23360
  if ($truthy(($truthy($a = ($truthy($b = text['$include?']("((")) ? text['$include?']("))") : $b)) ? $a : ($truthy($b = found_macroish_short) ? text['$include?']("dexterm") : $b)))) {
23319
- text = $send(text, 'gsub', [$$($nesting, 'InlineIndextermMacroRx')], ($$31 = function(){var self = $$31.$$s || this, $c, $$32, $d, $$33, $case = nil, attrlist = nil, primary = nil, attrs = nil, $writer = nil, see_also = nil, term = nil, encl_text = nil, visible = nil, before = nil, after = nil, _ = nil, see = nil, subbed_term = nil, terms = nil;
23361
+ text = $send(text, 'gsub', [$$($nesting, 'InlineIndextermMacroRx')], ($$31 = function(){var self = $$31.$$s || this, $c, $$32, $d, $$33, $case = nil, attrlist = nil, primary = nil, attrs = nil, terms = nil, secondary = nil, tertiary = nil, $writer = nil, see_also = nil, term = nil, encl_text = nil, visible = nil, before = nil, after = nil, _ = nil, see = nil, subbed_term = nil;
23320
23362
 
23321
23363
  return (function() {$case = (($c = $gvars['~']) === nil ? nil : $c['$[]'](1));
23322
23364
  if ("indexterm"['$===']($case)) {
@@ -23325,8 +23367,14 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
23325
23367
  if ($truthy((attrlist = self.$normalize_text((($c = $gvars['~']) === nil ? nil : $c['$[]'](2)), true, true))['$include?']("="))) {
23326
23368
  if ($truthy((primary = (attrs = $$($nesting, 'AttributeList').$new(attrlist, self).$parse())['$[]'](1)))) {
23327
23369
 
23370
+ terms = [primary];
23371
+ if ($truthy((secondary = attrs['$[]'](2)))) {
23372
+
23373
+ terms['$<<'](secondary);
23374
+ if ($truthy((tertiary = attrs['$[]'](3)))) {
23375
+ terms['$<<'](tertiary)};};
23328
23376
 
23329
- $writer = ["terms", [primary]];
23377
+ $writer = ["terms", terms];
23330
23378
  $send(attrs, '[]=', Opal.to_a($writer));
23331
23379
  $writer[$rb_minus($writer["length"], 1)];;
23332
23380
  if ($truthy((see_also = attrs['$[]']("see-also")))) {
@@ -23439,78 +23487,93 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
23439
23487
  return subbed_term
23440
23488
  };}})()}, $$31.$$s = self, $$31.$$arity = 0, $$31))};
23441
23489
  if ($truthy(($truthy($a = found_colon) ? text['$include?']("://") : $a))) {
23442
- text = $send(text, 'gsub', [$$($nesting, 'InlineLinkRx')], ($$34 = function(){var self = $$34.$$s || this, $c, $d, target = nil, prefix = nil, suffix = nil, link_text = nil, $case = nil, attrs = nil, link_opts = nil, new_link_text = nil, $writer = nil, bare = nil;
23490
+ text = $send(text, 'gsub', [$$($nesting, 'InlineLinkRx')], ($$34 = function(){var self = $$34.$$s || this, $c, $d, $e, target = nil, link_text = nil, prefix = nil, suffix = nil, $case = nil, link_opts = nil, new_link_text = nil, attrs = nil, $writer = nil, bare = nil;
23443
23491
 
23444
-
23445
- if ($truthy((target = (($c = $gvars['~']) === nil ? nil : $c['$[]'](2)))['$start_with?']($$($nesting, 'RS')))) {
23446
- return "" + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))) + (target.$slice(1, target.$length())) + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](4)));};
23447
- $c = [(($d = $gvars['~']) === nil ? nil : $d['$[]'](1)), ""], (prefix = $c[0]), (suffix = $c[1]), $c;
23448
- if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](4)))) {
23492
+ if ($truthy(($truthy($c = (($d = $gvars['~']) === nil ? nil : $d['$[]'](2))) ? (($d = $gvars['~']) === nil ? nil : $d['$[]'](5))['$!']() : $c))) {
23449
23493
 
23450
- if (prefix['$==']("link:")) {
23451
- prefix = ""};
23452
- if ($truthy((link_text = (($c = $gvars['~']) === nil ? nil : $c['$[]'](4)))['$empty?']())) {
23453
- link_text = nil};
23494
+ if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))['$start_with?']($$($nesting, 'RS')))) {
23495
+ return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$slice(1, (($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$length());};
23496
+ if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](3))['$start_with?']($$($nesting, 'RS')))) {
23497
+ return "" + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))) + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$slice($rb_plus((($c = $gvars['~']) === nil ? nil : $c['$[]'](1)).$length(), 1), (($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$length()));};
23498
+ target = $rb_plus((($c = $gvars['~']) === nil ? nil : $c['$[]'](3)), (($c = $gvars['~']) === nil ? nil : $c['$[]'](6)));
23499
+ if (target['$==']((($c = $gvars['~']) === nil ? nil : $c['$[]'](3)))) {
23500
+ return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};
23501
+ doc.$register("links", target);
23502
+ link_text = (function() {if ($truthy(doc_attrs['$key?']("hide-uri-scheme"))) {
23503
+
23504
+ return target.$sub($$($nesting, 'UriSniffRx'), "");
23505
+ } else {
23506
+ return target
23507
+ }; return nil; })();
23508
+ return $$($nesting, 'Inline').$new(self, "anchor", link_text, $hash2(["type", "target", "attributes"], {"type": "link", "target": target, "attributes": $hash2(["role"], {"role": "bare"})})).$convert();
23454
23509
  } else {
23455
23510
 
23456
- $case = prefix;
23457
- if ("link:"['$===']($case) || "\""['$===']($case) || "'"['$===']($case)) {return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};
23458
- $case = (($c = $gvars['~']) === nil ? nil : $c['$[]'](3));
23459
- if (")"['$===']($case) || "?"['$===']($case) || "!"['$===']($case)) {
23460
- target = target.$chop();
23461
- if ($truthy((($c = (suffix = (($d = $gvars['~']) === nil ? nil : $d['$[]'](3)))['$=='](")")) ? target['$end_with?'](".", "?", "!") : (suffix = (($d = $gvars['~']) === nil ? nil : $d['$[]'](3)))['$=='](")")))) {
23462
-
23463
- suffix = $rb_plus(target['$[]'](-1), suffix);
23464
- target = target.$chop();};
23465
- if ($truthy(target['$end_with?']("://"))) {
23466
- return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};}
23467
- else if (";"['$===']($case)) {
23468
- if ($truthy(($truthy($c = prefix['$start_with?']("&lt;")) ? target['$end_with?']("&gt;") : $c))) {
23511
+ if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](3))['$start_with?']($$($nesting, 'RS')))) {
23512
+ return "" + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))) + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$slice($rb_plus((($c = $gvars['~']) === nil ? nil : $c['$[]'](1)).$length(), 1), (($c = $gvars['~']) === nil ? nil : $c['$[]'](0)).$length()));};
23513
+ $c = [(($d = $gvars['~']) === nil ? nil : $d['$[]'](1)), $rb_plus((($d = $gvars['~']) === nil ? nil : $d['$[]'](3)), ($truthy($d = (($e = $gvars['~']) === nil ? nil : $e['$[]'](4))) ? $d : (($e = $gvars['~']) === nil ? nil : $e['$[]'](7)))), ""], (prefix = $c[0]), (target = $c[1]), (suffix = $c[2]), $c;
23514
+ if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](5)))) {
23469
23515
 
23470
- prefix = prefix.$slice(4, prefix.$length());
23471
- target = target.$slice(0, $rb_minus(target.$length(), 4));
23472
- } else if ($truthy((target = target.$chop())['$end_with?'](")"))) {
23473
-
23474
- target = target.$chop();
23475
- suffix = ");";
23516
+ if (prefix['$==']("link:")) {
23517
+ prefix = ""};
23518
+ if ($truthy((link_text = (($c = $gvars['~']) === nil ? nil : $c['$[]'](5)))['$empty?']())) {
23519
+ link_text = nil};
23476
23520
  } else {
23477
- suffix = ";"
23478
- };
23479
- if ($truthy(target['$end_with?']("://"))) {
23480
- return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};}
23481
- else if (":"['$===']($case)) {
23482
- if ($truthy((target = target.$chop())['$end_with?'](")"))) {
23483
23521
 
23484
- target = target.$chop();
23485
- suffix = "):";
23486
- } else {
23487
- suffix = ":"
23522
+ $case = prefix;
23523
+ if ("link:"['$===']($case) || "\""['$===']($case) || "'"['$===']($case)) {return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};
23524
+ $case = (($c = $gvars['~']) === nil ? nil : $c['$[]'](8));
23525
+ if (";"['$===']($case)) {
23526
+ if ($truthy((target = target.$chop())['$end_with?'](")"))) {
23527
+
23528
+ target = target.$chop();
23529
+ suffix = ");";
23530
+ } else {
23531
+ suffix = ";"
23532
+ };
23533
+ if (target['$==']((($c = $gvars['~']) === nil ? nil : $c['$[]'](3)))) {
23534
+ return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};}
23535
+ else if (":"['$===']($case)) {
23536
+ if ($truthy((target = target.$chop())['$end_with?'](")"))) {
23537
+
23538
+ target = target.$chop();
23539
+ suffix = "):";
23540
+ } else {
23541
+ suffix = ":"
23542
+ };
23543
+ if (target['$==']((($c = $gvars['~']) === nil ? nil : $c['$[]'](3)))) {
23544
+ return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};};
23488
23545
  };
23489
- if ($truthy(target['$end_with?']("://"))) {
23490
- return (($c = $gvars['~']) === nil ? nil : $c['$[]'](0));};};
23491
- };
23492
- $c = [nil, $hash2(["type"], {"type": "link"})], (attrs = $c[0]), (link_opts = $c[1]), $c;
23493
- if ($truthy(link_text)) {
23494
-
23495
- if ($truthy(link_text['$include?']($$($nesting, 'R_SB')))) {
23496
- new_link_text = (link_text = link_text.$gsub($$($nesting, 'ESC_R_SB'), $$($nesting, 'R_SB')))};
23497
- if ($truthy(($truthy($c = doc.$compat_mode()['$!']()) ? link_text['$include?']("=") : $c))) {
23546
+ link_opts = $hash2(["type"], {"type": "link"});
23547
+ if ($truthy(link_text)) {
23498
23548
 
23499
- $d = self.$extract_attributes_from_text(link_text, ""), $c = Opal.to_ary($d), (link_text = ($c[0] == null ? nil : $c[0])), (attrs = ($c[1] == null ? nil : $c[1])), $d;
23500
- new_link_text = link_text;
23501
-
23502
- $writer = ["id", attrs['$[]']("id")];
23503
- $send(link_opts, '[]=', Opal.to_a($writer));
23504
- $writer[$rb_minus($writer["length"], 1)];;};
23505
- if ($truthy(link_text['$end_with?']("^"))) {
23506
-
23507
- new_link_text = (link_text = link_text.$chop());
23508
- if ($truthy(attrs)) {
23509
- ($truthy($c = attrs['$[]']("window")) ? $c : (($writer = ["window", "_blank"]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))
23510
- } else {
23511
- attrs = $hash2(["window"], {"window": "_blank"})
23512
- };};
23513
- if ($truthy(($truthy($c = new_link_text) ? new_link_text['$empty?']() : $c))) {
23549
+ if ($truthy(link_text['$include?']($$($nesting, 'R_SB')))) {
23550
+ new_link_text = (link_text = link_text.$gsub($$($nesting, 'ESC_R_SB'), $$($nesting, 'R_SB')))};
23551
+ if ($truthy(($truthy($c = doc.$compat_mode()['$!']()) ? link_text['$include?']("=") : $c))) {
23552
+
23553
+ $d = self.$extract_attributes_from_text(link_text, ""), $c = Opal.to_ary($d), (link_text = ($c[0] == null ? nil : $c[0])), (attrs = ($c[1] == null ? nil : $c[1])), $d;
23554
+ new_link_text = link_text;
23555
+
23556
+ $writer = ["id", attrs['$[]']("id")];
23557
+ $send(link_opts, '[]=', Opal.to_a($writer));
23558
+ $writer[$rb_minus($writer["length"], 1)];;};
23559
+ if ($truthy(link_text['$end_with?']("^"))) {
23560
+
23561
+ new_link_text = (link_text = link_text.$chop());
23562
+ if ($truthy(attrs)) {
23563
+ ($truthy($c = attrs['$[]']("window")) ? $c : (($writer = ["window", "_blank"]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))
23564
+ } else {
23565
+ attrs = $hash2(["window"], {"window": "_blank"})
23566
+ };};
23567
+ if ($truthy(($truthy($c = new_link_text) ? new_link_text['$empty?']() : $c))) {
23568
+
23569
+ link_text = (function() {if ($truthy(doc_attrs['$key?']("hide-uri-scheme"))) {
23570
+
23571
+ return target.$sub($$($nesting, 'UriSniffRx'), "");
23572
+ } else {
23573
+ return target
23574
+ }; return nil; })();
23575
+ bare = true;};
23576
+ } else {
23514
23577
 
23515
23578
  link_text = (function() {if ($truthy(doc_attrs['$key?']("hide-uri-scheme"))) {
23516
23579
 
@@ -23518,37 +23581,29 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
23518
23581
  } else {
23519
23582
  return target
23520
23583
  }; return nil; })();
23521
- bare = true;};
23522
- } else {
23523
-
23524
- link_text = (function() {if ($truthy(doc_attrs['$key?']("hide-uri-scheme"))) {
23525
-
23526
- return target.$sub($$($nesting, 'UriSniffRx'), "");
23527
- } else {
23528
- return target
23529
- }; return nil; })();
23530
- bare = true;
23531
- };
23532
- if ($truthy(bare)) {
23584
+ bare = true;
23585
+ };
23586
+ if ($truthy(bare)) {
23587
+ if ($truthy(attrs)) {
23588
+
23589
+ $writer = ["role", (function() {if ($truthy(attrs['$key?']("role"))) {
23590
+ return "" + "bare " + (attrs['$[]']("role"))
23591
+ } else {
23592
+ return "bare"
23593
+ }; return nil; })()];
23594
+ $send(attrs, '[]=', Opal.to_a($writer));
23595
+ $writer[$rb_minus($writer["length"], 1)];
23596
+ } else {
23597
+ attrs = $hash2(["role"], {"role": "bare"})
23598
+ }};
23599
+ doc.$register("links", (($writer = ["target", target]), $send(link_opts, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]));
23533
23600
  if ($truthy(attrs)) {
23534
23601
 
23535
- $writer = ["role", (function() {if ($truthy(attrs['$key?']("role"))) {
23536
- return "" + "bare " + (attrs['$[]']("role"))
23537
- } else {
23538
- return "bare"
23539
- }; return nil; })()];
23540
- $send(attrs, '[]=', Opal.to_a($writer));
23541
- $writer[$rb_minus($writer["length"], 1)];
23542
- } else {
23543
- attrs = $hash2(["role"], {"role": "bare"})
23544
- }};
23545
- doc.$register("links", (($writer = ["target", target]), $send(link_opts, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]));
23546
- if ($truthy(attrs)) {
23547
-
23548
- $writer = ["attributes", attrs];
23549
- $send(link_opts, '[]=', Opal.to_a($writer));
23550
- $writer[$rb_minus($writer["length"], 1)];};
23551
- return "" + (prefix) + ($$($nesting, 'Inline').$new(self, "anchor", link_text, link_opts).$convert()) + (suffix);}, $$34.$$s = self, $$34.$$arity = 0, $$34))};
23602
+ $writer = ["attributes", attrs];
23603
+ $send(link_opts, '[]=', Opal.to_a($writer));
23604
+ $writer[$rb_minus($writer["length"], 1)];};
23605
+ return "" + (prefix) + ($$($nesting, 'Inline').$new(self, "anchor", link_text, link_opts).$convert()) + (suffix);
23606
+ }}, $$34.$$s = self, $$34.$$arity = 0, $$34))};
23552
23607
  if ($truthy(($truthy($a = found_macroish) ? ($truthy($b = text['$include?']("link:")) ? $b : text['$include?']("ilto:")) : $a))) {
23553
23608
  text = $send(text, 'gsub', [$$($nesting, 'InlineLinkMacroRx')], ($$35 = function(){var self = $$35.$$s || this, $c, $d, mailto = nil, target = nil, mailto_text = nil, attrs = nil, link_opts = nil, link_text = nil, $writer = nil;
23554
23609
 
@@ -23686,7 +23741,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
23686
23741
  };
23687
23742
  if ($truthy(doc.$compat_mode())) {
23688
23743
  fragment = refid
23689
- } else if ($truthy((hash_idx = refid.$index("#")))) {
23744
+ } else if ($truthy(($truthy($c = (hash_idx = refid.$index("#"))) ? refid['$[]']($rb_minus(hash_idx, 1))['$!=']("&") : $c))) {
23690
23745
  if ($truthy($rb_gt(hash_idx, 0))) {
23691
23746
 
23692
23747
  if ($truthy($rb_gt((fragment_len = $rb_minus($rb_minus(refid.$length(), 1), hash_idx)), 0))) {
@@ -24037,13 +24092,20 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24037
24092
  return "" + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))) + "[" + (attrlist) + "]" + ($rb_times($$($nesting, 'RS'), $rb_minus(escape_count, 1))) + (boundary) + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](5))) + (boundary);
24038
24093
  } else if ((($c = $gvars['~']) === nil ? nil : $c['$[]'](1))['$==']($$($nesting, 'RS'))) {
24039
24094
  preceding = "" + "[" + (attrlist) + "]"
24040
- } else {
24041
-
24042
- if ($truthy((($c = boundary['$==']("++")) ? attrlist['$end_with?']("x-") : boundary['$==']("++")))) {
24095
+ } else if (boundary['$==']("++")) {
24096
+ if (attrlist['$==']("x-")) {
24043
24097
 
24044
24098
  old_behavior = true;
24045
- attrlist = attrlist.$slice(0, $rb_minus(attrlist.$length(), 2));};
24046
- attributes = self.$parse_quoted_text_attributes(attrlist);
24099
+ attributes = $hash2([], {});
24100
+ } else if ($truthy(attrlist['$end_with?'](" x-"))) {
24101
+
24102
+ old_behavior = true;
24103
+ attributes = self.$parse_quoted_text_attributes(attrlist.$slice(0, $rb_minus(attrlist.$length(), 3)));
24104
+ } else {
24105
+ attributes = self.$parse_quoted_text_attributes(attrlist)
24106
+ }
24107
+ } else {
24108
+ attributes = self.$parse_quoted_text_attributes(attrlist)
24047
24109
  }
24048
24110
  } else if ($truthy($rb_gt((escape_count = (($c = $gvars['~']) === nil ? nil : $c['$[]'](3)).$length()), 0))) {
24049
24111
  return "" + ($rb_times($$($nesting, 'RS'), $rb_minus(escape_count, 1))) + (boundary) + ((($c = $gvars['~']) === nil ? nil : $c['$[]'](5))) + (boundary);};
@@ -24089,33 +24151,42 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24089
24151
  return "" + (($truthy($c = preceding) ? $c : "")) + ($$($nesting, 'PASS_START')) + (passthru_key) + ($$($nesting, 'PASS_END'));}, $$53.$$s = self, $$53.$$arity = 0, $$53))};
24090
24152
  $b = $$($nesting, 'InlinePassRx')['$[]'](compat_mode), $a = Opal.to_ary($b), (pass_inline_char1 = ($a[0] == null ? nil : $a[0])), (pass_inline_char2 = ($a[1] == null ? nil : $a[1])), (pass_inline_rx = ($a[2] == null ? nil : $a[2])), $b;
24091
24153
  if ($truthy(($truthy($a = text['$include?'](pass_inline_char1)) ? $a : ($truthy($b = pass_inline_char2) ? text['$include?'](pass_inline_char2) : $b)))) {
24092
- text = $send(text, 'gsub', [pass_inline_rx], ($$54 = function(){var self = $$54.$$s || this, $c, preceding = nil, attrlist = nil, quoted_text = nil, escape_mark = nil, format_mark = nil, content = nil, old_behavior = nil, attributes = nil, $writer = nil, passthru_key = nil, subs = nil;
24154
+ text = $send(text, 'gsub', [pass_inline_rx], ($$54 = function(){var self = $$54.$$s || this, $c, $d, preceding = nil, attrlist = nil, escaped = nil, quoted_text = nil, format_mark = nil, content = nil, old_behavior = nil, old_behavior_forced = nil, attributes = nil, $writer = nil, passthru_key = nil, subs = nil;
24093
24155
 
24094
24156
 
24095
24157
  preceding = (($c = $gvars['~']) === nil ? nil : $c['$[]'](1));
24096
- attrlist = (($c = $gvars['~']) === nil ? nil : $c['$[]'](2));
24097
- if ($truthy((quoted_text = (($c = $gvars['~']) === nil ? nil : $c['$[]'](3)))['$start_with?']($$($nesting, 'RS')))) {
24098
- escape_mark = $$($nesting, 'RS')};
24099
- format_mark = (($c = $gvars['~']) === nil ? nil : $c['$[]'](4));
24100
- content = (($c = $gvars['~']) === nil ? nil : $c['$[]'](5));
24158
+ attrlist = ($truthy($c = (($d = $gvars['~']) === nil ? nil : $d['$[]'](4))) ? $c : (($d = $gvars['~']) === nil ? nil : $d['$[]'](3)));
24159
+ if ($truthy((($c = $gvars['~']) === nil ? nil : $c['$[]'](5)))) {
24160
+ escaped = true};
24161
+ quoted_text = (($c = $gvars['~']) === nil ? nil : $c['$[]'](6));
24162
+ format_mark = (($c = $gvars['~']) === nil ? nil : $c['$[]'](7));
24163
+ content = (($c = $gvars['~']) === nil ? nil : $c['$[]'](8));
24101
24164
  if ($truthy(compat_mode)) {
24102
24165
  old_behavior = true
24103
- } else if ($truthy((old_behavior = ($truthy($c = attrlist) ? attrlist['$end_with?']("x-") : $c)))) {
24104
- attrlist = attrlist.$slice(0, $rb_minus(attrlist.$length(), 2))};
24166
+ } else if ($truthy(($truthy($c = attrlist) ? ($truthy($d = attrlist['$==']("x-")) ? $d : attrlist['$end_with?'](" x-")) : $c))) {
24167
+ old_behavior = (old_behavior_forced = true)};
24105
24168
  if ($truthy(attrlist)) {
24106
- if ($truthy((($c = format_mark['$==']("`")) ? old_behavior['$!']() : format_mark['$==']("`")))) {
24107
- return self.$extract_inner_passthrough(content, "" + (preceding) + "[" + (attrlist) + "]" + (escape_mark));
24108
- } else if ($truthy(escape_mark)) {
24169
+ if ($truthy(escaped)) {
24109
24170
  return "" + (preceding) + "[" + (attrlist) + "]" + (quoted_text.$slice(1, quoted_text.$length()));
24110
24171
  } else if (preceding['$==']($$($nesting, 'RS'))) {
24111
- preceding = "" + "[" + (attrlist) + "]"
24172
+
24173
+ if ($truthy(($truthy($c = old_behavior_forced) ? format_mark['$==']("`") : $c))) {
24174
+ return "" + (preceding) + "[" + (attrlist) + "]" + (quoted_text);};
24175
+ preceding = "" + "[" + (attrlist) + "]";
24176
+ } else if ($truthy(old_behavior_forced)) {
24177
+ attributes = (function() {if (attrlist['$==']("x-")) {
24178
+ return $hash2([], {})
24179
+ } else {
24180
+
24181
+ return self.$parse_quoted_text_attributes(attrlist.$slice(0, $rb_minus(attrlist.$length(), 3)));
24182
+ }; return nil; })()
24112
24183
  } else {
24113
24184
  attributes = self.$parse_quoted_text_attributes(attrlist)
24114
24185
  }
24115
- } else if ($truthy((($c = format_mark['$==']("`")) ? old_behavior['$!']() : format_mark['$==']("`")))) {
24116
- return self.$extract_inner_passthrough(content, "" + (preceding) + (escape_mark));
24117
- } else if ($truthy(escape_mark)) {
24118
- return "" + (preceding) + (quoted_text.$slice(1, quoted_text.$length()));};
24186
+ } else if ($truthy(escaped)) {
24187
+ return "" + (preceding) + (quoted_text.$slice(1, quoted_text.$length()));
24188
+ } else if ($truthy(($truthy($c = compat_mode) ? preceding['$==']($$($nesting, 'RS')) : $c))) {
24189
+ return quoted_text;};
24119
24190
  if ($truthy(compat_mode)) {
24120
24191
 
24121
24192
  $writer = [(passthru_key = passthrus.$size()), $hash2(["text", "subs", "attributes", "type"], {"text": content, "subs": $$($nesting, 'BASIC_SUBS'), "attributes": attributes, "type": "monospaced"})];
@@ -24549,27 +24620,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24549
24620
  };}, $$71.$$s = self, $$71.$$arity = 1, $$71)).$join($$($nesting, 'LF')));
24550
24621
  }, $Substitutors_restore_callouts$70.$$arity = -3);
24551
24622
 
24552
- Opal.def(self, '$extract_inner_passthrough', $Substitutors_extract_inner_passthrough$73 = function $$extract_inner_passthrough(text, pre) {
24553
- var $a, $b, self = this, $writer = nil, passthru_key = nil;
24554
- if (self.passthroughs == null) self.passthroughs = nil;
24555
-
24556
- if ($truthy(($truthy($a = ($truthy($b = text['$end_with?']("+")) ? text['$start_with?']("+", "\\+") : $b)) ? $$($nesting, 'SinglePlusInlinePassRx')['$=~'](text) : $a))) {
24557
- if ($truthy((($a = $gvars['~']) === nil ? nil : $a['$[]'](1)))) {
24558
- return "" + (pre) + "`+" + ((($a = $gvars['~']) === nil ? nil : $a['$[]'](2))) + "+`"
24559
- } else {
24560
-
24561
-
24562
- $writer = [(passthru_key = self.passthroughs.$size()), $hash2(["text", "subs"], {"text": (($a = $gvars['~']) === nil ? nil : $a['$[]'](2)), "subs": $$($nesting, 'BASIC_SUBS')})];
24563
- $send(self.passthroughs, '[]=', Opal.to_a($writer));
24564
- $writer[$rb_minus($writer["length"], 1)];;
24565
- return "" + (pre) + "`" + ($$($nesting, 'PASS_START')) + (passthru_key) + ($$($nesting, 'PASS_END')) + "`";
24566
- }
24567
- } else {
24568
- return "" + (pre) + "`" + (text) + "`"
24569
- }
24570
- }, $Substitutors_extract_inner_passthrough$73.$$arity = 2);
24571
-
24572
- Opal.def(self, '$convert_quoted_text', $Substitutors_convert_quoted_text$74 = function $$convert_quoted_text(match, type, scope) {
24623
+ Opal.def(self, '$convert_quoted_text', $Substitutors_convert_quoted_text$73 = function $$convert_quoted_text(match, type, scope) {
24573
24624
  var $a, self = this, attrs = nil, unescaped_attrs = nil, attrlist = nil, id = nil, attributes = nil;
24574
24625
 
24575
24626
 
@@ -24600,9 +24651,9 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24600
24651
  type = "unquoted"};};
24601
24652
  return $$($nesting, 'Inline').$new(self, "quoted", match['$[]'](2), $hash2(["type", "id", "attributes"], {"type": type, "id": id, "attributes": attributes})).$convert();
24602
24653
  };
24603
- }, $Substitutors_convert_quoted_text$74.$$arity = 3);
24654
+ }, $Substitutors_convert_quoted_text$73.$$arity = 3);
24604
24655
 
24605
- Opal.def(self, '$do_replacement', $Substitutors_do_replacement$75 = function $$do_replacement(m, replacement, restore) {
24656
+ Opal.def(self, '$do_replacement', $Substitutors_do_replacement$74 = function $$do_replacement(m, replacement, restore) {
24606
24657
  var self = this, captured = nil, $case = nil;
24607
24658
 
24608
24659
  if ($truthy((captured = m['$[]'](0))['$include?']($$($nesting, 'RS')))) {
@@ -24613,13 +24664,13 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24613
24664
  else if ("bounding"['$===']($case)) {return $rb_plus($rb_plus(m['$[]'](1), replacement), m['$[]'](2))}
24614
24665
  else {return $rb_plus(m['$[]'](1), replacement)}})()
24615
24666
  }
24616
- }, $Substitutors_do_replacement$75.$$arity = 3);
24667
+ }, $Substitutors_do_replacement$74.$$arity = 3);
24617
24668
  if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
24618
24669
  } else {
24619
24670
  nil
24620
24671
  };
24621
24672
 
24622
- Opal.def(self, '$parse_quoted_text_attributes', $Substitutors_parse_quoted_text_attributes$76 = function $$parse_quoted_text_attributes(str) {
24673
+ Opal.def(self, '$parse_quoted_text_attributes', $Substitutors_parse_quoted_text_attributes$75 = function $$parse_quoted_text_attributes(str) {
24623
24674
  var $a, $b, self = this, before = nil, _ = nil, after = nil, attrs = nil, $writer = nil, id = nil, roles = nil;
24624
24675
 
24625
24676
 
@@ -24671,9 +24722,9 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24671
24722
  } else {
24672
24723
  return $hash2(["role"], {"role": str})
24673
24724
  };
24674
- }, $Substitutors_parse_quoted_text_attributes$76.$$arity = 1);
24725
+ }, $Substitutors_parse_quoted_text_attributes$75.$$arity = 1);
24675
24726
 
24676
- Opal.def(self, '$normalize_text', $Substitutors_normalize_text$77 = function $$normalize_text(text, normalize_whitespace, unescape_closing_square_brackets) {
24727
+ Opal.def(self, '$normalize_text', $Substitutors_normalize_text$76 = function $$normalize_text(text, normalize_whitespace, unescape_closing_square_brackets) {
24677
24728
  var $a, self = this;
24678
24729
 
24679
24730
 
@@ -24694,10 +24745,10 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24694
24745
  text = text.$gsub($$($nesting, 'ESC_R_SB'), $$($nesting, 'R_SB'))};
24695
24746
  };
24696
24747
  return text;
24697
- }, $Substitutors_normalize_text$77.$$arity = -2);
24748
+ }, $Substitutors_normalize_text$76.$$arity = -2);
24698
24749
 
24699
- Opal.def(self, '$split_simple_csv', $Substitutors_split_simple_csv$78 = function $$split_simple_csv(str) {
24700
- var $$79, $$80, self = this, values = nil, accum = nil, quote_open = nil;
24750
+ Opal.def(self, '$split_simple_csv', $Substitutors_split_simple_csv$77 = function $$split_simple_csv(str) {
24751
+ var $$78, $$79, self = this, values = nil, accum = nil, quote_open = nil;
24701
24752
 
24702
24753
  if ($truthy(str['$empty?']())) {
24703
24754
  return []
@@ -24706,7 +24757,7 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24706
24757
  values = [];
24707
24758
  accum = "";
24708
24759
  quote_open = nil;
24709
- $send(str, 'each_char', [], ($$79 = function(c){var self = $$79.$$s || this, $case = nil;
24760
+ $send(str, 'each_char', [], ($$78 = function(c){var self = $$78.$$s || this, $case = nil;
24710
24761
 
24711
24762
 
24712
24763
 
@@ -24722,19 +24773,19 @@ Opal.modules["asciidoctor/substitutors"] = function(Opal) {
24722
24773
  return (accum = "");
24723
24774
  }}
24724
24775
  else if ("\""['$===']($case)) {return (quote_open = quote_open['$!']())}
24725
- else {return (accum = $rb_plus(accum, c))}})();}, $$79.$$s = self, $$79.$$arity = 1, $$79));
24776
+ else {return (accum = $rb_plus(accum, c))}})();}, $$78.$$s = self, $$78.$$arity = 1, $$78));
24726
24777
  return values['$<<'](accum.$strip());
24727
24778
  } else {
24728
- return $send(str.$split(","), 'map', [], ($$80 = function(it){var self = $$80.$$s || this;
24779
+ return $send(str.$split(","), 'map', [], ($$79 = function(it){var self = $$79.$$s || this;
24729
24780
 
24730
24781
 
24731
24782
 
24732
24783
  if (it == null) {
24733
24784
  it = nil;
24734
24785
  };
24735
- return it.$strip();}, $$80.$$s = self, $$80.$$arity = 1, $$80))
24786
+ return it.$strip();}, $$79.$$s = self, $$79.$$arity = 1, $$79))
24736
24787
  }
24737
- }, $Substitutors_split_simple_csv$78.$$arity = 1);
24788
+ }, $Substitutors_split_simple_csv$77.$$arity = 1);
24738
24789
  })($nesting[0], $nesting)
24739
24790
  })($nesting[0], $nesting)
24740
24791
  };
@@ -24748,7 +24799,7 @@ Opal.modules["asciidoctor/version"] = function(Opal) {
24748
24799
 
24749
24800
  var $nesting = [self].concat($parent_nesting);
24750
24801
 
24751
- Opal.const_set($nesting[0], 'VERSION', "2.0.16")
24802
+ Opal.const_set($nesting[0], 'VERSION', "2.0.22")
24752
24803
  })($nesting[0], $nesting)
24753
24804
  };
24754
24805
 
@@ -24762,7 +24813,7 @@ Opal.modules["asciidoctor/abstract_node"] = function(Opal) {
24762
24813
  }
24763
24814
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $hash2 = Opal.hash2, $truthy = Opal.truthy, $send = Opal.send;
24764
24815
 
24765
- Opal.add_stubs(['$include', '$attr_reader', '$attr_accessor', '$==', '$document', '$to_s', '$[]', '$merge', '$raise', '$converter', '$attributes', '$key?', '$[]=', '$-', '$delete', '$tap', '$new', '$each_key', '$end_with?', '$<<', '$slice', '$length', '$update', '$split', '$include?', '$===', '$join', '$empty?', '$apply_reftext_subs', '$attr?', '$attr', '$extname?', '$image_uri', '$<', '$safe', '$uriish?', '$encode_spaces_in_uri', '$normalize_web_path', '$generate_data_uri_from_uri', '$generate_data_uri', '$extname', '$normalize_system_path', '$readable?', '$strict_encode64', '$binread', '$warn', '$logger', '$require_library', '$!', '$open_uri', '$content_type', '$read', '$base_dir', '$root?', '$path_resolver', '$system_path', '$web_path', '$!=', '$prepare_source_string', '$fetch', '$read_asset']);
24816
+ Opal.add_stubs(['$include', '$attr_reader', '$attr_accessor', '$==', '$document', '$to_s', '$[]', '$merge', '$raise', '$converter', '$attributes', '$key?', '$[]=', '$-', '$delete', '$tap', '$new', '$each_key', '$end_with?', '$<<', '$slice', '$length', '$update', '$split', '$include?', '$===', '$join', '$empty?', '$apply_reftext_subs', '$attr?', '$attr', '$extname?', '$image_uri', '$<', '$safe', '$uriish?', '$encode_spaces_in_uri', '$normalize_web_path', '$generate_data_uri_from_uri', '$generate_data_uri', '$extname', '$normalize_system_path', '$readable?', '$pack', '$binread', '$warn', '$logger', '$require_library', '$!', '$open_uri', '$content_type', '$read', '$base_dir', '$root?', '$path_resolver', '$system_path', '$web_path', '$!=', '$prepare_source_string', '$fetch', '$read_asset']);
24766
24817
  return (function($base, $parent_nesting) {
24767
24818
  var self = $module($base, 'Asciidoctor');
24768
24819
 
@@ -25167,7 +25218,7 @@ Opal.modules["asciidoctor/abstract_node"] = function(Opal) {
25167
25218
  image_path = self.$normalize_system_path(target_image)
25168
25219
  };
25169
25220
  if ($truthy($$$('::', 'File')['$readable?'](image_path))) {
25170
- return "" + "data:" + (mimetype) + ";base64," + ($$$('::', 'Base64').$strict_encode64($$$('::', 'File').$binread(image_path)))
25221
+ return "" + "data:" + (mimetype) + ";base64," + ([$$$('::', 'File').$binread(image_path)].$pack("m0"))
25171
25222
  } else {
25172
25223
 
25173
25224
  self.$logger().$warn("" + "image to embed not found or not readable: " + (image_path));
@@ -25198,7 +25249,7 @@ Opal.modules["asciidoctor/abstract_node"] = function(Opal) {
25198
25249
  f = nil;
25199
25250
  };
25200
25251
  return [f.$content_type(), f.$read()];}, $$30.$$s = self, $$30.$$arity = 1, $$30)), $a = Opal.to_ary($b), (mimetype = ($a[0] == null ? nil : $a[0])), (bindata = ($a[1] == null ? nil : $a[1])), $b;
25201
- return "" + "data:" + (mimetype) + ";base64," + ($$$('::', 'Base64').$strict_encode64(bindata));
25252
+ return "" + "data:" + (mimetype) + ";base64," + ([bindata].$pack("m0"));
25202
25253
  } catch ($err) {
25203
25254
  if (Opal.rescue($err, [$$($nesting, 'StandardError')])) {
25204
25255
  try {
@@ -25374,15 +25425,12 @@ Opal.modules["asciidoctor/abstract_block"] = function(Opal) {
25374
25425
  function $rb_minus(lhs, rhs) {
25375
25426
  return (typeof(lhs) === 'number' && typeof(rhs) === 'number') ? lhs - rhs : lhs['$-'](rhs);
25376
25427
  }
25377
- function $rb_gt(lhs, rhs) {
25378
- return (typeof(lhs) === 'number' && typeof(rhs) === 'number') ? lhs > rhs : lhs['$>'](rhs);
25379
- }
25380
25428
  function $rb_plus(lhs, rhs) {
25381
25429
  return (typeof(lhs) === 'number' && typeof(rhs) === 'number') ? lhs + rhs : lhs['$+'](rhs);
25382
25430
  }
25383
25431
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $hash2 = Opal.hash2, $send = Opal.send, $truthy = Opal.truthy;
25384
25432
 
25385
- Opal.add_stubs(['$attr_reader', '$attr_writer', '$attr_accessor', '$==', '$===', '$level', '$file', '$lineno', '$playback_attributes', '$convert', '$converter', '$join', '$map', '$to_s', '$parent', '$parent=', '$-', '$<<', '$empty?', '$>', '$Integer', '$find_by_internal', '$to_proc', '$context', '$[]', '$items', '$+', '$find_index', '$include?', '$next_adjacent_block', '$blocks', '$select', '$sub_specialchars', '$match?', '$sub_replacements', '$title', '$apply_title_subs', '$delete', '$reftext', '$!', '$nil_or_empty?', '$sub_placeholder', '$sub_quotes', '$compat_mode', '$attributes', '$chomp', '$increment_and_store_counter', '$index=', '$numbered', '$sectname', '$counter', '$numeral=', '$numeral', '$caption=', '$int_to_roman', '$each', '$assign_numeral', '$reindex_sections', '$protected', '$has_role?', '$raise', '$header?', '$!=', '$flatten', '$head', '$rows', '$merge', '$body', '$foot', '$style', '$inner_document']);
25433
+ Opal.add_stubs(['$attr_reader', '$attr_writer', '$attr_accessor', '$==', '$===', '$level', '$file', '$lineno', '$playback_attributes', '$convert', '$converter', '$join', '$map', '$to_s', '$parent', '$parent=', '$-', '$<<', '$empty?', '$Integer', '$find_by_internal', '$to_proc', '$context', '$[]', '$items', '$+', '$find_index', '$include?', '$next_adjacent_block', '$blocks', '$select', '$sub_specialchars', '$match?', '$sub_replacements', '$title', '$apply_title_subs', '$delete', '$reftext', '$!', '$nil_or_empty?', '$sub_placeholder', '$sub_quotes', '$compat_mode', '$attributes', '$chomp', '$increment_and_store_counter', '$index=', '$numbered', '$sectname', '$counter', '$numeral=', '$numeral', '$caption=', '$int_to_roman', '$each', '$assign_numeral', '$reindex_sections', '$protected', '$has_role?', '$raise', '$header?', '$!=', '$flatten', '$head', '$rows', '$merge', '$body', '$foot', '$style', '$inner_document']);
25386
25434
  return (function($base, $parent_nesting) {
25387
25435
  var self = $module($base, 'Asciidoctor');
25388
25436
 
@@ -25393,7 +25441,7 @@ Opal.modules["asciidoctor/abstract_block"] = function(Opal) {
25393
25441
 
25394
25442
  var $nesting = [self].concat($parent_nesting), $AbstractBlock_initialize$1, $AbstractBlock_block$ques$2, $AbstractBlock_inline$ques$3, $AbstractBlock_file$4, $AbstractBlock_lineno$5, $AbstractBlock_convert$6, $AbstractBlock_content$7, $AbstractBlock_context$eq$9, $AbstractBlock_$lt$lt$10, $AbstractBlock_blocks$ques$11, $AbstractBlock_sections$ques$12, $AbstractBlock_number$13, $AbstractBlock_number$eq$14, $AbstractBlock_find_by$15, $AbstractBlock_next_adjacent_block$16, $AbstractBlock_sections$18, $AbstractBlock_alt$20, $AbstractBlock_caption$21, $AbstractBlock_captioned_title$22, $AbstractBlock_list_marker_keyword$23, $AbstractBlock_title$24, $AbstractBlock_title$ques$25, $AbstractBlock_title$eq$26, $AbstractBlock_sub$ques$27, $AbstractBlock_remove_sub$28, $AbstractBlock_xreftext$29, $AbstractBlock_assign_caption$30, $AbstractBlock_assign_numeral$31, $AbstractBlock_reindex_sections$32, $AbstractBlock_find_by_internal$34;
25395
25443
 
25396
- self.$$prototype.source_location = self.$$prototype.document = self.$$prototype.attributes = self.$$prototype.blocks = self.$$prototype.next_section_index = self.$$prototype.numeral = self.$$prototype.context = self.$$prototype.parent = self.$$prototype.caption = self.$$prototype.style = self.$$prototype.converted_title = self.$$prototype.title = self.$$prototype.subs = self.$$prototype.next_section_ordinal = self.$$prototype.id = self.$$prototype.header = nil;
25444
+ self.$$prototype.source_location = self.$$prototype.document = self.$$prototype.attributes = self.$$prototype.blocks = self.$$prototype.numeral = self.$$prototype.context = self.$$prototype.parent = self.$$prototype.caption = self.$$prototype.style = self.$$prototype.converted_title = self.$$prototype.title = self.$$prototype.subs = self.$$prototype.next_section_index = self.$$prototype.next_section_ordinal = self.$$prototype.id = self.$$prototype.header = nil;
25397
25445
 
25398
25446
  self.$attr_reader("blocks");
25399
25447
  self.$attr_writer("caption");
@@ -25514,7 +25562,7 @@ Opal.modules["asciidoctor/abstract_block"] = function(Opal) {
25514
25562
  Opal.def(self, '$sections?', $AbstractBlock_sections$ques$12 = function() {
25515
25563
  var self = this;
25516
25564
 
25517
- return $rb_gt(self.next_section_index, 0)
25565
+ return false
25518
25566
  }, $AbstractBlock_sections$ques$12.$$arity = 0);
25519
25567
 
25520
25568
  Opal.def(self, '$number', $AbstractBlock_number$13 = function $$number() {
@@ -26329,7 +26377,7 @@ Opal.modules["asciidoctor/block"] = function(Opal) {
26329
26377
  else if ("verbatim"['$===']($case) || "raw"['$===']($case)) {
26330
26378
  result = self.$apply_subs(self.lines, self.subs);
26331
26379
  if ($truthy($rb_lt(result.$size(), 2))) {
26332
- return result['$[]'](0)
26380
+ return ($truthy($a = result['$[]'](0)) ? $a : "")
26333
26381
  } else {
26334
26382
 
26335
26383
  while ($truthy(($truthy($b = (first = result['$[]'](0))) ? first.$rstrip()['$empty?']() : $b))) {
@@ -26343,7 +26391,7 @@ Opal.modules["asciidoctor/block"] = function(Opal) {
26343
26391
  else {
26344
26392
  if (self.content_model['$==']("empty")) {
26345
26393
  } else {
26346
- self.$logger().$warn("" + "Unknown content model '" + (self.content_model) + "' for block: " + (self))
26394
+ self.$logger().$warn("" + "unknown content model '" + (self.content_model) + "' for block: " + (self))
26347
26395
  };
26348
26396
  return nil;}})()
26349
26397
  }, $Block_content$2.$$arity = 0);
@@ -26496,7 +26544,7 @@ Opal.modules["asciidoctor/converter"] = function(Opal) {
26496
26544
  }
26497
26545
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $hash2 = Opal.hash2, $truthy = Opal.truthy, $send = Opal.send, $klass = Opal.klass, $gvars = Opal.gvars;
26498
26546
 
26499
- Opal.add_stubs(['$autoload', '$__dir__', '$attr_reader', '$raise', '$class', '$[]', '$sub', '$slice', '$length', '$==', '$[]=', '$backend_traits', '$-', '$derive_backend_traits', '$register', '$map', '$to_s', '$new', '$create', '$default', '$each', '$default=', '$registry', '$for', '$===', '$supports_templates?', '$merge', '$private', '$include', '$delete', '$clear', '$send', '$extend', '$private_class_method', '$node_name', '$+', '$receiver', '$name', '$warn', '$logger', '$respond_to?', '$content']);
26547
+ Opal.add_stubs(['$autoload', '$__dir__', '$==', '$attr_reader', '$raise', '$class', '$[]', '$sub', '$slice', '$length', '$[]=', '$backend_traits', '$-', '$derive_backend_traits', '$register', '$map', '$to_s', '$new', '$create', '$default', '$each', '$default=', '$registry', '$for', '$===', '$supports_templates?', '$merge', '$private', '$include', '$delete', '$clear', '$send', '$extend', '$private_class_method', '$node_name', '$+', '$receiver', '$name', '$warn', '$logger', '$respond_to?', '$content']);
26500
26548
  return (function($base, $parent_nesting) {
26501
26549
  var self = $module($base, 'Asciidoctor');
26502
26550
 
@@ -26509,7 +26557,10 @@ Opal.modules["asciidoctor/converter"] = function(Opal) {
26509
26557
 
26510
26558
 
26511
26559
  self.$autoload("CompositeConverter", "" + (self.$__dir__()) + "/converter/composite");
26512
- self.$autoload("TemplateConverter", "" + (self.$__dir__()) + "/converter/template");
26560
+ if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
26561
+ } else {
26562
+ nil
26563
+ };
26513
26564
  self.$attr_reader("backend");
26514
26565
 
26515
26566
  Opal.def(self, '$initialize', $Converter_initialize$1 = function $$initialize(backend, opts) {
@@ -27037,7 +27088,7 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27037
27088
  }
27038
27089
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $send = Opal.send, $truthy = Opal.truthy, $hash2 = Opal.hash2, $hash = Opal.hash, $gvars = Opal.gvars;
27039
27090
 
27040
- Opal.add_stubs(['$new', '$attr_reader', '$nil?', '$<<', '$[]', '$[]=', '$-', '$include?', '$strip', '$squeeze', '$gsub', '$empty?', '$!', '$rpartition', '$attr_accessor', '$delete', '$base_dir', '$options', '$merge', '$catalog', '$instance_variable_get', '$attributes', '$safe', '$compat_mode', '$outfilesuffix', '$sourcemap', '$path_resolver', '$converter', '$extensions', '$syntax_highlighter', '$each', '$end_with?', '$start_with?', '$slice', '$length', '$chop', '$==', '$downcase', '$===', '$extname', '$value_for_name', '$key?', '$freeze', '$attribute_undefined', '$attribute_missing', '$update', '$&', '$keys', '$name_for_value', '$expand_path', '$pwd', '$to_s', '$>=', '$+', '$abs', '$to_i', '$delete_if', '$update_doctype_attributes', '$cursor', '$parse', '$restore_attributes', '$update_backend_attributes', '$fetch', '$fill_datetime_attributes', '$activate', '$groups', '$create', '$to_proc', '$preprocessors?', '$preprocessors', '$process_method', '$tree_processors?', '$tree_processors', '$!=', '$counter', '$attribute_locked?', '$nil_or_empty?', '$nextval', '$value', '$save_to', '$register', '$tap', '$xreftext', '$source', '$source_lines', '$doctitle', '$sectname=', '$title=', '$first_section', '$title', '$reftext', '$>', '$<', '$find', '$context', '$assign_numeral', '$clear_playback_attributes', '$save_attributes', '$name', '$negate', '$rewind', '$replace', '$apply_attribute_value_subs', '$delete?', '$start', '$doctype', '$content_model', '$warn', '$logger', '$content', '$convert', '$postprocessors?', '$postprocessors', '$record', '$write', '$respond_to?', '$chomp', '$class', '$write_alternate_pages', '$map', '$split', '$resolve_docinfo_subs', '$normalize_system_path', '$read_asset', '$apply_subs', '$docinfo_processors?', '$join', '$concat', '$compact', '$docinfo_processors', '$object_id', '$inspect', '$size', '$private', '$=~', '$resolve_pass_subs', '$apply_header_subs', '$limit_bytesize', '$bytesize', '$valid_encoding?', '$byteslice', '$resolve_subs', '$utc', '$at', '$Integer', '$now', '$index', '$strftime', '$year', '$utc_offset', '$partition', '$create_converter', '$basebackend', '$filetype', '$htmlsyntax', '$derive_backend_traits', '$raise']);
27091
+ Opal.add_stubs(['$new', '$attr_reader', '$nil?', '$<<', '$[]', '$[]=', '$-', '$include?', '$strip', '$squeeze', '$gsub', '$empty?', '$!', '$rpartition', '$attr_accessor', '$delete', '$base_dir', '$options', '$merge', '$catalog', '$instance_variable_get', '$attributes', '$safe', '$compat_mode', '$outfilesuffix', '$sourcemap', '$path_resolver', '$converter', '$extensions', '$syntax_highlighter', '$each', '$end_with?', '$start_with?', '$slice', '$length', '$chop', '$==', '$downcase', '$===', '$extname', '$value_for_name', '$key?', '$freeze', '$attribute_undefined', '$attribute_missing', '$update', '$&', '$keys', '$name_for_value', '$expand_path', '$pwd', '$to_s', '$>=', '$+', '$abs', '$to_i', '$delete_if', '$update_doctype_attributes', '$cursor', '$parse', '$restore_attributes', '$update_backend_attributes', '$fetch', '$fill_datetime_attributes', '$activate', '$groups', '$create', '$to_proc', '$preprocessors?', '$preprocessors', '$process_method', '$tree_processors?', '$tree_processors', '$!=', '$counter', '$attribute_locked?', '$nil_or_empty?', '$nextval', '$value', '$save_to', '$register', '$tap', '$xreftext', '$>', '$source', '$source_lines', '$doctitle', '$sectname=', '$title=', '$first_section', '$title', '$reftext', '$<', '$find', '$context', '$assign_numeral', '$clear_playback_attributes', '$save_attributes', '$name', '$negate', '$rewind', '$replace', '$apply_attribute_value_subs', '$delete?', '$start', '$doctype', '$content_model', '$warn', '$logger', '$content', '$convert', '$postprocessors?', '$postprocessors', '$record', '$write', '$respond_to?', '$chomp', '$class', '$write_alternate_pages', '$map', '$split', '$resolve_docinfo_subs', '$normalize_system_path', '$read_asset', '$apply_subs', '$docinfo_processors?', '$join', '$concat', '$compact', '$docinfo_processors', '$object_id', '$inspect', '$size', '$private', '$=~', '$resolve_pass_subs', '$apply_header_subs', '$limit_bytesize', '$bytesize', '$valid_encoding?', '$byteslice', '$resolve_subs', '$utc', '$at', '$Integer', '$now', '$index', '$strftime', '$year', '$utc_offset', '$partition', '$create_converter', '$basebackend', '$filetype', '$htmlsyntax', '$derive_backend_traits', '$raise']);
27041
27092
  return (function($base, $parent_nesting) {
27042
27093
  var self = $module($base, 'Asciidoctor');
27043
27094
 
@@ -27046,9 +27097,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27046
27097
  (function($base, $super, $parent_nesting) {
27047
27098
  var self = $klass($base, $super, 'Document');
27048
27099
 
27049
- var $nesting = [self].concat($parent_nesting), $Document$1, $Document_initialize$8, $Document_parse$11, $Document_parsed$ques$14, $Document_counter$15, $Document_increment_and_store_counter$16, $Document_register$17, $Document_resolve_id$18, $Document_footnotes$ques$22, $Document_footnotes$23, $Document_callouts$24, $Document_nested$ques$25, $Document_embedded$ques$26, $Document_extensions$ques$27, $Document_source$28, $Document_source_lines$29, $Document_basebackend$ques$30, $Document_title$31, $Document_title$eq$32, $Document_doctitle$33, $Document_xreftext$34, $Document_author$35, $Document_authors$36, $Document_revdate$37, $Document_notitle$38, $Document_noheader$39, $Document_nofooter$40, $Document_first_section$41, $Document_header$ques$43, $Document_$lt$lt$44, $Document_finalize_header$45, $Document_playback_attributes$46, $Document_restore_attributes$48, $Document_set_attribute$49, $Document_delete_attribute$50, $Document_attribute_locked$ques$51, $Document_set_header_attribute$52, $Document_convert$53, $Document_write$55, $Document_content$56, $Document_docinfo$57, $Document_docinfo_processors$ques$60, $Document_to_s$61, $Document_apply_attribute_value_subs$62, $Document_limit_bytesize$63, $Document_resolve_docinfo_subs$64, $Document_create_converter$65, $Document_clear_playback_attributes$66, $Document_save_attributes$67, $Document_fill_datetime_attributes$69, $Document_update_backend_attributes$70, $Document_update_doctype_attributes$71;
27100
+ var $nesting = [self].concat($parent_nesting), $Document$1, $Document_initialize$8, $Document_parse$11, $Document_parsed$ques$14, $Document_counter$15, $Document_increment_and_store_counter$16, $Document_register$17, $Document_resolve_id$18, $Document_sections$ques$22, $Document_footnotes$ques$23, $Document_footnotes$24, $Document_callouts$25, $Document_nested$ques$26, $Document_embedded$ques$27, $Document_extensions$ques$28, $Document_source$29, $Document_source_lines$30, $Document_basebackend$ques$31, $Document_title$32, $Document_title$eq$33, $Document_doctitle$34, $Document_xreftext$35, $Document_author$36, $Document_authors$37, $Document_revdate$38, $Document_notitle$39, $Document_noheader$40, $Document_nofooter$41, $Document_first_section$42, $Document_header$ques$44, $Document_$lt$lt$45, $Document_finalize_header$46, $Document_playback_attributes$47, $Document_restore_attributes$49, $Document_set_attribute$50, $Document_delete_attribute$51, $Document_attribute_locked$ques$52, $Document_set_header_attribute$53, $Document_convert$54, $Document_write$56, $Document_content$57, $Document_docinfo$58, $Document_docinfo_processors$ques$61, $Document_to_s$62, $Document_apply_attribute_value_subs$63, $Document_limit_bytesize$64, $Document_resolve_docinfo_subs$65, $Document_create_converter$66, $Document_clear_playback_attributes$67, $Document_save_attributes$68, $Document_fill_datetime_attributes$70, $Document_update_backend_attributes$71, $Document_update_doctype_attributes$72;
27050
27101
 
27051
- self.$$prototype.attributes = self.$$prototype.safe = self.$$prototype.sourcemap = self.$$prototype.reader = self.$$prototype.base_dir = self.$$prototype.parsed = self.$$prototype.parent_document = self.$$prototype.extensions = self.$$prototype.options = self.$$prototype.counters = self.$$prototype.catalog = self.$$prototype.reftexts = self.$$prototype.header = self.$$prototype.blocks = self.$$prototype.header_attributes = self.$$prototype.attributes_modified = self.$$prototype.backend = self.$$prototype.attribute_overrides = self.$$prototype.timings = self.$$prototype.converter = self.$$prototype.outfilesuffix = self.$$prototype.docinfo_processor_extensions = self.$$prototype.document = self.$$prototype.max_attribute_value_size = self.$$prototype.id = self.$$prototype.doctype = nil;
27102
+ self.$$prototype.attributes = self.$$prototype.safe = self.$$prototype.sourcemap = self.$$prototype.reader = self.$$prototype.base_dir = self.$$prototype.parsed = self.$$prototype.parent_document = self.$$prototype.extensions = self.$$prototype.options = self.$$prototype.counters = self.$$prototype.catalog = self.$$prototype.reftexts = self.$$prototype.next_section_index = self.$$prototype.header = self.$$prototype.blocks = self.$$prototype.header_attributes = self.$$prototype.attributes_modified = self.$$prototype.backend = self.$$prototype.attribute_overrides = self.$$prototype.timings = self.$$prototype.converter = self.$$prototype.outfilesuffix = self.$$prototype.docinfo_processor_extensions = self.$$prototype.document = self.$$prototype.max_attribute_value_size = self.$$prototype.id = self.$$prototype.doctype = nil;
27052
27103
 
27053
27104
  Opal.const_set($nesting[0], 'ImageReference', $send($$$('::', 'Struct'), 'new', ["target", "imagesdir"], ($Document$1 = function(){var self = $Document$1.$$s || this;
27054
27105
 
@@ -27182,6 +27233,11 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27182
27233
  $writer = ["catalog_assets", true];
27183
27234
  $send(options, '[]=', Opal.to_a($writer));
27184
27235
  $writer[$rb_minus($writer["length"], 1)];};
27236
+ if ($truthy(parent_doc.$options()['$[]']("to_dir"))) {
27237
+
27238
+ $writer = ["to_dir", parent_doc.$options()['$[]']("to_dir")];
27239
+ $send(options, '[]=', Opal.to_a($writer));
27240
+ $writer[$rb_minus($writer["length"], 1)];};
27185
27241
  self.catalog = parent_doc.$catalog().$merge($hash2(["footnotes"], {"footnotes": []}));
27186
27242
  self.attribute_overrides = (attr_overrides = parent_doc.$instance_variable_get("@attribute_overrides").$merge(parent_doc.$attributes()));
27187
27243
  attr_overrides.$delete("compat-mode");
@@ -27682,7 +27738,13 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27682
27738
  }
27683
27739
  }, $Document_resolve_id$18.$$arity = 1);
27684
27740
 
27685
- Opal.def(self, '$footnotes?', $Document_footnotes$ques$22 = function() {
27741
+ Opal.def(self, '$sections?', $Document_sections$ques$22 = function() {
27742
+ var self = this;
27743
+
27744
+ return $rb_gt(self.next_section_index, 0)
27745
+ }, $Document_sections$ques$22.$$arity = 0);
27746
+
27747
+ Opal.def(self, '$footnotes?', $Document_footnotes$ques$23 = function() {
27686
27748
  var self = this;
27687
27749
 
27688
27750
  if ($truthy(self.catalog['$[]']("footnotes")['$empty?']())) {
@@ -27690,21 +27752,21 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27690
27752
  } else {
27691
27753
  return true
27692
27754
  }
27693
- }, $Document_footnotes$ques$22.$$arity = 0);
27755
+ }, $Document_footnotes$ques$23.$$arity = 0);
27694
27756
 
27695
- Opal.def(self, '$footnotes', $Document_footnotes$23 = function $$footnotes() {
27757
+ Opal.def(self, '$footnotes', $Document_footnotes$24 = function $$footnotes() {
27696
27758
  var self = this;
27697
27759
 
27698
27760
  return self.catalog['$[]']("footnotes")
27699
- }, $Document_footnotes$23.$$arity = 0);
27761
+ }, $Document_footnotes$24.$$arity = 0);
27700
27762
 
27701
- Opal.def(self, '$callouts', $Document_callouts$24 = function $$callouts() {
27763
+ Opal.def(self, '$callouts', $Document_callouts$25 = function $$callouts() {
27702
27764
  var self = this;
27703
27765
 
27704
27766
  return self.catalog['$[]']("callouts")
27705
- }, $Document_callouts$24.$$arity = 0);
27767
+ }, $Document_callouts$25.$$arity = 0);
27706
27768
 
27707
- Opal.def(self, '$nested?', $Document_nested$ques$25 = function() {
27769
+ Opal.def(self, '$nested?', $Document_nested$ques$26 = function() {
27708
27770
  var self = this;
27709
27771
 
27710
27772
  if ($truthy(self.parent_document)) {
@@ -27712,15 +27774,15 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27712
27774
  } else {
27713
27775
  return false
27714
27776
  }
27715
- }, $Document_nested$ques$25.$$arity = 0);
27777
+ }, $Document_nested$ques$26.$$arity = 0);
27716
27778
 
27717
- Opal.def(self, '$embedded?', $Document_embedded$ques$26 = function() {
27779
+ Opal.def(self, '$embedded?', $Document_embedded$ques$27 = function() {
27718
27780
  var self = this;
27719
27781
 
27720
27782
  return self.attributes['$key?']("embedded")
27721
- }, $Document_embedded$ques$26.$$arity = 0);
27783
+ }, $Document_embedded$ques$27.$$arity = 0);
27722
27784
 
27723
- Opal.def(self, '$extensions?', $Document_extensions$ques$27 = function() {
27785
+ Opal.def(self, '$extensions?', $Document_extensions$ques$28 = function() {
27724
27786
  var self = this;
27725
27787
 
27726
27788
  if ($truthy(self.extensions)) {
@@ -27728,9 +27790,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27728
27790
  } else {
27729
27791
  return false
27730
27792
  }
27731
- }, $Document_extensions$ques$27.$$arity = 0);
27793
+ }, $Document_extensions$ques$28.$$arity = 0);
27732
27794
 
27733
- Opal.def(self, '$source', $Document_source$28 = function $$source() {
27795
+ Opal.def(self, '$source', $Document_source$29 = function $$source() {
27734
27796
  var self = this;
27735
27797
 
27736
27798
  if ($truthy(self.reader)) {
@@ -27738,9 +27800,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27738
27800
  } else {
27739
27801
  return nil
27740
27802
  }
27741
- }, $Document_source$28.$$arity = 0);
27803
+ }, $Document_source$29.$$arity = 0);
27742
27804
 
27743
- Opal.def(self, '$source_lines', $Document_source_lines$29 = function $$source_lines() {
27805
+ Opal.def(self, '$source_lines', $Document_source_lines$30 = function $$source_lines() {
27744
27806
  var self = this;
27745
27807
 
27746
27808
  if ($truthy(self.reader)) {
@@ -27748,21 +27810,21 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27748
27810
  } else {
27749
27811
  return nil
27750
27812
  }
27751
- }, $Document_source_lines$29.$$arity = 0);
27813
+ }, $Document_source_lines$30.$$arity = 0);
27752
27814
 
27753
- Opal.def(self, '$basebackend?', $Document_basebackend$ques$30 = function(base) {
27815
+ Opal.def(self, '$basebackend?', $Document_basebackend$ques$31 = function(base) {
27754
27816
  var self = this;
27755
27817
 
27756
27818
  return self.attributes['$[]']("basebackend")['$=='](base)
27757
- }, $Document_basebackend$ques$30.$$arity = 1);
27819
+ }, $Document_basebackend$ques$31.$$arity = 1);
27758
27820
 
27759
- Opal.def(self, '$title', $Document_title$31 = function $$title() {
27821
+ Opal.def(self, '$title', $Document_title$32 = function $$title() {
27760
27822
  var self = this;
27761
27823
 
27762
27824
  return self.$doctitle()
27763
- }, $Document_title$31.$$arity = 0);
27825
+ }, $Document_title$32.$$arity = 0);
27764
27826
 
27765
- Opal.def(self, '$title=', $Document_title$eq$32 = function(title) {
27827
+ Opal.def(self, '$title=', $Document_title$eq$33 = function(title) {
27766
27828
  var self = this, sect = nil, $writer = nil;
27767
27829
 
27768
27830
 
@@ -27777,9 +27839,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27777
27839
  $writer = [title];
27778
27840
  $send(sect, 'title=', Opal.to_a($writer));
27779
27841
  return $writer[$rb_minus($writer["length"], 1)];;
27780
- }, $Document_title$eq$32.$$arity = 1);
27842
+ }, $Document_title$eq$33.$$arity = 1);
27781
27843
 
27782
- Opal.def(self, '$doctitle', $Document_doctitle$33 = function $$doctitle(opts) {
27844
+ Opal.def(self, '$doctitle', $Document_doctitle$34 = function $$doctitle(opts) {
27783
27845
  var $a, self = this, val = nil, sect = nil, separator = nil;
27784
27846
 
27785
27847
 
@@ -27803,10 +27865,10 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27803
27865
  } else {
27804
27866
  return val
27805
27867
  };
27806
- }, $Document_doctitle$33.$$arity = -1);
27868
+ }, $Document_doctitle$34.$$arity = -1);
27807
27869
  Opal.alias(self, "name", "doctitle");
27808
27870
 
27809
- Opal.def(self, '$xreftext', $Document_xreftext$34 = function $$xreftext(xrefstyle) {
27871
+ Opal.def(self, '$xreftext', $Document_xreftext$35 = function $$xreftext(xrefstyle) {
27810
27872
  var $a, self = this, val = nil;
27811
27873
 
27812
27874
 
@@ -27819,15 +27881,15 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27819
27881
  } else {
27820
27882
  return self.$title()
27821
27883
  };
27822
- }, $Document_xreftext$34.$$arity = -1);
27884
+ }, $Document_xreftext$35.$$arity = -1);
27823
27885
 
27824
- Opal.def(self, '$author', $Document_author$35 = function $$author() {
27886
+ Opal.def(self, '$author', $Document_author$36 = function $$author() {
27825
27887
  var self = this;
27826
27888
 
27827
27889
  return self.attributes['$[]']("author")
27828
- }, $Document_author$35.$$arity = 0);
27890
+ }, $Document_author$36.$$arity = 0);
27829
27891
 
27830
- Opal.def(self, '$authors', $Document_authors$36 = function $$authors() {
27892
+ Opal.def(self, '$authors', $Document_authors$37 = function $$authors() {
27831
27893
  var $a, self = this, attrs = nil, authors = nil, num_authors = nil, idx = nil;
27832
27894
 
27833
27895
  if ($truthy((attrs = self.attributes)['$key?']("author"))) {
@@ -27845,46 +27907,46 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27845
27907
  } else {
27846
27908
  return []
27847
27909
  }
27848
- }, $Document_authors$36.$$arity = 0);
27910
+ }, $Document_authors$37.$$arity = 0);
27849
27911
 
27850
- Opal.def(self, '$revdate', $Document_revdate$37 = function $$revdate() {
27912
+ Opal.def(self, '$revdate', $Document_revdate$38 = function $$revdate() {
27851
27913
  var self = this;
27852
27914
 
27853
27915
  return self.attributes['$[]']("revdate")
27854
- }, $Document_revdate$37.$$arity = 0);
27916
+ }, $Document_revdate$38.$$arity = 0);
27855
27917
 
27856
- Opal.def(self, '$notitle', $Document_notitle$38 = function $$notitle() {
27918
+ Opal.def(self, '$notitle', $Document_notitle$39 = function $$notitle() {
27857
27919
  var self = this;
27858
27920
 
27859
27921
  return self.attributes['$key?']("notitle")
27860
- }, $Document_notitle$38.$$arity = 0);
27922
+ }, $Document_notitle$39.$$arity = 0);
27861
27923
 
27862
- Opal.def(self, '$noheader', $Document_noheader$39 = function $$noheader() {
27924
+ Opal.def(self, '$noheader', $Document_noheader$40 = function $$noheader() {
27863
27925
  var self = this;
27864
27926
 
27865
27927
  return self.attributes['$key?']("noheader")
27866
- }, $Document_noheader$39.$$arity = 0);
27928
+ }, $Document_noheader$40.$$arity = 0);
27867
27929
 
27868
- Opal.def(self, '$nofooter', $Document_nofooter$40 = function $$nofooter() {
27930
+ Opal.def(self, '$nofooter', $Document_nofooter$41 = function $$nofooter() {
27869
27931
  var self = this;
27870
27932
 
27871
27933
  return self.attributes['$key?']("nofooter")
27872
- }, $Document_nofooter$40.$$arity = 0);
27934
+ }, $Document_nofooter$41.$$arity = 0);
27873
27935
 
27874
- Opal.def(self, '$first_section', $Document_first_section$41 = function $$first_section() {
27875
- var $a, $$42, self = this;
27936
+ Opal.def(self, '$first_section', $Document_first_section$42 = function $$first_section() {
27937
+ var $a, $$43, self = this;
27876
27938
 
27877
- return ($truthy($a = self.header) ? $a : $send(self.blocks, 'find', [], ($$42 = function(e){var self = $$42.$$s || this;
27939
+ return ($truthy($a = self.header) ? $a : $send(self.blocks, 'find', [], ($$43 = function(e){var self = $$43.$$s || this;
27878
27940
 
27879
27941
 
27880
27942
 
27881
27943
  if (e == null) {
27882
27944
  e = nil;
27883
27945
  };
27884
- return e.$context()['$==']("section");}, $$42.$$s = self, $$42.$$arity = 1, $$42)))
27885
- }, $Document_first_section$41.$$arity = 0);
27946
+ return e.$context()['$==']("section");}, $$43.$$s = self, $$43.$$arity = 1, $$43)))
27947
+ }, $Document_first_section$42.$$arity = 0);
27886
27948
 
27887
- Opal.def(self, '$header?', $Document_header$ques$43 = function() {
27949
+ Opal.def(self, '$header?', $Document_header$ques$44 = function() {
27888
27950
  var self = this;
27889
27951
 
27890
27952
  if ($truthy(self.header)) {
@@ -27892,13 +27954,13 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27892
27954
  } else {
27893
27955
  return false
27894
27956
  }
27895
- }, $Document_header$ques$43.$$arity = 0);
27957
+ }, $Document_header$ques$44.$$arity = 0);
27896
27958
  Opal.alias(self, "has_header?", "header?");
27897
27959
 
27898
- Opal.def(self, '$<<', $Document_$lt$lt$44 = function(block) {
27899
- var $iter = $Document_$lt$lt$44.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
27960
+ Opal.def(self, '$<<', $Document_$lt$lt$45 = function(block) {
27961
+ var $iter = $Document_$lt$lt$45.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
27900
27962
 
27901
- if ($iter) $Document_$lt$lt$44.$$p = null;
27963
+ if ($iter) $Document_$lt$lt$45.$$p = null;
27902
27964
  // Prepare super implicit arguments
27903
27965
  for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {
27904
27966
  $zuper[$zuper_i] = arguments[$zuper_i];
@@ -27906,10 +27968,10 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27906
27968
 
27907
27969
  if (block.$context()['$==']("section")) {
27908
27970
  self.$assign_numeral(block)};
27909
- return $send(self, Opal.find_super_dispatcher(self, '<<', $Document_$lt$lt$44, false), $zuper, $iter);
27910
- }, $Document_$lt$lt$44.$$arity = 1);
27971
+ return $send(self, Opal.find_super_dispatcher(self, '<<', $Document_$lt$lt$45, false), $zuper, $iter);
27972
+ }, $Document_$lt$lt$45.$$arity = 1);
27911
27973
 
27912
- Opal.def(self, '$finalize_header', $Document_finalize_header$45 = function $$finalize_header(unrooted_attributes, header_valid) {
27974
+ Opal.def(self, '$finalize_header', $Document_finalize_header$46 = function $$finalize_header(unrooted_attributes, header_valid) {
27913
27975
  var self = this, $writer = nil;
27914
27976
 
27915
27977
 
@@ -27927,13 +27989,13 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27927
27989
  $writer[$rb_minus($writer["length"], 1)];
27928
27990
  };
27929
27991
  return unrooted_attributes;
27930
- }, $Document_finalize_header$45.$$arity = -2);
27992
+ }, $Document_finalize_header$46.$$arity = -2);
27931
27993
 
27932
- Opal.def(self, '$playback_attributes', $Document_playback_attributes$46 = function $$playback_attributes(block_attributes) {
27933
- var $$47, self = this;
27994
+ Opal.def(self, '$playback_attributes', $Document_playback_attributes$47 = function $$playback_attributes(block_attributes) {
27995
+ var $$48, self = this;
27934
27996
 
27935
27997
  if ($truthy(block_attributes['$key?']("attribute_entries"))) {
27936
- return $send(block_attributes['$[]']("attribute_entries"), 'each', [], ($$47 = function(entry){var self = $$47.$$s || this, name = nil, $writer = nil;
27998
+ return $send(block_attributes['$[]']("attribute_entries"), 'each', [], ($$48 = function(entry){var self = $$48.$$s || this, name = nil, $writer = nil;
27937
27999
  if (self.attributes == null) self.attributes = nil;
27938
28000
 
27939
28001
 
@@ -27961,13 +28023,13 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27961
28023
  } else {
27962
28024
  return nil
27963
28025
  };
27964
- };}, $$47.$$s = self, $$47.$$arity = 1, $$47))
28026
+ };}, $$48.$$s = self, $$48.$$arity = 1, $$48))
27965
28027
  } else {
27966
28028
  return nil
27967
28029
  }
27968
- }, $Document_playback_attributes$46.$$arity = 1);
28030
+ }, $Document_playback_attributes$47.$$arity = 1);
27969
28031
 
27970
- Opal.def(self, '$restore_attributes', $Document_restore_attributes$48 = function $$restore_attributes() {
28032
+ Opal.def(self, '$restore_attributes', $Document_restore_attributes$49 = function $$restore_attributes() {
27971
28033
  var self = this;
27972
28034
 
27973
28035
 
@@ -27976,9 +28038,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
27976
28038
  self.catalog['$[]']("callouts").$rewind()
27977
28039
  };
27978
28040
  return self.attributes.$replace(self.header_attributes);
27979
- }, $Document_restore_attributes$48.$$arity = 0);
28041
+ }, $Document_restore_attributes$49.$$arity = 0);
27980
28042
 
27981
- Opal.def(self, '$set_attribute', $Document_set_attribute$49 = function $$set_attribute(name, value) {
28043
+ Opal.def(self, '$set_attribute', $Document_set_attribute$50 = function $$set_attribute(name, value) {
27982
28044
  var $a, self = this, $writer = nil, $case = nil;
27983
28045
 
27984
28046
 
@@ -28012,9 +28074,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28012
28074
  };
28013
28075
  return value;
28014
28076
  };
28015
- }, $Document_set_attribute$49.$$arity = -2);
28077
+ }, $Document_set_attribute$50.$$arity = -2);
28016
28078
 
28017
- Opal.def(self, '$delete_attribute', $Document_delete_attribute$50 = function $$delete_attribute(name) {
28079
+ Opal.def(self, '$delete_attribute', $Document_delete_attribute$51 = function $$delete_attribute(name) {
28018
28080
  var self = this;
28019
28081
 
28020
28082
  if ($truthy(self['$attribute_locked?'](name))) {
@@ -28025,15 +28087,15 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28025
28087
  self.attributes_modified['$<<'](name);
28026
28088
  return true;
28027
28089
  }
28028
- }, $Document_delete_attribute$50.$$arity = 1);
28090
+ }, $Document_delete_attribute$51.$$arity = 1);
28029
28091
 
28030
- Opal.def(self, '$attribute_locked?', $Document_attribute_locked$ques$51 = function(name) {
28092
+ Opal.def(self, '$attribute_locked?', $Document_attribute_locked$ques$52 = function(name) {
28031
28093
  var self = this;
28032
28094
 
28033
28095
  return self.attribute_overrides['$key?'](name)
28034
- }, $Document_attribute_locked$ques$51.$$arity = 1);
28096
+ }, $Document_attribute_locked$ques$52.$$arity = 1);
28035
28097
 
28036
- Opal.def(self, '$set_header_attribute', $Document_set_header_attribute$52 = function $$set_header_attribute(name, value, overwrite) {
28098
+ Opal.def(self, '$set_header_attribute', $Document_set_header_attribute$53 = function $$set_header_attribute(name, value, overwrite) {
28037
28099
  var $a, self = this, attrs = nil, $writer = nil;
28038
28100
 
28039
28101
 
@@ -28056,10 +28118,10 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28056
28118
  $writer[$rb_minus($writer["length"], 1)];;
28057
28119
  return true;
28058
28120
  };
28059
- }, $Document_set_header_attribute$52.$$arity = -2);
28121
+ }, $Document_set_header_attribute$53.$$arity = -2);
28060
28122
 
28061
- Opal.def(self, '$convert', $Document_convert$53 = function $$convert(opts) {
28062
- var $a, $$54, self = this, $writer = nil, block = nil, output = nil, transform = nil, exts = nil;
28123
+ Opal.def(self, '$convert', $Document_convert$54 = function $$convert(opts) {
28124
+ var $a, $$55, self = this, $writer = nil, block = nil, output = nil, transform = nil, exts = nil;
28063
28125
 
28064
28126
 
28065
28127
 
@@ -28116,21 +28178,21 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28116
28178
  };
28117
28179
  if ($truthy(self.parent_document)) {
28118
28180
  } else if ($truthy(($truthy($a = (exts = self.extensions)) ? exts['$postprocessors?']() : $a))) {
28119
- $send(exts.$postprocessors(), 'each', [], ($$54 = function(ext){var self = $$54.$$s || this;
28181
+ $send(exts.$postprocessors(), 'each', [], ($$55 = function(ext){var self = $$55.$$s || this;
28120
28182
 
28121
28183
 
28122
28184
 
28123
28185
  if (ext == null) {
28124
28186
  ext = nil;
28125
28187
  };
28126
- return (output = ext.$process_method()['$[]'](self, output));}, $$54.$$s = self, $$54.$$arity = 1, $$54))};
28188
+ return (output = ext.$process_method()['$[]'](self, output));}, $$55.$$s = self, $$55.$$arity = 1, $$55))};
28127
28189
  if ($truthy(self.timings)) {
28128
28190
  self.timings.$record("convert")};
28129
28191
  return output;
28130
- }, $Document_convert$53.$$arity = -1);
28192
+ }, $Document_convert$54.$$arity = -1);
28131
28193
  Opal.alias(self, "render", "convert");
28132
28194
 
28133
- Opal.def(self, '$write', $Document_write$55 = function $$write(output, target) {
28195
+ Opal.def(self, '$write', $Document_write$56 = function $$write(output, target) {
28134
28196
  var $a, $b, self = this;
28135
28197
 
28136
28198
 
@@ -28156,23 +28218,23 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28156
28218
  if ($truthy(self.timings)) {
28157
28219
  self.timings.$record("write")};
28158
28220
  return nil;
28159
- }, $Document_write$55.$$arity = 2);
28221
+ }, $Document_write$56.$$arity = 2);
28160
28222
 
28161
- Opal.def(self, '$content', $Document_content$56 = function $$content() {
28162
- var $iter = $Document_content$56.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
28223
+ Opal.def(self, '$content', $Document_content$57 = function $$content() {
28224
+ var $iter = $Document_content$57.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
28163
28225
 
28164
- if ($iter) $Document_content$56.$$p = null;
28226
+ if ($iter) $Document_content$57.$$p = null;
28165
28227
  // Prepare super implicit arguments
28166
28228
  for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {
28167
28229
  $zuper[$zuper_i] = arguments[$zuper_i];
28168
28230
  }
28169
28231
 
28170
28232
  self.attributes.$delete("title");
28171
- return $send(self, Opal.find_super_dispatcher(self, 'content', $Document_content$56, false), $zuper, $iter);
28172
- }, $Document_content$56.$$arity = 0);
28233
+ return $send(self, Opal.find_super_dispatcher(self, 'content', $Document_content$57, false), $zuper, $iter);
28234
+ }, $Document_content$57.$$arity = 0);
28173
28235
 
28174
- Opal.def(self, '$docinfo', $Document_docinfo$57 = function $$docinfo(location, suffix) {
28175
- var $a, $$58, $$59, self = this, qualifier = nil, docinfo = nil, content = nil, docinfo_file = nil, docinfo_dir = nil, docinfo_subs = nil, docinfo_path = nil, shared_docinfo = nil, private_docinfo = nil;
28236
+ Opal.def(self, '$docinfo', $Document_docinfo$58 = function $$docinfo(location, suffix) {
28237
+ var $a, $$59, $$60, self = this, qualifier = nil, docinfo = nil, content = nil, docinfo_file = nil, docinfo_dir = nil, docinfo_subs = nil, docinfo_path = nil, shared_docinfo = nil, private_docinfo = nil;
28176
28238
 
28177
28239
 
28178
28240
 
@@ -28203,14 +28265,14 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28203
28265
  }; return nil; })()
28204
28266
  }
28205
28267
  } else {
28206
- docinfo = $send(docinfo.$split(","), 'map', [], ($$58 = function(it){var self = $$58.$$s || this;
28268
+ docinfo = $send(docinfo.$split(","), 'map', [], ($$59 = function(it){var self = $$59.$$s || this;
28207
28269
 
28208
28270
 
28209
28271
 
28210
28272
  if (it == null) {
28211
28273
  it = nil;
28212
28274
  };
28213
- return it.$strip();}, $$58.$$s = self, $$58.$$arity = 1, $$58))
28275
+ return it.$strip();}, $$59.$$s = self, $$59.$$arity = 1, $$59))
28214
28276
  };
28215
28277
  if ($truthy(docinfo)) {
28216
28278
 
@@ -28231,22 +28293,22 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28231
28293
  content['$<<'](self.$apply_subs(private_docinfo, docinfo_subs))};
28232
28294
  };};};
28233
28295
  if ($truthy(($truthy($a = self.extensions) ? self['$docinfo_processors?'](location) : $a))) {
28234
- return ($truthy($a = content) ? $a : []).$concat($send(self.docinfo_processor_extensions['$[]'](location), 'map', [], ($$59 = function(ext){var self = $$59.$$s || this;
28296
+ return ($truthy($a = content) ? $a : []).$concat($send(self.docinfo_processor_extensions['$[]'](location), 'map', [], ($$60 = function(ext){var self = $$60.$$s || this;
28235
28297
 
28236
28298
 
28237
28299
 
28238
28300
  if (ext == null) {
28239
28301
  ext = nil;
28240
28302
  };
28241
- return ext.$process_method()['$[]'](self);}, $$59.$$s = self, $$59.$$arity = 1, $$59)).$compact()).$join($$($nesting, 'LF'))
28303
+ return ext.$process_method()['$[]'](self);}, $$60.$$s = self, $$60.$$arity = 1, $$60)).$compact()).$join($$($nesting, 'LF'))
28242
28304
  } else if ($truthy(content)) {
28243
28305
  return content.$join($$($nesting, 'LF'))
28244
28306
  } else {
28245
28307
  return ""
28246
28308
  };
28247
- }, $Document_docinfo$57.$$arity = -1);
28309
+ }, $Document_docinfo$58.$$arity = -1);
28248
28310
 
28249
- Opal.def(self, '$docinfo_processors?', $Document_docinfo_processors$ques$60 = function(location) {
28311
+ Opal.def(self, '$docinfo_processors?', $Document_docinfo_processors$ques$61 = function(location) {
28250
28312
  var $a, self = this, $writer = nil;
28251
28313
 
28252
28314
 
@@ -28264,16 +28326,16 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28264
28326
  $send(self.docinfo_processor_extensions, '[]=', Opal.to_a($writer));
28265
28327
  return $writer[$rb_minus($writer["length"], 1)];
28266
28328
  };
28267
- }, $Document_docinfo_processors$ques$60.$$arity = -1);
28329
+ }, $Document_docinfo_processors$ques$61.$$arity = -1);
28268
28330
 
28269
- Opal.def(self, '$to_s', $Document_to_s$61 = function $$to_s() {
28331
+ Opal.def(self, '$to_s', $Document_to_s$62 = function $$to_s() {
28270
28332
  var $a, self = this;
28271
28333
 
28272
28334
  return "" + "#<" + (self.$class()) + "@" + (self.$object_id()) + " {doctype: " + (self.$doctype().$inspect()) + ", doctitle: " + (($truthy($a = self.header) ? self.header.$title() : $a).$inspect()) + ", blocks: " + (self.blocks.$size()) + "}>"
28273
- }, $Document_to_s$61.$$arity = 0);
28335
+ }, $Document_to_s$62.$$arity = 0);
28274
28336
  self.$private();
28275
28337
 
28276
- Opal.def(self, '$apply_attribute_value_subs', $Document_apply_attribute_value_subs$62 = function $$apply_attribute_value_subs(value) {
28338
+ Opal.def(self, '$apply_attribute_value_subs', $Document_apply_attribute_value_subs$63 = function $$apply_attribute_value_subs(value) {
28277
28339
  var $a, self = this;
28278
28340
 
28279
28341
 
@@ -28291,9 +28353,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28291
28353
  } else {
28292
28354
  return value
28293
28355
  };
28294
- }, $Document_apply_attribute_value_subs$62.$$arity = 1);
28356
+ }, $Document_apply_attribute_value_subs$63.$$arity = 1);
28295
28357
 
28296
- Opal.def(self, '$limit_bytesize', $Document_limit_bytesize$63 = function $$limit_bytesize(str, max) {
28358
+ Opal.def(self, '$limit_bytesize', $Document_limit_bytesize$64 = function $$limit_bytesize(str, max) {
28297
28359
  var $a, self = this;
28298
28360
 
28299
28361
 
@@ -28302,9 +28364,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28302
28364
  max = $rb_minus(max, 1)
28303
28365
  }};
28304
28366
  return str;
28305
- }, $Document_limit_bytesize$63.$$arity = 2);
28367
+ }, $Document_limit_bytesize$64.$$arity = 2);
28306
28368
 
28307
- Opal.def(self, '$resolve_docinfo_subs', $Document_resolve_docinfo_subs$64 = function $$resolve_docinfo_subs() {
28369
+ Opal.def(self, '$resolve_docinfo_subs', $Document_resolve_docinfo_subs$65 = function $$resolve_docinfo_subs() {
28308
28370
  var self = this;
28309
28371
 
28310
28372
  if ($truthy(self.attributes['$key?']("docinfosubs"))) {
@@ -28313,9 +28375,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28313
28375
  } else {
28314
28376
  return ["attributes"]
28315
28377
  }
28316
- }, $Document_resolve_docinfo_subs$64.$$arity = 0);
28378
+ }, $Document_resolve_docinfo_subs$65.$$arity = 0);
28317
28379
 
28318
- Opal.def(self, '$create_converter', $Document_create_converter$65 = function $$create_converter(backend, delegate_backend) {
28380
+ Opal.def(self, '$create_converter', $Document_create_converter$66 = function $$create_converter(backend, delegate_backend) {
28319
28381
  var $a, self = this, converter_opts = nil, template_dirs = nil, opts = nil, $writer = nil, converter = nil;
28320
28382
 
28321
28383
 
@@ -28356,16 +28418,16 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28356
28418
  } else {
28357
28419
  return opts.$fetch("converter_factory", $$($nesting, 'Converter')).$create(backend, converter_opts)
28358
28420
  };
28359
- }, $Document_create_converter$65.$$arity = 2);
28421
+ }, $Document_create_converter$66.$$arity = 2);
28360
28422
 
28361
- Opal.def(self, '$clear_playback_attributes', $Document_clear_playback_attributes$66 = function $$clear_playback_attributes(attributes) {
28423
+ Opal.def(self, '$clear_playback_attributes', $Document_clear_playback_attributes$67 = function $$clear_playback_attributes(attributes) {
28362
28424
  var self = this;
28363
28425
 
28364
28426
  return attributes.$delete("attribute_entries")
28365
- }, $Document_clear_playback_attributes$66.$$arity = 1);
28427
+ }, $Document_clear_playback_attributes$67.$$arity = 1);
28366
28428
 
28367
- Opal.def(self, '$save_attributes', $Document_save_attributes$67 = function $$save_attributes() {
28368
- var $a, $$68, self = this, attrs = nil, doctitle_val = nil, $writer = nil, toc_val = nil, toc_position_val = nil, toc_placement_val = nil, default_toc_position = nil, default_toc_class = nil, position = nil, $case = nil, icons_val = nil, basebackend = nil, syntax_hl_name = nil, syntax_hl_factory = nil, syntax_hls = nil;
28429
+ Opal.def(self, '$save_attributes', $Document_save_attributes$68 = function $$save_attributes() {
28430
+ var $a, $$69, self = this, attrs = nil, doctitle_val = nil, $writer = nil, toc_val = nil, toc_position_val = nil, toc_placement_val = nil, default_toc_position = nil, default_toc_class = nil, position = nil, $case = nil, icons_val = nil, basebackend = nil, syntax_hl_name = nil, syntax_hl_factory = nil, syntax_hls = nil;
28369
28431
 
28370
28432
 
28371
28433
  if ($truthy(($truthy($a = (attrs = self.attributes)['$key?']("doctitle")) ? $a : (doctitle_val = self.$doctitle())['$!']()))) {
@@ -28492,7 +28554,7 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28492
28554
  $writer[$rb_minus($writer["length"], 1)];
28493
28555
  };};
28494
28556
  self.outfilesuffix = attrs['$[]']("outfilesuffix");
28495
- $send($$($nesting, 'FLEXIBLE_ATTRIBUTES'), 'each', [], ($$68 = function(name){var self = $$68.$$s || this, $b;
28557
+ $send($$($nesting, 'FLEXIBLE_ATTRIBUTES'), 'each', [], ($$69 = function(name){var self = $$69.$$s || this, $b;
28496
28558
  if (self.attribute_overrides == null) self.attribute_overrides = nil;
28497
28559
 
28498
28560
 
@@ -28504,12 +28566,12 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28504
28566
  return self.attribute_overrides.$delete(name)
28505
28567
  } else {
28506
28568
  return nil
28507
- };}, $$68.$$s = self, $$68.$$arity = 1, $$68));
28569
+ };}, $$69.$$s = self, $$69.$$arity = 1, $$69));
28508
28570
  };
28509
28571
  return (self.header_attributes = attrs.$merge());
28510
- }, $Document_save_attributes$67.$$arity = 0);
28572
+ }, $Document_save_attributes$68.$$arity = 0);
28511
28573
 
28512
- Opal.def(self, '$fill_datetime_attributes', $Document_fill_datetime_attributes$69 = function $$fill_datetime_attributes(attrs, input_mtime) {
28574
+ Opal.def(self, '$fill_datetime_attributes', $Document_fill_datetime_attributes$70 = function $$fill_datetime_attributes(attrs, input_mtime) {
28513
28575
  var $a, $b, self = this, now = nil, source_date_epoch = nil, localdate = nil, $writer = nil, localtime = nil, docdate = nil, doctime = nil;
28514
28576
 
28515
28577
 
@@ -28557,9 +28619,9 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28557
28619
  }; return nil; })()))]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]));
28558
28620
  ($truthy($a = attrs['$[]']("docdatetime")) ? $a : (($writer = ["docdatetime", "" + (docdate) + " " + (doctime)]), $send(attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]));
28559
28621
  return nil;
28560
- }, $Document_fill_datetime_attributes$69.$$arity = 2);
28622
+ }, $Document_fill_datetime_attributes$70.$$arity = 2);
28561
28623
 
28562
- Opal.def(self, '$update_backend_attributes', $Document_update_backend_attributes$70 = function $$update_backend_attributes(new_backend, init) {
28624
+ Opal.def(self, '$update_backend_attributes', $Document_update_backend_attributes$71 = function $$update_backend_attributes(new_backend, init) {
28563
28625
  var $a, $b, self = this, current_backend = nil, current_basebackend = nil, attrs = nil, current_doctype = nil, actual_backend = nil, _ = nil, $writer = nil, delegate_backend = nil, converter = nil, new_basebackend = nil, new_filetype = nil, htmlsyntax = nil, backend_traits = nil, current_filetype = nil, page_width = nil;
28564
28626
 
28565
28627
 
@@ -28687,8 +28749,8 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28687
28749
  } else {
28688
28750
  return nil
28689
28751
  };
28690
- }, $Document_update_backend_attributes$70.$$arity = -2);
28691
- return (Opal.def(self, '$update_doctype_attributes', $Document_update_doctype_attributes$71 = function $$update_doctype_attributes(new_doctype) {
28752
+ }, $Document_update_backend_attributes$71.$$arity = -2);
28753
+ return (Opal.def(self, '$update_doctype_attributes', $Document_update_doctype_attributes$72 = function $$update_doctype_attributes(new_doctype) {
28692
28754
  var $a, self = this, attrs = nil, current_backend = nil, current_basebackend = nil, current_doctype = nil, $writer = nil;
28693
28755
 
28694
28756
  if ($truthy(($truthy($a = new_doctype) ? new_doctype['$!='](self.doctype) : $a))) {
@@ -28732,7 +28794,7 @@ Opal.modules["asciidoctor/document"] = function(Opal) {
28732
28794
  } else {
28733
28795
  return nil
28734
28796
  }
28735
- }, $Document_update_doctype_attributes$71.$$arity = 1), nil) && 'update_doctype_attributes';
28797
+ }, $Document_update_doctype_attributes$72.$$arity = 1), nil) && 'update_doctype_attributes';
28736
28798
  })($nesting[0], $$($nesting, 'AbstractBlock'), $nesting)
28737
28799
  })($nesting[0], $nesting)
28738
28800
  };
@@ -28995,7 +29057,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
28995
29057
  }
28996
29058
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $send = Opal.send, $truthy = Opal.truthy, $hash2 = Opal.hash2, $gvars = Opal.gvars;
28997
29059
 
28998
- Opal.add_stubs(['$include', '$new', '$proc', '$start_with?', '$match?', '$is_delimited_block?', '$private_class_method', '$parse_document_header', '$[]', '$has_more_lines?', '$next_section', '$assign_numeral', '$<<', '$blocks', '$skip_blank_lines', '$parse_block_metadata_lines', '$attributes', '$is_next_line_doctitle?', '$finalize_header', '$nil_or_empty?', '$title=', '$-', '$sourcemap', '$cursor', '$parse_section_title', '$id=', '$include?', '$sub_specialchars', '$[]=', '$sub_attributes', '$source_location=', '$header', '$attribute_locked?', '$id', '$clear', '$delete', '$instance_variable_get', '$parse_header_metadata', '$==', '$!', '$register', '$doctype', '$parse_manpage_header', '$=~', '$downcase', '$error', '$logger', '$message_with_context', '$cursor_at_line', '$backend', '$save', '$update', '$is_next_line_section?', '$initialize_section', '$join', '$map', '$read_lines_until', '$lstrip', '$split', '$title', '$restore_save', '$discard_save', '$context', '$empty?', '$header?', '$!=', '$attr?', '$attr', '$key?', '$document', '$+', '$level', '$special', '$sectname', '$to_i', '$<', '$>', '$warn', '$next_block', '$blocks?', '$style', '$context=', '$style=', '$parent=', '$size', '$content_model', '$shift', '$unwrap_standalone_preamble', '$source_location', '$merge', '$fetch', '$parse_block_metadata_line', '$extensions', '$block_macros?', '$mark', '$read_line', '$terminator', '$to_s', '$masq', '$to_sym', '$registered_for_block?', '$debug?', '$debug', '$cursor_at_mark', '$strict_verbatim_paragraphs', '$unshift_line', '$markdown_syntax', '$keys', '$chr', '$uniform?', '$length', '$end_with?', '$===', '$parse_attributes', '$attribute_missing', '$tr', '$basename', '$assign_caption', '$registered_for_block_macro?', '$config', '$process_method', '$replace', '$parse_callout_list', '$callouts', '$parse_list', '$parse_description_list', '$underline_style_section_titles', '$is_section_title?', '$peek_line', '$atx_section_title?', '$generate_id', '$level=', '$read_paragraph_lines', '$adjust_indentation!', '$map!', '$slice', '$pop', '$build_block', '$apply_subs', '$chop', '$catalog_inline_anchors', '$rekey', '$index', '$strip', '$parse_table', '$each', '$raise', '$title?', '$update_attributes', '$commit_subs', '$sub?', '$catalog_callouts', '$source', '$remove_sub', '$block_terminates_paragraph', '$to_proc', '$nil?', '$lines', '$parse_blocks', '$parse_list_item', '$items', '$scan', '$gsub', '$count', '$advance', '$dup', '$match', '$callout_ids', '$next_list', '$catalog_inline_anchor', '$marker=', '$catalog_inline_biblio_anchor', '$set_option', '$text=', '$resolve_ordered_list_marker', '$read_lines_for_list_item', '$skip_line_comments', '$unshift_lines', '$fold_first', '$text?', '$is_sibling_list_item?', '$concat', '$find', '$casecmp', '$sectname=', '$special=', '$numbered=', '$numbered', '$lineno', '$peek_lines', '$setext_section_title?', '$abs', '$cursor_at_prev_line', '$process_attribute_entries', '$next_line_empty?', '$process_authors', '$apply_header_subs', '$rstrip', '$each_with_index', '$compact', '$squeeze', '$to_a', '$parse_style_attribute', '$process_attribute_entry', '$skip_comment_lines', '$store_attribute', '$sanitize_attribute_name', '$set_attribute', '$save_to', '$delete_attribute', '$ord', '$int_to_roman', '$resolve_list_marker', '$parse_colspecs', '$create_columns', '$has_header_option=', '$format', '$starts_with_delimiter?', '$close_open_cell', '$parse_cellspec', '$delimiter', '$match_delimiter', '$pre_match', '$post_match', '$buffer_has_unclosed_quotes?', '$skip_past_delimiter', '$buffer', '$buffer=', '$skip_past_escaped_delimiter', '$keep_cell_open', '$push_cellspec', '$close_cell', '$cell_open?', '$columns', '$assign_column_widths', '$partition_header_footer', '$upto', '$partition', '$shorthand_property_syntax', '$each_char', '$yield_buffered_attribute', '$any?', '$*', '$each_byte', '$%']);
29060
+ Opal.add_stubs(['$include', '$new', '$proc', '$start_with?', '$match?', '$is_delimited_block?', '$extend', '$private_class_method', '$parse_document_header', '$[]', '$has_more_lines?', '$next_section', '$assign_numeral', '$<<', '$blocks', '$skip_blank_lines', '$parse_block_metadata_lines', '$attributes', '$is_next_line_doctitle?', '$[]=', '$-', '$finalize_header', '$nil_or_empty?', '$title=', '$sourcemap', '$cursor', '$parse_section_title', '$id=', '$include?', '$sub_specialchars', '$sub_attributes', '$source_location=', '$header', '$attribute_locked?', '$id', '$clear', '$delete', '$instance_variable_get', '$parse_header_metadata', '$==', '$!', '$register', '$process_authors', '$update', '$doctype', '$parse_manpage_header', '$=~', '$downcase', '$error', '$logger', '$message_with_context', '$cursor_at_line', '$backend', '$save', '$is_next_line_section?', '$initialize_section', '$join', '$map', '$read_lines_until', '$lstrip', '$split', '$title', '$restore_save', '$discard_save', '$context', '$empty?', '$header?', '$!=', '$attr?', '$attr', '$key?', '$document', '$+', '$level', '$special', '$sectname', '$to_i', '$<', '$>', '$warn', '$next_block', '$blocks?', '$style', '$style=', '$parent=', '$content_model', '$content_model=', '$lines', '$subs', '$size', '$context=', '$shift', '$unwrap_standalone_preamble', '$source_location', '$merge', '$fetch', '$parse_block_metadata_line', '$extensions', '$block_macros?', '$mark', '$read_line', '$terminator', '$to_s', '$masq', '$to_sym', '$registered_for_block?', '$debug?', '$debug', '$cursor_at_mark', '$strict_verbatim_paragraphs', '$unshift_line', '$markdown_syntax', '$keys', '$chr', '$uniform?', '$length', '$end_with?', '$===', '$parse_attributes', '$attribute_missing', '$tr', '$basename', '$assign_caption', '$registered_for_block_macro?', '$config', '$process_method', '$replace', '$parse_callout_list', '$callouts', '$parse_list', '$parse_description_list', '$underline_style_section_titles', '$is_section_title?', '$peek_line', '$atx_section_title?', '$generate_id', '$level=', '$read_paragraph_lines', '$adjust_indentation!', '$map!', '$slice', '$pop', '$build_block', '$apply_subs', '$chop', '$catalog_inline_anchors', '$rekey', '$index', '$strip', '$parse_table', '$each', '$raise', '$title?', '$update_attributes', '$commit_subs', '$sub?', '$catalog_callouts', '$source', '$remove_sub', '$block_terminates_paragraph', '$to_proc', '$nil?', '$parse_blocks', '$parse_list_item', '$items', '$scan', '$gsub', '$count', '$advance', '$dup', '$match', '$callout_ids', '$next_list', '$catalog_inline_anchor', '$marker=', '$catalog_inline_biblio_anchor', '$set_option', '$text=', '$resolve_ordered_list_marker', '$read_lines_for_list_item', '$skip_line_comments', '$unshift_lines', '$fold_first', '$text?', '$is_sibling_list_item?', '$concat', '$find', '$casecmp', '$sectname=', '$special=', '$numbered=', '$numbered', '$lineno', '$peek_lines', '$setext_section_title?', '$abs', '$cursor_at_prev_line', '$process_attribute_entries', '$next_line_empty?', '$apply_header_subs', '$rstrip', '$each_with_index', '$compact', '$to_h', '$squeeze', '$to_a', '$parse_style_attribute', '$process_attribute_entry', '$skip_comment_lines', '$store_attribute', '$sanitize_attribute_name', '$set_attribute', '$save_to', '$delete_attribute', '$ord', '$int_to_roman', '$resolve_list_marker', '$parse_colspecs', '$create_columns', '$has_header_option=', '$format', '$starts_with_delimiter?', '$close_open_cell', '$parse_cellspec', '$delimiter', '$match_delimiter', '$pre_match', '$post_match', '$buffer_has_unclosed_quotes?', '$skip_past_delimiter', '$buffer', '$buffer=', '$skip_past_escaped_delimiter', '$keep_cell_open', '$push_cellspec', '$close_cell', '$cell_open?', '$columns', '$assign_column_widths', '$partition_header_footer', '$upto', '$partition', '$shorthand_property_syntax', '$each_char', '$yield_buffered_attribute', '$any?', '$*', '$each_byte', '$%']);
28999
29061
  return (function($base, $parent_nesting) {
29000
29062
  var self = $module($base, 'Asciidoctor');
29001
29063
 
@@ -29037,20 +29099,23 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29037
29099
  return ($truthy($a = ($truthy($b = self['$is_delimited_block?'](l)) ? $b : ($truthy($c = l['$start_with?']("[")) ? $$($nesting, 'BlockAttributeLineRx')['$match?'](l) : $c))) ? $a : $$($nesting, 'AnyListRx')['$match?'](l));}, $Parser$3.$$s = self, $Parser$3.$$arity = 1, $Parser$3)));
29038
29100
  Opal.const_set($nesting[0], 'NoOp', nil);
29039
29101
  Opal.const_set($nesting[0], 'AuthorKeys', ["author", "authorinitials", "firstname", "middlename", "lastname", "email"]);
29102
+ Opal.const_set($nesting[0], 'ListContinuationMarker', $$$('::', 'Module').$new());
29103
+ Opal.const_set($nesting[0], 'ListContinuationPlaceholder', $$$('::', 'String').$new().$extend($$($nesting, 'ListContinuationMarker')));
29104
+ Opal.const_set($nesting[0], 'ListContinuationString', $$$('::', 'String').$new($$($nesting, 'LIST_CONTINUATION')).$extend($$($nesting, 'ListContinuationMarker')));
29040
29105
  Opal.const_set($nesting[0], 'TableCellHorzAlignments', $hash2(["<", ">", "^"], {"<": "left", ">": "right", "^": "center"}));
29041
29106
  Opal.const_set($nesting[0], 'TableCellVertAlignments', $hash2(["<", ">", "^"], {"<": "top", ">": "bottom", "^": "middle"}));
29042
29107
  Opal.const_set($nesting[0], 'TableCellStyles', $hash2(["d", "s", "e", "m", "h", "l", "a"], {"d": "none", "s": "strong", "e": "emphasis", "m": "monospaced", "h": "header", "l": "literal", "a": "asciidoc"}));
29043
29108
  self.$private_class_method("new");
29044
29109
  Opal.defs(self, '$parse', $Parser_parse$4 = function $$parse(reader, document, options) {
29045
- var $a, $b, $c, self = this, block_attributes = nil, new_section = nil;
29110
+ var $a, $b, $c, self = this, block_attributes = nil, header_only = nil, new_section = nil;
29046
29111
 
29047
29112
 
29048
29113
 
29049
29114
  if (options == null) {
29050
29115
  options = $hash2([], {});
29051
29116
  };
29052
- block_attributes = self.$parse_document_header(reader, document);
29053
- if ($truthy(options['$[]']("header_only"))) {
29117
+ block_attributes = self.$parse_document_header(reader, document, (header_only = options['$[]']("header_only")));
29118
+ if ($truthy(header_only)) {
29054
29119
  } else {
29055
29120
  while ($truthy(reader['$has_more_lines?']())) {
29056
29121
 
@@ -29063,10 +29128,14 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29063
29128
  };
29064
29129
  return document;
29065
29130
  }, $Parser_parse$4.$$arity = -3);
29066
- Opal.defs(self, '$parse_document_header', $Parser_parse_document_header$5 = function $$parse_document_header(reader, document) {
29067
- var $a, $b, self = this, block_attrs = nil, doc_attrs = nil, implicit_doctitle = nil, val = nil, $writer = nil, doctitle_attr_val = nil, source_location = nil, _ = nil, l0_section_title = nil, atx = nil, separator = nil, doc_id = nil, role = nil, reftext = nil, modified_attrs = nil;
29131
+ Opal.defs(self, '$parse_document_header', $Parser_parse_document_header$5 = function $$parse_document_header(reader, document, header_only) {
29132
+ var $a, $b, self = this, block_attrs = nil, doc_attrs = nil, implicit_doctitle = nil, $writer = nil, val = nil, doctitle_attr_val = nil, source_location = nil, _ = nil, l0_section_title = nil, atx = nil, separator = nil, doc_id = nil, role = nil, reftext = nil, modified_attrs = nil, author = nil, author_metadata = nil;
29068
29133
 
29069
29134
 
29135
+
29136
+ if (header_only == null) {
29137
+ header_only = false;
29138
+ };
29070
29139
  block_attrs = (function() {if ($truthy(reader.$skip_blank_lines())) {
29071
29140
 
29072
29141
  return self.$parse_block_metadata_lines(reader, document);
@@ -29075,7 +29144,12 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29075
29144
  }; return nil; })();
29076
29145
  doc_attrs = document.$attributes();
29077
29146
  if ($truthy(($truthy($a = (implicit_doctitle = self['$is_next_line_doctitle?'](reader, block_attrs, doc_attrs['$[]']("leveloffset")))) ? block_attrs['$[]']("title") : $a))) {
29078
- return document.$finalize_header(block_attrs, false)};
29147
+
29148
+
29149
+ $writer = ["authorcount", 0];
29150
+ $send(doc_attrs, '[]=', Opal.to_a($writer));
29151
+ $writer[$rb_minus($writer["length"], 1)];;
29152
+ return document.$finalize_header(block_attrs, false);};
29079
29153
  if ($truthy((val = doc_attrs['$[]']("doctitle"))['$nil_or_empty?']())) {
29080
29154
  } else {
29081
29155
 
@@ -29142,7 +29216,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29142
29216
  $writer[$rb_minus($writer["length"], 1)];};
29143
29217
  block_attrs.$clear();
29144
29218
  (modified_attrs = document.$instance_variable_get("@attributes_modified")).$delete("doctitle");
29145
- self.$parse_header_metadata(reader, document);
29219
+ self.$parse_header_metadata(reader, document, nil);
29146
29220
  if ($truthy(modified_attrs['$include?']("doctitle"))) {
29147
29221
  if ($truthy(($truthy($a = (val = doc_attrs['$[]']("doctitle"))['$nil_or_empty?']()) ? $a : val['$=='](doctitle_attr_val)))) {
29148
29222
 
@@ -29158,15 +29232,35 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29158
29232
  } else if ($truthy(l0_section_title['$!']())) {
29159
29233
  modified_attrs['$<<']("doctitle")};
29160
29234
  if ($truthy(doc_id)) {
29161
- document.$register("refs", [doc_id, document])};};
29235
+ document.$register("refs", [doc_id, document])};
29236
+ } else if ($truthy((author = doc_attrs['$[]']("author")))) {
29237
+
29238
+ author_metadata = self.$process_authors(author, true, false);
29239
+ if ($truthy(doc_attrs['$[]']("authorinitials"))) {
29240
+ author_metadata.$delete("authorinitials")};
29241
+ doc_attrs.$update(author_metadata);
29242
+ } else if ($truthy((author = doc_attrs['$[]']("authors")))) {
29243
+
29244
+ author_metadata = self.$process_authors(author, true);
29245
+ doc_attrs.$update(author_metadata);
29246
+ } else {
29247
+
29248
+ $writer = ["authorcount", 0];
29249
+ $send(doc_attrs, '[]=', Opal.to_a($writer));
29250
+ $writer[$rb_minus($writer["length"], 1)];
29251
+ };
29162
29252
  if (document.$doctype()['$==']("manpage")) {
29163
- self.$parse_manpage_header(reader, document, block_attrs)};
29253
+ self.$parse_manpage_header(reader, document, block_attrs, header_only)};
29164
29254
  return document.$finalize_header(block_attrs);
29165
- }, $Parser_parse_document_header$5.$$arity = 2);
29166
- Opal.defs(self, '$parse_manpage_header', $Parser_parse_manpage_header$6 = function $$parse_manpage_header(reader, document, block_attributes) {
29255
+ }, $Parser_parse_document_header$5.$$arity = -3);
29256
+ Opal.defs(self, '$parse_manpage_header', $Parser_parse_manpage_header$6 = function $$parse_manpage_header(reader, document, block_attributes, header_only) {
29167
29257
  var $a, $b, $$7, $$8, self = this, doc_attrs = nil, $writer = nil, manvolnum = nil, mantitle = nil, manname = nil, name_section_level = nil, name_section = nil, name_section_buffer = nil, mannames = nil, manpurpose = nil, error_msg = nil;
29168
29258
 
29169
29259
 
29260
+
29261
+ if (header_only == null) {
29262
+ header_only = false;
29263
+ };
29170
29264
  if ($truthy($$($nesting, 'ManpageTitleVolnumRx')['$=~']((doc_attrs = document.$attributes())['$[]']("doctitle")))) {
29171
29265
 
29172
29266
 
@@ -29211,6 +29305,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29211
29305
  $writer = ["outfilesuffix", "" + "." + (manvolnum)];
29212
29306
  $send(doc_attrs, '[]=', Opal.to_a($writer));
29213
29307
  $writer[$rb_minus($writer["length"], 1)];;};
29308
+ } else if ($truthy(header_only)) {
29214
29309
  } else {
29215
29310
 
29216
29311
  reader.$skip_blank_lines();
@@ -29310,7 +29405,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29310
29405
  };
29311
29406
  };
29312
29407
  return nil;
29313
- }, $Parser_parse_manpage_header$6.$$arity = 3);
29408
+ }, $Parser_parse_manpage_header$6.$$arity = -4);
29314
29409
  Opal.defs(self, '$next_section', $Parser_next_section$9 = function $$next_section(reader, parent, attributes) {
29315
29410
  var $a, $b, $c, $d, self = this, preamble = nil, intro = nil, part = nil, has_header = nil, book = nil, document = nil, $writer = nil, section = nil, current_level = nil, expected_next_level = nil, expected_next_level_alt = nil, title = nil, sectname = nil, next_level = nil, expected_condition = nil, new_section = nil, block_cursor = nil, new_block = nil, first_block = nil, child_block = nil;
29316
29411
 
@@ -29409,16 +29504,11 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29409
29504
  if ($truthy(part)) {
29410
29505
  if ($truthy(section['$blocks?']()['$!']())) {
29411
29506
  if ($truthy(new_block.$style()['$!=']("partintro"))) {
29412
- if (new_block.$context()['$==']("paragraph")) {
29413
-
29414
-
29415
- $writer = ["open"];
29416
- $send(new_block, 'context=', Opal.to_a($writer));
29417
- $writer[$rb_minus($writer["length"], 1)];;
29507
+ if ($truthy((($b = new_block.$style()['$==']("open")) ? new_block.$context()['$==']("open") : new_block.$style()['$==']("open")))) {
29418
29508
 
29419
29509
  $writer = ["partintro"];
29420
29510
  $send(new_block, 'style=', Opal.to_a($writer));
29421
- $writer[$rb_minus($writer["length"], 1)];;
29511
+ $writer[$rb_minus($writer["length"], 1)];
29422
29512
  } else {
29423
29513
 
29424
29514
 
@@ -29430,7 +29520,16 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29430
29520
  $send(intro, 'style=', Opal.to_a($writer));
29431
29521
  $writer[$rb_minus($writer["length"], 1)];;
29432
29522
  section.$blocks()['$<<'](intro);
29433
- }}
29523
+ }
29524
+ } else if (new_block.$content_model()['$==']("simple")) {
29525
+
29526
+
29527
+ $writer = ["compound"];
29528
+ $send(new_block, 'content_model=', Opal.to_a($writer));
29529
+ $writer[$rb_minus($writer["length"], 1)];;
29530
+ new_block['$<<']($$($nesting, 'Block').$new(new_block, "paragraph", $hash2(["source", "subs"], {"source": new_block.$lines(), "subs": new_block.$subs()})));
29531
+ new_block.$lines().$clear();
29532
+ new_block.$subs().$clear();}
29434
29533
  } else if (section.$blocks().$size()['$=='](1)) {
29435
29534
 
29436
29535
  first_block = section.$blocks()['$[]'](0);
@@ -29442,12 +29541,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29442
29541
  $writer = [(intro = $$($nesting, 'Block').$new(section, "open", $hash2(["content_model"], {"content_model": "compound"})))];
29443
29542
  $send(new_block, 'parent=', Opal.to_a($writer));
29444
29543
  $writer[$rb_minus($writer["length"], 1)];;
29445
-
29446
- $writer = ["partintro"];
29447
- $send(intro, 'style=', Opal.to_a($writer));
29448
- $writer[$rb_minus($writer["length"], 1)];;
29449
- section.$blocks().$shift();
29450
- if (first_block.$style()['$==']("partintro")) {
29544
+ if (first_block.$style()['$==']((($writer = ["partintro"]), $send(intro, 'style=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))) {
29451
29545
 
29452
29546
 
29453
29547
  $writer = ["paragraph"];
@@ -29457,6 +29551,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29457
29551
  $writer = [nil];
29458
29552
  $send(first_block, 'style=', Opal.to_a($writer));
29459
29553
  $writer[$rb_minus($writer["length"], 1)];;};
29554
+ section.$blocks().$shift();
29460
29555
  intro['$<<'](first_block);
29461
29556
  section.$blocks()['$<<'](intro);};}};
29462
29557
  ($truthy($b = intro) ? $b : section).$blocks()['$<<'](new_block);
@@ -29559,6 +29654,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29559
29654
  if ($truthy(($truthy($b = ($truthy($c = style) ? $$($nesting, 'Compliance').$strict_verbatim_paragraphs() : $c)) ? $$($nesting, 'VERBATIM_STYLES')['$include?'](style) : $b))) {
29560
29655
 
29561
29656
  block_context = style.$to_sym();
29657
+ cloaked_context = "paragraph";
29562
29658
  reader.$unshift_line(this_line);
29563
29659
  break;;};
29564
29660
  if ($truthy(text_only)) {
@@ -29693,7 +29789,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29693
29789
  old_v = nil;
29694
29790
  };
29695
29791
  return old_v;}, $$11.$$s = self, $$11.$$arity = 2, $$11))};
29696
- if ($truthy((block = extension.$process_method()['$[]'](parent, target, attributes)))) {
29792
+ if ($truthy(($truthy($b = (block = extension.$process_method()['$[]'](parent, target, attributes))) ? block['$!='](parent) : $b))) {
29697
29793
 
29698
29794
  attributes.$replace(block.$attributes());
29699
29795
  break;;
@@ -29925,7 +30021,11 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29925
30021
  } else {
29926
30022
  $case = block_context;
29927
30023
  if ("listing"['$===']($case) || "source"['$===']($case)) {
29928
- if ($truthy(($truthy($a = block_context['$==']("source")) ? $a : ($truthy($b = attributes['$[]'](1)['$!']()) ? (language = ($truthy($c = attributes['$[]'](2)) ? $c : doc_attrs['$[]']("source-language"))) : $b)))) {
30024
+ if ($truthy(($truthy($a = block_context['$==']("source")) ? $a : (language = (function() {if ($truthy(attributes['$[]'](1))) {
30025
+ return nil
30026
+ } else {
30027
+ return ($truthy($b = attributes['$[]'](2)) ? $b : doc_attrs['$[]']("source-language"))
30028
+ }; return nil; })())))) {
29929
30029
 
29930
30030
  if ($truthy(language)) {
29931
30031
 
@@ -29947,6 +30047,13 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29947
30047
  $writer = ["language", doc_attrs['$[]']("source-language")];
29948
30048
  $send(attributes, '[]=', Opal.to_a($writer));
29949
30049
  $writer[$rb_minus($writer["length"], 1)];};
30050
+ if (cloaked_context['$==']("listing")) {
30051
+ } else {
30052
+
30053
+ $writer = ["cloaked-context", cloaked_context];
30054
+ $send(attributes, '[]=', Opal.to_a($writer));
30055
+ $writer[$rb_minus($writer["length"], 1)];
30056
+ };
29950
30057
  };
29951
30058
  if ($truthy(attributes['$key?']("linenums"))) {
29952
30059
  } else if ($truthy(($truthy($a = attributes['$[]']("linenums-option")) ? $a : doc_attrs['$[]']("source-linenums-option")))) {
@@ -29996,6 +30103,10 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
29996
30103
  $send(attributes, '[]=', Opal.to_a($writer));
29997
30104
  $writer[$rb_minus($writer["length"], 1)];
29998
30105
  };
30106
+
30107
+ $writer = ["cloaked-context", cloaked_context];
30108
+ $send(attributes, '[]=', Opal.to_a($writer));
30109
+ $writer[$rb_minus($writer["length"], 1)];;
29999
30110
  if ($truthy(attributes['$key?']("linenums"))) {
30000
30111
  } else if ($truthy(($truthy($a = attributes['$[]']("linenums-option")) ? $a : doc_attrs['$[]']("source-linenums-option")))) {
30001
30112
 
@@ -30228,7 +30339,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30228
30339
  };
30229
30340
  }, $Parser_is_delimited_block$ques$15.$$arity = -2);
30230
30341
  Opal.defs(self, '$build_block', $Parser_build_block$16 = function $$build_block(block_context, content_model, terminator, parent, reader, attributes, options) {
30231
- var $a, self = this, $case = nil, skip_processing = nil, parse_as_content_model = nil, lines = nil, block_reader = nil, block_cursor = nil, tab_size = nil, indent = nil, extension = nil, block = nil;
30342
+ var $a, $b, self = this, $case = nil, skip_processing = nil, parse_as_content_model = nil, lines = nil, block_reader = nil, block_cursor = nil, tab_size = nil, indent = nil, extension = nil, block = nil;
30232
30343
 
30233
30344
 
30234
30345
 
@@ -30275,10 +30386,10 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30275
30386
  if ($truthy((extension = options['$[]']("extension")))) {
30276
30387
 
30277
30388
  attributes.$delete("style");
30278
- if ($truthy((block = extension.$process_method()['$[]'](parent, ($truthy($a = block_reader) ? $a : $$($nesting, 'Reader').$new(lines)), attributes.$merge())))) {
30389
+ if ($truthy(($truthy($a = (block = extension.$process_method()['$[]'](parent, ($truthy($b = block_reader) ? $b : $$($nesting, 'Reader').$new(lines)), attributes.$merge()))) ? block['$!='](parent) : $a))) {
30279
30390
 
30280
30391
  attributes.$replace(block.$attributes());
30281
- if ($truthy((($a = block.$content_model()['$==']("compound")) ? (lines = block.$lines())['$empty?']()['$!']() : block.$content_model()['$==']("compound")))) {
30392
+ if ($truthy(($truthy($a = (($b = block.$content_model()['$==']("compound")) ? $$($nesting, 'Block')['$==='](block) : block.$content_model()['$==']("compound"))) ? (lines = block.$lines())['$empty?']()['$!']() : $a))) {
30282
30393
 
30283
30394
  content_model = "compound";
30284
30395
  block_reader = $$($nesting, 'Reader').$new(lines);};
@@ -30390,8 +30501,9 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30390
30501
  reftext = reftext.$gsub("\\]", "]");
30391
30502
  if ($truthy(reftext['$include?']($$($nesting, 'ATTR_REF_HEAD')))) {
30392
30503
  reftext = document.$sub_attributes(reftext)};
30393
- } else if ($truthy(($truthy($b = reftext['$include?']($$($nesting, 'ATTR_REF_HEAD'))) ? (reftext = document.$sub_attributes(reftext))['$empty?']() : $b))) {
30394
- return nil;}};
30504
+ } else if ($truthy(reftext['$include?']($$($nesting, 'ATTR_REF_HEAD')))) {
30505
+ if ($truthy((reftext = document.$sub_attributes(reftext))['$empty?']())) {
30506
+ reftext = nil}}};
30395
30507
  };
30396
30508
  if ($truthy(document.$register("refs", [id, $$($nesting, 'Inline').$new(block, "anchor", reftext, $hash2(["type", "id"], {"type": "ref", "id": id}))]))) {
30397
30509
  return nil
@@ -30615,7 +30727,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30615
30727
  };
30616
30728
  }, $Parser_parse_list_item$27.$$arity = -5);
30617
30729
  Opal.defs(self, '$read_lines_for_list_item', $Parser_read_lines_for_list_item$28 = function $$read_lines_for_list_item(reader, list_type, sibling_trait, has_text) {
30618
- var $a, $b, $c, $$29, $$30, $$31, $$32, $$33, self = this, buffer = nil, continuation = nil, within_nested_list = nil, detached_continuation = nil, dlist = nil, this_line = nil, prev_line = nil, $writer = nil, match = nil, nested_list_type = nil, last_line = nil;
30730
+ var $a, $b, $c, $d, $$29, $$30, $$31, $$32, $$33, self = this, buffer = nil, continuation = nil, within_nested_list = nil, detached_continuation = nil, dlist = nil, this_line = nil, prev_line = nil, $writer = nil, match = nil, block_attribute_lines = nil, next_line = nil, interrupt = nil, ch0 = nil, nested_list_type = nil, last_line = nil;
30619
30731
 
30620
30732
 
30621
30733
 
@@ -30636,12 +30748,14 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30636
30748
  this_line = reader.$read_line();
30637
30749
  if ($truthy(self['$is_sibling_list_item?'](this_line, list_type, sibling_trait))) {
30638
30750
  break;};
30751
+ if (this_line['$==']($$($nesting, 'LIST_CONTINUATION'))) {
30752
+ this_line = $$($nesting, 'ListContinuationString')};
30639
30753
  prev_line = (function() {if ($truthy(buffer['$empty?']())) {
30640
30754
  return nil
30641
30755
  } else {
30642
30756
  return buffer['$[]'](-1)
30643
30757
  }; return nil; })();
30644
- if (prev_line['$==']($$($nesting, 'LIST_CONTINUATION'))) {
30758
+ if ($truthy($$($nesting, 'ListContinuationMarker')['$==='](prev_line))) {
30645
30759
 
30646
30760
  if (continuation['$==']("inactive")) {
30647
30761
 
@@ -30650,11 +30764,11 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30650
30764
  if ($truthy(within_nested_list)) {
30651
30765
  } else {
30652
30766
 
30653
- $writer = [-1, ""];
30767
+ $writer = [-1, $$($nesting, 'ListContinuationPlaceholder')];
30654
30768
  $send(buffer, '[]=', Opal.to_a($writer));
30655
30769
  $writer[$rb_minus($writer["length"], 1)];
30656
30770
  };};
30657
- if (this_line['$==']($$($nesting, 'LIST_CONTINUATION'))) {
30771
+ if ($truthy($$($nesting, 'ListContinuationMarker')['$==='](this_line))) {
30658
30772
 
30659
30773
  if ($truthy(continuation['$!=']("frozen"))) {
30660
30774
 
@@ -30663,16 +30777,36 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30663
30777
  this_line = nil;
30664
30778
  continue;;};};
30665
30779
  if ($truthy((match = self['$is_delimited_block?'](this_line, true)))) {
30780
+
30666
30781
  if (continuation['$==']("active")) {
30667
-
30668
- buffer['$<<'](this_line);
30669
- buffer.$concat(reader.$read_lines_until($hash2(["terminator", "read_last_line", "context"], {"terminator": match.$terminator(), "read_last_line": true, "context": nil})));
30670
- continuation = "inactive";
30671
30782
  } else {
30672
30783
  break;
30673
- }
30674
- } else if ($truthy(($truthy($b = ($truthy($c = dlist) ? continuation['$!=']("active") : $c)) ? $$($nesting, 'BlockAttributeLineRx')['$match?'](this_line) : $b))) {
30675
- break;
30784
+ };
30785
+ buffer['$<<'](this_line);
30786
+ buffer.$concat(reader.$read_lines_until($hash2(["terminator", "read_last_line", "context"], {"terminator": match.$terminator(), "read_last_line": true, "context": nil})));
30787
+ continuation = "inactive";
30788
+ } else if ($truthy(($truthy($b = ($truthy($c = ($truthy($d = dlist) ? continuation['$!=']("active") : $d)) ? this_line['$start_with?']("[") : $c)) ? $$($nesting, 'BlockAttributeLineRx')['$match?'](this_line) : $b))) {
30789
+
30790
+ block_attribute_lines = [this_line];
30791
+ while ($truthy((next_line = reader.$peek_line()))) {
30792
+
30793
+ if ($truthy(self['$is_delimited_block?'](next_line))) {
30794
+ interrupt = true
30795
+ } else if ($truthy(($truthy($c = next_line['$empty?']()) ? $c : ($truthy($d = next_line['$start_with?']("[")) ? $$($nesting, 'BlockAttributeLineRx')['$match?'](next_line) : $d)))) {
30796
+
30797
+ block_attribute_lines['$<<'](reader.$read_line());
30798
+ continue;;
30799
+ } else if ($truthy(($truthy($c = $$($nesting, 'AnyListRx')['$match?'](next_line)) ? self['$is_sibling_list_item?'](next_line, list_type, sibling_trait)['$!']() : $c))) {
30800
+ buffer.$concat(block_attribute_lines)
30801
+ } else {
30802
+ interrupt = true
30803
+ };
30804
+ break;;
30805
+ };
30806
+ if ($truthy(interrupt)) {
30807
+
30808
+ reader.$unshift_lines(block_attribute_lines);
30809
+ break;;};
30676
30810
  } else if ($truthy((($b = continuation['$==']("active")) ? this_line['$empty?']()['$!']() : continuation['$==']("active")))) {
30677
30811
  if ($truthy($$($nesting, 'LiteralParagraphRx')['$match?'](this_line))) {
30678
30812
 
@@ -30690,7 +30824,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30690
30824
  buffer.$concat(reader.$read_lines_until($hash2(["preserve_last_line", "break_on_blank_lines", "break_on_list_continuation"], {"preserve_last_line": true, "break_on_blank_lines": true, "break_on_list_continuation": true})))
30691
30825
  };
30692
30826
  continuation = "inactive";
30693
- } else if ($truthy(($truthy($b = ($truthy($c = $$($nesting, 'BlockTitleRx')['$match?'](this_line)) ? $c : $$($nesting, 'BlockAttributeLineRx')['$match?'](this_line))) ? $b : $$($nesting, 'AttributeEntryRx')['$match?'](this_line)))) {
30827
+ } else if ($truthy(($truthy($b = ($truthy($c = (($d = (ch0 = this_line.$chr())['$=='](".")) ? $$($nesting, 'BlockTitleRx')['$match?'](this_line) : (ch0 = this_line.$chr())['$==']("."))) ? $c : (($d = ch0['$==']("[")) ? $$($nesting, 'BlockAttributeLineRx')['$match?'](this_line) : ch0['$==']("[")))) ? $b : (($c = ch0['$=='](":")) ? $$($nesting, 'AttributeEntryRx')['$match?'](this_line) : ch0['$=='](":"))))) {
30694
30828
  buffer['$<<'](this_line)
30695
30829
  } else {
30696
30830
 
@@ -30705,7 +30839,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30705
30839
  if (ctx == null) {
30706
30840
  ctx = nil;
30707
30841
  };
30708
- return $$($nesting, 'ListRxMap')['$[]'](ctx)['$match?'](this_line);}, $$30.$$s = self, $$30.$$arity = 1, $$30))))) {
30842
+ return $$($nesting, 'ListRxMap')['$[]'](ctx)['$=~'](this_line);}, $$30.$$s = self, $$30.$$arity = 1, $$30))))) {
30709
30843
 
30710
30844
  within_nested_list = true;
30711
30845
  if ($truthy((($b = nested_list_type['$==']("dlist")) ? (($c = $gvars['~']) === nil ? nil : $c['$[]'](3))['$nil_or_empty?']() : nested_list_type['$==']("dlist")))) {
@@ -30726,7 +30860,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30726
30860
  if (this_line['$==']($$($nesting, 'LIST_CONTINUATION'))) {
30727
30861
 
30728
30862
  detached_continuation = buffer.$size();
30729
- buffer['$<<'](this_line);
30863
+ buffer['$<<']($$($nesting, 'ListContinuationString'));
30730
30864
  } else if ($truthy(has_text)) {
30731
30865
  if ($truthy(self['$is_sibling_list_item?'](this_line, list_type, sibling_trait))) {
30732
30866
  break;
@@ -30770,6 +30904,10 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30770
30904
  buffer['$<<'](this_line);
30771
30905
  has_text = true;
30772
30906
  };
30907
+ } else if ($truthy($$($nesting, 'ListContinuationMarker')['$==='](this_line))) {
30908
+
30909
+ has_text = true;
30910
+ buffer['$<<'](this_line);
30773
30911
  } else {
30774
30912
 
30775
30913
  if ($truthy(this_line['$empty?']())) {
@@ -30800,17 +30938,18 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
30800
30938
  reader.$unshift_line(this_line)};
30801
30939
  if ($truthy(detached_continuation)) {
30802
30940
 
30803
- $writer = [detached_continuation, ""];
30941
+ $writer = [detached_continuation, $$($nesting, 'ListContinuationPlaceholder')];
30804
30942
  $send(buffer, '[]=', Opal.to_a($writer));
30805
30943
  $writer[$rb_minus($writer["length"], 1)];};
30806
30944
  while (!($truthy(buffer['$empty?']()))) {
30807
- if ($truthy((last_line = buffer['$[]'](-1))['$empty?']())) {
30808
- buffer.$pop()
30809
- } else {
30945
+ if ($truthy($$($nesting, 'ListContinuationMarker')['$===']((last_line = buffer['$[]'](-1))))) {
30810
30946
 
30811
- if (last_line['$==']($$($nesting, 'LIST_CONTINUATION'))) {
30812
- buffer.$pop()};
30947
+ buffer.$pop();
30813
30948
  break;;
30949
+ } else if ($truthy(last_line['$empty?']())) {
30950
+ buffer.$pop()
30951
+ } else {
30952
+ break;
30814
30953
  }
30815
30954
  };
30816
30955
  return buffer;
@@ -31021,60 +31160,58 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31021
31160
  sect_level = 0};};
31022
31161
  return [sect_id, sect_reftext, sect_title, sect_level, atx];
31023
31162
  }, $Parser_parse_section_title$40.$$arity = -3);
31024
- Opal.defs(self, '$parse_header_metadata', $Parser_parse_header_metadata$41 = function $$parse_header_metadata(reader, document) {
31025
- var $a, $$42, $$43, $$44, self = this, doc_attrs = nil, implicit_authors = nil, metadata = nil, implicit_author = nil, implicit_authorinitials = nil, author_metadata = nil, rev_metadata = nil, rev_line = nil, match = nil, $writer = nil, component = nil, author_line = nil, authors = nil, author_idx = nil, author_key = nil, explicit = nil, sparse = nil, author_override = nil;
31163
+ Opal.defs(self, '$parse_header_metadata', $Parser_parse_header_metadata$41 = function $$parse_header_metadata(reader, document, retrieve) {
31164
+ var $a, $$42, $$43, $$44, self = this, doc_attrs = nil, authorcount = nil, implicit_author_metadata = nil, $writer = nil, implicit_author = nil, implicit_authorinitials = nil, implicit_authors = nil, rev_line = nil, match = nil, rev_metadata = nil, component = nil, author_line = nil, author_metadata = nil, authors = nil, author_idx = nil, author_key = nil, explicit = nil, sparse = nil, author_override = nil;
31026
31165
 
31027
31166
 
31028
31167
 
31029
31168
  if (document == null) {
31030
31169
  document = nil;
31031
31170
  };
31171
+
31172
+ if (retrieve == null) {
31173
+ retrieve = true;
31174
+ };
31032
31175
  doc_attrs = ($truthy($a = document) ? document.$attributes() : $a);
31033
31176
  self.$process_attribute_entries(reader, document);
31034
- $a = [(implicit_authors = $hash2([], {})), nil, nil], (metadata = $a[0]), (implicit_author = $a[1]), (implicit_authorinitials = $a[2]), $a;
31035
31177
  if ($truthy(($truthy($a = reader['$has_more_lines?']()) ? reader['$next_line_empty?']()['$!']() : $a))) {
31036
31178
 
31037
- if ($truthy((author_metadata = self.$process_authors(reader.$read_line()))['$empty?']())) {
31038
- } else {
31179
+ authorcount = (implicit_author_metadata = self.$process_authors(reader.$read_line())).$delete("authorcount");
31180
+ if ($truthy(($truthy($a = document) ? $rb_gt((($writer = ["authorcount", authorcount]), $send(doc_attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]), 0) : $a))) {
31039
31181
 
31040
- if ($truthy(document)) {
31041
-
31042
- $send(author_metadata, 'each', [], ($$42 = function(key, val){var self = $$42.$$s || this, $writer = nil;
31182
+ $send(implicit_author_metadata, 'each', [], ($$42 = function(key, val){var self = $$42.$$s || this;
31043
31183
 
31184
+
31044
31185
 
31186
+ if (key == null) {
31187
+ key = nil;
31188
+ };
31189
+
31190
+ if (val == null) {
31191
+ val = nil;
31192
+ };
31193
+ if ($truthy(doc_attrs['$key?'](key))) {
31194
+ return nil
31195
+ } else {
31045
31196
 
31046
- if (key == null) {
31047
- key = nil;
31048
- };
31049
-
31050
- if (val == null) {
31051
- val = nil;
31052
- };
31053
- if ($truthy(doc_attrs['$key?'](key))) {
31054
- return nil
31055
- } else {
31056
-
31057
- $writer = [key, (function() {if ($truthy($$$('::', 'String')['$==='](val))) {
31058
-
31059
- return document.$apply_header_subs(val);
31060
- } else {
31061
- return val
31062
- }; return nil; })()];
31063
- $send(doc_attrs, '[]=', Opal.to_a($writer));
31064
- return $writer[$rb_minus($writer["length"], 1)];
31065
- };}, $$42.$$s = self, $$42.$$arity = 2, $$42));
31066
- implicit_author = doc_attrs['$[]']("author");
31067
- implicit_authorinitials = doc_attrs['$[]']("authorinitials");
31068
- implicit_authors = doc_attrs['$[]']("authors");};
31069
- metadata = author_metadata;
31070
- };
31197
+ $writer = [key, document.$apply_header_subs(val)];
31198
+ $send(doc_attrs, '[]=', Opal.to_a($writer));
31199
+ return $writer[$rb_minus($writer["length"], 1)];
31200
+ };}, $$42.$$s = self, $$42.$$arity = 2, $$42));
31201
+ implicit_author = doc_attrs['$[]']("author");
31202
+ implicit_authorinitials = doc_attrs['$[]']("authorinitials");
31203
+ implicit_authors = doc_attrs['$[]']("authors");};
31204
+
31205
+ $writer = ["authorcount", authorcount];
31206
+ $send(implicit_author_metadata, '[]=', Opal.to_a($writer));
31207
+ $writer[$rb_minus($writer["length"], 1)];;
31071
31208
  self.$process_attribute_entries(reader, document);
31072
- rev_metadata = $hash2([], {});
31073
31209
  if ($truthy(($truthy($a = reader['$has_more_lines?']()) ? reader['$next_line_empty?']()['$!']() : $a))) {
31074
31210
 
31075
31211
  rev_line = reader.$read_line();
31076
31212
  if ($truthy((match = $$($nesting, 'RevisionInfoLineRx').$match(rev_line)))) {
31077
31213
 
31214
+ rev_metadata = $hash2([], {});
31078
31215
  if ($truthy(match['$[]'](1))) {
31079
31216
 
31080
31217
  $writer = ["revnumber", match['$[]'](1).$rstrip()];
@@ -31097,38 +31234,33 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31097
31234
  $writer = ["revremark", match['$[]'](3).$rstrip()];
31098
31235
  $send(rev_metadata, '[]=', Opal.to_a($writer));
31099
31236
  $writer[$rb_minus($writer["length"], 1)];};
31100
- } else {
31101
- reader.$unshift_line(rev_line)
31102
- };};
31103
- if ($truthy(rev_metadata['$empty?']())) {
31104
- } else {
31105
-
31106
- if ($truthy(document)) {
31107
- $send(rev_metadata, 'each', [], ($$43 = function(key, val){var self = $$43.$$s || this;
31237
+ if ($truthy(($truthy($a = document) ? rev_metadata['$empty?']()['$!']() : $a))) {
31238
+ $send(rev_metadata, 'each', [], ($$43 = function(key, val){var self = $$43.$$s || this;
31108
31239
 
31109
-
31110
31240
 
31111
- if (key == null) {
31112
- key = nil;
31113
- };
31114
-
31115
- if (val == null) {
31116
- val = nil;
31117
- };
31118
- if ($truthy(doc_attrs['$key?'](key))) {
31119
- return nil
31120
- } else {
31121
31241
 
31122
- $writer = [key, document.$apply_header_subs(val)];
31123
- $send(doc_attrs, '[]=', Opal.to_a($writer));
31124
- return $writer[$rb_minus($writer["length"], 1)];
31125
- };}, $$43.$$s = self, $$43.$$arity = 2, $$43))};
31126
- metadata.$update(rev_metadata);
31127
- };
31242
+ if (key == null) {
31243
+ key = nil;
31244
+ };
31245
+
31246
+ if (val == null) {
31247
+ val = nil;
31248
+ };
31249
+ if ($truthy(doc_attrs['$key?'](key))) {
31250
+ return nil
31251
+ } else {
31252
+
31253
+ $writer = [key, document.$apply_header_subs(val)];
31254
+ $send(doc_attrs, '[]=', Opal.to_a($writer));
31255
+ return $writer[$rb_minus($writer["length"], 1)];
31256
+ };}, $$43.$$s = self, $$43.$$arity = 2, $$43))};
31257
+ } else {
31258
+ reader.$unshift_line(rev_line)
31259
+ };};
31128
31260
  self.$process_attribute_entries(reader, document);
31129
31261
  reader.$skip_blank_lines();
31130
31262
  } else {
31131
- author_metadata = $hash2([], {})
31263
+ implicit_author_metadata = $hash2([], {})
31132
31264
  };
31133
31265
  if ($truthy(document)) {
31134
31266
 
@@ -31144,7 +31276,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31144
31276
  $a = [[], 1, "author_1", false, false], (authors = $a[0]), (author_idx = $a[1]), (author_key = $a[2]), (explicit = $a[3]), (sparse = $a[4]), $a;
31145
31277
  while ($truthy(doc_attrs['$key?'](author_key))) {
31146
31278
 
31147
- if ((author_override = doc_attrs['$[]'](author_key))['$=='](author_metadata['$[]'](author_key))) {
31279
+ if ((author_override = doc_attrs['$[]'](author_key))['$=='](implicit_author_metadata['$[]'](author_key))) {
31148
31280
 
31149
31281
  authors['$<<'](nil);
31150
31282
  sparse = true;
@@ -31172,7 +31304,7 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31172
31304
  if ($truthy(author)) {
31173
31305
  return nil;};
31174
31306
 
31175
- $writer = [idx, $send([author_metadata['$[]']("" + "firstname_" + ((name_idx = $rb_plus(idx, 1)))), author_metadata['$[]']("" + "middlename_" + (name_idx)), author_metadata['$[]']("" + "lastname_" + (name_idx))].$compact(), 'map', [], ($$45 = function(it){var self = $$45.$$s || this;
31307
+ $writer = [idx, $send([implicit_author_metadata['$[]']("" + "firstname_" + ((name_idx = $rb_plus(idx, 1)))), implicit_author_metadata['$[]']("" + "middlename_" + (name_idx)), implicit_author_metadata['$[]']("" + "lastname_" + (name_idx))].$compact(), 'map', [], ($$45 = function(it){var self = $$45.$$s || this;
31176
31308
 
31177
31309
 
31178
31310
 
@@ -31184,11 +31316,18 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31184
31316
  return $writer[$rb_minus($writer["length"], 1)];;}, $$44.$$s = self, $$44.$$arity = 2, $$44))};
31185
31317
  author_metadata = self.$process_authors(authors, true, false);
31186
31318
  } else {
31187
- author_metadata = $hash2([], {})
31319
+ author_metadata = $hash2(["authorcount"], {"authorcount": 0})
31188
31320
  };
31189
31321
  };
31190
- if ($truthy(author_metadata['$empty?']())) {
31191
- ($truthy($a = metadata['$[]']("authorcount")) ? $a : (($writer = ["authorcount", (($writer = ["authorcount", 0]), $send(doc_attrs, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)])]), $send(metadata, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))
31322
+ if (author_metadata['$[]']("authorcount")['$=='](0)) {
31323
+ if ($truthy(authorcount)) {
31324
+ author_metadata = nil
31325
+ } else {
31326
+
31327
+ $writer = ["authorcount", 0];
31328
+ $send(doc_attrs, '[]=', Opal.to_a($writer));
31329
+ $writer[$rb_minus($writer["length"], 1)];
31330
+ }
31192
31331
  } else {
31193
31332
 
31194
31333
  doc_attrs.$update(author_metadata);
@@ -31198,7 +31337,11 @@ Opal.modules["asciidoctor/parser"] = function(Opal) {
31198
31337
  $send(doc_attrs, '[]=', Opal.to_a($writer));
31199
31338
  $writer[$rb_minus($writer["length"], 1)];};
31200
31339
  };};
31201
- return metadata;
31340
+ if ($truthy(retrieve)) {
31341
+ return implicit_author_metadata.$merge(rev_metadata.$to_h(), author_metadata.$to_h())
31342
+ } else {
31343
+ return nil
31344
+ };
31202
31345
  }, $Parser_parse_header_metadata$41.$$arity = -2);
31203
31346
  Opal.defs(self, '$process_authors', $Parser_process_authors$46 = function $$process_authors(author_line, names_only, multiple) {
31204
31347
  var $a, $$47, self = this, author_metadata = nil, author_idx = nil, $writer = nil;
@@ -32293,7 +32436,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32293
32436
  (function($base, $super, $parent_nesting) {
32294
32437
  var self = $klass($base, $super, 'PathResolver');
32295
32438
 
32296
- var $nesting = [self].concat($parent_nesting), $PathResolver_initialize$1, $PathResolver_absolute_path$ques$2, $a, $PathResolver_root$ques$3, $PathResolver_unc$ques$4, $PathResolver_web_root$ques$5, $PathResolver_descends_from$ques$6, $PathResolver_relative_path$7, $PathResolver_posixify$8, $PathResolver_expand_path$9, $PathResolver_partition_path$11, $PathResolver_join_path$12, $PathResolver_system_path$13, $PathResolver_web_path$16, $PathResolver_extract_uri_prefix$18;
32439
+ var $nesting = [self].concat($parent_nesting), $PathResolver_initialize$1, $PathResolver_absolute_path$ques$2, $a, $PathResolver_root$ques$3, $PathResolver_root$ques$4, $PathResolver_unc$ques$5, $PathResolver_web_root$ques$6, $PathResolver_descends_from$ques$7, $PathResolver_relative_path$8, $PathResolver_posixify$9, $PathResolver_expand_path$10, $PathResolver_partition_path$12, $PathResolver_join_path$13, $PathResolver_system_path$14, $PathResolver_web_path$17, $PathResolver_extract_uri_prefix$19;
32297
32440
 
32298
32441
  self.$$prototype.file_separator = self.$$prototype._partition_path_web = self.$$prototype._partition_path_sys = self.$$prototype.working_dir = nil;
32299
32442
 
@@ -32304,6 +32447,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32304
32447
  Opal.const_set($nesting[0], 'SLASH', "/");
32305
32448
  Opal.const_set($nesting[0], 'BACKSLASH', "\\");
32306
32449
  Opal.const_set($nesting[0], 'DOUBLE_SLASH', "//");
32450
+ Opal.const_set($nesting[0], 'URI_CLASSLOADER', "uri:classloader:");
32307
32451
  Opal.const_set($nesting[0], 'WindowsRootRx', /^(?:[a-zA-Z]:)?[\\\/]/);
32308
32452
  self.$attr_accessor("file_separator");
32309
32453
  self.$attr_accessor("working_dir");
@@ -32349,23 +32493,30 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32349
32493
 
32350
32494
  return ($truthy($a = self['$absolute_path?'](path)) ? $a : path['$start_with?']("file://", "http://", "https://"))
32351
32495
  }, $PathResolver_root$ques$3.$$arity = 1)
32496
+ } else if ($$$('::', 'RUBY_ENGINE')['$==']("jruby")) {
32497
+
32498
+ Opal.def(self, '$root?', $PathResolver_root$ques$4 = function(path) {
32499
+ var $a, self = this;
32500
+
32501
+ return ($truthy($a = self['$absolute_path?'](path)) ? $a : path['$start_with?']($$($nesting, 'URI_CLASSLOADER')))
32502
+ }, $PathResolver_root$ques$4.$$arity = 1)
32352
32503
  } else {
32353
32504
  Opal.alias(self, "root?", "absolute_path?")
32354
32505
  };
32355
32506
 
32356
- Opal.def(self, '$unc?', $PathResolver_unc$ques$4 = function(path) {
32507
+ Opal.def(self, '$unc?', $PathResolver_unc$ques$5 = function(path) {
32357
32508
  var self = this;
32358
32509
 
32359
32510
  return path['$start_with?']($$($nesting, 'DOUBLE_SLASH'))
32360
- }, $PathResolver_unc$ques$4.$$arity = 1);
32511
+ }, $PathResolver_unc$ques$5.$$arity = 1);
32361
32512
 
32362
- Opal.def(self, '$web_root?', $PathResolver_web_root$ques$5 = function(path) {
32513
+ Opal.def(self, '$web_root?', $PathResolver_web_root$ques$6 = function(path) {
32363
32514
  var self = this;
32364
32515
 
32365
32516
  return path['$start_with?']($$($nesting, 'SLASH'))
32366
- }, $PathResolver_web_root$ques$5.$$arity = 1);
32517
+ }, $PathResolver_web_root$ques$6.$$arity = 1);
32367
32518
 
32368
- Opal.def(self, '$descends_from?', $PathResolver_descends_from$ques$6 = function(path, base) {
32519
+ Opal.def(self, '$descends_from?', $PathResolver_descends_from$ques$7 = function(path, base) {
32369
32520
  var $a, self = this;
32370
32521
 
32371
32522
  if (base['$=='](path)) {
@@ -32375,9 +32526,9 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32375
32526
  } else {
32376
32527
  return ($truthy($a = path['$start_with?']($rb_plus(base, $$($nesting, 'SLASH')))) ? $rb_plus(base.$length(), 1) : $a)
32377
32528
  }
32378
- }, $PathResolver_descends_from$ques$6.$$arity = 2);
32529
+ }, $PathResolver_descends_from$ques$7.$$arity = 2);
32379
32530
 
32380
- Opal.def(self, '$relative_path', $PathResolver_relative_path$7 = function $$relative_path(path, base) {
32531
+ Opal.def(self, '$relative_path', $PathResolver_relative_path$8 = function $$relative_path(path, base) {
32381
32532
  var self = this, offset = nil;
32382
32533
 
32383
32534
  if ($truthy(self['$root?'](path))) {
@@ -32398,9 +32549,9 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32398
32549
  } else {
32399
32550
  return path
32400
32551
  }
32401
- }, $PathResolver_relative_path$7.$$arity = 2);
32552
+ }, $PathResolver_relative_path$8.$$arity = 2);
32402
32553
 
32403
- Opal.def(self, '$posixify', $PathResolver_posixify$8 = function $$posixify(path) {
32554
+ Opal.def(self, '$posixify', $PathResolver_posixify$9 = function $$posixify(path) {
32404
32555
  var $a, self = this;
32405
32556
 
32406
32557
  if ($truthy(path)) {
@@ -32413,18 +32564,18 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32413
32564
  } else {
32414
32565
  return ""
32415
32566
  }
32416
- }, $PathResolver_posixify$8.$$arity = 1);
32567
+ }, $PathResolver_posixify$9.$$arity = 1);
32417
32568
  Opal.alias(self, "posixfy", "posixify");
32418
32569
 
32419
- Opal.def(self, '$expand_path', $PathResolver_expand_path$9 = function $$expand_path(path) {
32420
- var $a, $b, $$10, self = this, path_segments = nil, path_root = nil, resolved_segments = nil;
32570
+ Opal.def(self, '$expand_path', $PathResolver_expand_path$10 = function $$expand_path(path) {
32571
+ var $a, $b, $$11, self = this, path_segments = nil, path_root = nil, resolved_segments = nil;
32421
32572
 
32422
32573
 
32423
32574
  $b = self.$partition_path(path), $a = Opal.to_ary($b), (path_segments = ($a[0] == null ? nil : $a[0])), (path_root = ($a[1] == null ? nil : $a[1])), $b;
32424
32575
  if ($truthy(path['$include?']($$($nesting, 'DOT_DOT')))) {
32425
32576
 
32426
32577
  resolved_segments = [];
32427
- $send(path_segments, 'each', [], ($$10 = function(segment){var self = $$10.$$s || this;
32578
+ $send(path_segments, 'each', [], ($$11 = function(segment){var self = $$11.$$s || this;
32428
32579
 
32429
32580
 
32430
32581
 
@@ -32435,14 +32586,14 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32435
32586
  return resolved_segments.$pop()
32436
32587
  } else {
32437
32588
  return resolved_segments['$<<'](segment)
32438
- };}, $$10.$$s = self, $$10.$$arity = 1, $$10));
32589
+ };}, $$11.$$s = self, $$11.$$arity = 1, $$11));
32439
32590
  return self.$join_path(resolved_segments, path_root);
32440
32591
  } else {
32441
32592
  return self.$join_path(path_segments, path_root)
32442
32593
  };
32443
- }, $PathResolver_expand_path$9.$$arity = 1);
32594
+ }, $PathResolver_expand_path$10.$$arity = 1);
32444
32595
 
32445
- Opal.def(self, '$partition_path', $PathResolver_partition_path$11 = function $$partition_path(path, web) {
32596
+ Opal.def(self, '$partition_path', $PathResolver_partition_path$12 = function $$partition_path(path, web) {
32446
32597
  var self = this, result = nil, cache = nil, posix_path = nil, root = nil, path_segments = nil, $writer = nil;
32447
32598
 
32448
32599
 
@@ -32467,6 +32618,8 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32467
32618
  root = $$($nesting, 'DOUBLE_SLASH')
32468
32619
  } else if ($truthy(posix_path['$start_with?']($$($nesting, 'SLASH')))) {
32469
32620
  root = $$($nesting, 'SLASH')
32621
+ } else if ($truthy(posix_path['$start_with?']($$($nesting, 'URI_CLASSLOADER')))) {
32622
+ root = posix_path.$slice(0, $$($nesting, 'URI_CLASSLOADER').$length())
32470
32623
  } else {
32471
32624
  root = posix_path.$slice(0, $rb_plus(posix_path.$index($$($nesting, 'SLASH')), 1))
32472
32625
  }
@@ -32483,9 +32636,9 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32483
32636
  $writer = [path, [path_segments, root]];
32484
32637
  $send(cache, '[]=', Opal.to_a($writer));
32485
32638
  return $writer[$rb_minus($writer["length"], 1)];;
32486
- }, $PathResolver_partition_path$11.$$arity = -2);
32639
+ }, $PathResolver_partition_path$12.$$arity = -2);
32487
32640
 
32488
- Opal.def(self, '$join_path', $PathResolver_join_path$12 = function $$join_path(segments, root) {
32641
+ Opal.def(self, '$join_path', $PathResolver_join_path$13 = function $$join_path(segments, root) {
32489
32642
  var self = this;
32490
32643
 
32491
32644
 
@@ -32499,10 +32652,10 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32499
32652
 
32500
32653
  return segments.$join($$($nesting, 'SLASH'));
32501
32654
  };
32502
- }, $PathResolver_join_path$12.$$arity = -2);
32655
+ }, $PathResolver_join_path$13.$$arity = -2);
32503
32656
 
32504
- Opal.def(self, '$system_path', $PathResolver_system_path$13 = function $$system_path(target, start, jail, opts) {
32505
- var $a, $b, $$14, $$15, self = this, target_path = nil, target_segments = nil, jail_segments = nil, jail_root = nil, recheck = nil, start_segments = nil, start_root = nil, resolved_segments = nil, unresolved_segments = nil, warned = nil;
32657
+ Opal.def(self, '$system_path', $PathResolver_system_path$14 = function $$system_path(target, start, jail, opts) {
32658
+ var $a, $b, $$15, $$16, self = this, target_path = nil, target_segments = nil, jail_segments = nil, jail_root = nil, recheck = nil, start_segments = nil, start_root = nil, resolved_segments = nil, unresolved_segments = nil, warned = nil;
32506
32659
 
32507
32660
 
32508
32661
 
@@ -32593,7 +32746,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32593
32746
  $b = self.$partition_path(jail), $a = Opal.to_ary($b), (jail_segments = ($a[0] == null ? nil : $a[0])), $b
32594
32747
  };
32595
32748
  warned = false;
32596
- $send(unresolved_segments, 'each', [], ($$14 = function(segment){var self = $$14.$$s || this, $c;
32749
+ $send(unresolved_segments, 'each', [], ($$15 = function(segment){var self = $$15.$$s || this, $c;
32597
32750
 
32598
32751
 
32599
32752
 
@@ -32616,9 +32769,9 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32616
32769
  }
32617
32770
  } else {
32618
32771
  return resolved_segments['$<<'](segment)
32619
- };}, $$14.$$s = self, $$14.$$arity = 1, $$14));
32772
+ };}, $$15.$$s = self, $$15.$$arity = 1, $$15));
32620
32773
  } else {
32621
- $send(unresolved_segments, 'each', [], ($$15 = function(segment){var self = $$15.$$s || this;
32774
+ $send(unresolved_segments, 'each', [], ($$16 = function(segment){var self = $$16.$$s || this;
32622
32775
 
32623
32776
 
32624
32777
 
@@ -32629,7 +32782,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32629
32782
  return resolved_segments.$pop()
32630
32783
  } else {
32631
32784
  return resolved_segments['$<<'](segment)
32632
- };}, $$15.$$s = self, $$15.$$arity = 1, $$15))
32785
+ };}, $$16.$$s = self, $$16.$$arity = 1, $$16))
32633
32786
  };};
32634
32787
  if ($truthy(recheck)) {
32635
32788
 
@@ -32650,10 +32803,10 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32650
32803
  } else {
32651
32804
  return self.$join_path(resolved_segments, jail_root)
32652
32805
  };
32653
- }, $PathResolver_system_path$13.$$arity = -2);
32806
+ }, $PathResolver_system_path$14.$$arity = -2);
32654
32807
 
32655
- Opal.def(self, '$web_path', $PathResolver_web_path$16 = function $$web_path(target, start) {
32656
- var $a, $b, $$17, self = this, uri_prefix = nil, target_segments = nil, target_root = nil, resolved_segments = nil, resolved_path = nil;
32808
+ Opal.def(self, '$web_path', $PathResolver_web_path$17 = function $$web_path(target, start) {
32809
+ var $a, $b, $$18, self = this, uri_prefix = nil, target_segments = nil, target_root = nil, resolved_segments = nil, resolved_path = nil;
32657
32810
 
32658
32811
 
32659
32812
 
@@ -32672,7 +32825,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32672
32825
  };
32673
32826
  $b = self.$partition_path(target, true), $a = Opal.to_ary($b), (target_segments = ($a[0] == null ? nil : $a[0])), (target_root = ($a[1] == null ? nil : $a[1])), $b;
32674
32827
  resolved_segments = [];
32675
- $send(target_segments, 'each', [], ($$17 = function(segment){var self = $$17.$$s || this, $c;
32828
+ $send(target_segments, 'each', [], ($$18 = function(segment){var self = $$18.$$s || this, $c;
32676
32829
 
32677
32830
 
32678
32831
 
@@ -32693,7 +32846,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32693
32846
  }
32694
32847
  } else {
32695
32848
  return resolved_segments['$<<'](segment)
32696
- };}, $$17.$$s = self, $$17.$$arity = 1, $$17));
32849
+ };}, $$18.$$s = self, $$18.$$arity = 1, $$18));
32697
32850
  if ($truthy((resolved_path = self.$join_path(resolved_segments, target_root))['$include?'](" "))) {
32698
32851
  resolved_path = resolved_path.$gsub(" ", "%20")};
32699
32852
  if ($truthy(uri_prefix)) {
@@ -32701,9 +32854,9 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32701
32854
  } else {
32702
32855
  return resolved_path
32703
32856
  };
32704
- }, $PathResolver_web_path$16.$$arity = -2);
32857
+ }, $PathResolver_web_path$17.$$arity = -2);
32705
32858
  self.$private();
32706
- return (Opal.def(self, '$extract_uri_prefix', $PathResolver_extract_uri_prefix$18 = function $$extract_uri_prefix(str) {
32859
+ return (Opal.def(self, '$extract_uri_prefix', $PathResolver_extract_uri_prefix$19 = function $$extract_uri_prefix(str) {
32707
32860
  var $a, self = this;
32708
32861
 
32709
32862
  if ($truthy(($truthy($a = str['$include?'](":")) ? $$($nesting, 'UriSniffRx')['$=~'](str) : $a))) {
@@ -32711,7 +32864,7 @@ Opal.modules["asciidoctor/path_resolver"] = function(Opal) {
32711
32864
  } else {
32712
32865
  return str
32713
32866
  }
32714
- }, $PathResolver_extract_uri_prefix$18.$$arity = 1), nil) && 'extract_uri_prefix';
32867
+ }, $PathResolver_extract_uri_prefix$19.$$arity = 1), nil) && 'extract_uri_prefix';
32715
32868
  })($nesting[0], null, $nesting)
32716
32869
  })($nesting[0], $nesting)
32717
32870
  };
@@ -32738,7 +32891,7 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
32738
32891
  }
32739
32892
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $hash2 = Opal.hash2, $truthy = Opal.truthy, $send = Opal.send, $gvars = Opal.gvars, $hash = Opal.hash;
32740
32893
 
32741
- Opal.add_stubs(['$include', '$attr_reader', '$+', '$attr_accessor', '$!', '$===', '$split', '$file', '$dir', '$dirname', '$path', '$basename', '$lineno', '$reverse', '$prepare_lines', '$empty?', '$nil_or_empty?', '$peek_line', '$>', '$slice', '$[]', '$length', '$process_line', '$times', '$shift', '$read_line', '$<<', '$-', '$unshift_all', '$has_more_lines?', '$join', '$read_lines', '$unshift', '$start_with?', '$==', '$*', '$read_lines_until', '$size', '$clear', '$cursor', '$[]=', '$!=', '$fetch', '$cursor_at_mark', '$warn', '$logger', '$message_with_context', '$pop', '$push', '$respond_to?', '$reverse_each', '$new', '$tap', '$each', '$instance_variables', '$instance_variable_get', '$drop', '$instance_variable_set', '$class', '$object_id', '$inspect', '$private', '$prepare_source_array', '$prepare_source_string', '$chomp', '$valid_encoding?', '$to_s', '$raise', '$to_i', '$attributes', '$catalog', '$pop_include', '$parse', '$path=', '$dup', '$end_with?', '$keys', '$rindex', '$rootname', '$key?', '$attr', '$reverse!', '$>=', '$nil?', '$extensions?', '$include_processors?', '$extensions', '$include_processors', '$map', '$skip_front_matter!', '$adjust_indentation!', '$include?', '$=~', '$preprocess_conditional_directive', '$preprocess_include_directive', '$downcase', '$error', '$none?', '$any?', '$all?', '$strip', '$send', '$resolve_expr_val', '$replace_next_line', '$rstrip', '$sub_attributes', '$attribute_missing', '$info', '$parse_attributes', '$find', '$handles?', '$instance', '$process_method', '$safe', '$resolve_include_path', '$method', '$split_delimited_value', '$partition', '$<', '$to_a', '$uniq', '$sort', '$call', '$each_line', '$infinite?', '$push_include', '$delete', '$first', '$values', '$value?', '$create_include_cursor', '$delete_at', '$read', '$uriish?', '$attr?', '$require_library', '$normalize_system_path', '$file?', '$relative_path', '$path_resolver', '$base_dir', '$to_f']);
32894
+ Opal.add_stubs(['$include', '$attr_reader', '$+', '$attr_accessor', '$!', '$===', '$split', '$file', '$dir', '$dirname', '$path', '$basename', '$lineno', '$reverse', '$prepare_lines', '$empty?', '$nil_or_empty?', '$peek_line', '$[]', '$>', '$slice', '$length', '$process_line', '$times', '$shift', '$read_line', '$<<', '$-', '$unshift_all', '$has_more_lines?', '$join', '$read_lines', '$unshift', '$start_with?', '$==', '$*', '$read_lines_until', '$size', '$clear', '$cursor', '$[]=', '$!=', '$fetch', '$cursor_at_mark', '$warn', '$logger', '$message_with_context', '$pop', '$push', '$respond_to?', '$reverse_each', '$new', '$tap', '$each', '$instance_variables', '$instance_variable_get', '$drop', '$instance_variable_set', '$class', '$object_id', '$inspect', '$private', '$prepare_source_array', '$prepare_source_string', '$chomp', '$valid_encoding?', '$to_s', '$raise', '$to_i', '$attributes', '$catalog', '$pop_include', '$parse', '$path=', '$dup', '$end_with?', '$keys', '$rindex', '$rootname', '$key?', '$attr', '$reverse!', '$>=', '$nil?', '$extensions?', '$include_processors?', '$extensions', '$include_processors', '$map', '$skip_front_matter!', '$adjust_indentation!', '$include?', '$=~', '$preprocess_conditional_directive', '$preprocess_include_directive', '$downcase', '$error', '$none?', '$any?', '$all?', '$strip', '$send', '$resolve_expr_val', '$replace_next_line', '$rstrip', '$sub_attributes', '$attribute_missing', '$info', '$parse_attributes', '$find', '$handles?', '$instance', '$process_method', '$safe', '$resolve_include_path', '$method', '$split_delimited_value', '$partition', '$<', '$to_a', '$uniq', '$sort', '$call', '$each_line', '$infinite?', '$push_include', '$delete', '$first', '$values', '$value?', '$create_include_cursor', '$delete_at', '$keep_if', '$read', '$uriish?', '$attr?', '$require_library', '$normalize_system_path', '$file?', '$relative_path', '$path_resolver', '$base_dir', '$to_f']);
32742
32895
  return (function($base, $parent_nesting) {
32743
32896
  var self = $module($base, 'Asciidoctor');
32744
32897
 
@@ -32883,26 +33036,31 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
32883
33036
  }, $Reader_next_line_empty$ques$7.$$arity = 0);
32884
33037
 
32885
33038
  Opal.def(self, '$peek_line', $Reader_peek_line$8 = function $$peek_line(direct) {
32886
- var $a, self = this, line = nil;
33039
+ var $a, $b, self = this, next_line = nil, line = nil;
32887
33040
 
32888
33041
 
32889
33042
 
32890
33043
  if (direct == null) {
32891
33044
  direct = false;
32892
33045
  };
32893
- if ($truthy(($truthy($a = direct) ? $a : $rb_gt(self.look_ahead, 0)))) {
32894
- if ($truthy(self.unescape_next_line)) {
32895
-
32896
- return (line = self.lines['$[]'](-1)).$slice(1, line.$length());
32897
- } else {
32898
- return self.lines['$[]'](-1)
32899
- }
32900
- } else if ($truthy(self.lines['$empty?']())) {
33046
+ while ($truthy(true)) {
32901
33047
 
32902
- self.look_ahead = 0;
32903
- return nil;
32904
- } else {
32905
- return ($truthy($a = self.$process_line(self.lines['$[]'](-1))) ? $a : self.$peek_line())
33048
+ next_line = self.lines['$[]'](-1);
33049
+ if ($truthy(($truthy($b = direct) ? $b : $rb_gt(self.look_ahead, 0)))) {
33050
+ return (function() {if ($truthy(self.unescape_next_line)) {
33051
+
33052
+ return next_line.$slice(1, next_line.$length());
33053
+ } else {
33054
+ return next_line
33055
+ }; return nil; })()
33056
+ } else if ($truthy(next_line)) {
33057
+ if ($truthy((line = self.$process_line(next_line)))) {
33058
+ return line}
33059
+ } else {
33060
+
33061
+ self.look_ahead = 0;
33062
+ return nil;
33063
+ };
32906
33064
  };
32907
33065
  }, $Reader_peek_line$8.$$arity = -1);
32908
33066
 
@@ -33394,7 +33552,7 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
33394
33552
  (function($base, $super, $parent_nesting) {
33395
33553
  var self = $klass($base, $super, 'PreprocessorReader');
33396
33554
 
33397
- var $nesting = [self].concat($parent_nesting), $PreprocessorReader_initialize$47, $PreprocessorReader_has_more_lines$ques$48, $PreprocessorReader_empty$ques$49, $PreprocessorReader_peek_line$50, $PreprocessorReader_push_include$51, $PreprocessorReader_include_depth$52, $PreprocessorReader_exceeds_max_depth$ques$53, $PreprocessorReader_shift$54, $PreprocessorReader_include_processors$ques$55, $PreprocessorReader_create_include_cursor$56, $PreprocessorReader_to_s$57, $PreprocessorReader_prepare_lines$59, $PreprocessorReader_process_line$60, $PreprocessorReader_preprocess_conditional_directive$61, $PreprocessorReader_preprocess_include_directive$66, $PreprocessorReader_resolve_include_path$79, $PreprocessorReader_pop_include$81, $PreprocessorReader_split_delimited_value$82, $PreprocessorReader_skip_front_matter$excl$83, $PreprocessorReader_resolve_expr_val$84;
33555
+ var $nesting = [self].concat($parent_nesting), $PreprocessorReader_initialize$47, $PreprocessorReader_has_more_lines$ques$48, $PreprocessorReader_empty$ques$49, $PreprocessorReader_peek_line$50, $PreprocessorReader_push_include$51, $PreprocessorReader_include_depth$52, $PreprocessorReader_exceeds_max_depth$ques$53, $PreprocessorReader_shift$54, $PreprocessorReader_include_processors$ques$55, $PreprocessorReader_create_include_cursor$56, $PreprocessorReader_to_s$57, $PreprocessorReader_prepare_lines$59, $PreprocessorReader_process_line$60, $PreprocessorReader_preprocess_conditional_directive$61, $PreprocessorReader_preprocess_include_directive$66, $PreprocessorReader_resolve_include_path$80, $PreprocessorReader_pop_include$82, $PreprocessorReader_split_delimited_value$83, $PreprocessorReader_skip_front_matter$excl$84, $PreprocessorReader_resolve_expr_val$85;
33398
33556
 
33399
33557
  self.$$prototype.include_stack = self.$$prototype.lines = self.$$prototype.file = self.$$prototype.dir = self.$$prototype.path = self.$$prototype.lineno = self.$$prototype.maxdepth = self.$$prototype.process_lines = self.$$prototype.includes = self.$$prototype.document = self.$$prototype.unescape_next_line = self.$$prototype.include_processor_extensions = self.$$prototype.look_ahead = self.$$prototype.skipping = self.$$prototype.conditional_stack = nil;
33400
33558
 
@@ -33517,27 +33675,21 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
33517
33675
  };
33518
33676
  self.path = (path = ($truthy($a = path) ? $a : $$$('::', 'File').$basename(file)));
33519
33677
  if ($truthy((self.process_lines = $send(file, 'end_with?', Opal.to_a($$($nesting, 'ASCIIDOC_EXTENSIONS').$keys()))))) {
33520
-
33521
- $writer = [path.$slice(0, path.$rindex(".")), (function() {if ($truthy(attributes['$[]']("partial-option"))) {
33678
+ ($truthy($a = self.includes['$[]'](path.$slice(0, path.$rindex(".")))) ? $a : (($writer = [path.$slice(0, path.$rindex(".")), (function() {if ($truthy(attributes['$[]']("partial-option"))) {
33522
33679
  return nil
33523
33680
  } else {
33524
33681
  return true
33525
- }; return nil; })()];
33526
- $send(self.includes, '[]=', Opal.to_a($writer));
33527
- $writer[$rb_minus($writer["length"], 1)];};
33682
+ }; return nil; })()]), $send(self.includes, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))};
33528
33683
  } else {
33529
33684
 
33530
33685
  self.dir = ".";
33531
33686
  self.process_lines = true;
33532
33687
  if ($truthy((self.path = path))) {
33533
-
33534
- $writer = [$$($nesting, 'Helpers').$rootname(path), (function() {if ($truthy(attributes['$[]']("partial-option"))) {
33688
+ ($truthy($a = self.includes['$[]']($$($nesting, 'Helpers').$rootname(path))) ? $a : (($writer = [$$($nesting, 'Helpers').$rootname(path), (function() {if ($truthy(attributes['$[]']("partial-option"))) {
33535
33689
  return nil
33536
33690
  } else {
33537
33691
  return true
33538
- }; return nil; })()];
33539
- $send(self.includes, '[]=', Opal.to_a($writer));
33540
- $writer[$rb_minus($writer["length"], 1)];
33692
+ }; return nil; })()]), $send(self.includes, '[]=', Opal.to_a($writer)), $writer[$rb_minus($writer["length"], 1)]))
33541
33693
  } else {
33542
33694
  self.path = "<stdin>"
33543
33695
  };
@@ -33870,7 +34022,7 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
33870
34022
  }, $PreprocessorReader_preprocess_conditional_directive$61.$$arity = 4);
33871
34023
 
33872
34024
  Opal.def(self, '$preprocess_include_directive', $PreprocessorReader_preprocess_include_directive$66 = function $$preprocess_include_directive(target, attrlist) {
33873
- var $a, $b, $$67, $$68, $$69, $$70, $$71, $$72, $$74, $$77, $$78, self = this, doc = nil, expanded_target = nil, attr_missing = nil, ext = nil, parsed_attrs = nil, inc_path = nil, target_type = nil, relpath = nil, $case = nil, reader = nil, read_mode = nil, enc = nil, $writer = nil, read_mode_params = nil, inc_linenos = nil, inc_tags = nil, tag = nil, inc_lines = nil, inc_offset = nil, inc_lineno = nil, tag_stack = nil, tags_used = nil, active_tag = nil, select = nil, base_select = nil, wildcard = nil, missing_tags = nil, inc_content = nil;
34025
+ var $a, $b, $$67, $$68, $$69, $$70, $$71, $$72, $$74, $$77, $$78, $$79, self = this, doc = nil, expanded_target = nil, attr_missing = nil, ext = nil, parsed_attrs = nil, inc_path = nil, target_type = nil, relpath = nil, $case = nil, reader = nil, read_mode = nil, enc = nil, $writer = nil, read_mode_params = nil, inc_linenos = nil, inc_tags = nil, tag = nil, inc_lines = nil, inc_offset = nil, inc_lineno = nil, tag_stack = nil, tags_selected = nil, active_tag = nil, select = nil, base_select = nil, wildcard = nil, missing_tags = nil, inc_content = nil;
33874
34026
 
33875
34027
 
33876
34028
  doc = self.document;
@@ -33919,7 +34071,10 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
33919
34071
  ext.$process_method()['$[]'](doc, self, expanded_target, doc.$parse_attributes(attrlist, [], $hash2(["sub_input"], {"sub_input": true})));
33920
34072
  return true;
33921
34073
  } else if ($truthy($rb_ge(doc.$safe(), $$$($$($nesting, 'SafeMode'), 'SECURE')))) {
33922
- return self.$replace_next_line("" + "link:" + (expanded_target) + "[]")
34074
+
34075
+ if ($truthy(expanded_target['$include?'](" "))) {
34076
+ expanded_target = "" + "pass:c[" + (expanded_target) + "]"};
34077
+ return self.$replace_next_line("" + "link:" + (expanded_target) + "[role=include]");
33923
34078
  } else if ($truthy(self.maxdepth)) {
33924
34079
 
33925
34080
  if ($truthy($rb_ge(self.include_stack.$size(), self.maxdepth['$[]']("curr")))) {
@@ -34074,7 +34229,7 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34074
34229
  self.$push_include(inc_lines, inc_path, relpath, inc_offset, parsed_attrs);};
34075
34230
  } else if ($truthy(inc_tags)) {
34076
34231
 
34077
- $a = [[], nil, 0, [], $$$('::', 'Set').$new(), nil], (inc_lines = $a[0]), (inc_offset = $a[1]), (inc_lineno = $a[2]), (tag_stack = $a[3]), (tags_used = $a[4]), (active_tag = $a[5]), $a;
34232
+ $a = [[], nil, 0, [], $$$('::', 'Set').$new(), nil], (inc_lines = $a[0]), (inc_offset = $a[1]), (inc_lineno = $a[2]), (tag_stack = $a[3]), (tags_selected = $a[4]), (active_tag = $a[5]), $a;
34078
34233
  if ($truthy(inc_tags['$key?']("**"))) {
34079
34234
 
34080
34235
  select = (base_select = inc_tags.$delete("**"));
@@ -34150,8 +34305,9 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34150
34305
  }
34151
34306
  } else if ($truthy(inc_tags['$key?'](this_tag))) {
34152
34307
 
34153
- tags_used['$<<'](this_tag);
34154
- return tag_stack['$<<']([(active_tag = this_tag), (select = inc_tags['$[]'](this_tag)), inc_lineno]);
34308
+ if ($truthy((select = inc_tags['$[]'](this_tag)))) {
34309
+ tags_selected['$<<'](this_tag)};
34310
+ return tag_stack['$<<']([(active_tag = this_tag), select, inc_lineno]);
34155
34311
  } else if ($truthy(wildcard['$nil?']()['$!']())) {
34156
34312
 
34157
34313
  select = (function() {if ($truthy(($truthy($d = active_tag) ? select['$!']() : $d))) {
@@ -34198,7 +34354,18 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34198
34354
  };
34199
34355
  return self.$logger().$warn(self.$message_with_context("" + "detected unclosed tag '" + (tag_name) + "' starting at line " + (tag_lineno) + " of include " + (target_type) + ": " + (inc_path), $hash2(["source_location", "include_location"], {"source_location": self.$cursor(), "include_location": self.$create_include_cursor(inc_path, expanded_target, tag_lineno)})));}, $$77.$$s = self, $$77.$$arity = 3, $$77))
34200
34356
  };
34201
- if ($truthy((missing_tags = $rb_minus(inc_tags.$keys(), tags_used.$to_a()))['$empty?']())) {
34357
+ if ($truthy((missing_tags = $rb_minus($send(inc_tags, 'keep_if', [], ($$78 = function(_, v){var self = $$78.$$s || this;
34358
+
34359
+
34360
+
34361
+ if (_ == null) {
34362
+ _ = nil;
34363
+ };
34364
+
34365
+ if (v == null) {
34366
+ v = nil;
34367
+ };
34368
+ return v;}, $$78.$$s = self, $$78.$$arity = 2, $$78)).$keys(), tags_selected.$to_a()))['$empty?']())) {
34202
34369
  } else {
34203
34370
  self.$logger().$warn(self.$message_with_context("" + "tag" + ((function() {if ($truthy($rb_gt(missing_tags.$size(), 1))) {
34204
34371
  return "s"
@@ -34219,18 +34386,19 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34219
34386
  self.$push_include(inc_lines, inc_path, relpath, inc_offset, parsed_attrs);};
34220
34387
  } else {
34221
34388
 
34389
+ inc_content = nil;
34390
+
34222
34391
  try {
34223
34392
 
34224
- inc_content = $send(reader, 'call', [inc_path, read_mode], ($$78 = function(f){var self = $$78.$$s || this;
34393
+ inc_content = $send(reader, 'call', [inc_path, read_mode], ($$79 = function(f){var self = $$79.$$s || this;
34225
34394
 
34226
34395
 
34227
34396
 
34228
34397
  if (f == null) {
34229
34398
  f = nil;
34230
34399
  };
34231
- return f.$read();}, $$78.$$s = self, $$78.$$arity = 1, $$78));
34400
+ return f.$read();}, $$79.$$s = self, $$79.$$arity = 1, $$79));
34232
34401
  self.$shift();
34233
- self.$push_include(inc_content, inc_path, relpath, 1, parsed_attrs);
34234
34402
  } catch ($err) {
34235
34403
  if (Opal.rescue($err, [$$($nesting, 'StandardError')])) {
34236
34404
  try {
@@ -34239,7 +34407,8 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34239
34407
  return self.$replace_next_line("" + "Unresolved directive in " + (self.path) + " - include::" + (expanded_target) + "[" + (attrlist) + "]");
34240
34408
  } finally { Opal.pop_exception() }
34241
34409
  } else { throw $err; }
34242
- };
34410
+ };;
34411
+ self.$push_include(inc_content, inc_path, relpath, 1, parsed_attrs);
34243
34412
  };
34244
34413
  return true;
34245
34414
  } else {
@@ -34247,8 +34416,8 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34247
34416
  };
34248
34417
  }, $PreprocessorReader_preprocess_include_directive$66.$$arity = 2);
34249
34418
 
34250
- Opal.def(self, '$resolve_include_path', $PreprocessorReader_resolve_include_path$79 = function $$resolve_include_path(target, attrlist, attributes) {
34251
- var $a, $b, $$80, self = this, doc = nil, inc_path = nil, relpath = nil;
34419
+ Opal.def(self, '$resolve_include_path', $PreprocessorReader_resolve_include_path$80 = function $$resolve_include_path(target, attrlist, attributes) {
34420
+ var $a, $b, $$81, self = this, doc = nil, inc_path = nil, relpath = nil;
34252
34421
 
34253
34422
 
34254
34423
  doc = self.document;
@@ -34261,7 +34430,10 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34261
34430
 
34262
34431
  if ($truthy(doc['$attr?']("allow-uri-read"))) {
34263
34432
  } else {
34264
- return self.$replace_next_line("" + "link:" + (target) + "[" + (attrlist) + "]")
34433
+
34434
+ if ($truthy(target['$include?'](" "))) {
34435
+ target = "" + "pass:c[" + (target) + "]"};
34436
+ return self.$replace_next_line("" + "link:" + (target) + "[role=include]");
34265
34437
  };
34266
34438
  if ($truthy(doc['$attr?']("cache-uri"))) {
34267
34439
  if ($truthy((($b = $$$('::', 'OpenURI', 'skip_raise')) && ($a = $$$($b, 'Cache', 'skip_raise')) ? 'constant' : nil))) {
@@ -34277,9 +34449,9 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34277
34449
  if ($truthy($$$('::', 'File')['$file?'](inc_path))) {
34278
34450
  } else if ($truthy(attributes['$[]']("optional-option"))) {
34279
34451
 
34280
- $send(self.$logger(), 'info', [], ($$80 = function(){var self = $$80.$$s || this;
34452
+ $send(self.$logger(), 'info', [], ($$81 = function(){var self = $$81.$$s || this;
34281
34453
 
34282
- return self.$message_with_context("" + "optional include dropped because include file not found: " + (inc_path), $hash2(["source_location"], {"source_location": self.$cursor()}))}, $$80.$$s = self, $$80.$$arity = 0, $$80));
34454
+ return self.$message_with_context("" + "optional include dropped because include file not found: " + (inc_path), $hash2(["source_location"], {"source_location": self.$cursor()}))}, $$81.$$s = self, $$81.$$arity = 0, $$81));
34283
34455
  self.$shift();
34284
34456
  return true;
34285
34457
  } else {
@@ -34290,9 +34462,9 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34290
34462
  relpath = doc.$path_resolver().$relative_path(inc_path, doc.$base_dir());
34291
34463
  return [inc_path, "file", relpath];
34292
34464
  };
34293
- }, $PreprocessorReader_resolve_include_path$79.$$arity = 3);
34465
+ }, $PreprocessorReader_resolve_include_path$80.$$arity = 3);
34294
34466
 
34295
- Opal.def(self, '$pop_include', $PreprocessorReader_pop_include$81 = function $$pop_include() {
34467
+ Opal.def(self, '$pop_include', $PreprocessorReader_pop_include$82 = function $$pop_include() {
34296
34468
  var $a, $b, self = this;
34297
34469
 
34298
34470
  if ($truthy(self.include_stack['$empty?']())) {
@@ -34303,9 +34475,9 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34303
34475
  self.look_ahead = 0;
34304
34476
  return nil;
34305
34477
  }
34306
- }, $PreprocessorReader_pop_include$81.$$arity = 0);
34478
+ }, $PreprocessorReader_pop_include$82.$$arity = 0);
34307
34479
 
34308
- Opal.def(self, '$split_delimited_value', $PreprocessorReader_split_delimited_value$82 = function $$split_delimited_value(val) {
34480
+ Opal.def(self, '$split_delimited_value', $PreprocessorReader_split_delimited_value$83 = function $$split_delimited_value(val) {
34309
34481
  var self = this;
34310
34482
 
34311
34483
  if ($truthy(val['$include?'](","))) {
@@ -34315,45 +34487,43 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34315
34487
 
34316
34488
  return val.$split(";");
34317
34489
  }
34318
- }, $PreprocessorReader_split_delimited_value$82.$$arity = 1);
34490
+ }, $PreprocessorReader_split_delimited_value$83.$$arity = 1);
34319
34491
 
34320
- Opal.def(self, '$skip_front_matter!', $PreprocessorReader_skip_front_matter$excl$83 = function(data, increment_linenos) {
34321
- var $a, $b, self = this, front_matter = nil, original_data = nil;
34492
+ Opal.def(self, '$skip_front_matter!', $PreprocessorReader_skip_front_matter$excl$84 = function(data, increment_linenos) {
34493
+ var $a, $b, self = this, delim = nil, original_data = nil, front_matter = nil, eof = nil;
34322
34494
 
34323
34495
 
34324
34496
 
34325
34497
  if (increment_linenos == null) {
34326
34498
  increment_linenos = true;
34327
34499
  };
34328
- front_matter = nil;
34329
- if (data['$[]'](0)['$==']("---")) {
34500
+ if ((delim = data['$[]'](0))['$==']("---")) {
34501
+ } else {
34502
+ return nil
34503
+ };
34504
+ original_data = data.$drop(0);
34505
+ data.$shift();
34506
+ front_matter = [];
34507
+ if ($truthy(increment_linenos)) {
34508
+ self.lineno = $rb_plus(self.lineno, 1)};
34509
+ while (!($truthy(($truthy($b = (eof = data['$empty?']())) ? $b : data['$[]'](0)['$=='](delim))))) {
34330
34510
 
34331
- original_data = data.$drop(0);
34332
- data.$shift();
34333
- front_matter = [];
34511
+ front_matter['$<<'](data.$shift());
34334
34512
  if ($truthy(increment_linenos)) {
34335
34513
  self.lineno = $rb_plus(self.lineno, 1)};
34336
- while ($truthy(($truthy($b = data['$empty?']()['$!']()) ? data['$[]'](0)['$!=']("---") : $b))) {
34337
-
34338
- front_matter['$<<'](data.$shift());
34339
- if ($truthy(increment_linenos)) {
34340
- self.lineno = $rb_plus(self.lineno, 1)};
34341
- };
34342
- if ($truthy(data['$empty?']())) {
34343
-
34344
- $send(data, 'unshift', Opal.to_a(original_data));
34345
- if ($truthy(increment_linenos)) {
34346
- self.lineno = 0};
34347
- front_matter = nil;
34348
- } else {
34349
-
34350
- data.$shift();
34351
- if ($truthy(increment_linenos)) {
34352
- self.lineno = $rb_plus(self.lineno, 1)};
34353
- };};
34514
+ };
34515
+ if ($truthy(eof)) {
34516
+
34517
+ $send(data, 'unshift', Opal.to_a(original_data));
34518
+ if ($truthy(increment_linenos)) {
34519
+ self.lineno = $rb_minus(self.lineno, original_data.$size())};
34520
+ return nil;};
34521
+ data.$shift();
34522
+ if ($truthy(increment_linenos)) {
34523
+ self.lineno = $rb_plus(self.lineno, 1)};
34354
34524
  return front_matter;
34355
- }, $PreprocessorReader_skip_front_matter$excl$83.$$arity = -2);
34356
- return (Opal.def(self, '$resolve_expr_val', $PreprocessorReader_resolve_expr_val$84 = function $$resolve_expr_val(val) {
34525
+ }, $PreprocessorReader_skip_front_matter$excl$84.$$arity = -2);
34526
+ return (Opal.def(self, '$resolve_expr_val', $PreprocessorReader_resolve_expr_val$85 = function $$resolve_expr_val(val) {
34357
34527
  var $a, $b, self = this, quoted = nil;
34358
34528
 
34359
34529
 
@@ -34381,7 +34551,7 @@ Opal.modules["asciidoctor/reader"] = function(Opal) {
34381
34551
  } else {
34382
34552
  return val.$to_i()
34383
34553
  };
34384
- }, $PreprocessorReader_resolve_expr_val$84.$$arity = 1), nil) && 'resolve_expr_val';
34554
+ }, $PreprocessorReader_resolve_expr_val$85.$$arity = 1), nil) && 'resolve_expr_val';
34385
34555
  })($nesting[0], $$($nesting, 'Reader'), $nesting);
34386
34556
  })($nesting[0], $nesting)
34387
34557
  };
@@ -34399,7 +34569,7 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34399
34569
  }
34400
34570
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $hash2 = Opal.hash2, $send = Opal.send, $truthy = Opal.truthy;
34401
34571
 
34402
- Opal.add_stubs(['$attr_accessor', '$attr_reader', '$===', '$+', '$level', '$special', '$generate_id', '$title', '$==', '$>', '$sectnum', '$reftext', '$!', '$empty?', '$sub_placeholder', '$sub_quotes', '$compat_mode', '$[]', '$attributes', '$context', '$assign_numeral', '$class', '$object_id', '$inspect', '$size', '$length', '$chr', '$[]=', '$-', '$gsub', '$downcase', '$delete', '$tr_s', '$end_with?', '$chop', '$start_with?', '$slice', '$key?', '$catalog', '$unique_id_start_index']);
34572
+ Opal.add_stubs(['$attr_accessor', '$attr_reader', '$===', '$+', '$level', '$special', '$generate_id', '$title', '$>', '$==', '$sectnum', '$reftext', '$!', '$empty?', '$sub_placeholder', '$sub_quotes', '$compat_mode', '$[]', '$attributes', '$context', '$assign_numeral', '$class', '$object_id', '$inspect', '$size', '$length', '$chr', '$[]=', '$-', '$gsub', '$downcase', '$delete', '$tr_s', '$end_with?', '$chop', '$start_with?', '$slice', '$key?', '$catalog', '$unique_id_start_index']);
34403
34573
  return (function($base, $parent_nesting) {
34404
34574
  var self = $module($base, 'Asciidoctor');
34405
34575
 
@@ -34408,9 +34578,9 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34408
34578
  (function($base, $super, $parent_nesting) {
34409
34579
  var self = $klass($base, $super, 'Section');
34410
34580
 
34411
- var $nesting = [self].concat($parent_nesting), $Section_initialize$1, $Section_generate_id$2, $Section_sectnum$3, $Section_xreftext$4, $Section_$lt$lt$5, $Section_to_s$6, $Section_generate_id$7;
34581
+ var $nesting = [self].concat($parent_nesting), $Section_initialize$1, $Section_generate_id$2, $Section_sections$ques$3, $Section_sectnum$4, $Section_xreftext$5, $Section_$lt$lt$6, $Section_to_s$7, $Section_generate_id$8;
34412
34582
 
34413
- self.$$prototype.document = self.$$prototype.level = self.$$prototype.parent = self.$$prototype.numeral = self.$$prototype.numbered = self.$$prototype.sectname = self.$$prototype.title = self.$$prototype.blocks = nil;
34583
+ self.$$prototype.document = self.$$prototype.next_section_index = self.$$prototype.level = self.$$prototype.parent = self.$$prototype.numeral = self.$$prototype.numbered = self.$$prototype.sectname = self.$$prototype.title = self.$$prototype.blocks = nil;
34414
34584
 
34415
34585
  self.$attr_accessor("index");
34416
34586
  self.$attr_accessor("sectname");
@@ -34456,7 +34626,13 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34456
34626
  return $$($nesting, 'Section').$generate_id(self.$title(), self.document)
34457
34627
  }, $Section_generate_id$2.$$arity = 0);
34458
34628
 
34459
- Opal.def(self, '$sectnum', $Section_sectnum$3 = function $$sectnum(delimiter, append) {
34629
+ Opal.def(self, '$sections?', $Section_sections$ques$3 = function() {
34630
+ var self = this;
34631
+
34632
+ return $rb_gt(self.next_section_index, 0)
34633
+ }, $Section_sections$ques$3.$$arity = 0);
34634
+
34635
+ Opal.def(self, '$sectnum', $Section_sectnum$4 = function $$sectnum(delimiter, append) {
34460
34636
  var $a, self = this;
34461
34637
 
34462
34638
 
@@ -34478,9 +34654,9 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34478
34654
  } else {
34479
34655
  return "" + (self.numeral) + (append)
34480
34656
  };
34481
- }, $Section_sectnum$3.$$arity = -1);
34657
+ }, $Section_sectnum$4.$$arity = -1);
34482
34658
 
34483
- Opal.def(self, '$xreftext', $Section_xreftext$4 = function $$xreftext(xrefstyle) {
34659
+ Opal.def(self, '$xreftext', $Section_xreftext$5 = function $$xreftext(xrefstyle) {
34484
34660
  var $a, self = this, val = nil, $case = nil, type = nil, quoted_title = nil, signifier = nil;
34485
34661
 
34486
34662
 
@@ -34528,12 +34704,12 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34528
34704
  } else {
34529
34705
  return self.$title()
34530
34706
  };
34531
- }, $Section_xreftext$4.$$arity = -1);
34707
+ }, $Section_xreftext$5.$$arity = -1);
34532
34708
 
34533
- Opal.def(self, '$<<', $Section_$lt$lt$5 = function(block) {
34534
- var $iter = $Section_$lt$lt$5.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
34709
+ Opal.def(self, '$<<', $Section_$lt$lt$6 = function(block) {
34710
+ var $iter = $Section_$lt$lt$6.$$p, $yield = $iter || nil, self = this, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
34535
34711
 
34536
- if ($iter) $Section_$lt$lt$5.$$p = null;
34712
+ if ($iter) $Section_$lt$lt$6.$$p = null;
34537
34713
  // Prepare super implicit arguments
34538
34714
  for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {
34539
34715
  $zuper[$zuper_i] = arguments[$zuper_i];
@@ -34541,13 +34717,13 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34541
34717
 
34542
34718
  if (block.$context()['$==']("section")) {
34543
34719
  self.$assign_numeral(block)};
34544
- return $send(self, Opal.find_super_dispatcher(self, '<<', $Section_$lt$lt$5, false), $zuper, $iter);
34545
- }, $Section_$lt$lt$5.$$arity = 1);
34720
+ return $send(self, Opal.find_super_dispatcher(self, '<<', $Section_$lt$lt$6, false), $zuper, $iter);
34721
+ }, $Section_$lt$lt$6.$$arity = 1);
34546
34722
 
34547
- Opal.def(self, '$to_s', $Section_to_s$6 = function $$to_s() {
34548
- var $iter = $Section_to_s$6.$$p, $yield = $iter || nil, self = this, formal_title = nil, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
34723
+ Opal.def(self, '$to_s', $Section_to_s$7 = function $$to_s() {
34724
+ var $iter = $Section_to_s$7.$$p, $yield = $iter || nil, self = this, formal_title = nil, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
34549
34725
 
34550
- if ($iter) $Section_to_s$6.$$p = null;
34726
+ if ($iter) $Section_to_s$7.$$p = null;
34551
34727
  // Prepare super implicit arguments
34552
34728
  for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {
34553
34729
  $zuper[$zuper_i] = arguments[$zuper_i];
@@ -34561,10 +34737,10 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34561
34737
  }; return nil; })();
34562
34738
  return "" + "#<" + (self.$class()) + "@" + (self.$object_id()) + " {level: " + (self.level) + ", title: " + (formal_title.$inspect()) + ", blocks: " + (self.blocks.$size()) + "}>";
34563
34739
  } else {
34564
- return $send(self, Opal.find_super_dispatcher(self, 'to_s', $Section_to_s$6, false), $zuper, $iter)
34740
+ return $send(self, Opal.find_super_dispatcher(self, 'to_s', $Section_to_s$7, false), $zuper, $iter)
34565
34741
  }
34566
- }, $Section_to_s$6.$$arity = 0);
34567
- return (Opal.defs(self, '$generate_id', $Section_generate_id$7 = function $$generate_id(title, document) {
34742
+ }, $Section_to_s$7.$$arity = 0);
34743
+ return (Opal.defs(self, '$generate_id', $Section_generate_id$8 = function $$generate_id(title, document) {
34568
34744
  var $a, $b, self = this, attrs = nil, pre = nil, sep = nil, no_sep = nil, $writer = nil, sep_sub = nil, gen_id = nil, ids = nil, cnt = nil, candidate_id = nil;
34569
34745
 
34570
34746
 
@@ -34602,7 +34778,7 @@ Opal.modules["asciidoctor/section"] = function(Opal) {
34602
34778
  } else {
34603
34779
  return gen_id
34604
34780
  };
34605
- }, $Section_generate_id$7.$$arity = 2), nil) && 'generate_id';
34781
+ }, $Section_generate_id$8.$$arity = 2), nil) && 'generate_id';
34606
34782
  })($nesting[0], $$($nesting, 'AbstractBlock'), $nesting)
34607
34783
  })($nesting[0], $nesting)
34608
34784
  };
@@ -36226,7 +36402,7 @@ Opal.modules["asciidoctor/syntax_highlighter/highlightjs"] = function(Opal) {
36226
36402
  return "" + "<script src=\"" + (base_url) + "/languages/" + (lang.$lstrip()) + ".min.js\"></script>\n";}, $$6.$$s = self, $$6.$$arity = 1, $$6)).$join()
36227
36403
  } else {
36228
36404
  return ""
36229
- }; return nil; })()) + "<script>\n" + "if (!hljs.initHighlighting.called) {\n" + " hljs.initHighlighting.called = true\n" + " ;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })\n" + "}\n" + "</script>"
36405
+ }; return nil; })()) + "<script>\n" + "if (!hljs.initHighlighting.called) {\n" + " hljs.initHighlighting.called = true\n" + " ;[].slice.call(document.querySelectorAll('pre.highlight > code[data-lang]')).forEach(function (el) { hljs.highlightBlock(el) })\n" + "}\n" + "</script>"
36230
36406
  };
36231
36407
  }, $HighlightJsAdapter_docinfo$5.$$arity = 3), nil) && 'docinfo';
36232
36408
  })($$($nesting, 'SyntaxHighlighter'), $$$($$($nesting, 'SyntaxHighlighter'), 'Base'), $nesting)
@@ -36835,7 +37011,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
36835
37011
  }
36836
37012
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $send = Opal.send, $hash2 = Opal.hash2, $truthy = Opal.truthy, $gvars = Opal.gvars;
36837
37013
 
36838
- Opal.add_stubs(['$register_for', '$default=', '$-', '$==', '$[]', '$init_backend_traits', '$node_name', '$===', '$convert_inline_quoted', '$convert_paragraph', '$convert_inline_anchor', '$convert_section', '$convert_listing', '$convert_literal', '$convert_ulist', '$convert_olist', '$convert_dlist', '$convert_admonition', '$convert_colist', '$convert_embedded', '$convert_example', '$convert_floating_title', '$convert_image', '$convert_inline_break', '$convert_inline_button', '$convert_inline_callout', '$convert_inline_footnote', '$convert_inline_image', '$convert_inline_indexterm', '$convert_inline_kbd', '$convert_inline_menu', '$convert_open', '$convert_page_break', '$convert_preamble', '$convert_quote', '$convert_sidebar', '$convert_stem', '$convert_table', '$convert_thematic_break', '$convert_verse', '$convert_video', '$convert_document', '$convert_toc', '$convert_pass', '$convert_audio', '$empty?', '$attr', '$attr?', '$<<', '$include?', '$sub_replacements', '$gsub', '$extname', '$slice', '$length', '$doctitle', '$normalize_web_path', '$primary_stylesheet_data', '$instance', '$read_contents', '$syntax_highlighter', '$size', '$docinfo', '$id', '$sections?', '$doctype', '$role?', '$role', '$join', '$noheader', '$convert', '$converter', '$generate_manname_section', '$header?', '$notitle', '$title', '$header', '$each', '$authors', '$>', '$name', '$email', '$sub_macros', '$+', '$downcase', '$concat', '$content', '$footnotes?', '$!', '$footnotes', '$index', '$text', '$nofooter', '$docinfo?', '$[]=', '$delete_at', '$inspect', '$!=', '$to_i', '$attributes', '$document', '$sections', '$level', '$caption', '$captioned_title', '$numbered', '$<=', '$<', '$sectname', '$sectnum', '$convert_outline', '$title?', '$icon_uri', '$compact', '$media_uri', '$option?', '$append_boolean_attribute', '$style', '$items', '$blocks?', '$text?', '$chomp', '$safe', '$read_svg_contents', '$alt', '$image_uri', '$encode_attribute_value', '$append_link_constraint_attrs', '$highlight?', '$to_sym', '$format', '$*', '$count', '$start_with?', '$end_with?', '$list_marker_keyword', '$parent', '$warn', '$logger', '$context', '$error', '$new', '$columns', '$to_h', '$rows', '$colspan', '$rowspan', '$unshift', '$shift', '$pop', '$split', '$nil_or_empty?', '$type', '$catalog', '$get_root_document', '$xreftext', '$target', '$reftext', '$chop', '$sub', '$match', '$private', '$upcase', '$nested?', '$parent_document', '$to_s', '$handles?', '$send']);
37014
+ Opal.add_stubs(['$register_for', '$default=', '$-', '$==', '$[]', '$init_backend_traits', '$node_name', '$===', '$convert_inline_quoted', '$convert_paragraph', '$convert_inline_anchor', '$convert_section', '$convert_listing', '$convert_literal', '$convert_ulist', '$convert_olist', '$convert_dlist', '$convert_admonition', '$convert_colist', '$convert_embedded', '$convert_example', '$convert_floating_title', '$convert_image', '$convert_inline_break', '$convert_inline_button', '$convert_inline_callout', '$convert_inline_footnote', '$convert_inline_image', '$convert_inline_indexterm', '$convert_inline_kbd', '$convert_inline_menu', '$convert_open', '$convert_page_break', '$convert_preamble', '$convert_quote', '$convert_sidebar', '$convert_stem', '$convert_table', '$convert_thematic_break', '$convert_verse', '$convert_video', '$convert_document', '$convert_toc', '$convert_pass', '$convert_audio', '$empty?', '$attr', '$attr?', '$<<', '$include?', '$sub_replacements', '$gsub', '$extname', '$slice', '$length', '$doctitle', '$normalize_web_path', '$primary_stylesheet_data', '$instance', '$read_contents', '$syntax_highlighter', '$size', '$docinfo', '$id', '$sections?', '$doctype', '$role?', '$role', '$join', '$noheader', '$convert', '$converter', '$generate_manname_section', '$header?', '$notitle', '$title', '$header', '$each', '$authors', '$>', '$name', '$email', '$sub_macros', '$+', '$downcase', '$concat', '$content', '$footnotes?', '$!', '$footnotes', '$index', '$text', '$nofooter', '$docinfo?', '$[]=', '$delete_at', '$inspect', '$!=', '$to_i', '$attributes', '$document', '$sections', '$level', '$caption', '$captioned_title', '$numbered', '$<=', '$<', '$sectname', '$sectnum', '$convert_outline', '$title?', '$icon_uri', '$compact', '$media_uri', '$option?', '$append_boolean_attribute', '$style', '$items', '$blocks?', '$text?', '$chomp', '$safe', '$read_svg_contents', '$alt', '$image_uri', '$encode_attribute_value', '$append_link_constraint_attrs', '$highlight?', '$to_sym', '$format', '$*', '$count', '$start_with?', '$end_with?', '$list_marker_keyword', '$parent', '$warn', '$logger', '$context', '$error', '$new', '$columns', '$to_h', '$rows', '$colspan', '$rowspan', '$unshift', '$shift', '$split', '$pop', '$nil_or_empty?', '$type', '$catalog', '$get_root_document', '$xreftext', '$target', '$reftext', '$chop', '$sub', '$match', '$private', '$upcase', '$nested?', '$parent_document', '$to_s', '$handles?', '$send']);
36839
37015
  return (function($base, $parent_nesting) {
36840
37016
  var self = $module($base, 'Asciidoctor');
36841
37017
 
@@ -36844,7 +37020,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
36844
37020
  (function($base, $super, $parent_nesting) {
36845
37021
  var self = $klass($base, $super, 'Html5Converter');
36846
37022
 
36847
- var $nesting = [self].concat($parent_nesting), $Html5Converter_initialize$1, $Html5Converter_convert$2, $Html5Converter_convert_document$3, $Html5Converter_convert_embedded$6, $Html5Converter_convert_outline$8, $Html5Converter_convert_section$10, $Html5Converter_convert_admonition$11, $Html5Converter_convert_audio$12, $Html5Converter_convert_colist$13, $Html5Converter_convert_dlist$16, $Html5Converter_convert_example$23, $Html5Converter_convert_floating_title$24, $Html5Converter_convert_image$25, $Html5Converter_convert_listing$26, $Html5Converter_convert_literal$27, $Html5Converter_convert_stem$28, $Html5Converter_convert_olist$30, $Html5Converter_convert_open$32, $Html5Converter_convert_page_break$33, $Html5Converter_convert_paragraph$34, $Html5Converter_convert_preamble$35, $Html5Converter_convert_quote$36, $Html5Converter_convert_thematic_break$37, $Html5Converter_convert_sidebar$38, $Html5Converter_convert_table$39, $Html5Converter_convert_toc$44, $Html5Converter_convert_ulist$45, $Html5Converter_convert_verse$47, $Html5Converter_convert_video$48, $Html5Converter_convert_inline_anchor$49, $Html5Converter_convert_inline_break$50, $Html5Converter_convert_inline_button$51, $Html5Converter_convert_inline_callout$52, $Html5Converter_convert_inline_footnote$53, $Html5Converter_convert_inline_image$54, $Html5Converter_convert_inline_indexterm$56, $Html5Converter_convert_inline_kbd$57, $Html5Converter_convert_inline_menu$58, $Html5Converter_convert_inline_quoted$59, $Html5Converter_read_svg_contents$60, $Html5Converter_append_boolean_attribute$62, $Html5Converter_append_link_constraint_attrs$63, $Html5Converter_encode_attribute_value$64, $Html5Converter_generate_manname_section$65, $Html5Converter_get_root_document$66, $Html5Converter_method_missing$67, $Html5Converter_respond_to_missing$ques$68, $writer = nil;
37023
+ var $nesting = [self].concat($parent_nesting), $Html5Converter_initialize$1, $Html5Converter_convert$2, $Html5Converter_convert_document$3, $Html5Converter_convert_embedded$6, $Html5Converter_convert_outline$8, $Html5Converter_convert_section$10, $Html5Converter_convert_admonition$11, $Html5Converter_convert_audio$12, $Html5Converter_convert_colist$13, $Html5Converter_convert_dlist$16, $Html5Converter_convert_example$23, $Html5Converter_convert_floating_title$24, $Html5Converter_convert_image$25, $Html5Converter_convert_listing$26, $Html5Converter_convert_literal$27, $Html5Converter_convert_stem$28, $Html5Converter_convert_olist$30, $Html5Converter_convert_open$32, $Html5Converter_convert_page_break$33, $Html5Converter_convert_paragraph$34, $Html5Converter_convert_preamble$35, $Html5Converter_convert_quote$36, $Html5Converter_convert_thematic_break$37, $Html5Converter_convert_sidebar$38, $Html5Converter_convert_table$39, $Html5Converter_convert_toc$44, $Html5Converter_convert_ulist$45, $Html5Converter_convert_verse$47, $Html5Converter_convert_video$48, $Html5Converter_convert_inline_anchor$49, $Html5Converter_convert_inline_break$50, $Html5Converter_convert_inline_button$51, $Html5Converter_convert_inline_callout$52, $Html5Converter_convert_inline_footnote$53, $Html5Converter_convert_inline_image$54, $Html5Converter_convert_inline_indexterm$55, $Html5Converter_convert_inline_kbd$56, $Html5Converter_convert_inline_menu$57, $Html5Converter_convert_inline_quoted$58, $Html5Converter_read_svg_contents$59, $Html5Converter_append_boolean_attribute$61, $Html5Converter_append_link_constraint_attrs$62, $Html5Converter_encode_attribute_value$63, $Html5Converter_generate_manname_section$64, $Html5Converter_get_root_document$65, $Html5Converter_method_missing$66, $Html5Converter_respond_to_missing$ques$67, $writer = nil;
36848
37024
 
36849
37025
  self.$$prototype.void_element_slash = self.$$prototype.xml_mode = self.$$prototype.refs = self.$$prototype.resolving_xref = nil;
36850
37026
 
@@ -37681,7 +37857,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
37681
37857
  }, $Html5Converter_convert_floating_title$24.$$arity = 1);
37682
37858
 
37683
37859
  Opal.def(self, '$convert_image', $Html5Converter_convert_image$25 = function $$convert_image(node) {
37684
- var $a, $b, $c, self = this, target = nil, width_attr = nil, height_attr = nil, svg = nil, obj = nil, img = nil, fallback = nil, id_attr = nil, classes = nil, class_attr = nil, title_el = nil;
37860
+ var $a, $b, self = this, target = nil, width_attr = nil, height_attr = nil, img = nil, fallback = nil, id_attr = nil, classes = nil, class_attr = nil, title_el = nil;
37685
37861
 
37686
37862
 
37687
37863
  target = node.$attr("target");
@@ -37695,18 +37871,23 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
37695
37871
  } else {
37696
37872
  return ""
37697
37873
  }; return nil; })();
37698
- if ($truthy(($truthy($a = ($truthy($b = ($truthy($c = node['$attr?']("format", "svg")) ? $c : target['$include?'](".svg"))) ? $rb_lt(node.$document().$safe(), $$$($$($nesting, 'SafeMode'), 'SECURE')) : $b)) ? ($truthy($b = (svg = node['$option?']("inline"))) ? $b : (obj = node['$option?']("interactive"))) : $a))) {
37699
- if ($truthy(svg)) {
37874
+ if ($truthy(($truthy($a = ($truthy($b = node['$attr?']("format", "svg")) ? $b : target['$include?'](".svg"))) ? $rb_lt(node.$document().$safe(), $$$($$($nesting, 'SafeMode'), 'SECURE')) : $a))) {
37875
+ if ($truthy(node['$option?']("inline"))) {
37700
37876
  img = ($truthy($a = self.$read_svg_contents(node, target)) ? $a : "" + "<span class=\"alt\">" + (node.$alt()) + "</span>")
37701
- } else if ($truthy(obj)) {
37877
+ } else if ($truthy(node['$option?']("interactive"))) {
37702
37878
 
37703
37879
  fallback = (function() {if ($truthy(node['$attr?']("fallback"))) {
37704
37880
  return "" + "<img src=\"" + (node.$image_uri(node.$attr("fallback"))) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (width_attr) + (height_attr) + (self.void_element_slash) + ">"
37705
37881
  } else {
37706
37882
  return "" + "<span class=\"alt\">" + (node.$alt()) + "</span>"
37707
37883
  }; return nil; })();
37708
- img = "" + "<object type=\"image/svg+xml\" data=\"" + (node.$image_uri(target)) + "\"" + (width_attr) + (height_attr) + ">" + (fallback) + "</object>";}};
37709
- img = ($truthy($a = img) ? $a : "" + "<img src=\"" + (node.$image_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (width_attr) + (height_attr) + (self.void_element_slash) + ">");
37884
+ img = "" + "<object type=\"image/svg+xml\" data=\"" + (node.$image_uri(target)) + "\"" + (width_attr) + (height_attr) + ">" + (fallback) + "</object>";
37885
+ } else {
37886
+ img = "" + "<img src=\"" + (node.$image_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (width_attr) + (height_attr) + (self.void_element_slash) + ">"
37887
+ }
37888
+ } else {
37889
+ img = "" + "<img src=\"" + (node.$image_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (width_attr) + (height_attr) + (self.void_element_slash) + ">"
37890
+ };
37710
37891
  if ($truthy(node['$attr?']("link"))) {
37711
37892
  img = "" + "<a class=\"image\" href=\"" + (node.$attr("link")) + "\"" + (self.$append_link_constraint_attrs(node).$join()) + ">" + (img) + "</a>"};
37712
37893
  id_attr = (function() {if ($truthy(node.$id())) {
@@ -37789,7 +37970,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
37789
37970
 
37790
37971
  return syntax_hl.$format(node, lang, opts);
37791
37972
  } else {
37792
- return $rb_plus($rb_plus(pre_open, ($truthy($a = node.$content()) ? $a : "")), pre_close)
37973
+ return $rb_plus($rb_plus(pre_open, node.$content()), pre_close)
37793
37974
  }; return nil; })()) + "\n" + "</div>\n" + "</div>";
37794
37975
  }, $Html5Converter_convert_listing$26.$$arity = 1);
37795
37976
 
@@ -37921,7 +38102,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
37921
38102
  if ((style = node.$style())['$==']("abstract")) {
37922
38103
  if ($truthy((($a = node.$parent()['$=='](node.$document())) ? node.$document().$doctype()['$==']("book") : node.$parent()['$=='](node.$document())))) {
37923
38104
 
37924
- self.$logger().$warn("abstract block cannot be used in a document without a title when doctype is book. Excluding block content.");
38105
+ self.$logger().$warn("abstract block cannot be used in a document without a doctitle when doctype is book. Excluding block content.");
37925
38106
  return "";
37926
38107
  } else {
37927
38108
 
@@ -38089,7 +38270,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38089
38270
  }, $Html5Converter_convert_sidebar$38.$$arity = 1);
38090
38271
 
38091
38272
  Opal.def(self, '$convert_table', $Html5Converter_convert_table$39 = function $$convert_table(node) {
38092
- var $a, $$40, $$41, self = this, result = nil, id_attribute = nil, frame = nil, classes = nil, stripes = nil, styles = nil, autowidth = nil, tablewidth = nil, role = nil, class_attribute = nil, style_attribute = nil, slash = nil;
38273
+ var $a, $$40, $$41, self = this, result = nil, id_attribute = nil, frame = nil, classes = nil, stripes = nil, style_attribute = nil, autowidth = nil, tablewidth = nil, role = nil, class_attribute = nil, slash = nil;
38093
38274
 
38094
38275
 
38095
38276
  result = [];
@@ -38103,24 +38284,19 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38103
38284
  classes = ["tableblock", "" + "frame-" + (frame), "" + "grid-" + (node.$attr("grid", "all", "table-grid"))];
38104
38285
  if ($truthy((stripes = node.$attr("stripes", nil, "table-stripes")))) {
38105
38286
  classes['$<<']("" + "stripes-" + (stripes))};
38106
- styles = [];
38287
+ style_attribute = "";
38107
38288
  if ($truthy(($truthy($a = (autowidth = node['$option?']("autowidth"))) ? node['$attr?']("width")['$!']() : $a))) {
38108
38289
  classes['$<<']("fit-content")
38109
38290
  } else if ((tablewidth = node.$attr("tablepcwidth"))['$=='](100)) {
38110
38291
  classes['$<<']("stretch")
38111
38292
  } else {
38112
- styles['$<<']("" + "width: " + (tablewidth) + "%;")
38293
+ style_attribute = "" + " style=\"width: " + (tablewidth) + "%;\""
38113
38294
  };
38114
38295
  if ($truthy(node['$attr?']("float"))) {
38115
38296
  classes['$<<'](node.$attr("float"))};
38116
38297
  if ($truthy((role = node.$role()))) {
38117
38298
  classes['$<<'](role)};
38118
38299
  class_attribute = "" + " class=\"" + (classes.$join(" ")) + "\"";
38119
- style_attribute = (function() {if ($truthy(styles['$empty?']())) {
38120
- return ""
38121
- } else {
38122
- return "" + " style=\"" + (styles.$join(" ")) + "\""
38123
- }; return nil; })();
38124
38300
  result['$<<']("" + "<table" + (id_attribute) + (class_attribute) + (style_attribute) + ">");
38125
38301
  if ($truthy(node['$title?']())) {
38126
38302
  result['$<<']("" + "<caption class=\"title\">" + (node.$captioned_title()) + "</caption>")};
@@ -38384,7 +38560,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38384
38560
  }, $Html5Converter_convert_verse$47.$$arity = 1);
38385
38561
 
38386
38562
  Opal.def(self, '$convert_video', $Html5Converter_convert_video$48 = function $$convert_video(node) {
38387
- var $a, $b, self = this, xml = nil, id_attribute = nil, classes = nil, class_attribute = nil, title_element = nil, width_attribute = nil, height_attribute = nil, $case = nil, asset_uri_scheme = nil, start_anchor = nil, delimiter = nil, autoplay_param = nil, loop_param = nil, muted_param = nil, rel_param_val = nil, start_param = nil, end_param = nil, has_loop_param = nil, mute_param = nil, controls_param = nil, fs_param = nil, fs_attribute = nil, modest_param = nil, theme_param = nil, hl_param = nil, target = nil, list = nil, list_param = nil, playlist = nil, poster_attribute = nil, val = nil, preload_attribute = nil, start_t = nil, end_t = nil, time_anchor = nil;
38563
+ var $a, $b, self = this, xml = nil, id_attribute = nil, classes = nil, class_attribute = nil, title_element = nil, width_attribute = nil, height_attribute = nil, $case = nil, asset_uri_scheme = nil, start_anchor = nil, delimiter = nil, target = nil, hash = nil, hash_param = nil, autoplay_param = nil, loop_param = nil, muted_param = nil, rel_param_val = nil, start_param = nil, end_param = nil, has_loop_param = nil, mute_param = nil, controls_param = nil, fs_param = nil, fs_attribute = nil, modest_param = nil, theme_param = nil, hl_param = nil, list = nil, list_param = nil, playlist = nil, poster_attribute = nil, val = nil, preload_attribute = nil, start_t = nil, end_t = nil, time_anchor = nil;
38388
38564
 
38389
38565
 
38390
38566
  xml = self.xml_mode;
@@ -38428,6 +38604,12 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38428
38604
  return ""
38429
38605
  }; return nil; })();
38430
38606
  delimiter = ["?"];
38607
+ $b = node.$attr("target").$split("/", 2), $a = Opal.to_ary($b), (target = ($a[0] == null ? nil : $a[0])), (hash = ($a[1] == null ? nil : $a[1])), $b;
38608
+ hash_param = (function() {if ($truthy((hash = ($truthy($a = hash) ? $a : node.$attr("hash"))))) {
38609
+ return "" + (($truthy($a = delimiter.$pop()) ? $a : "&amp;")) + "h=" + (hash)
38610
+ } else {
38611
+ return ""
38612
+ }; return nil; })();
38431
38613
  autoplay_param = (function() {if ($truthy(node['$option?']("autoplay"))) {
38432
38614
  return "" + (($truthy($a = delimiter.$pop()) ? $a : "&amp;")) + "autoplay=1"
38433
38615
  } else {
@@ -38443,7 +38625,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38443
38625
  } else {
38444
38626
  return ""
38445
38627
  }; return nil; })();
38446
- return "" + "<div" + (id_attribute) + (class_attribute) + ">" + (title_element) + "\n" + "<div class=\"content\">\n" + "<iframe" + (width_attribute) + (height_attribute) + " src=\"" + (asset_uri_scheme) + "//player.vimeo.com/video/" + (node.$attr("target")) + (autoplay_param) + (loop_param) + (muted_param) + (start_anchor) + "\" frameborder=\"0\"" + ((function() {if ($truthy(node['$option?']("nofullscreen"))) {
38628
+ return "" + "<div" + (id_attribute) + (class_attribute) + ">" + (title_element) + "\n" + "<div class=\"content\">\n" + "<iframe" + (width_attribute) + (height_attribute) + " src=\"" + (asset_uri_scheme) + "//player.vimeo.com/video/" + (target) + (hash_param) + (autoplay_param) + (loop_param) + (muted_param) + (start_anchor) + "\" frameborder=\"0\"" + ((function() {if ($truthy(node['$option?']("nofullscreen"))) {
38447
38629
  return ""
38448
38630
  } else {
38449
38631
 
@@ -38520,7 +38702,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38520
38702
 
38521
38703
  $b = target.$split(",", 2), $a = Opal.to_ary($b), (target = ($a[0] == null ? nil : $a[0])), (playlist = ($a[1] == null ? nil : $a[1])), $b;
38522
38704
  if ($truthy((playlist = ($truthy($a = playlist) ? $a : node.$attr("playlist"))))) {
38523
- list_param = "" + "&amp;playlist=" + (playlist)
38705
+ list_param = "" + "&amp;playlist=" + (target) + "," + (playlist)
38524
38706
  } else {
38525
38707
  list_param = (function() {if ($truthy(has_loop_param)) {
38526
38708
  return "" + "&amp;playlist=" + (target)
@@ -38696,87 +38878,85 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38696
38878
  }, $Html5Converter_convert_inline_footnote$53.$$arity = 1);
38697
38879
 
38698
38880
  Opal.def(self, '$convert_inline_image', $Html5Converter_convert_inline_image$54 = function $$convert_inline_image(node) {
38699
- var $a, $b, $$55, $c, $d, self = this, type = nil, class_attr_val = nil, title_attr = nil, img = nil, target = nil, attrs = nil, svg = nil, obj = nil, fallback = nil, role = nil;
38700
-
38701
-
38702
- if ($truthy((($a = (type = ($truthy($b = node.$type()) ? $b : "image"))['$==']("icon")) ? node.$document()['$attr?']("icons", "font") : (type = ($truthy($b = node.$type()) ? $b : "image"))['$==']("icon")))) {
38703
-
38704
- class_attr_val = "" + "fa fa-" + (node.$target());
38705
- $send($hash2(["size", "rotate", "flip"], {"size": "fa-", "rotate": "fa-rotate-", "flip": "fa-flip-"}), 'each', [], ($$55 = function(key, prefix){var self = $$55.$$s || this;
38706
-
38707
-
38708
-
38709
- if (key == null) {
38710
- key = nil;
38711
- };
38881
+ var $a, $b, self = this, target = nil, type = nil, icons = nil, i_class_attr_val = nil, attrs = nil, img = nil, fallback = nil, class_attr_val = nil, role = nil;
38882
+
38883
+
38884
+ target = node.$target();
38885
+ if ((type = ($truthy($a = node.$type()) ? $a : "image"))['$==']("icon")) {
38886
+ if ((icons = node.$document().$attr("icons"))['$==']("font")) {
38887
+
38888
+ i_class_attr_val = "" + "fa fa-" + (target);
38889
+ if ($truthy(node['$attr?']("size"))) {
38890
+ i_class_attr_val = "" + (i_class_attr_val) + " fa-" + (node.$attr("size"))};
38891
+ if ($truthy(node['$attr?']("flip"))) {
38892
+ i_class_attr_val = "" + (i_class_attr_val) + " fa-flip-" + (node.$attr("flip"))
38893
+ } else if ($truthy(node['$attr?']("rotate"))) {
38894
+ i_class_attr_val = "" + (i_class_attr_val) + " fa-rotate-" + (node.$attr("rotate"))};
38895
+ attrs = (function() {if ($truthy(node['$attr?']("title"))) {
38896
+ return "" + " title=\"" + (node.$attr("title")) + "\""
38897
+ } else {
38898
+ return ""
38899
+ }; return nil; })();
38900
+ img = "" + "<i class=\"" + (i_class_attr_val) + "\"" + (attrs) + "></i>";
38901
+ } else if ($truthy(icons)) {
38712
38902
 
38713
- if (prefix == null) {
38714
- prefix = nil;
38715
- };
38716
- if ($truthy(node['$attr?'](key))) {
38717
- return (class_attr_val = "" + (class_attr_val) + " " + (prefix) + (node.$attr(key)))
38903
+ attrs = (function() {if ($truthy(node['$attr?']("width"))) {
38904
+ return "" + " width=\"" + (node.$attr("width")) + "\""
38718
38905
  } else {
38719
- return nil
38720
- };}, $$55.$$s = self, $$55.$$arity = 2, $$55));
38721
- title_attr = (function() {if ($truthy(node['$attr?']("title"))) {
38722
- return "" + " title=\"" + (node.$attr("title")) + "\""
38906
+ return ""
38907
+ }; return nil; })();
38908
+ if ($truthy(node['$attr?']("height"))) {
38909
+ attrs = "" + (attrs) + " height=\"" + (node.$attr("height")) + "\""};
38910
+ if ($truthy(node['$attr?']("title"))) {
38911
+ attrs = "" + (attrs) + " title=\"" + (node.$attr("title")) + "\""};
38912
+ img = "" + "<img src=\"" + (node.$icon_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (attrs) + (self.void_element_slash) + ">";
38723
38913
  } else {
38724
- return ""
38725
- }; return nil; })();
38726
- img = "" + "<i class=\"" + (class_attr_val) + "\"" + (title_attr) + "></i>";
38727
- } else if ($truthy((($a = type['$==']("icon")) ? node.$document()['$attr?']("icons")['$!']() : type['$==']("icon")))) {
38728
- img = "" + "[" + (node.$alt()) + "]"
38914
+ img = "" + "[" + (node.$alt()) + "&#93;"
38915
+ }
38729
38916
  } else {
38730
38917
 
38731
- target = node.$target();
38732
- attrs = [];
38733
- if ($truthy(node['$attr?']("width"))) {
38734
- attrs['$<<']("" + " width=\"" + (node.$attr("width")) + "\"")};
38735
- if ($truthy(node['$attr?']("height"))) {
38736
- attrs['$<<']("" + " height=\"" + (node.$attr("height")) + "\"")};
38737
- if ($truthy(node['$attr?']("title"))) {
38738
- attrs['$<<']("" + " title=\"" + (node.$attr("title")) + "\"")};
38739
- attrs = (function() {if ($truthy(attrs['$empty?']())) {
38740
- return ""
38918
+ attrs = (function() {if ($truthy(node['$attr?']("width"))) {
38919
+ return "" + " width=\"" + (node.$attr("width")) + "\""
38741
38920
  } else {
38742
- return attrs.$join()
38921
+ return ""
38743
38922
  }; return nil; })();
38744
- if ($truthy(($truthy($a = ($truthy($b = ($truthy($c = type['$!=']("icon")) ? ($truthy($d = node['$attr?']("format", "svg")) ? $d : target['$include?'](".svg")) : $c)) ? $rb_lt(node.$document().$safe(), $$$($$($nesting, 'SafeMode'), 'SECURE')) : $b)) ? ($truthy($b = (svg = node['$option?']("inline"))) ? $b : (obj = node['$option?']("interactive"))) : $a))) {
38745
- if ($truthy(svg)) {
38923
+ if ($truthy(node['$attr?']("height"))) {
38924
+ attrs = "" + (attrs) + " height=\"" + (node.$attr("height")) + "\""};
38925
+ if ($truthy(node['$attr?']("title"))) {
38926
+ attrs = "" + (attrs) + " title=\"" + (node.$attr("title")) + "\""};
38927
+ if ($truthy(($truthy($a = ($truthy($b = node['$attr?']("format", "svg")) ? $b : target['$include?'](".svg"))) ? $rb_lt(node.$document().$safe(), $$$($$($nesting, 'SafeMode'), 'SECURE')) : $a))) {
38928
+ if ($truthy(node['$option?']("inline"))) {
38746
38929
  img = ($truthy($a = self.$read_svg_contents(node, target)) ? $a : "" + "<span class=\"alt\">" + (node.$alt()) + "</span>")
38747
- } else if ($truthy(obj)) {
38930
+ } else if ($truthy(node['$option?']("interactive"))) {
38748
38931
 
38749
38932
  fallback = (function() {if ($truthy(node['$attr?']("fallback"))) {
38750
38933
  return "" + "<img src=\"" + (node.$image_uri(node.$attr("fallback"))) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (attrs) + (self.void_element_slash) + ">"
38751
38934
  } else {
38752
38935
  return "" + "<span class=\"alt\">" + (node.$alt()) + "</span>"
38753
38936
  }; return nil; })();
38754
- img = "" + "<object type=\"image/svg+xml\" data=\"" + (node.$image_uri(target)) + "\"" + (attrs) + ">" + (fallback) + "</object>";}};
38755
- img = ($truthy($a = img) ? $a : "" + "<img src=\"" + ((function() {if (type['$==']("icon")) {
38756
-
38757
- return node.$icon_uri(target);
38937
+ img = "" + "<object type=\"image/svg+xml\" data=\"" + (node.$image_uri(target)) + "\"" + (attrs) + ">" + (fallback) + "</object>";
38938
+ } else {
38939
+ img = "" + "<img src=\"" + (node.$image_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (attrs) + (self.void_element_slash) + ">"
38940
+ }
38758
38941
  } else {
38759
-
38760
- return node.$image_uri(target);
38761
- }; return nil; })()) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (attrs) + (self.void_element_slash) + ">");
38942
+ img = "" + "<img src=\"" + (node.$image_uri(target)) + "\" alt=\"" + (self.$encode_attribute_value(node.$alt())) + "\"" + (attrs) + (self.void_element_slash) + ">"
38943
+ };
38762
38944
  };
38763
38945
  if ($truthy(node['$attr?']("link"))) {
38764
38946
  img = "" + "<a class=\"image\" href=\"" + (node.$attr("link")) + "\"" + (self.$append_link_constraint_attrs(node).$join()) + ">" + (img) + "</a>"};
38947
+ class_attr_val = type;
38765
38948
  if ($truthy((role = node.$role()))) {
38766
- if ($truthy(node['$attr?']("float"))) {
38767
- class_attr_val = "" + (type) + " " + (node.$attr("float")) + " " + (role)
38949
+ class_attr_val = (function() {if ($truthy(node['$attr?']("float"))) {
38950
+ return "" + (class_attr_val) + " " + (node.$attr("float")) + " " + (role)
38768
38951
  } else {
38769
- class_attr_val = "" + (type) + " " + (role)
38770
- }
38952
+ return "" + (class_attr_val) + " " + (role)
38953
+ }; return nil; })()
38771
38954
  } else if ($truthy(node['$attr?']("float"))) {
38772
- class_attr_val = "" + (type) + " " + (node.$attr("float"))
38773
- } else {
38774
- class_attr_val = type
38775
- };
38955
+ class_attr_val = "" + (class_attr_val) + " " + (node.$attr("float"))};
38776
38956
  return "" + "<span class=\"" + (class_attr_val) + "\">" + (img) + "</span>";
38777
38957
  }, $Html5Converter_convert_inline_image$54.$$arity = 1);
38778
38958
 
38779
- Opal.def(self, '$convert_inline_indexterm', $Html5Converter_convert_inline_indexterm$56 = function $$convert_inline_indexterm(node) {
38959
+ Opal.def(self, '$convert_inline_indexterm', $Html5Converter_convert_inline_indexterm$55 = function $$convert_inline_indexterm(node) {
38780
38960
  var self = this;
38781
38961
 
38782
38962
  if (node.$type()['$==']("visible")) {
@@ -38784,9 +38964,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38784
38964
  } else {
38785
38965
  return ""
38786
38966
  }
38787
- }, $Html5Converter_convert_inline_indexterm$56.$$arity = 1);
38967
+ }, $Html5Converter_convert_inline_indexterm$55.$$arity = 1);
38788
38968
 
38789
- Opal.def(self, '$convert_inline_kbd', $Html5Converter_convert_inline_kbd$57 = function $$convert_inline_kbd(node) {
38969
+ Opal.def(self, '$convert_inline_kbd', $Html5Converter_convert_inline_kbd$56 = function $$convert_inline_kbd(node) {
38790
38970
  var self = this, keys = nil;
38791
38971
 
38792
38972
  if ((keys = node.$attr("keys")).$size()['$=='](1)) {
@@ -38794,9 +38974,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38794
38974
  } else {
38795
38975
  return "" + "<span class=\"keyseq\"><kbd>" + (keys.$join("</kbd>+<kbd>")) + "</kbd></span>"
38796
38976
  }
38797
- }, $Html5Converter_convert_inline_kbd$57.$$arity = 1);
38977
+ }, $Html5Converter_convert_inline_kbd$56.$$arity = 1);
38798
38978
 
38799
- Opal.def(self, '$convert_inline_menu', $Html5Converter_convert_inline_menu$58 = function $$convert_inline_menu(node) {
38979
+ Opal.def(self, '$convert_inline_menu', $Html5Converter_convert_inline_menu$57 = function $$convert_inline_menu(node) {
38800
38980
  var self = this, caret = nil, submenu_joiner = nil, menu = nil, submenus = nil, menuitem = nil;
38801
38981
 
38802
38982
 
@@ -38816,9 +38996,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38816
38996
  } else {
38817
38997
  return "" + "<span class=\"menuseq\"><b class=\"menu\">" + (menu) + "</b>" + (caret) + "<b class=\"submenu\">" + (submenus.$join(submenu_joiner)) + "</b>" + (caret) + "<b class=\"menuitem\">" + (node.$attr("menuitem")) + "</b></span>"
38818
38998
  };
38819
- }, $Html5Converter_convert_inline_menu$58.$$arity = 1);
38999
+ }, $Html5Converter_convert_inline_menu$57.$$arity = 1);
38820
39000
 
38821
- Opal.def(self, '$convert_inline_quoted', $Html5Converter_convert_inline_quoted$59 = function $$convert_inline_quoted(node) {
39001
+ Opal.def(self, '$convert_inline_quoted', $Html5Converter_convert_inline_quoted$58 = function $$convert_inline_quoted(node) {
38822
39002
  var $a, $b, self = this, open = nil, close = nil, tag = nil, class_attr = nil;
38823
39003
 
38824
39004
 
@@ -38844,10 +39024,10 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38844
39024
  } else {
38845
39025
  return "" + (open) + (node.$text()) + (close)
38846
39026
  };
38847
- }, $Html5Converter_convert_inline_quoted$59.$$arity = 1);
39027
+ }, $Html5Converter_convert_inline_quoted$58.$$arity = 1);
38848
39028
 
38849
- Opal.def(self, '$read_svg_contents', $Html5Converter_read_svg_contents$60 = function $$read_svg_contents(node, target) {
38850
- var $$61, self = this, svg = nil, old_start_tag = nil, new_start_tag = nil, start_tag_match = nil;
39029
+ Opal.def(self, '$read_svg_contents', $Html5Converter_read_svg_contents$59 = function $$read_svg_contents(node, target) {
39030
+ var $$60, self = this, svg = nil, old_start_tag = nil, new_start_tag = nil, start_tag_match = nil;
38851
39031
 
38852
39032
 
38853
39033
  if ($truthy((svg = node.$read_contents(target, $hash2(["start", "normalize", "label", "warn_if_empty"], {"start": node.$document().$attr("imagesdir"), "normalize": true, "label": "SVG", "warn_if_empty": true}))))) {
@@ -38859,7 +39039,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38859
39039
  svg = svg.$sub($$($nesting, 'SvgPreambleRx'), "")
38860
39040
  };
38861
39041
  old_start_tag = (new_start_tag = (start_tag_match = nil));
38862
- $send(["width", "height"], 'each', [], ($$61 = function(dim){var self = $$61.$$s || this, $a, $b;
39042
+ $send(["width", "height"], 'each', [], ($$60 = function(dim){var self = $$60.$$s || this, $a, $b;
38863
39043
 
38864
39044
 
38865
39045
 
@@ -38877,14 +39057,14 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38877
39057
  return nil;};
38878
39058
  new_start_tag = (old_start_tag = start_tag_match['$[]'](0)).$gsub($$($nesting, 'DimensionAttributeRx'), "");
38879
39059
  };
38880
- return (new_start_tag = "" + (new_start_tag.$chop()) + " " + (dim) + "=\"" + (node.$attr(dim)) + "\">");}, $$61.$$s = self, $$61.$$arity = 1, $$61));
39060
+ return (new_start_tag = "" + (new_start_tag.$chop()) + " " + (dim) + "=\"" + (node.$attr(dim)) + "\">");}, $$60.$$s = self, $$60.$$arity = 1, $$60));
38881
39061
  if ($truthy(new_start_tag)) {
38882
39062
  svg = "" + (new_start_tag) + (svg['$[]'](Opal.Range.$new(old_start_tag.$length(), -1, false)))};};
38883
39063
  return svg;
38884
- }, $Html5Converter_read_svg_contents$60.$$arity = 2);
39064
+ }, $Html5Converter_read_svg_contents$59.$$arity = 2);
38885
39065
  self.$private();
38886
39066
 
38887
- Opal.def(self, '$append_boolean_attribute', $Html5Converter_append_boolean_attribute$62 = function $$append_boolean_attribute(name, xml) {
39067
+ Opal.def(self, '$append_boolean_attribute', $Html5Converter_append_boolean_attribute$61 = function $$append_boolean_attribute(name, xml) {
38888
39068
  var self = this;
38889
39069
 
38890
39070
  if ($truthy(xml)) {
@@ -38892,9 +39072,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38892
39072
  } else {
38893
39073
  return "" + " " + (name)
38894
39074
  }
38895
- }, $Html5Converter_append_boolean_attribute$62.$$arity = 2);
39075
+ }, $Html5Converter_append_boolean_attribute$61.$$arity = 2);
38896
39076
 
38897
- Opal.def(self, '$append_link_constraint_attrs', $Html5Converter_append_link_constraint_attrs$63 = function $$append_link_constraint_attrs(node, attrs) {
39077
+ Opal.def(self, '$append_link_constraint_attrs', $Html5Converter_append_link_constraint_attrs$62 = function $$append_link_constraint_attrs(node, attrs) {
38898
39078
  var $a, self = this, rel = nil, window = nil;
38899
39079
 
38900
39080
 
@@ -38916,9 +39096,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38916
39096
  } else if ($truthy(rel)) {
38917
39097
  attrs['$<<']("" + " rel=\"" + (rel) + "\"")};
38918
39098
  return attrs;
38919
- }, $Html5Converter_append_link_constraint_attrs$63.$$arity = -2);
39099
+ }, $Html5Converter_append_link_constraint_attrs$62.$$arity = -2);
38920
39100
 
38921
- Opal.def(self, '$encode_attribute_value', $Html5Converter_encode_attribute_value$64 = function $$encode_attribute_value(val) {
39101
+ Opal.def(self, '$encode_attribute_value', $Html5Converter_encode_attribute_value$63 = function $$encode_attribute_value(val) {
38922
39102
  var self = this;
38923
39103
 
38924
39104
  if ($truthy(val['$include?']("\""))) {
@@ -38927,9 +39107,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38927
39107
  } else {
38928
39108
  return val
38929
39109
  }
38930
- }, $Html5Converter_encode_attribute_value$64.$$arity = 1);
39110
+ }, $Html5Converter_encode_attribute_value$63.$$arity = 1);
38931
39111
 
38932
- Opal.def(self, '$generate_manname_section', $Html5Converter_generate_manname_section$65 = function $$generate_manname_section(node) {
39112
+ Opal.def(self, '$generate_manname_section', $Html5Converter_generate_manname_section$64 = function $$generate_manname_section(node) {
38933
39113
  var $a, self = this, manname_title = nil, next_section = nil, next_section_title = nil, manname_id_attr = nil, manname_id = nil;
38934
39114
 
38935
39115
 
@@ -38942,9 +39122,9 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38942
39122
  return ""
38943
39123
  }; return nil; })();
38944
39124
  return "" + "<h2" + (manname_id_attr) + ">" + (manname_title) + "</h2>\n" + "<div class=\"sectionbody\">\n" + "<p>" + (node.$attr("mannames").$join(", ")) + " - " + (node.$attr("manpurpose")) + "</p>\n" + "</div>";
38945
- }, $Html5Converter_generate_manname_section$65.$$arity = 1);
39125
+ }, $Html5Converter_generate_manname_section$64.$$arity = 1);
38946
39126
 
38947
- Opal.def(self, '$get_root_document', $Html5Converter_get_root_document$66 = function $$get_root_document(node) {
39127
+ Opal.def(self, '$get_root_document', $Html5Converter_get_root_document$65 = function $$get_root_document(node) {
38948
39128
  var $a, self = this;
38949
39129
 
38950
39130
 
@@ -38952,12 +39132,12 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38952
39132
  node = node.$parent_document()
38953
39133
  };
38954
39134
  return node;
38955
- }, $Html5Converter_get_root_document$66.$$arity = 1);
39135
+ }, $Html5Converter_get_root_document$65.$$arity = 1);
38956
39136
 
38957
- Opal.def(self, '$method_missing', $Html5Converter_method_missing$67 = function $$method_missing(id, $a) {
38958
- var $post_args, args, $b, $iter = $Html5Converter_method_missing$67.$$p, $yield = $iter || nil, self = this, name = nil, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
39137
+ Opal.def(self, '$method_missing', $Html5Converter_method_missing$66 = function $$method_missing(id, $a) {
39138
+ var $post_args, args, $b, $iter = $Html5Converter_method_missing$66.$$p, $yield = $iter || nil, self = this, name = nil, $zuper = nil, $zuper_i = nil, $zuper_ii = nil;
38959
39139
 
38960
- if ($iter) $Html5Converter_method_missing$67.$$p = null;
39140
+ if ($iter) $Html5Converter_method_missing$66.$$p = null;
38961
39141
  // Prepare super implicit arguments
38962
39142
  for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {
38963
39143
  $zuper[$zuper_i] = arguments[$zuper_i];
@@ -38971,10 +39151,10 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38971
39151
 
38972
39152
  return $send(self, 'send', ["" + "convert_" + (name)].concat(Opal.to_a(args)));
38973
39153
  } else {
38974
- return $send(self, Opal.find_super_dispatcher(self, 'method_missing', $Html5Converter_method_missing$67, false), $zuper, $iter)
39154
+ return $send(self, Opal.find_super_dispatcher(self, 'method_missing', $Html5Converter_method_missing$66, false), $zuper, $iter)
38975
39155
  };
38976
- }, $Html5Converter_method_missing$67.$$arity = -2);
38977
- return (Opal.def(self, '$respond_to_missing?', $Html5Converter_respond_to_missing$ques$68 = function(id, $a) {
39156
+ }, $Html5Converter_method_missing$66.$$arity = -2);
39157
+ return (Opal.def(self, '$respond_to_missing?', $Html5Converter_respond_to_missing$ques$67 = function(id, $a) {
38978
39158
  var $post_args, options, $b, self = this, name = nil;
38979
39159
 
38980
39160
 
@@ -38983,7 +39163,7 @@ Opal.modules["asciidoctor/converter/html5"] = function(Opal) {
38983
39163
 
38984
39164
  options = $post_args;;
38985
39165
  return ($truthy($b = (name = id.$to_s())['$start_with?']("convert_")['$!']()) ? self['$handles?'](name) : $b);
38986
- }, $Html5Converter_respond_to_missing$ques$68.$$arity = -2), nil) && 'respond_to_missing?';
39166
+ }, $Html5Converter_respond_to_missing$ques$67.$$arity = -2), nil) && 'respond_to_missing?';
38987
39167
  })($$($nesting, 'Converter'), $$$($$($nesting, 'Converter'), 'Base'), $nesting)
38988
39168
  })($nesting[0], $nesting)
38989
39169
  };
@@ -39004,7 +39184,7 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
39004
39184
  }
39005
39185
  var self = Opal.top, $nesting = [], nil = Opal.nil, $$$ = Opal.const_get_qualified, $$ = Opal.const_get_relative, $breaker = Opal.breaker, $slice = Opal.slice, $module = Opal.module, $klass = Opal.klass, $truthy = Opal.truthy, $hash2 = Opal.hash2, $send = Opal.send, $hash = Opal.hash;
39006
39186
 
39007
- Opal.add_stubs(['$==', '$[]=', '$config', '$-', '$const_defined?', '$singleton_class?', '$include', '$const_get', '$extend', '$attr_reader', '$merge', '$class', '$update', '$raise', '$document', '$doctype', '$[]', '$+', '$level', '$delete', '$>', '$casecmp', '$new', '$title=', '$sectname=', '$special=', '$fetch', '$numbered=', '$!', '$key?', '$attr?', '$special', '$numbered', '$generate_id', '$title', '$id=', '$update_attributes', '$tr', '$basename', '$create_block', '$assign_caption', '$===', '$parse_blocks', '$empty?', '$include?', '$sub_attributes', '$parse', '$each', '$define_method', '$unshift', '$shift', '$send', '$size', '$binding', '$receiver', '$define_singleton_method', '$instance_exec', '$to_proc', '$call', '$option', '$flatten', '$respond_to?', '$to_s', '$partition', '$to_i', '$<<', '$compact', '$inspect', '$attr_accessor', '$to_set', '$match?', '$resolve_regexp', '$method', '$register', '$values', '$groups', '$arity', '$activate', '$add_document_processor', '$any?', '$select', '$add_syntax_processor', '$to_sym', '$instance_variable_get', '$kind', '$private', '$join', '$map', '$split', '$capitalize', '$instance_variable_set', '$resolve_args', '$enable_dsl', '$singleton_class', '$process_block_given?', '$source_location', '$freeze', '$resolve_class', '$<', '$update_config', '$as_symbol', '$name', '$name=', '$pop', '$-@', '$next_auto_id', '$generate_name']);
39187
+ Opal.add_stubs(['$==', '$[]=', '$config', '$-', '$const_defined?', '$singleton_class?', '$include', '$const_get', '$extend', '$attr_reader', '$merge', '$class', '$update', '$raise', '$document', '$doctype', '$[]', '$+', '$level', '$delete', '$>', '$casecmp', '$new', '$title=', '$sectname=', '$special=', '$fetch', '$numbered=', '$!', '$key?', '$attr?', '$special', '$numbered', '$generate_id', '$title', '$id=', '$update_attributes', '$tr', '$basename', '$create_block', '$assign_caption', '$===', '$parse_blocks', '$empty?', '$include?', '$sub_attributes', '$parse', '$each', '$define_method', '$unshift', '$shift', '$send', '$size', '$binding', '$receiver', '$define_singleton_method', '$instance_exec', '$to_proc', '$call', '$option', '$flatten', '$respond_to?', '$to_s', '$partition', '$to_i', '$<<', '$compact', '$inspect', '$attr_accessor', '$to_set', '$match?', '$resolve_regexp', '$method', '$register', '$reset', '$values', '$groups', '$arity', '$activate', '$add_document_processor', '$any?', '$select', '$add_syntax_processor', '$to_sym', '$instance_variable_get', '$kind', '$private', '$join', '$map', '$split', '$capitalize', '$instance_variable_set', '$resolve_args', '$enable_dsl', '$singleton_class', '$process_block_given?', '$source_location', '$freeze', '$resolve_class', '$<', '$update_config', '$as_symbol', '$name', '$name=', '$pop', '$-@', '$next_auto_id', '$generate_name', '$each_with_object']);
39008
39188
 
39009
39189
  if ($$($nesting, 'RUBY_ENGINE')['$==']("opal")) {
39010
39190
  } else {
@@ -39942,9 +40122,9 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
39942
40122
  (function($base, $super, $parent_nesting) {
39943
40123
  var self = $klass($base, $super, 'Registry');
39944
40124
 
39945
- var $nesting = [self].concat($parent_nesting), $Registry_initialize$53, $Registry_activate$54, $Registry_preprocessor$56, $Registry_preprocessors$ques$57, $Registry_preprocessors$58, $Registry_tree_processor$59, $Registry_tree_processors$ques$60, $Registry_tree_processors$61, $Registry_postprocessor$62, $Registry_postprocessors$ques$63, $Registry_postprocessors$64, $Registry_include_processor$65, $Registry_include_processors$ques$66, $Registry_include_processors$67, $Registry_docinfo_processor$68, $Registry_docinfo_processors$ques$69, $Registry_docinfo_processors$71, $Registry_block$73, $Registry_blocks$ques$74, $Registry_registered_for_block$ques$75, $Registry_find_block_extension$76, $Registry_block_macro$77, $Registry_block_macros$ques$78, $Registry_registered_for_block_macro$ques$79, $Registry_find_block_macro_extension$80, $Registry_inline_macro$81, $Registry_inline_macros$ques$82, $Registry_registered_for_inline_macro$ques$83, $Registry_find_inline_macro_extension$84, $Registry_inline_macros$85, $Registry_prefer$86, $Registry_add_document_processor$87, $Registry_add_syntax_processor$89, $Registry_resolve_args$91, $Registry_as_symbol$92;
40125
+ var $nesting = [self].concat($parent_nesting), $Registry_initialize$53, $Registry_activate$54, $Registry_preprocessor$56, $Registry_preprocessors$ques$57, $Registry_preprocessors$58, $Registry_tree_processor$59, $Registry_tree_processors$ques$60, $Registry_tree_processors$61, $Registry_postprocessor$62, $Registry_postprocessors$ques$63, $Registry_postprocessors$64, $Registry_include_processor$65, $Registry_include_processors$ques$66, $Registry_include_processors$67, $Registry_docinfo_processor$68, $Registry_docinfo_processors$ques$69, $Registry_docinfo_processors$71, $Registry_block$73, $Registry_blocks$ques$74, $Registry_registered_for_block$ques$75, $Registry_find_block_extension$76, $Registry_block_macro$77, $Registry_block_macros$ques$78, $Registry_registered_for_block_macro$ques$79, $Registry_find_block_macro_extension$80, $Registry_inline_macro$81, $Registry_inline_macros$ques$82, $Registry_registered_for_inline_macro$ques$83, $Registry_find_inline_macro_extension$84, $Registry_inline_macros$85, $Registry_prefer$86, $Registry_add_document_processor$87, $Registry_add_syntax_processor$89, $Registry_reset$91, $Registry_resolve_args$92, $Registry_as_symbol$93;
39946
40126
 
39947
- self.$$prototype.groups = self.$$prototype.preprocessor_extensions = self.$$prototype.tree_processor_extensions = self.$$prototype.postprocessor_extensions = self.$$prototype.include_processor_extensions = self.$$prototype.docinfo_processor_extensions = self.$$prototype.block_extensions = self.$$prototype.block_macro_extensions = self.$$prototype.inline_macro_extensions = nil;
40127
+ self.$$prototype.document = self.$$prototype.groups = self.$$prototype.preprocessor_extensions = self.$$prototype.tree_processor_extensions = self.$$prototype.postprocessor_extensions = self.$$prototype.include_processor_extensions = self.$$prototype.docinfo_processor_extensions = self.$$prototype.block_extensions = self.$$prototype.block_macro_extensions = self.$$prototype.inline_macro_extensions = nil;
39948
40128
 
39949
40129
  self.$attr_reader("document");
39950
40130
  self.$attr_reader("groups");
@@ -39958,6 +40138,7 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
39958
40138
  groups = $hash2([], {});
39959
40139
  };
39960
40140
  self.groups = groups;
40141
+ self.$reset();
39961
40142
  self.preprocessor_extensions = (self.tree_processor_extensions = (self.postprocessor_extensions = (self.include_processor_extensions = (self.docinfo_processor_extensions = (self.block_extensions = (self.block_macro_extensions = (self.inline_macro_extensions = nil)))))));
39962
40143
  return (self.document = nil);
39963
40144
  }, $Registry_initialize$53.$$arity = -1);
@@ -39966,6 +40147,8 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
39966
40147
  var $$55, self = this, ext_groups = nil;
39967
40148
 
39968
40149
 
40150
+ if ($truthy(self.document)) {
40151
+ self.$reset()};
39969
40152
  self.document = document;
39970
40153
  if ($truthy((ext_groups = $rb_plus($$($nesting, 'Extensions').$groups().$values(), self.groups.$values()))['$empty?']())) {
39971
40154
  } else {
@@ -40336,7 +40519,7 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40336
40519
  };
40337
40520
  if ($truthy(processor['$process_block_given?']())) {
40338
40521
  } else {
40339
- self.$raise($$$('::', 'ArgumentError'), "" + "No block specified to process " + (kind_name) + " extension at " + (block.$source_location()))
40522
+ self.$raise($$$('::', 'NoMethodError'), "" + "No block specified to process " + (kind_name) + " extension at " + (block.$source_location().$join(":")))
40340
40523
  };
40341
40524
  processor.$freeze();
40342
40525
  extension = $$($nesting, 'ProcessorExtension').$new(kind, processor);
@@ -40406,11 +40589,11 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40406
40589
  };
40407
40590
  if ($truthy((name = self.$as_symbol(processor.$name())))) {
40408
40591
  } else {
40409
- self.$raise($$$('::', 'ArgumentError'), "" + "No name specified for " + (kind_name) + " extension at " + (block.$source_location()))
40592
+ self.$raise($$$('::', 'ArgumentError'), "" + "No name specified for " + (kind_name) + " extension at " + (block.$source_location().$join(":")))
40410
40593
  };
40411
40594
  if ($truthy(processor['$process_block_given?']())) {
40412
40595
  } else {
40413
- self.$raise($$$('::', 'NoMethodError'), "" + "No block specified to process " + (kind_name) + " extension at " + (block.$source_location()))
40596
+ self.$raise($$$('::', 'NoMethodError'), "" + "No block specified to process " + (kind_name) + " extension at " + (block.$source_location().$join(":")))
40414
40597
  };
40415
40598
  processor.$freeze();
40416
40599
 
@@ -40463,7 +40646,15 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40463
40646
  };
40464
40647
  }, $Registry_add_syntax_processor$89.$$arity = 2);
40465
40648
 
40466
- Opal.def(self, '$resolve_args', $Registry_resolve_args$91 = function $$resolve_args(args, expect) {
40649
+ Opal.def(self, '$reset', $Registry_reset$91 = function $$reset() {
40650
+ var self = this;
40651
+
40652
+
40653
+ self.preprocessor_extensions = (self.tree_processor_extensions = (self.postprocessor_extensions = (self.include_processor_extensions = (self.docinfo_processor_extensions = (self.block_extensions = (self.block_macro_extensions = (self.inline_macro_extensions = nil)))))));
40654
+ return (self.document = nil);
40655
+ }, $Registry_reset$91.$$arity = 0);
40656
+
40657
+ Opal.def(self, '$resolve_args', $Registry_resolve_args$92 = function $$resolve_args(args, expect) {
40467
40658
  var self = this, opts = nil, missing = nil;
40468
40659
 
40469
40660
 
@@ -40480,8 +40671,8 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40480
40671
  args.$pop(missing['$-@']())};
40481
40672
  args['$<<'](opts);
40482
40673
  return args;
40483
- }, $Registry_resolve_args$91.$$arity = 2);
40484
- return (Opal.def(self, '$as_symbol', $Registry_as_symbol$92 = function $$as_symbol(name) {
40674
+ }, $Registry_resolve_args$92.$$arity = 2);
40675
+ return (Opal.def(self, '$as_symbol', $Registry_as_symbol$93 = function $$as_symbol(name) {
40485
40676
  var self = this;
40486
40677
 
40487
40678
  if ($truthy(name)) {
@@ -40489,42 +40680,42 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40489
40680
  } else {
40490
40681
  return nil
40491
40682
  }
40492
- }, $Registry_as_symbol$92.$$arity = 1), nil) && 'as_symbol';
40683
+ }, $Registry_as_symbol$93.$$arity = 1), nil) && 'as_symbol';
40493
40684
  })($nesting[0], null, $nesting);
40494
40685
  (function(self, $parent_nesting) {
40495
- var $nesting = [self].concat($parent_nesting), $generate_name$93, $next_auto_id$94, $groups$95, $create$96, $register$97, $unregister_all$98, $unregister$99;
40686
+ var $nesting = [self].concat($parent_nesting), $generate_name$94, $next_auto_id$95, $groups$96, $create$97, $register$98, $unregister_all$99, $unregister$100;
40496
40687
 
40497
40688
 
40498
40689
 
40499
- Opal.def(self, '$generate_name', $generate_name$93 = function $$generate_name() {
40690
+ Opal.def(self, '$generate_name', $generate_name$94 = function $$generate_name() {
40500
40691
  var self = this;
40501
40692
 
40502
40693
  return "" + "extgrp" + (self.$next_auto_id())
40503
- }, $generate_name$93.$$arity = 0);
40694
+ }, $generate_name$94.$$arity = 0);
40504
40695
 
40505
- Opal.def(self, '$next_auto_id', $next_auto_id$94 = function $$next_auto_id() {
40696
+ Opal.def(self, '$next_auto_id', $next_auto_id$95 = function $$next_auto_id() {
40506
40697
  var $a, self = this;
40507
40698
  if (self.auto_id == null) self.auto_id = nil;
40508
40699
 
40509
40700
 
40510
40701
  self.auto_id = ($truthy($a = self.auto_id) ? $a : -1);
40511
40702
  return (self.auto_id = $rb_plus(self.auto_id, 1));
40512
- }, $next_auto_id$94.$$arity = 0);
40703
+ }, $next_auto_id$95.$$arity = 0);
40513
40704
 
40514
- Opal.def(self, '$groups', $groups$95 = function $$groups() {
40705
+ Opal.def(self, '$groups', $groups$96 = function $$groups() {
40515
40706
  var $a, self = this;
40516
40707
  if (self.groups == null) self.groups = nil;
40517
40708
 
40518
40709
  return (self.groups = ($truthy($a = self.groups) ? $a : $hash2([], {})))
40519
- }, $groups$95.$$arity = 0);
40710
+ }, $groups$96.$$arity = 0);
40520
40711
 
40521
- Opal.def(self, '$create', $create$96 = function $$create(name) {
40522
- var $iter = $create$96.$$p, block = $iter || nil, $a, self = this;
40712
+ Opal.def(self, '$create', $create$97 = function $$create(name) {
40713
+ var $iter = $create$97.$$p, block = $iter || nil, $a, self = this;
40523
40714
 
40524
- if ($iter) $create$96.$$p = null;
40715
+ if ($iter) $create$97.$$p = null;
40525
40716
 
40526
40717
 
40527
- if ($iter) $create$96.$$p = null;;
40718
+ if ($iter) $create$97.$$p = null;;
40528
40719
 
40529
40720
  if (name == null) {
40530
40721
  name = nil;
@@ -40534,15 +40725,15 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40534
40725
  } else {
40535
40726
  return $$($nesting, 'Registry').$new()
40536
40727
  };
40537
- }, $create$96.$$arity = -1);
40728
+ }, $create$97.$$arity = -1);
40538
40729
 
40539
- Opal.def(self, '$register', $register$97 = function $$register($a) {
40540
- var $iter = $register$97.$$p, block = $iter || nil, $post_args, args, $b, self = this, argc = nil, resolved_group = nil, group = nil, name = nil, $writer = nil;
40730
+ Opal.def(self, '$register', $register$98 = function $$register($a) {
40731
+ var $iter = $register$98.$$p, block = $iter || nil, $post_args, args, $b, self = this, argc = nil, resolved_group = nil, group = nil, name = nil, $writer = nil;
40541
40732
 
40542
- if ($iter) $register$97.$$p = null;
40733
+ if ($iter) $register$98.$$p = null;
40543
40734
 
40544
40735
 
40545
- if ($iter) $register$97.$$p = null;;
40736
+ if ($iter) $register$98.$$p = null;;
40546
40737
 
40547
40738
  $post_args = Opal.slice.call(arguments, 0, arguments.length);
40548
40739
 
@@ -40564,34 +40755,37 @@ Opal.modules["asciidoctor/extensions"] = function(Opal) {
40564
40755
  $writer = [name.$to_sym(), resolved_group];
40565
40756
  $send(self.$groups(), '[]=', Opal.to_a($writer));
40566
40757
  return $writer[$rb_minus($writer["length"], 1)];;
40567
- }, $register$97.$$arity = -1);
40758
+ }, $register$98.$$arity = -1);
40568
40759
 
40569
- Opal.def(self, '$unregister_all', $unregister_all$98 = function $$unregister_all() {
40760
+ Opal.def(self, '$unregister_all', $unregister_all$99 = function $$unregister_all() {
40570
40761
  var self = this;
40571
40762
 
40572
40763
 
40573
40764
  self.groups = $hash2([], {});
40574
40765
  return nil;
40575
- }, $unregister_all$98.$$arity = 0);
40576
- return (Opal.def(self, '$unregister', $unregister$99 = function $$unregister($a) {
40577
- var $post_args, names, $$100, self = this;
40766
+ }, $unregister_all$99.$$arity = 0);
40767
+ return (Opal.def(self, '$unregister', $unregister$100 = function $$unregister($a) {
40768
+ var $post_args, names, $$101, self = this;
40578
40769
 
40579
40770
 
40580
40771
 
40581
40772
  $post_args = Opal.slice.call(arguments, 0, arguments.length);
40582
40773
 
40583
40774
  names = $post_args;;
40584
- $send(names, 'each', [], ($$100 = function(group){var self = $$100.$$s || this;
40585
- if (self.groups == null) self.groups = nil;
40775
+ $send(names, 'each_with_object', [self.$groups()], ($$101 = function(group, catalog){var self = $$101.$$s || this;
40586
40776
 
40587
40777
 
40588
40778
 
40589
40779
  if (group == null) {
40590
40780
  group = nil;
40591
40781
  };
40592
- return self.groups.$delete(group.$to_sym());}, $$100.$$s = self, $$100.$$arity = 1, $$100));
40782
+
40783
+ if (catalog == null) {
40784
+ catalog = nil;
40785
+ };
40786
+ return catalog.$delete(group.$to_sym());}, $$101.$$s = self, $$101.$$arity = 2, $$101));
40593
40787
  return nil;
40594
- }, $unregister$99.$$arity = -1), nil) && 'unregister';
40788
+ }, $unregister$100.$$arity = -1), nil) && 'unregister';
40595
40789
  })(Opal.get_singleton_class(self), $nesting);
40596
40790
  })($nesting[0], $nesting)
40597
40791
  })($nesting[0], $nesting);
@@ -40645,6 +40839,12 @@ Opal.modules["asciidoctor/js/asciidoctor_ext/document"] = function(Opal) {
40645
40839
  var nil = Opal.nil
40646
40840
  var utc_offset
40647
40841
  var source_date_epoch
40842
+ var localdate
40843
+ var localyear
40844
+ var localtime
40845
+ var localdatetime
40846
+ var docdate
40847
+ var doctime
40648
40848
 
40649
40849
  var getYear = function (time, utc_offset) {
40650
40850
  return utc_offset === 0 ? time.getUTCFullYear() : time.getFullYear()
@@ -40732,6 +40932,7 @@ Opal.modules["asciidoctor/js/asciidoctor_ext/document"] = function(Opal) {
40732
40932
  var mtime_hours = ('0' + (getHours(input_mtime, utc_offset))).slice(-2)
40733
40933
  var mtime_minutes = ('0' + (input_mtime.getMinutes())).slice(-2)
40734
40934
  var mtime_seconds = ('0' + (input_mtime.getSeconds())).slice(-2)
40935
+ var utc_offset_format
40735
40936
  if (utc_offset === 0) {
40736
40937
  utc_offset_format = 'UTC'
40737
40938
  } else if (utc_offset > 0) {
@@ -40940,7 +41141,8 @@ Opal.modules["asciidoctor/js/postscript"] = function(Opal) {
40940
41141
  self.$require("asciidoctor/converter/html5");
40941
41142
  self.$require("asciidoctor/extensions");
40942
41143
  self.$require("asciidoctor/js/asciidoctor_ext");
40943
- return self.$require("asciidoctor/js/opal_ext/logger");
41144
+ self.$require("asciidoctor/js/opal_ext/logger");
41145
+ return Opal.const_set($$($nesting, 'Asciidoctor'), 'InlineLinkRx', new RegExp("" + "(^|link:|" + ($$$($$($nesting, 'Asciidoctor'), 'CG_BLANK')) + "|\\\\?&lt;(?=\\\\?(?:https?|file|ftp|irc)(:))|[>\\(\\)\\[\\];\"'])(\\\\?(?:https?|file|ftp|irc)://)(?:([^\\s\\[\\]]+)\\[(|" + ($$$($$($nesting, 'Asciidoctor'), 'CC_ALL')) + "*?[^\\\\])\\]|(?!\\2)([^\\s]*?)&gt;|([^\\s\\[\\]<]*([^\\s,.?!\\[\\]<\\)])))"));
40944
41146
  };
40945
41147
 
40946
41148
  /* Generated by Opal 0.11.99.dev */
@@ -41075,13 +41277,13 @@ Opal.modules["asciidoctor/js/postscript"] = function(Opal) {
41075
41277
  Opal.const_set($nesting[0], 'FILE_READ_MODE', (function() {if ($truthy($$($nesting, 'RUBY_ENGINE_OPAL'))) {
41076
41278
  return "r"
41077
41279
  } else {
41078
- return "rb:utf-8:utf-8"
41280
+ return "rb:UTF-8:UTF-8"
41079
41281
  }; return nil; })());
41080
41282
  Opal.const_set($nesting[0], 'URI_READ_MODE', $$($nesting, 'FILE_READ_MODE'));
41081
41283
  Opal.const_set($nesting[0], 'FILE_WRITE_MODE', (function() {if ($truthy($$($nesting, 'RUBY_ENGINE_OPAL'))) {
41082
41284
  return "w"
41083
41285
  } else {
41084
- return "w:utf-8"
41286
+ return "wb:UTF-8"
41085
41287
  }; return nil; })());
41086
41288
  Opal.const_set($nesting[0], 'DEFAULT_DOCTYPE', "article");
41087
41289
  Opal.const_set($nesting[0], 'DEFAULT_BACKEND', "html5");
@@ -41607,7 +41809,7 @@ AbstractBlock.prototype.setTitle = function (title) {
41607
41809
  *
41608
41810
  * If a caption has already been assigned to this block, do nothing.
41609
41811
  *
41610
- * The parts of a complete caption are: <prefix> <number>. <title>
41812
+ * The parts of a complete caption are: `<prefix> <number>. <title>`
41611
41813
  * This partial caption represents the part the precedes the title.
41612
41814
  *
41613
41815
  * @param {string} value - the String caption to assign to this block or nil to use document attribute.
@@ -46385,6 +46587,21 @@ ConverterFactory.register = function (converter, backends) {
46385
46587
  var bridgeComposedMethodToInstance = function (obj, instance) {
46386
46588
  bridgeMethodToInstance(obj, instance, '$composed', 'composed')
46387
46589
  }
46590
+ var bridgeEqEqMethodToInstance = function (obj, instance) {
46591
+ bridgeMethodToInstance(obj, instance, '$==', '==', function (other) {
46592
+ return instance === other
46593
+ })
46594
+ }
46595
+ var bridgeSendMethodToInstance = function (obj, instance) {
46596
+ bridgeMethodToInstance(obj, instance, '$send', 'send', function (symbol) {
46597
+ var args = Array.prototype.slice.call(arguments, 1)
46598
+ var func = instance['$' + symbol]
46599
+ if (func) {
46600
+ return func.apply(instance, args)
46601
+ }
46602
+ throw new Error(`undefined method \`${symbol}\` for \`${instance.toString()}\``)
46603
+ })
46604
+ }
46388
46605
  var bridgeMethodToInstance = function (obj, instance, methodName, functionName, defaultImplementation) {
46389
46606
  if (typeof obj[methodName] === 'undefined') {
46390
46607
  if (typeof obj[functionName] === 'function') {
@@ -46451,6 +46668,8 @@ ConverterFactory.register = function (converter, backends) {
46451
46668
  }
46452
46669
  bridgeHandlesMethodToInstance(converter, converter)
46453
46670
  bridgeComposedMethodToInstance(converter, converter)
46671
+ bridgeEqEqMethodToInstance(converter, converter)
46672
+ bridgeSendMethodToInstance(converter, converter)
46454
46673
  addRespondToMethod(converter)
46455
46674
  object = converter
46456
46675
  }
@@ -46550,7 +46769,7 @@ Html5Converter.prototype.convert = function (node, transform, opts) {
46550
46769
  }
46551
46770
 
46552
46771
 
46553
- var ASCIIDOCTOR_JS_VERSION = '2.2.5';
46772
+ var ASCIIDOCTOR_JS_VERSION = '2.2.7';
46554
46773
 
46555
46774
  /**
46556
46775
  * Get Asciidoctor.js version number.