@proteinjs/reflection-build 1.4.7 → 1.4.8
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.
- package/dist/test/examples/source-repository/a/generated/index.js +1 -1
- package/dist/test/examples/source-repository/a/generated/index.js.map +1 -1
- package/dist/test/examples/source-repository/b/generated/index.js +1 -1
- package/dist/test/examples/source-repository/b/generated/index.js.map +1 -1
- package/package.json +4 -5
- package/test/examples/source-repository/a/dist/generated/index.js +1 -1
- package/test/examples/source-repository/a/dist/generated/index.js.map +1 -1
- package/test/examples/source-repository/a/generated/index.ts +33 -38
- package/test/examples/source-repository/a/node_modules/.package-lock.json +63 -6
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.eslintrc.js +20 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.prettierignore +4 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.prettierrc +8 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/CHANGELOG.md +58 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.d.ts +5 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.js +18 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.d.ts +19 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js +555 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.d.ts +3 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.js +5 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.d.ts +45 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js +176 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.d.ts +11 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js +9 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.d.ts +13 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js +19 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.d.ts +221 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.js +234 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.js.map +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/index.ts +5 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/jest.config.js +9 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/package.json +42 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/FlattenedSourceGraph.ts +702 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/Loadable.ts +2 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/SourceRepository.ts +250 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/SourceRepositoryFilter.ts +15 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/sourceGraphTypes.ts +14 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/types.ts +236 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/tsconfig.json +19 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/types/@dagrejs/graphlib.d.ts +1 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/CHANGELOG.md +11 -0
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/dist/src/PackageUtil.d.ts +44 -1
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js +207 -142
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js.map +1 -1
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/package.json +2 -2
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/src/PackageUtil.ts +176 -102
- package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/test/PackageUtil.symlinkDependencies.test.ts +76 -0
- package/test/examples/source-repository/a/node_modules/bindings/LICENSE.md +22 -0
- package/test/examples/source-repository/a/node_modules/bindings/README.md +98 -0
- package/test/examples/source-repository/a/node_modules/bindings/bindings.js +221 -0
- package/test/examples/source-repository/a/node_modules/bindings/package.json +28 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/.travis.yml +30 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/History.md +21 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/LICENSE +20 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/README.md +74 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/index.d.ts +2 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/index.js +66 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/package.json +32 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/test/test.js +24 -0
- package/test/examples/source-repository/a/node_modules/file-uri-to-path/test/tests.json +13 -0
- package/test/examples/source-repository/a/node_modules/fsevents/LICENSE +22 -0
- package/test/examples/source-repository/a/node_modules/fsevents/README.md +89 -0
- package/test/examples/source-repository/a/node_modules/fsevents/fsevents.d.ts +46 -0
- package/test/examples/source-repository/a/node_modules/fsevents/fsevents.js +83 -0
- package/test/examples/source-repository/a/node_modules/fsevents/fsevents.node +0 -0
- package/test/examples/source-repository/a/node_modules/fsevents/package.json +62 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/.travis.yml +103 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/ISSUE_TEMPLATE.md +8 -0
- package/{LICENSE → test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/LICENSE} +6 -5
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/Readme.md +78 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/binding.gyp +21 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/.target.mk +53 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Makefile +352 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/.node.d +1 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/obj.target/fse/fsevents.o.d.raw +79 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.node +0 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/binding.Makefile +6 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/fse.target.mk +191 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/gyp-mac-tool +766 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/fsevents.cc +88 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/fsevents.js +106 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/install.js +13 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/package.json +34 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/async.cc +43 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/constants.cc +110 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/methods.cc +44 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/storage.cc +27 -0
- package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/thread.cc +71 -0
- package/test/examples/source-repository/a/node_modules/nan/CHANGELOG.md +557 -0
- package/test/examples/source-repository/a/node_modules/nan/CMakeLists.txt +138 -0
- package/test/examples/source-repository/a/node_modules/nan/LICENSE.md +9 -0
- package/test/examples/source-repository/a/node_modules/nan/README.md +456 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/asyncworker.md +146 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/buffers.md +54 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/callback.md +76 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/converters.md +41 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/errors.md +226 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/json.md +62 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/maybe_types.md +583 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/methods.md +672 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/new.md +147 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/node_misc.md +123 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/object_wrappers.md +263 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/persistent.md +296 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/scopes.md +73 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/script.md +58 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/string_bytes.md +62 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/v8_internals.md +199 -0
- package/test/examples/source-repository/a/node_modules/nan/doc/v8_misc.md +85 -0
- package/test/examples/source-repository/a/node_modules/nan/include_dirs.js +1 -0
- package/test/examples/source-repository/a/node_modules/nan/nan.h +2958 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_callbacks.h +92 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_callbacks_12_inl.h +520 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_callbacks_pre_12_inl.h +520 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_converters.h +72 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_converters_43_inl.h +68 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_converters_pre_43_inl.h +42 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_define_own_property_helper.h +29 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_implementation_12_inl.h +430 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_implementation_pre_12_inl.h +263 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_json.h +166 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_maybe_43_inl.h +356 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_maybe_pre_43_inl.h +268 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_new.h +340 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_object_wrap.h +156 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_persistent_12_inl.h +132 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_persistent_pre_12_inl.h +242 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_private.h +73 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_scriptorigin.h +76 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_string_bytes.h +305 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_typedarray_contents.h +96 -0
- package/test/examples/source-repository/a/node_modules/nan/nan_weak.h +437 -0
- package/test/examples/source-repository/a/node_modules/nan/package.json +38 -0
- package/test/examples/source-repository/a/node_modules/nan/tools/1to2.js +412 -0
- package/test/examples/source-repository/a/node_modules/nan/tools/README.md +14 -0
- package/test/examples/source-repository/a/node_modules/nan/tools/package.json +19 -0
- package/test/examples/source-repository/a/package-lock.json +12 -8
- package/test/examples/source-repository/a/package.json +3 -3
- package/test/examples/source-repository/b/dist/generated/index.js +1 -1
- package/test/examples/source-repository/b/dist/generated/index.js.map +1 -1
- package/test/examples/source-repository/b/generated/index.ts +11 -10
- package/test/examples/source-repository/b/node_modules/.package-lock.json +61 -4
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.eslintrc.js +20 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.prettierignore +4 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.prettierrc +8 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/CHANGELOG.md +58 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.d.ts +5 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.js +18 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.d.ts +19 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js +555 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.d.ts +3 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.js +5 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.d.ts +45 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js +176 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.d.ts +11 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js +9 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.d.ts +13 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js +19 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.d.ts +221 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.js +234 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.js.map +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/index.ts +5 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/jest.config.js +9 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/package.json +42 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/FlattenedSourceGraph.ts +702 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/Loadable.ts +2 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/SourceRepository.ts +250 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/SourceRepositoryFilter.ts +15 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/sourceGraphTypes.ts +14 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/types.ts +236 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/tsconfig.json +19 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/types/@dagrejs/graphlib.d.ts +1 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/CHANGELOG.md +11 -0
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/dist/src/PackageUtil.d.ts +44 -1
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js +207 -142
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js.map +1 -1
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/package.json +2 -2
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/src/PackageUtil.ts +176 -102
- package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/test/PackageUtil.symlinkDependencies.test.ts +76 -0
- package/test/examples/source-repository/b/node_modules/bindings/LICENSE.md +22 -0
- package/test/examples/source-repository/b/node_modules/bindings/README.md +98 -0
- package/test/examples/source-repository/b/node_modules/bindings/bindings.js +221 -0
- package/test/examples/source-repository/b/node_modules/bindings/package.json +28 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/.travis.yml +30 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/History.md +21 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/LICENSE +20 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/README.md +74 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/index.d.ts +2 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/index.js +66 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/package.json +32 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/test/test.js +24 -0
- package/test/examples/source-repository/b/node_modules/file-uri-to-path/test/tests.json +13 -0
- package/test/examples/source-repository/b/node_modules/fsevents/LICENSE +22 -0
- package/test/examples/source-repository/b/node_modules/fsevents/README.md +89 -0
- package/test/examples/source-repository/b/node_modules/fsevents/fsevents.d.ts +46 -0
- package/test/examples/source-repository/b/node_modules/fsevents/fsevents.js +83 -0
- package/test/examples/source-repository/b/node_modules/fsevents/fsevents.node +0 -0
- package/test/examples/source-repository/b/node_modules/fsevents/package.json +62 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/.travis.yml +103 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/ISSUE_TEMPLATE.md +8 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/LICENSE +22 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/Readme.md +78 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/binding.gyp +21 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/.target.mk +53 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Makefile +352 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/.node.d +1 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/obj.target/fse/fsevents.o.d.raw +79 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.node +0 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/binding.Makefile +6 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/fse.target.mk +191 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/gyp-mac-tool +766 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/fsevents.cc +88 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/fsevents.js +106 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/install.js +13 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/package.json +34 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/async.cc +43 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/constants.cc +110 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/methods.cc +44 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/storage.cc +27 -0
- package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/thread.cc +71 -0
- package/test/examples/source-repository/b/node_modules/nan/CHANGELOG.md +557 -0
- package/test/examples/source-repository/b/node_modules/nan/CMakeLists.txt +138 -0
- package/test/examples/source-repository/b/node_modules/nan/LICENSE.md +9 -0
- package/test/examples/source-repository/b/node_modules/nan/README.md +456 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/asyncworker.md +146 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/buffers.md +54 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/callback.md +76 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/converters.md +41 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/errors.md +226 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/json.md +62 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/maybe_types.md +583 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/methods.md +672 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/new.md +147 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/node_misc.md +123 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/object_wrappers.md +263 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/persistent.md +296 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/scopes.md +73 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/script.md +58 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/string_bytes.md +62 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/v8_internals.md +199 -0
- package/test/examples/source-repository/b/node_modules/nan/doc/v8_misc.md +85 -0
- package/test/examples/source-repository/b/node_modules/nan/include_dirs.js +1 -0
- package/test/examples/source-repository/b/node_modules/nan/nan.h +2958 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_callbacks.h +92 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_callbacks_12_inl.h +520 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_callbacks_pre_12_inl.h +520 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_converters.h +72 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_converters_43_inl.h +68 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_converters_pre_43_inl.h +42 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_define_own_property_helper.h +29 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_implementation_12_inl.h +430 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_implementation_pre_12_inl.h +263 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_json.h +166 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_maybe_43_inl.h +356 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_maybe_pre_43_inl.h +268 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_new.h +340 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_object_wrap.h +156 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_persistent_12_inl.h +132 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_persistent_pre_12_inl.h +242 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_private.h +73 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_scriptorigin.h +76 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_string_bytes.h +305 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_typedarray_contents.h +96 -0
- package/test/examples/source-repository/b/node_modules/nan/nan_weak.h +437 -0
- package/test/examples/source-repository/b/node_modules/nan/package.json +38 -0
- package/test/examples/source-repository/b/node_modules/nan/tools/1to2.js +412 -0
- package/test/examples/source-repository/b/node_modules/nan/tools/README.md +14 -0
- package/test/examples/source-repository/b/node_modules/nan/tools/package.json +19 -0
- package/test/examples/source-repository/b/package-lock.json +10 -6
- package/test/examples/source-repository/b/package.json +3 -3
package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/SourceRepository.ts
ADDED
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import { Graph } from '@dagrejs/graphlib';
|
|
2
|
+
import { graphSerializer, isInstanceOf } from '@proteinjs/util';
|
|
3
|
+
import { SourceType } from './sourceGraphTypes';
|
|
4
|
+
import {
|
|
5
|
+
VariableDeclaration,
|
|
6
|
+
TypeAliasDeclaration,
|
|
7
|
+
ClassDeclaration,
|
|
8
|
+
InterfaceDeclaration,
|
|
9
|
+
Class,
|
|
10
|
+
Variable,
|
|
11
|
+
TypeAlias,
|
|
12
|
+
Interface,
|
|
13
|
+
PackageScope,
|
|
14
|
+
} from './types';
|
|
15
|
+
import { FlattenedSourceGraph, flattenSourceGraph } from './FlattenedSourceGraph';
|
|
16
|
+
import { SOURCE_REPOSITORY_FILTER_QUALIFIED_NAME, getSourceRepositoryFilters } from './SourceRepositoryFilter';
|
|
17
|
+
|
|
18
|
+
type TypeMap = { [qualifiedName: string]: Interface | TypeAlias | Class | Variable };
|
|
19
|
+
|
|
20
|
+
export class SourceRepository {
|
|
21
|
+
public readonly sourceGraph = new Graph();
|
|
22
|
+
private readonly sourceLinks: { [qualifiedName: string]: any } = {};
|
|
23
|
+
public flattenedSourceGraph: FlattenedSourceGraph = { variables: {}, typeAliases: {}, classes: {}, interfaces: {} };
|
|
24
|
+
// private readonly typeCache: { [type: string]: (ClassDeclaration|VariableDeclaration)[] } = {};
|
|
25
|
+
private readonly objectCache: { [type: string]: any[] } = {};
|
|
26
|
+
|
|
27
|
+
private constructor() {}
|
|
28
|
+
|
|
29
|
+
static get(): SourceRepository {
|
|
30
|
+
if (!SourceRepository.getGlobal().__proteinjs_reflection_SourceRepository) {
|
|
31
|
+
SourceRepository.getGlobal().__proteinjs_reflection_SourceRepository = new SourceRepository();
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return SourceRepository.getGlobal().__proteinjs_reflection_SourceRepository;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private static getGlobal(): any {
|
|
38
|
+
if (typeof window !== 'undefined') {
|
|
39
|
+
return window;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return globalThis;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
interface(qualifiedInterfaceName: string) {
|
|
46
|
+
return this.flattenedSourceGraph.interfaces[qualifiedInterfaceName];
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
interfaceExtends(_interface: Interface, type: string) {
|
|
50
|
+
return typeof _interface.allParents[type] !== 'undefined';
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Same as SourceRepository.objects except assumes it will find only 1 object.
|
|
55
|
+
*
|
|
56
|
+
* @param extendingType a Type or Interface that the Class or Variable extends
|
|
57
|
+
* @return variable or instantiated class that extends `extendingType`
|
|
58
|
+
*/
|
|
59
|
+
object<T>(extendingType: string): T {
|
|
60
|
+
return this.objects<T>(extendingType)[0];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @param extendingType a Type, Interface, or Class that the Class or Variable extends
|
|
65
|
+
* @return variables and instantiated classes that extend `extendingType`
|
|
66
|
+
*/
|
|
67
|
+
objects<T>(extendingType: string): T[] {
|
|
68
|
+
if (this.objectCache[extendingType]) {
|
|
69
|
+
return this.objectCache[extendingType];
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
const baseChildren = this.baseChildren(extendingType);
|
|
73
|
+
const extendingObjects: T[] = [];
|
|
74
|
+
for (const baseChildQualifiedName in baseChildren) {
|
|
75
|
+
const child = baseChildren[baseChildQualifiedName];
|
|
76
|
+
if (isInstanceOf(child, Class)) {
|
|
77
|
+
extendingObjects.push(new (child as any)._constructor());
|
|
78
|
+
} else if (isInstanceOf(child, Variable)) {
|
|
79
|
+
extendingObjects.push((child as any).value);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
this.objectCache[extendingType] = extendingObjects;
|
|
84
|
+
return extendingObjects;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* @param extendingType a Type, Interface, or Class that the Class or Variable extends
|
|
89
|
+
* @returns a hashmap (key is qualified name) of base child types (vs the instantiated objects provided by the objects method) that extend `extendingType`
|
|
90
|
+
*/
|
|
91
|
+
baseChildren(extendingType: string): TypeMap {
|
|
92
|
+
const _interface = SourceRepository.get().flattenedSourceGraph.interfaces[extendingType];
|
|
93
|
+
const typeAlias = SourceRepository.get().flattenedSourceGraph.typeAliases[extendingType];
|
|
94
|
+
const _class = SourceRepository.get().flattenedSourceGraph.classes[extendingType];
|
|
95
|
+
let baseChildren: TypeMap;
|
|
96
|
+
if (_interface) {
|
|
97
|
+
baseChildren = _interface.baseChildren;
|
|
98
|
+
} else if (typeAlias) {
|
|
99
|
+
baseChildren = typeAlias.baseChildren;
|
|
100
|
+
} else if (_class) {
|
|
101
|
+
baseChildren = _class.baseChildren;
|
|
102
|
+
} else {
|
|
103
|
+
throw new Error(`Unable to find type: ${extendingType}`);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
if (extendingType === SOURCE_REPOSITORY_FILTER_QUALIFIED_NAME) {
|
|
107
|
+
return baseChildren;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return this.filterObjects(baseChildren);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* @param extendingType a Type, Interface, or Class that the Class or Variable extends
|
|
115
|
+
* @returns a hashmap (key is qualified name) of direct child types (vs the instantiated objects provided by the objects method) that extend `extendingType`
|
|
116
|
+
*/
|
|
117
|
+
directChildren(extendingType: string): TypeMap {
|
|
118
|
+
const _interface = SourceRepository.get().flattenedSourceGraph.interfaces[extendingType];
|
|
119
|
+
const typeAlias = SourceRepository.get().flattenedSourceGraph.typeAliases[extendingType];
|
|
120
|
+
const _class = SourceRepository.get().flattenedSourceGraph.classes[extendingType];
|
|
121
|
+
let directChildren: any;
|
|
122
|
+
if (_interface) {
|
|
123
|
+
directChildren = _interface.directChildren;
|
|
124
|
+
} else if (typeAlias) {
|
|
125
|
+
directChildren = typeAlias.directChildren;
|
|
126
|
+
} else if (_class) {
|
|
127
|
+
directChildren = _class.directChildren;
|
|
128
|
+
} else {
|
|
129
|
+
throw new Error(`Unable to find type: ${extendingType}`);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (extendingType === SOURCE_REPOSITORY_FILTER_QUALIFIED_NAME) {
|
|
133
|
+
return directChildren;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
return this.filterObjects(directChildren);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
private filterObjects(typeMap: TypeMap): TypeMap {
|
|
140
|
+
const filteredTypeMap: TypeMap = {};
|
|
141
|
+
const filters = getSourceRepositoryFilters();
|
|
142
|
+
for (const qualifiedName of Object.keys(typeMap)) {
|
|
143
|
+
const packageScope = typeMap[qualifiedName];
|
|
144
|
+
let filtered = true;
|
|
145
|
+
for (const filter of filters) {
|
|
146
|
+
if (!filter.filterObject(qualifiedName)) {
|
|
147
|
+
filtered = false;
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
if (filtered) {
|
|
153
|
+
filteredTypeMap[qualifiedName] = packageScope;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return filteredTypeMap;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
static merge(serializedSourceGraph: string, sourceLinks: { [qualifiedName: string]: any }) {
|
|
161
|
+
const unescapedSerializedSourceGraph = serializedSourceGraph.replace(/\\'/g, "'");
|
|
162
|
+
const sourceGraph = graphSerializer.deserialize(unescapedSerializedSourceGraph);
|
|
163
|
+
for (const nodeName of sourceGraph.nodes()) {
|
|
164
|
+
const nodeValue = sourceGraph.node(nodeName);
|
|
165
|
+
if (!nodeValue) {
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
SourceRepository.get().sourceGraph.setNode(nodeName, SourceRepository.deserializeClass(nodeValue));
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
for (const edge of sourceGraph.edges()) {
|
|
173
|
+
const edgeValue = sourceGraph.edge(edge);
|
|
174
|
+
SourceRepository.get().sourceGraph.setEdge(edge, edgeValue);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
Object.assign(SourceRepository.get().sourceLinks, sourceLinks);
|
|
178
|
+
SourceRepository.get().flattenedSourceGraph = flattenSourceGraph(
|
|
179
|
+
SourceRepository.get().sourceGraph,
|
|
180
|
+
SourceRepository.get().sourceLinks
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
private static deserializeClass(classJson: any): any {
|
|
185
|
+
if (classJson.sourceType === SourceType.variable) {
|
|
186
|
+
return VariableDeclaration.deserialize(classJson);
|
|
187
|
+
} else if (classJson.sourceType === SourceType.typeAlias) {
|
|
188
|
+
return TypeAliasDeclaration.deserialize(classJson);
|
|
189
|
+
} else if (classJson.sourceType === SourceType.class) {
|
|
190
|
+
return ClassDeclaration.deserialize(classJson);
|
|
191
|
+
} else if (classJson.sourceType === SourceType.interface) {
|
|
192
|
+
return InterfaceDeclaration.deserialize(classJson);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
return classJson;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// objects<T>(type: string): T[] {
|
|
199
|
+
// if (!this.objectCache[type]) {
|
|
200
|
+
// this.objectCache[type] = this.types(type).map((type) => {
|
|
201
|
+
// if (type instanceof VariableDeclaration)
|
|
202
|
+
// return type.value;
|
|
203
|
+
|
|
204
|
+
// if (type instanceof ClassDeclaration)
|
|
205
|
+
// return new type._constructor();
|
|
206
|
+
|
|
207
|
+
// return null;
|
|
208
|
+
// });
|
|
209
|
+
// }
|
|
210
|
+
|
|
211
|
+
// return this.objectCache[type];
|
|
212
|
+
// }
|
|
213
|
+
|
|
214
|
+
// types(parentType: string): (ClassDeclaration|VariableDeclaration)[] {
|
|
215
|
+
// if (!this.typeCache[parentType]) {
|
|
216
|
+
// const node = this.sourceGraph.node(parentType);
|
|
217
|
+
// if (!node)
|
|
218
|
+
// throw new Error(`Failed to find types, reason: parent type does not exist: ${parentType}`);
|
|
219
|
+
|
|
220
|
+
// const collectedTypes: (ClassDeclaration|VariableDeclaration)[] = [];
|
|
221
|
+
// this.collectTypes(parentType, collectedTypes);
|
|
222
|
+
// this.typeCache[parentType] = collectedTypes;
|
|
223
|
+
// }
|
|
224
|
+
|
|
225
|
+
// return this.typeCache[parentType];
|
|
226
|
+
// }
|
|
227
|
+
|
|
228
|
+
// private collectTypes(type: string, collectedTypes: (ClassDeclaration|VariableDeclaration)[]): void {
|
|
229
|
+
// const childTypes = this.sourceGraph.successors(type);
|
|
230
|
+
// if (!childTypes)
|
|
231
|
+
// return;
|
|
232
|
+
|
|
233
|
+
// for (const childType of childTypes) {
|
|
234
|
+
// const childNode = this.sourceGraph.node(childType);
|
|
235
|
+
// if (!childNode)
|
|
236
|
+
// continue;
|
|
237
|
+
|
|
238
|
+
// const sourceLink = this.sourceLinks[childNode.qualifiedName];
|
|
239
|
+
// if (childNode instanceof VariableDeclaration) {
|
|
240
|
+
// childNode.value = sourceLink;
|
|
241
|
+
// collectedTypes.push(childNode);
|
|
242
|
+
// } else if (childNode instanceof ClassDeclaration && !childNode.isAbstract) {
|
|
243
|
+
// childNode._constructor = sourceLink;
|
|
244
|
+
// collectedTypes.push(childNode);
|
|
245
|
+
// }
|
|
246
|
+
|
|
247
|
+
// this.collectTypes(childType, collectedTypes);
|
|
248
|
+
// }
|
|
249
|
+
// }
|
|
250
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Loadable } from './Loadable';
|
|
2
|
+
import { SourceRepository } from './SourceRepository';
|
|
3
|
+
|
|
4
|
+
export const SOURCE_REPOSITORY_FILTER_QUALIFIED_NAME = '@proteinjs/reflection/SourceRepositoryFilter';
|
|
5
|
+
export const getSourceRepositoryFilters = () =>
|
|
6
|
+
SourceRepository.get().objects<SourceRepositoryFilter>(SOURCE_REPOSITORY_FILTER_QUALIFIED_NAME);
|
|
7
|
+
|
|
8
|
+
export interface SourceRepositoryFilter extends Loadable {
|
|
9
|
+
/**
|
|
10
|
+
* Filter objects that would be returned by `SourceRepository.object` and `SourceRepository.objects`
|
|
11
|
+
* @param qualifiedName the package-qualified name of the object to be filtered (ie. `@dependency/package/ClassName`)
|
|
12
|
+
* @return true if the object should be returned by the `SourceRepository`
|
|
13
|
+
*/
|
|
14
|
+
filterObject(qualifiedName: string): boolean;
|
|
15
|
+
}
|
package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/sourceGraphTypes.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export enum SourceType {
|
|
2
|
+
variable,
|
|
3
|
+
typeAlias,
|
|
4
|
+
class,
|
|
5
|
+
interface,
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export enum SourceRelationship {
|
|
9
|
+
hasType = 'has type',
|
|
10
|
+
extendsType = 'extends type',
|
|
11
|
+
extendsClass = 'extends class',
|
|
12
|
+
implementsInterface = 'implements interface',
|
|
13
|
+
extendsInterface = 'extends interface',
|
|
14
|
+
}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
export abstract class PackageScope {
|
|
2
|
+
public readonly qualifiedName: string;
|
|
3
|
+
|
|
4
|
+
constructor(
|
|
5
|
+
public readonly packageName: string,
|
|
6
|
+
public readonly name: string,
|
|
7
|
+
public readonly filePath?: string
|
|
8
|
+
) {
|
|
9
|
+
this.qualifiedName = `${packageName}/${name}`;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export class Variable extends PackageScope {
|
|
14
|
+
constructor(
|
|
15
|
+
packageName: string,
|
|
16
|
+
name: string,
|
|
17
|
+
filePath: string,
|
|
18
|
+
public readonly isExported: boolean,
|
|
19
|
+
public readonly isConst: boolean,
|
|
20
|
+
public readonly value: any,
|
|
21
|
+
public readonly typeParameters: { [qualifiedName: string]: (TypeAlias | Interface)[] } = {},
|
|
22
|
+
public directParentTypes: { [qualifiedName: string]: TypeAlias | Interface } = {},
|
|
23
|
+
public allParentTypes: { [qualifiedName: string]: TypeAlias | Interface } = {},
|
|
24
|
+
public rootParentTypes: { [qualifiedName: string]: TypeAlias | Interface } = {}
|
|
25
|
+
) {
|
|
26
|
+
super(packageName, name, filePath);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export class TypeAlias extends PackageScope {
|
|
31
|
+
constructor(
|
|
32
|
+
packageName: string,
|
|
33
|
+
name: string,
|
|
34
|
+
filePath?: string,
|
|
35
|
+
public readonly typeParameters: { [qualifiedName: string]: (TypeAlias | Interface)[] } = {},
|
|
36
|
+
public readonly directParents: { [qualifiedName: string]: TypeAlias | Interface } = {},
|
|
37
|
+
public allParents: { [qualifiedName: string]: TypeAlias | Interface } = {},
|
|
38
|
+
public rootParents: { [qualifiedName: string]: TypeAlias | Interface } = {},
|
|
39
|
+
public directChildren: { [qualifiedName: string]: TypeAlias | Variable } = {},
|
|
40
|
+
public allChildren: { [qualifiedName: string]: TypeAlias | Variable } = {},
|
|
41
|
+
public baseChildren: { [qualifiedName: string]: TypeAlias | Variable } = {}
|
|
42
|
+
) {
|
|
43
|
+
super(packageName, name, filePath);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export class Class extends PackageScope {
|
|
48
|
+
constructor(
|
|
49
|
+
packageName: string,
|
|
50
|
+
name: string,
|
|
51
|
+
filePath: string,
|
|
52
|
+
public readonly isAbstract: boolean,
|
|
53
|
+
public readonly isStatic: boolean,
|
|
54
|
+
public readonly visibility: Visibility,
|
|
55
|
+
public readonly properties: Property[],
|
|
56
|
+
public readonly methods: Method[],
|
|
57
|
+
public readonly _constructor: any,
|
|
58
|
+
public readonly directParents: { [qualifiedName: string]: Class | Interface | TypeAlias } = {},
|
|
59
|
+
public readonly typeParameters: { [qualifiedName: string]: (TypeAlias | Interface | TypeAlias)[] } = {},
|
|
60
|
+
public allParents: { [qualifiedName: string]: Class | Interface | TypeAlias } = {},
|
|
61
|
+
public rootParents: { [qualifiedName: string]: Class | Interface | TypeAlias } = {},
|
|
62
|
+
public directChildren: { [qualifiedName: string]: Class } = {},
|
|
63
|
+
public allChildren: { [qualifiedName: string]: Class } = {},
|
|
64
|
+
public baseChildren: { [qualifiedName: string]: Class } = {}
|
|
65
|
+
) {
|
|
66
|
+
super(packageName, name, filePath);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export class Interface extends PackageScope {
|
|
71
|
+
constructor(
|
|
72
|
+
packageName: string,
|
|
73
|
+
name: string,
|
|
74
|
+
public readonly properties: Property[],
|
|
75
|
+
public readonly methods: Method[],
|
|
76
|
+
filePath?: string,
|
|
77
|
+
public readonly typeParameters: { [qualifiedName: string]: (TypeAlias | Interface)[] } = {},
|
|
78
|
+
public readonly directParents: { [qualifiedName: string]: Interface | TypeAlias } = {},
|
|
79
|
+
public allParents: { [qualifiedName: string]: Interface | TypeAlias } = {},
|
|
80
|
+
public rootParents: { [qualifiedName: string]: Interface | TypeAlias } = {},
|
|
81
|
+
public readonly directChildren: { [qualifiedName: string]: Interface | TypeAlias | Class | Variable } = {},
|
|
82
|
+
public allChildren: { [qualifiedName: string]: Interface | TypeAlias | Class | Variable } = {},
|
|
83
|
+
public baseChildren: { [qualifiedName: string]: Interface | TypeAlias | Class | Variable } = {}
|
|
84
|
+
) {
|
|
85
|
+
super(packageName, name, filePath);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export class Method {
|
|
90
|
+
constructor(
|
|
91
|
+
public readonly name: string,
|
|
92
|
+
public readonly returnType: TypeAliasDeclaration | undefined,
|
|
93
|
+
public readonly isAsync: boolean,
|
|
94
|
+
public readonly isOptional: boolean,
|
|
95
|
+
public readonly isAbstract: boolean,
|
|
96
|
+
public readonly isStatic: boolean,
|
|
97
|
+
public readonly visibility: Visibility,
|
|
98
|
+
public readonly parameters: Parameter[]
|
|
99
|
+
// public readonly variables: VariableDeclaration[]
|
|
100
|
+
) {}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export type Visibility = 'public' | 'protected' | 'private' | undefined;
|
|
104
|
+
|
|
105
|
+
export class Property {
|
|
106
|
+
constructor(
|
|
107
|
+
public readonly name: string,
|
|
108
|
+
public readonly type: TypeAliasDeclaration | undefined,
|
|
109
|
+
public readonly isOptional: boolean,
|
|
110
|
+
public readonly isAbstract: boolean,
|
|
111
|
+
public readonly isStatic: boolean,
|
|
112
|
+
public readonly visibility: Visibility
|
|
113
|
+
) {}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export class Parameter {
|
|
117
|
+
constructor(
|
|
118
|
+
public readonly name: string,
|
|
119
|
+
public readonly type: TypeAliasDeclaration | undefined
|
|
120
|
+
// public readonly isOptional: boolean
|
|
121
|
+
) {}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Declarations are intermediary types created by the parser. They do not contain the deeply-nested, relational
|
|
126
|
+
* information possible at runtime.
|
|
127
|
+
*
|
|
128
|
+
* Note: The declaration types specified in typescript-parser are not used because they are not package-scoped.
|
|
129
|
+
* The typescript-parser package is a file-level parser, and reflection is a package-level parser.
|
|
130
|
+
*/
|
|
131
|
+
|
|
132
|
+
export class VariableDeclaration extends PackageScope {
|
|
133
|
+
constructor(
|
|
134
|
+
packageName: string,
|
|
135
|
+
name: string,
|
|
136
|
+
filePath: string,
|
|
137
|
+
public type: TypeAliasDeclaration,
|
|
138
|
+
public isExported: boolean,
|
|
139
|
+
public isConst: boolean
|
|
140
|
+
) {
|
|
141
|
+
super(packageName, name, filePath);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
static deserialize(json: any): VariableDeclaration {
|
|
145
|
+
return new VariableDeclaration(
|
|
146
|
+
json.packageName,
|
|
147
|
+
json.name,
|
|
148
|
+
json.filePath,
|
|
149
|
+
json.type,
|
|
150
|
+
json.isExported,
|
|
151
|
+
json.isConst
|
|
152
|
+
);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export class TypeAliasDeclaration extends PackageScope {
|
|
157
|
+
constructor(
|
|
158
|
+
packageName: string,
|
|
159
|
+
name: string,
|
|
160
|
+
public typeParameters?: string[],
|
|
161
|
+
public directParents?: TypeAliasDeclaration[],
|
|
162
|
+
filePath?: string
|
|
163
|
+
) {
|
|
164
|
+
super(packageName, name, filePath);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
static deserialize(json: any): TypeAliasDeclaration {
|
|
168
|
+
return new TypeAliasDeclaration(
|
|
169
|
+
json.packageName,
|
|
170
|
+
json.name,
|
|
171
|
+
json.typeParameters,
|
|
172
|
+
json.directParents,
|
|
173
|
+
json.filePath
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export class ClassDeclaration extends PackageScope {
|
|
179
|
+
constructor(
|
|
180
|
+
packageName: string,
|
|
181
|
+
name: string,
|
|
182
|
+
public readonly isAbstract: boolean,
|
|
183
|
+
public readonly isStatic: boolean,
|
|
184
|
+
public readonly visibility: Visibility,
|
|
185
|
+
public readonly properties: Property[],
|
|
186
|
+
public readonly methods: Method[],
|
|
187
|
+
public readonly typeParameters: string[],
|
|
188
|
+
public readonly directParentInterfaces: InterfaceDeclaration[],
|
|
189
|
+
public readonly directParentClasses: ClassDeclaration[],
|
|
190
|
+
filePath?: string
|
|
191
|
+
) {
|
|
192
|
+
super(packageName, name, filePath);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
static deserialize(json: any): ClassDeclaration {
|
|
196
|
+
return new ClassDeclaration(
|
|
197
|
+
json.packageName,
|
|
198
|
+
json.name,
|
|
199
|
+
json.isAbstract,
|
|
200
|
+
json.isStatic,
|
|
201
|
+
json.visibility,
|
|
202
|
+
json.properties,
|
|
203
|
+
json.methods,
|
|
204
|
+
json.typeParameters,
|
|
205
|
+
json.directParentInterfaces,
|
|
206
|
+
json.directParentClasses,
|
|
207
|
+
json.filePath
|
|
208
|
+
);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export class InterfaceDeclaration extends PackageScope {
|
|
213
|
+
constructor(
|
|
214
|
+
packageName: string,
|
|
215
|
+
name: string,
|
|
216
|
+
public readonly properties: Property[],
|
|
217
|
+
public readonly methods: Method[],
|
|
218
|
+
public readonly typeParameters: string[],
|
|
219
|
+
public readonly directParents: InterfaceDeclaration[],
|
|
220
|
+
filePath?: string
|
|
221
|
+
) {
|
|
222
|
+
super(packageName, name, filePath);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
static deserialize(json: any): InterfaceDeclaration {
|
|
226
|
+
return new InterfaceDeclaration(
|
|
227
|
+
json.packageName,
|
|
228
|
+
json.name,
|
|
229
|
+
json.properties,
|
|
230
|
+
json.methods,
|
|
231
|
+
json.typeParameters,
|
|
232
|
+
json.directParents,
|
|
233
|
+
json.filePath
|
|
234
|
+
);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "es5",
|
|
4
|
+
"module": "commonjs",
|
|
5
|
+
"declaration": true,
|
|
6
|
+
"sourceMap": true,
|
|
7
|
+
"outDir": "./dist/",
|
|
8
|
+
"strict": true,
|
|
9
|
+
"noImplicitAny": true,
|
|
10
|
+
"esModuleInterop": true,
|
|
11
|
+
"skipLibCheck": true,
|
|
12
|
+
"forceConsistentCasingInFileNames": true,
|
|
13
|
+
"resolveJsonModule": true,
|
|
14
|
+
"baseUrl": "./",
|
|
15
|
+
"paths": { "*": ["types/*"] },
|
|
16
|
+
"types": ["node", "jest"]
|
|
17
|
+
},
|
|
18
|
+
"include": ["./index.ts"]
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from 'graphlib';
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.9.0](https://github.com/proteinjs/util/compare/@proteinjs/util-node@1.8.1...@proteinjs/util-node@1.9.0) (2026-06-24)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* symlink-workspace links each package's transitive workspace-dep closure ([55a7c25](https://github.com/proteinjs/util/commit/55a7c2541f500bec4e12bb05454acadd6b4c4b66))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [1.8.1](https://github.com/proteinjs/util/compare/@proteinjs/util-node@1.8.0...@proteinjs/util-node@1.8.1) (2026-04-14)
|
|
7
18
|
|
|
8
19
|
|
|
@@ -101,9 +101,52 @@ export declare class PackageUtil {
|
|
|
101
101
|
static getWorkspaceMetadata(workspacePath: string): Promise<WorkspaceMetadata>;
|
|
102
102
|
/**
|
|
103
103
|
* Symlink the dependencies of `localPackage` to other local packages in the workspace.
|
|
104
|
+
*
|
|
105
|
+
* This links the package's full TRANSITIVE closure of workspace dependencies,
|
|
106
|
+
* not just its directly-declared ones. A package's `package.json` only lists
|
|
107
|
+
* its direct deps, but those deps pull in workspace packages of their own
|
|
108
|
+
* (e.g. `flow-server` declares `@n3xah/space-server`, which itself depends on
|
|
109
|
+
* `@n3xah/space-common`). Node resolves a transitive dep like `space-common`
|
|
110
|
+
* out of the consumer's own `node_modules` first, so if we only symlinked
|
|
111
|
+
* direct deps, npm would satisfy `space-common` with a stale registry copy
|
|
112
|
+
* that lags the live workspace source — causing schema/version drift. By
|
|
113
|
+
* linking the whole closure, every workspace package a package can reach at
|
|
114
|
+
* runtime resolves to the live source tree.
|
|
115
|
+
*
|
|
104
116
|
* @param localPackage package to symlink the dependencies of
|
|
105
117
|
* @param localPackageMap `LocalPackageMap` of the workspace
|
|
106
|
-
* @param logger optionally provide a logger to capture this method's logging
|
|
107
118
|
*/
|
|
108
119
|
static symlinkDependencies(localPackage: LocalPackage, localPackageMap: LocalPackageMap): Promise<void>;
|
|
120
|
+
/**
|
|
121
|
+
* Compute the transitive closure of workspace dependencies for `localPackage`.
|
|
122
|
+
*
|
|
123
|
+
* Reuses `getPackageDependencyGraph`, which already crawls `dependencies` and
|
|
124
|
+
* `devDependencies` (transitively, across the whole workspace) and adds an
|
|
125
|
+
* edge `consumer -> dependency` for each. So the workspace deps reachable from
|
|
126
|
+
* a package are exactly the nodes reachable by following `successors` from its
|
|
127
|
+
* node. We do a cycle-safe traversal (a `visited` set), since the dependency
|
|
128
|
+
* graph can contain cycles. The package itself is excluded from the result.
|
|
129
|
+
*
|
|
130
|
+
* Only names present in `localPackageMap` are returned — i.e. packages that
|
|
131
|
+
* actually live in the workspace and can be symlinked (the graph already
|
|
132
|
+
* filters to file:/relative/workspace deps in `addDependencies`, but we filter
|
|
133
|
+
* again here so the result is exactly the set of linkable packages).
|
|
134
|
+
*
|
|
135
|
+
* @returns workspace package names this package transitively depends on
|
|
136
|
+
*/
|
|
137
|
+
private static getTransitiveWorkspaceDependencies;
|
|
138
|
+
/**
|
|
139
|
+
* Symlink a single workspace package into `nodeModulesPath`, and create
|
|
140
|
+
* `node_modules/.bin/<name>` shims for any `bin` it declares.
|
|
141
|
+
*
|
|
142
|
+
* This is the per-dependency linking logic used by `symlinkDependencies` for
|
|
143
|
+
* each package in the transitive closure. The caller is responsible for
|
|
144
|
+
* deciding WHICH packages to link; this method just links the one named.
|
|
145
|
+
*
|
|
146
|
+
* @param dependencyPackageName name of the workspace package to link
|
|
147
|
+
* @param nodeModulesPath absolute path to the consumer's `node_modules`
|
|
148
|
+
* @param packageDir absolute path to the consumer package's directory (cwd for `ln`)
|
|
149
|
+
* @param localPackageMap `LocalPackageMap` of the workspace
|
|
150
|
+
*/
|
|
151
|
+
private static symlinkPackage;
|
|
109
152
|
}
|