| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | 
							- 'use strict';
 
- Object.defineProperty(exports, '__esModule', {
 
-   value: true
 
- });
 
- exports.test = exports.serialize = exports.default = void 0;
 
- var _collections = require('../collections');
 
- /**
 
-  * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
 
-  *
 
-  * This source code is licensed under the MIT license found in the
 
-  * LICENSE file in the root directory of this source tree.
 
-  */
 
- /* eslint-disable local/ban-types-eventually */
 
- const SPACE = ' ';
 
- const OBJECT_NAMES = ['DOMStringMap', 'NamedNodeMap'];
 
- const ARRAY_REGEXP = /^(HTML\w*Collection|NodeList)$/;
 
- const testName = name =>
 
-   OBJECT_NAMES.indexOf(name) !== -1 || ARRAY_REGEXP.test(name);
 
- const test = val =>
 
-   val &&
 
-   val.constructor &&
 
-   !!val.constructor.name &&
 
-   testName(val.constructor.name);
 
- exports.test = test;
 
- const isNamedNodeMap = collection =>
 
-   collection.constructor.name === 'NamedNodeMap';
 
- const serialize = (collection, config, indentation, depth, refs, printer) => {
 
-   const name = collection.constructor.name;
 
-   if (++depth > config.maxDepth) {
 
-     return '[' + name + ']';
 
-   }
 
-   return (
 
-     (config.min ? '' : name + SPACE) +
 
-     (OBJECT_NAMES.indexOf(name) !== -1
 
-       ? '{' +
 
-         (0, _collections.printObjectProperties)(
 
-           isNamedNodeMap(collection)
 
-             ? Array.from(collection).reduce((props, attribute) => {
 
-                 props[attribute.name] = attribute.value;
 
-                 return props;
 
-               }, {})
 
-             : {...collection},
 
-           config,
 
-           indentation,
 
-           depth,
 
-           refs,
 
-           printer
 
-         ) +
 
-         '}'
 
-       : '[' +
 
-         (0, _collections.printListItems)(
 
-           Array.from(collection),
 
-           config,
 
-           indentation,
 
-           depth,
 
-           refs,
 
-           printer
 
-         ) +
 
-         ']')
 
-   );
 
- };
 
- exports.serialize = serialize;
 
- const plugin = {
 
-   serialize,
 
-   test
 
- };
 
- var _default = plugin;
 
- exports.default = _default;
 
 
  |