@spring-neardao.near [Posted on DevHub](/devgovgigs.near/widget/Post?id=2393) ## Solution: DevHub Developer Contributor report by Spring Chiu for 11/20/2023 - 11/03/2023 ###### Requested amount: 1950 USDT ###### Requested sponsor: @neardevdao.near |Date |Amount |Task |Issue |Description | | ---- | ---- | ---- | ---- | ---- | | 20231120-20231124 | 4 | publish a new version of workspace to npmjs | | I registered npmjs account and got the write authorities of npm js package [near-workspaces](https://www.npmjs.com/package/near-workspaces) and github repo [near-workspaces-js](https://github.com/near/near-workspaces-js) ,finally I pushlish version [3.4.0](https://www.npmjs.com/package/near-workspaces/v/3.4.0) to npmjs and create release [v3.4.0](https://github.com/near/near-workspaces-js/releases/tag/near-workspaces%403.4.0) to github | | 20231122 | 2 | test deserialize regular class in near sdk | https://github.com/near/near-sdk-js/issues/239 | I added testcase for decoding regular class in [this commit](https://github.com/near/near-sdk-js/pull/370/commits/2fa650cb8b8b9a191d0b5e1952f80c63e572de90) | | 20231125 | 7 | tested decode near collections and add subtype method for those collections | https://github.com/near/near-sdk-js/issues/239 | I added testcases to verify decode near collections and add subtype method to pase inner data's chema, so we no need to specify reconstructor when we need to acquired data inner collections, I also implemented decode class for array and map type and tested them. I implemented those functionalities in those commits: [test call inner class's method](https://github.com/near/near-sdk-js/pull/370/commits/4b9201cc1cd7d8abd5dc299d292c3a7a441f7cdb),[test decode class with inner array](https://github.com/near/near-sdk-js/pull/370/commits/a7230bcc68494d832c9e54b0cb5d5f1562307668),[test decode UnorderMap and nested collections](https://github.com/near/near-sdk-js/pull/370/commits/f3e01c94fbd4e170b7f9f9b6e86d1ce1bdf0ceaf), [get subtype of UnorderedMap and nested UnorderedMap](https://github.com/near/near-sdk-js/pull/370/commits/8cb2bd0f1110f44b495731cb0ed9114a4f41e11f),[norderedMap remove reconstructor by add subtype and dynamic check subtype](https://github.com/near/near-sdk-js/pull/370/commits/8cb2bd0f1110f44b495731cb0ed9114a4f41e11f)| | 20231126 | 2 | auto select reconstructor for LookupMap | https://github.com/near/near-sdk-js/issues/239 | I added auto select reconstructor for LookupMap and test it in [this commits](https://github.com/near/near-sdk-js/pull/370/commits/707054ec05071520949f526ab0d5245171737b8e) | | 20231128 | 4 | implement and test collections nested testcase | https://github.com/near/near-sdk-js/issues/239 | I implemented and tested complex case of one collection nested other collection's testcase and auto decode in [this commit](https://github.com/near/near-sdk-js/pull/370/commits/10836816e32b513bb5e4340186bdf4a4b083a58d) | | 20231129 | 3 | refact set_reconstructor and modulize code | https://github.com/near/near-sdk-js/issues/239 | reafactor the decode class emethod and modulized for better maintaince in [this commit](https://github.com/near/near-sdk-js/pull/370/commits/95e8e0ffaf33ad89beb0fa297793ddf450b47290#diff-b0615d3bb25208a82f0cb4e9f3b8f069aa06c2e51aaa669cb9b050e226dda637) | | 20231202 | 5 | mv decodeObj2class to sdk and decode subtype method recursively | https://github.com/near/near-sdk-js/issues/239 | After most functionalities of decodeObj2class are verified I move it to sdk and to decode subtype method recursively for near collections, I update function of [getValueWithOptions](https://github.com/near/near-sdk-js/pull/370/commits/564440ce1a561f51f30b8783faaa4891616a2c47#diff-5bbc70e02709a5ed26a59f1c1974673e67851d5ca2069e4abac7f17780d90a47L74) to support it | | 20231203 | 3 | add test of nested class of UnorderedMap | https://github.com/near/near-sdk-js/issues/239 | Test decoding such case of `{unordered_map: {value: Car }}`, which outer layzer is UnorderedMap and inner data type is an class in [this commit](https://github.com/near/near-sdk-js/pull/370/commits/203e139cb487ff699f3ce66332dd4c2aef461c2d) | Total hours: 30 Cost Total hours: 30 Rate: $65/hour: Based on the application of [Idea: Engineering -- DevDAO dev](https://near.social/devgovgigs.near/widget/gigs-board.pages.Post?id=729) Total amount: $1950 USDC