cdk-comprehend-s3olap 2.0.121 → 2.0.123

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.
Files changed (89) hide show
  1. package/.jsii +4 -4
  2. package/lib/cdk-comprehend-s3olap.js +2 -2
  3. package/lib/comprehend-lambdas.js +2 -2
  4. package/lib/iam-roles.js +4 -4
  5. package/node_modules/@esbuild/linux-x64/bin/esbuild +0 -0
  6. package/node_modules/@esbuild/linux-x64/package.json +1 -1
  7. package/node_modules/aws-sdk/CHANGELOG.md +25 -1
  8. package/node_modules/aws-sdk/README.md +1 -1
  9. package/node_modules/aws-sdk/apis/connect-2017-08-08.min.json +196 -187
  10. package/node_modules/aws-sdk/apis/ecr-public-2020-10-30.min.json +8 -8
  11. package/node_modules/aws-sdk/apis/emr-serverless-2021-07-13.min.json +3 -0
  12. package/node_modules/aws-sdk/apis/eventbridge-2015-10-07.min.json +18 -6
  13. package/node_modules/aws-sdk/apis/iot-data-2015-05-28.min.json +3 -0
  14. package/node_modules/aws-sdk/apis/marketplace-catalog-2018-09-17.min.json +82 -15
  15. package/node_modules/aws-sdk/apis/mediaconvert-2017-08-29.min.json +56 -32
  16. package/node_modules/aws-sdk/apis/rekognition-2016-06-27.min.json +224 -138
  17. package/node_modules/aws-sdk/apis/wafv2-2019-07-29.min.json +55 -28
  18. package/node_modules/aws-sdk/clients/connect.d.ts +15 -4
  19. package/node_modules/aws-sdk/clients/ecrpublic.d.ts +2 -2
  20. package/node_modules/aws-sdk/clients/ecs.d.ts +24 -24
  21. package/node_modules/aws-sdk/clients/emrserverless.d.ts +7 -3
  22. package/node_modules/aws-sdk/clients/eventbridge.d.ts +3 -1
  23. package/node_modules/aws-sdk/clients/iotdata.d.ts +5 -0
  24. package/node_modules/aws-sdk/clients/marketplacecatalog.d.ts +67 -7
  25. package/node_modules/aws-sdk/clients/mediaconvert.d.ts +20 -1
  26. package/node_modules/aws-sdk/clients/omics.d.ts +2 -2
  27. package/node_modules/aws-sdk/clients/rekognition.d.ts +114 -16
  28. package/node_modules/aws-sdk/clients/wafv2.d.ts +89 -62
  29. package/node_modules/aws-sdk/dist/aws-sdk-core-react-native.js +1 -1
  30. package/node_modules/aws-sdk/dist/aws-sdk-react-native.js +2537 -880
  31. package/node_modules/aws-sdk/dist/aws-sdk.js +508 -343
  32. package/node_modules/aws-sdk/dist/aws-sdk.min.js +79 -79
  33. package/node_modules/aws-sdk/dist/xml2js.js +2579 -922
  34. package/node_modules/aws-sdk/lib/core.js +1 -1
  35. package/node_modules/aws-sdk/package.json +2 -2
  36. package/node_modules/esbuild/bin/esbuild +1 -1
  37. package/node_modules/esbuild/lib/main.js +8 -8
  38. package/node_modules/esbuild/package.json +23 -23
  39. package/node_modules/xml2js/README.md +108 -7
  40. package/node_modules/xml2js/lib/parser.js +35 -7
  41. package/node_modules/xml2js/lib/xml2js.js +2 -0
  42. package/node_modules/xml2js/node_modules/xmlbuilder/CHANGELOG.md +47 -0
  43. package/node_modules/xml2js/node_modules/xmlbuilder/LICENSE +21 -21
  44. package/node_modules/xml2js/node_modules/xmlbuilder/README.md +86 -85
  45. package/node_modules/xml2js/node_modules/xmlbuilder/appveyor.yml +20 -0
  46. package/node_modules/xml2js/node_modules/xmlbuilder/lib/Derivation.js +10 -0
  47. package/node_modules/xml2js/node_modules/xmlbuilder/lib/DocumentPosition.js +12 -0
  48. package/node_modules/xml2js/node_modules/xmlbuilder/lib/NodeType.js +23 -0
  49. package/node_modules/xml2js/node_modules/xmlbuilder/lib/OperationType.js +11 -0
  50. package/node_modules/xml2js/node_modules/xmlbuilder/lib/Utility.js +11 -1
  51. package/node_modules/xml2js/node_modules/xmlbuilder/lib/WriterState.js +10 -0
  52. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLAttribute.js +86 -9
  53. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLCData.js +10 -6
  54. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLCharacterData.js +79 -0
  55. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLComment.js +10 -6
  56. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +64 -0
  57. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +16 -0
  58. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +32 -0
  59. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDOMStringList.js +28 -0
  60. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDTDAttList.js +16 -11
  61. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDTDElement.js +7 -4
  62. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDTDEntity.js +49 -8
  63. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDTDNotation.js +20 -5
  64. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDeclaration.js +5 -2
  65. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDocType.js +84 -5
  66. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDocument.js +199 -5
  67. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDocumentCB.js +165 -39
  68. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +24 -0
  69. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLDummy.js +31 -0
  70. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLElement.js +207 -20
  71. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +58 -0
  72. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLNode.js +403 -50
  73. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLNodeFilter.js +48 -0
  74. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLNodeList.js +28 -0
  75. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +19 -5
  76. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLRaw.js +6 -3
  77. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLStreamWriter.js +94 -197
  78. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLStringWriter.js +6 -305
  79. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLStringifier.js +109 -32
  80. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLText.js +43 -6
  81. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLTypeInfo.js +21 -0
  82. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +16 -0
  83. package/node_modules/xml2js/node_modules/xmlbuilder/lib/XMLWriterBase.js +397 -59
  84. package/node_modules/xml2js/node_modules/xmlbuilder/lib/index.js +15 -3
  85. package/node_modules/xml2js/node_modules/xmlbuilder/package.json +5 -3
  86. package/node_modules/xml2js/node_modules/xmlbuilder/typings/index.d.ts +153 -0
  87. package/node_modules/xml2js/package.json +11 -5
  88. package/package.json +4 -4
  89. package/node_modules/xml2js/node_modules/xmlbuilder/.npmignore +0 -5
