{"_id":"@alu0100973914/oop","_rev":"13-b4c39065df60c06a78d88c3f8791c2ba","time":{"1.0.0":"2018-02-28T15:10:01.963Z","1.0.1":"2018-02-28T15:10:01.963Z","1.0.2":"2018-02-28T15:10:01.963Z","1.0.3":"2018-02-28T15:10:01.963Z","created":"2018-02-28T15:20:05.892Z","1.0.4":"2018-02-28T15:20:06.198Z","modified":"2022-04-04T13:40:56.837Z","1.0.5":"2018-02-28T15:41:41.793Z","1.0.6":"2018-02-28T17:42:51.159Z","1.0.7":"2018-03-01T23:12:08.853Z","1.0.8":"2018-03-02T13:21:49.965Z","1.0.9":"2018-03-02T13:29:42.772Z"},"name":"@alu0100973914/oop","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.4":{"name":"@alu0100973914/oop","version":"1.0.4","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.4","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-fdik5I+cGJ73AxtxzIVz8HJgbHAG2T7sCNIs0StEYqJxNGHJGnMwpIczKlcjqHzRAU9tMJzA8rpjOcbHdaaUhA==","shasum":"87eb2e2653430197648e63f009d7b07b664cb038","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.4.tgz","fileCount":30,"unpackedSize":224559,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9VIwYJzi8yW5nr3iSgqSa4eGAS+ZailT0Y+ArQFVf2QIgM+4yOzqJu0PnqF3A1yyl3W+m2leHxUWc8cBVtozpRl8="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.4_1519831205893_0.870737154341158"},"_hasShrinkwrap":false},"1.0.5":{"name":"@alu0100973914/oop","version":"1.0.5","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.5","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-5pYUdV91qGTOiNauBbZyEfDi0cwWbgde9sHbc61RuzCAU0D/KxWaDs68V6KbrPyJ5X7Y0nwj6dpMj6tpzA01zw==","shasum":"1d80b158eae4779755f755bc907cff8eb0680cb6","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.5.tgz","fileCount":30,"unpackedSize":224586,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAsp6a0h+jDTB5VOFDLNmuFdLMlZwAjk+x5Lr/mvKHpPAiBxtGcXQo4RnABCv+Q2mLUf+pIjYdae2f7YeuN2StCxjA=="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.5_1519832501695_0.31923439905900475"},"_hasShrinkwrap":false},"1.0.6":{"name":"@alu0100973914/oop","version":"1.0.6","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.6","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-Fb3LodT7gns1EGR6LtBKMorieZt7VhEB8hfvsKCYkMzdpo0cNz5CrVmzBs45t9s26uOdS+8/3dyizSVINhGkWA==","shasum":"e05d2315054d23e5de4a45b53009dbda98feaca9","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.6.tgz","fileCount":54,"unpackedSize":1819381,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDWT/tYpLbRQFjcBRbH/tNfB+P/MEe9GLRDzF6XVcNA/AiBz7J4AfC30ymTx/6fF4FFkLpxxHO9zBusQ10x784P0yA=="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.6_1519839770964_0.38906675096341026"},"_hasShrinkwrap":false},"1.0.7":{"name":"@alu0100973914/oop","version":"1.0.7","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.7","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-JH+UkFVPt75eQefpGbICg1AUyr3nKKz93UF/Mo/QexisKdNSTwQwM12SnRm0uhDQviRbbDlS4SOHNSQydd+EjQ==","shasum":"642863b99120b3732b6578145dee00ad0f6b99d8","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.7.tgz","fileCount":55,"unpackedSize":1821756,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAw65Mcr6ZJDrvCt2JfPMlPuFrgT08ANMSKEW+F8+pSwIgN9PaUJMSlPTqY4LOKCwjZF4qvNaU+hNGkhE9fgQ3+6k="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.7_1519945928274_0.8389326180778427"},"_hasShrinkwrap":false},"1.0.8":{"name":"@alu0100973914/oop","version":"1.0.8","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.8","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-4aMr/WZk02F+bXZD1/SEKMDNHfXTDrg4ELDU+abWoikA2ZB20pN9tQOG1x4y/8fAJKpR8kQWOh62mW/+xGhyow==","shasum":"72b867763abeaa8e2d9e2215c6fc89871cc63333","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.8.tgz","fileCount":55,"unpackedSize":1821899,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4lF0l5iSx5kVM0Apeagt3k0CXlmy/z1SziB3UPY0hlwIgUcjjgefHK4kva/lseeXN208QoY2gw9Ir0OnMa/sqyKI="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.8_1519996909797_0.9797883783268662"},"_hasShrinkwrap":false},"1.0.9":{"name":"@alu0100973914/oop","version":"1.0.9","description":"examples of inheritance in object oriented programming.","main":"index.js","scripts":{"start":"NODE_PATH=./src node src/main.js","cover":"NODE_PATH=./src nyc mocha --require should","test":"NODE_PATH=./src mocha --require should"},"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"keywords":["js","inheritance","travis","istanbul"],"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","devDependencies":{"better-assert":"^1.0.2","coveralls":"^3.0.0","gulp":"^3.9.1","gulp-shell":"^0.6.3","istanbul":"^0.4.5","mocha":"^3.5.3","nyc":"^11.4.1","should":"^13.0.1"},"engines":{"node":">= 6.x"},"_id":"@alu0100973914/oop@1.0.9","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-d2SctuXvrZ6EKY/BcyEzTWtq1jfjG/49ctcBf44rShbPVymWKZnn/P5CqUzmsRupKSh+SW5/cKH8gZZB7Xm77A==","shasum":"ed89308d88b6023d86e346e7f83d1c9cc0ea3143","tarball":"https://registry.npmjs.org/@alu0100973914/oop/-/oop-1.0.9.tgz","fileCount":55,"unpackedSize":1821826,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIATWn1j3m5x+oQB5xbJP8P762iy6oicC7nUufWOEV/S4AiEA6MNFVxIcIVnH212TC70qgPAtSUg1/FLKRr6Saw+rj6o="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/oop_1.0.9_1519997382491_0.14699787173098944"},"_hasShrinkwrap":false}},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"description":"examples of inheritance in object oriented programming.","homepage":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914","keywords":["js","inheritance","travis","istanbul"],"repository":{"type":"git","url":"git+ssh://git@github.com/ULL-ESIT-PL-1718/oop-alu0100973914.git"},"author":{"name":"Daute Rodríguez Rodríguez"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/oop-alu0100973914/issues"},"readme":"# Practice 2 of PL: OOP\n[![Build Status](https://travis-ci.com/ULL-ESIT-PL-1718/oop-alu0100973914.svg?token=S9Gezg46GoVeGRv4GwA9&branch=master)](https://travis-ci.com/ULL-ESIT-PL-1718/oop-alu0100973914)\n[![npm version](https://badge.fury.io/js/%40alu0100973914%2Foop.svg)](https://badge.fury.io/js/%40alu0100973914%2Foop)\n\nIn this practice we have designed a new type of Cell for the **Laying out a table** example of the sixth chapter of EloquentJS.\n\n## New kind of cell\nThe new kind of cell implemented in this practice is the **Stretch Cell**. This type of cell wraps another cell and ensure that the resulting cell has at least the given *width* and *height*, even if the inner cell would naturally be smaller.\n\n## Development\n\nThe development of these practice was made in a new branch of this repository called \"ecma6\". I have developed two classes to represent this kind of cell:\n* InheritedStretchCell\n* StretchCell\n\n**InheritedStretchCell** extends the TCell class. It must be created with an string as an argument which represents the content of the cell. The second and third parameters passed to the constructor are the width and the height respectively of the new InheritedStretchCell. However, the real width/height of this new type of cell would be the maximum between the value returned by the minWidth()/minHeight() function of the inner TCell of the InheritedStretchCell and the parameter specified when the InheritedStretchCell was created. Example of creation:\n```js\nvar inheritedStretchCell = new InheritedStretchCell(\"Hello!\", 8, 2);\n```\n**StretchCell** works in the same way of InheritedStretchCell. However, this class encapsulates a reference to\na TCell object, instead of extends TCell class. Therefore,  a TCell object must be given as a parameter to the constructor. Example of creation:\n```js\nvar stretchCell = new StretchCell(new TCell(\"Hi!\"), 4, 3);\n```\n\nThe tests created to check the behaviour of this new type of cell are located in tests/test.js file.\n\n## Continuous integration with TravisCI\n\nTo add continuous integration to this practice i activated this repository in travis-ci.com and then, when i did a commit, the tests were executed in **TravisCI**.\n[Travis CI repository](https://travis-ci.com/ULL-ESIT-PL-1718/oop-alu0100973914)\n\n## Istanbul coverage\n\nTo check the coverage of the code developed during this practice, I executed the gulp task **cover** which invokes nyc (Istanbul command line interface):\n```bash\ngulp cover\n```\n\nThen the coverage folder was created with the results of the operation in some HTML files, and i was able to see the results of the analysis executing the next commands:\n```bash\nnpm i node-static -g\nstatic -p 8080 -a 10.6.129.67\n```\nVisiting the 10.6.129.67:8080/coverage direction using a browser i could see the results:\n![coverage](screens/coverage.png)\n\n## Modification for practice 2\nThe modification was develop in a new branch of this repo: **modification**\n\n# Practice 3 of PL: NPM modules\n\n## Combined repository\n[Repository](https://github.com/ULL-ESIT-PL-1718/prueba-oop-alu0100973914.git) containing the tests for the module, and this is the [main repository](https://github.com/ULL-ESIT-PL-1718/npm-modules-alu0100973914.git) which contains both.\n\n## Package publication\n* [@alu0100973914/oop](https://www.npmjs.com/package/@alu0100973914/oop)\n* [Test repository](https://github.com/ULL-ESIT-PL-1718/prueba-oop-alu0100973914.git)\n\n## Npm package badge\nA npm package badge have been added to the this README.md.\n\n## Code documentation\nTo see the code documentation click [here](https://ull-esit-pl-1718.github.io/oop-alu0100973914/).\n\n## Open / Closed Principle\nNow the users of the package can add it's own types of cell without modifying the code, they have to use the methods of the registry class **addMapClass** and **findClass**. These two methods are exported as a part of the module.\n```js\n\tvar module = require(\"@alu0100973914/oop\");\n\n\tclass ChuchuCell {\n\t\n\t}\n\tmodule.Registry.addMapClass(\"ChuchuCell\", ChuchuCell);\n```\n","readmeFilename":"README.md"}