si-funciona
Version:
Funciones de utilidad para uso general. [General usage utility functions.]
1 lines • 1 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,require("core-js/stable");var _assignDescriptorDetail=_interopRequireDefault(require("./assignDescriptorDetail")),_describeObjectDetail=_interopRequireDefault(require("./describeObjectDetail")),_objectKeys=_interopRequireDefault(require("../objects/objectKeys"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const describeObject=e=>{const t={index:0,details:[],length:0,keys:[],references:[],isArray:!1,complete:!1},r=(0,_objectKeys.default)(e);for(let s=0;s<r.length;++s){const i=r[s],l=(0,_describeObjectDetail.default)(e[i],i,t.length++);"number"==typeof i&&t.details.length?(t.details[0]=(0,_assignDescriptorDetail.default)(t.details[0],l),t.keys=[0],l.isReference&&(t.references=[0])):(t.details.push(l),t.keys.push(l.key),l.isReference&&t.references.push(l.index))}return t.isArray=Array.isArray(e),t.complete=!t.references.length,t};var _default=exports.default=describeObject;