@@ -0,0 +1,32 @@
1
+ // Generated by CoffeeScript 1.12.7
2
+ (function() {
3
+ var XMLDOMImplementation;
4
+
5
+ module.exports = XMLDOMImplementation = (function() {
6
+ function XMLDOMImplementation() {}
7
+
8
+ XMLDOMImplementation.prototype.hasFeature = function(feature, version) {
9
+ return true;
10
+ };
11
+
12
+ XMLDOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId) {
13
+ throw new Error("This DOM method is not implemented.");
14
+ };
15
+
16
+ XMLDOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype) {
17
+ throw new Error("This DOM method is not implemented.");
18
+ };
19
+
20
+ XMLDOMImplementation.prototype.createHTMLDocument = function(title) {
21
+ throw new Error("This DOM method is not implemented.");
22
+ };
23
+
24
+ XMLDOMImplementation.prototype.getFeature = function(feature, version) {
25
+ throw new Error("This DOM method is not implemented.");
26
+ };
27
+
28
+ return XMLDOMImplementation;
29
+
30
+ })();
31
+
32
+ }).call(this);
@@ -0,0 +1,28 @@
1
+ // Generated by CoffeeScript 1.12.7
2
+ (function() {
3
+ var XMLDOMStringList;
4
+
5
+ module.exports = XMLDOMStringList = (function() {
6
+ function XMLDOMStringList(arr) {
7
+ this.arr = arr || [];
8
+ }
9
+
10
+ Object.defineProperty(XMLDOMStringList.prototype, 'length', {
11
+ get: function() {
12
+ return this.arr.length;
13
+ }
14
+ });
15
+
16
+ XMLDOMStringList.prototype.item = function(index) {
17
+ return this.arr[index] || null;
18
+ };
19
+
20
+ XMLDOMStringList.prototype.contains = function(str) {
21
+ return this.arr.indexOf(str) !== -1;
22
+ };
23
+
24
+ return XMLDOMStringList;
25
+
26
+ })();
27
+
28
+ }).call(this);
@@ -1,46 +1,51 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDTDAttList, XMLNode,
3
+ var NodeType, XMLDTDAttList, XMLNode,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
7
7
  XMLNode = require('./XMLNode');
8
8
 
9
+ NodeType = require('./NodeType');
10
+
9
11
  module.exports = XMLDTDAttList = (function(superClass) {
10
12
  extend(XMLDTDAttList, superClass);
11
13
 
12
14
  function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {
13
15
  XMLDTDAttList.__super__.constructor.call(this, parent);
14
16
  if (elementName == null) {
15
- throw new Error("Missing DTD element name");
17
+ throw new Error("Missing DTD element name. " + this.debugInfo());
16
18
  }
17
19
  if (attributeName == null) {
18
- throw new Error("Missing DTD attribute name");
20
+ throw new Error("Missing DTD attribute name. " + this.debugInfo(elementName));
19
21
  }
20
22
  if (!attributeType) {
21
- throw new Error("Missing DTD attribute type");
23
+ throw new Error("Missing DTD attribute type. " + this.debugInfo(elementName));
22
24
  }
23
25
  if (!defaultValueType) {
24
- throw new Error("Missing DTD attribute default");
26
+ throw new Error("Missing DTD attribute default. " + this.debugInfo(elementName));
25
27
  }
26
28
  if (defaultValueType.indexOf('#') !== 0) {
27
29
  defaultValueType = '#' + defaultValueType;
28
30
  }
29
31
  if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {
30
- throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT");
32
+ throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. " + this.debugInfo(elementName));
31
33
  }
32
34
  if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {
33
- throw new Error("Default value only applies to #FIXED or #DEFAULT");
35
+ throw new Error("Default value only applies to #FIXED or #DEFAULT. " + this.debugInfo(elementName));
34
36
  }
35
- this.elementName = this.stringify.eleName(elementName);
36
- this.attributeName = this.stringify.attName(attributeName);
37
+ this.elementName = this.stringify.name(elementName);
38
+ this.type = NodeType.AttributeDeclaration;
39
+ this.attributeName = this.stringify.name(attributeName);
37
40
  this.attributeType = this.stringify.dtdAttType(attributeType);
38
- this.defaultValue = this.stringify.dtdAttDefault(defaultValue);
41
+ if (defaultValue) {
42
+ this.defaultValue = this.stringify.dtdAttDefault(defaultValue);
43
+ }
39
44
  this.defaultValueType = defaultValueType;
40
45
  }
41
46
 
42
47
  XMLDTDAttList.prototype.toString = function(options) {
43
- return this.options.writer.set(options).dtdAttList(this);
48
+ return this.options.writer.dtdAttList(this, this.options.writer.filterOptions(options));
44
49
  };
45
50
 
46
51
  return XMLDTDAttList;
@@ -1,18 +1,20 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDTDElement, XMLNode,
3
+ var NodeType, XMLDTDElement, XMLNode,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
7
7
  XMLNode = require('./XMLNode');
8
8
 
9
+ NodeType = require('./NodeType');
10
+
9
11
  module.exports = XMLDTDElement = (function(superClass) {
10
12
  extend(XMLDTDElement, superClass);
11
13
 
12
14
  function XMLDTDElement(parent, name, value) {
13
15
  XMLDTDElement.__super__.constructor.call(this, parent);
14
16
  if (name == null) {
15
- throw new Error("Missing DTD element name");
17
+ throw new Error("Missing DTD element name. " + this.debugInfo());
16
18
  }
17
19
  if (!value) {
18
20
  value = '(#PCDATA)';
@@ -20,12 +22,13 @@
20
22
  if (Array.isArray(value)) {
21
23
  value = '(' + value.join(',') + ')';
22
24
  }
23
- this.name = this.stringify.eleName(name);
25
+ this.name = this.stringify.name(name);
26
+ this.type = NodeType.ElementDeclaration;
24
27
  this.value = this.stringify.dtdElementValue(value);
25
28
  }
26
29
 
27
30
  XMLDTDElement.prototype.toString = function(options) {
28
- return this.options.writer.set(options).dtdElement(this);
31
+ return this.options.writer.dtdElement(this, this.options.writer.filterOptions(options));
29
32
  };
30
33
 
31
34
  return XMLDTDElement;
@@ -1,6 +1,6 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDTDEntity, XMLNode, isObject,
3
+ var NodeType, XMLDTDEntity, XMLNode, isObject,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
@@ -8,28 +8,33 @@
8
8
 
9
9
  XMLNode = require('./XMLNode');
10
10
 
11
+ NodeType = require('./NodeType');
12
+
11
13
  module.exports = XMLDTDEntity = (function(superClass) {
12
14
  extend(XMLDTDEntity, superClass);
13
15
 
14
16
  function XMLDTDEntity(parent, pe, name, value) {
15
17
  XMLDTDEntity.__super__.constructor.call(this, parent);
16
18
  if (name == null) {
17
- throw new Error("Missing entity name");
19
+ throw new Error("Missing DTD entity name. " + this.debugInfo(name));
18
20
  }
19
21
  if (value == null) {
20
- throw new Error("Missing entity value");
22
+ throw new Error("Missing DTD entity value. " + this.debugInfo(name));
21
23
  }
22
24
  this.pe = !!pe;
23
- this.name = this.stringify.eleName(name);
25
+ this.name = this.stringify.name(name);
26
+ this.type = NodeType.EntityDeclaration;
24
27
  if (!isObject(value)) {
25
28
  this.value = this.stringify.dtdEntityValue(value);
29
+ this.internal = true;
26
30
  } else {
27
31
  if (!value.pubID && !value.sysID) {
28
- throw new Error("Public and/or system identifiers are required for an external entity");
32
+ throw new Error("Public and/or system identifiers are required for an external entity. " + this.debugInfo(name));
29
33
  }
30
34
  if (value.pubID && !value.sysID) {
31
- throw new Error("System identifier is required for a public external entity");
35
+ throw new Error("System identifier is required for a public external entity. " + this.debugInfo(name));
32
36
  }
37
+ this.internal = false;
33
38
  if (value.pubID != null) {
34
39
  this.pubID = this.stringify.dtdPubID(value.pubID);
35
40
  }
@@ -40,13 +45,49 @@
40
45
  this.nData = this.stringify.dtdNData(value.nData);
41
46
  }
42
47
  if (this.pe && this.nData) {
43
- throw new Error("Notation declaration is not allowed in a parameter entity");
48
+ throw new Error("Notation declaration is not allowed in a parameter entity. " + this.debugInfo(name));
44
49
  }
45
50
  }
46
51
  }
47
52
 
53
+ Object.defineProperty(XMLDTDEntity.prototype, 'publicId', {
54
+ get: function() {
55
+ return this.pubID;
56
+ }
57
+ });
58
+
59
+ Object.defineProperty(XMLDTDEntity.prototype, 'systemId', {
60
+ get: function() {
61
+ return this.sysID;
62
+ }
63
+ });
64
+
65
+ Object.defineProperty(XMLDTDEntity.prototype, 'notationName', {
66
+ get: function() {
67
+ return this.nData || null;
68
+ }
69
+ });
70
+
71
+ Object.defineProperty(XMLDTDEntity.prototype, 'inputEncoding', {
72
+ get: function() {
73
+ return null;
74
+ }
75
+ });
76
+
77
+ Object.defineProperty(XMLDTDEntity.prototype, 'xmlEncoding', {
78
+ get: function() {
79
+ return null;
80
+ }
81
+ });
82
+
83
+ Object.defineProperty(XMLDTDEntity.prototype, 'xmlVersion', {
84
+ get: function() {
85
+ return null;
86
+ }
87
+ });
88
+
48
89
  XMLDTDEntity.prototype.toString = function(options) {
49
- return this.options.writer.set(options).dtdEntity(this);
90
+ return this.options.writer.dtdEntity(this, this.options.writer.filterOptions(options));
50
91
  };
51
92
 
52
93
  return XMLDTDEntity;
@@ -1,23 +1,26 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDTDNotation, XMLNode,
3
+ var NodeType, XMLDTDNotation, XMLNode,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
7
7
  XMLNode = require('./XMLNode');
8
8
 
9
+ NodeType = require('./NodeType');
10
+
9
11
  module.exports = XMLDTDNotation = (function(superClass) {
10
12
  extend(XMLDTDNotation, superClass);
11
13
 
12
14
  function XMLDTDNotation(parent, name, value) {
13
15
  XMLDTDNotation.__super__.constructor.call(this, parent);
14
16
  if (name == null) {
15
- throw new Error("Missing notation name");
17
+ throw new Error("Missing DTD notation name. " + this.debugInfo(name));
16
18
  }
17
19
  if (!value.pubID && !value.sysID) {
18
- throw new Error("Public or system identifiers are required for an external entity");
20
+ throw new Error("Public or system identifiers are required for an external entity. " + this.debugInfo(name));
19
21
  }
20
- this.name = this.stringify.eleName(name);
22
+ this.name = this.stringify.name(name);
23
+ this.type = NodeType.NotationDeclaration;
21
24
  if (value.pubID != null) {
22
25
  this.pubID = this.stringify.dtdPubID(value.pubID);
23
26
  }
@@ -26,8 +29,20 @@
26
29
  }
27
30
  }
28
31
 
32
+ Object.defineProperty(XMLDTDNotation.prototype, 'publicId', {
33
+ get: function() {
34
+ return this.pubID;
35
+ }
36
+ });
37
+
38
+ Object.defineProperty(XMLDTDNotation.prototype, 'systemId', {
39
+ get: function() {
40
+ return this.sysID;
41
+ }
42
+ });
43
+
29
44
  XMLDTDNotation.prototype.toString = function(options) {
30
- return this.options.writer.set(options).dtdNotation(this);
45
+ return this.options.writer.dtdNotation(this, this.options.writer.filterOptions(options));
31
46
  };
32
47
 
33
48
  return XMLDTDNotation;
@@ -1,6 +1,6 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDeclaration, XMLNode, isObject,
3
+ var NodeType, XMLDeclaration, XMLNode, isObject,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
@@ -8,6 +8,8 @@
8
8
 
9
9
  XMLNode = require('./XMLNode');
10
10
 
11
+ NodeType = require('./NodeType');
12
+
11
13
  module.exports = XMLDeclaration = (function(superClass) {
12
14
  extend(XMLDeclaration, superClass);
13
15
 
@@ -20,6 +22,7 @@
20
22
  if (!version) {
21
23
  version = '1.0';
22
24
  }
25
+ this.type = NodeType.Declaration;
23
26
  this.version = this.stringify.xmlVersion(version);
24
27
  if (encoding != null) {
25
28
  this.encoding = this.stringify.xmlEncoding(encoding);
@@ -30,7 +33,7 @@
30
33
  }
31
34
 
32
35
  XMLDeclaration.prototype.toString = function(options) {
33
- return this.options.writer.set(options).declaration(this);
36
+ return this.options.writer.declaration(this, this.options.writer.filterOptions(options));
34
37
  };
35
38
 
36
39
  return XMLDeclaration;
@@ -1,6 +1,6 @@
1
1
  // Generated by CoffeeScript 1.12.7
2
2
  (function() {
3
- var XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNode, isObject,
3
+ var NodeType, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNamedNodeMap, XMLNode, isObject,
4
4
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
5
5
  hasProp = {}.hasOwnProperty;
6
6
 
@@ -8,6 +8,8 @@
8
8
 
9
9
  XMLNode = require('./XMLNode');
10
10
 
11
+ NodeType = require('./NodeType');
12
+
11
13
  XMLDTDAttList = require('./XMLDTDAttList');
12
14
 
13
15
  XMLDTDEntity = require('./XMLDTDEntity');
@@ -16,18 +18,31 @@
16
18
 
17
19
  XMLDTDNotation = require('./XMLDTDNotation');
18
20
 
21
+ XMLNamedNodeMap = require('./XMLNamedNodeMap');
22
+
19
23
  module.exports = XMLDocType = (function(superClass) {
20
24
  extend(XMLDocType, superClass);
21
25
 
22
26
  function XMLDocType(parent, pubID, sysID) {
23
- var ref, ref1;
27
+ var child, i, len, ref, ref1, ref2;
24
28
  XMLDocType.__super__.constructor.call(this, parent);
29
+ this.type = NodeType.DocType;
30
+ if (parent.children) {
31
+ ref = parent.children;
32
+ for (i = 0, len = ref.length; i < len; i++) {
33
+ child = ref[i];
34
+ if (child.type === NodeType.Element) {
35
+ this.name = child.name;
36
+ break;
37
+ }
38
+ }
39
+ }
25
40
  this.documentObject = parent;
26
41
  if (isObject(pubID)) {
27
- ref = pubID, pubID = ref.pubID, sysID = ref.sysID;
42
+ ref1 = pubID, pubID = ref1.pubID, sysID = ref1.sysID;
28
43
  }
29
44
  if (sysID == null) {
30
- ref1 = [pubID, sysID], sysID = ref1[0], pubID = ref1[1];
45
+ ref2 = [pubID, sysID], sysID = ref2[0], pubID = ref2[1];
31
46
  }
32
47
  if (pubID != null) {
33
48
  this.pubID = this.stringify.dtdPubID(pubID);
@@ -37,6 +52,54 @@
37
52
  }
38
53
  }
39
54
 
55
+ Object.defineProperty(XMLDocType.prototype, 'entities', {
56
+ get: function() {
57
+ var child, i, len, nodes, ref;
58
+ nodes = {};
59
+ ref = this.children;
60
+ for (i = 0, len = ref.length; i < len; i++) {
61
+ child = ref[i];
62
+ if ((child.type === NodeType.EntityDeclaration) && !child.pe) {
63
+ nodes[child.name] = child;
64
+ }
65
+ }
66
+ return new XMLNamedNodeMap(nodes);
67
+ }
68
+ });
69
+
70
+ Object.defineProperty(XMLDocType.prototype, 'notations', {
71
+ get: function() {
72
+ var child, i, len, nodes, ref;
73
+ nodes = {};
74
+ ref = this.children;
75
+ for (i = 0, len = ref.length; i < len; i++) {
76
+ child = ref[i];
77
+ if (child.type === NodeType.NotationDeclaration) {
78
+ nodes[child.name] = child;
79
+ }
80
+ }
81
+ return new XMLNamedNodeMap(nodes);
82
+ }
83
+ });
84
+
85
+ Object.defineProperty(XMLDocType.prototype, 'publicId', {
86
+ get: function() {
87
+ return this.pubID;
88
+ }
89
+ });
90
+
91
+ Object.defineProperty(XMLDocType.prototype, 'systemId', {
92
+ get: function() {
93
+ return this.sysID;
94
+ }
95
+ });
96
+
97
+ Object.defineProperty(XMLDocType.prototype, 'internalSubset', {
98
+ get: function() {
99
+ throw new Error("This DOM method is not implemented." + this.debugInfo());
100
+ }
101
+ });
102
+
40
103
  XMLDocType.prototype.element = function(name, value) {
41
104
  var child;
42
105
  child = new XMLDTDElement(this, name, value);
@@ -73,7 +136,7 @@
73
136
  };
74
137
 
75
138
  XMLDocType.prototype.toString = function(options) {
76
- return this.options.writer.set(options).docType(this);
139
+ return this.options.writer.docType(this, this.options.writer.filterOptions(options));
77
140
  };
78
141
 
79
142
  XMLDocType.prototype.ele = function(name, value) {
@@ -100,6 +163,22 @@
100
163
  return this.root() || this.documentObject;
101
164
  };
102
165
 
166
+ XMLDocType.prototype.isEqualNode = function(node) {
167
+ if (!XMLDocType.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {
168
+ return false;
169
+ }
170
+ if (node.name !== this.name) {
171
+ return false;
172
+ }
173
+ if (node.publicId !== this.publicId) {
174
+ return false;
175
+ }
176
+ if (node.systemId !== this.systemId) {
177
+ return false;
178
+ }
179
+ return true;
180
+ };
181
+
103
182
  return XMLDocType;
104
183
 
105
184
  })(XMLNode);