summaryrefslogtreecommitdiff
path: root/node_modules/webpack/lib/dependencies/JsonExportsDependency.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/webpack/lib/dependencies/JsonExportsDependency.js')
-rw-r--r--node_modules/webpack/lib/dependencies/JsonExportsDependency.js111
1 files changed, 0 insertions, 111 deletions
diff --git a/node_modules/webpack/lib/dependencies/JsonExportsDependency.js b/node_modules/webpack/lib/dependencies/JsonExportsDependency.js
deleted file mode 100644
index 39ce927e..00000000
--- a/node_modules/webpack/lib/dependencies/JsonExportsDependency.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
-*/
-
-"use strict";
-
-const makeSerializable = require("../util/makeSerializable");
-const NullDependency = require("./NullDependency");
-
-/** @typedef {import("../ChunkGraph")} ChunkGraph */
-/** @typedef {import("../Dependency").ExportSpec} ExportSpec */
-/** @typedef {import("../Dependency").ExportsSpec} ExportsSpec */
-/** @typedef {import("../Dependency").UpdateHashContext} UpdateHashContext */
-/** @typedef {import("../ModuleGraph")} ModuleGraph */
-/** @typedef {import("../json/JsonData")} JsonData */
-/** @typedef {import("../json/JsonData").RawJsonData} RawJsonData */
-/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */
-/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
-/** @typedef {import("../util/Hash")} Hash */
-
-/**
- * @param {RawJsonData} data data
- * @returns {TODO} value
- */
-const getExportsFromData = data => {
- if (data && typeof data === "object") {
- if (Array.isArray(data)) {
- return data.length < 100
- ? data.map((item, idx) => ({
- name: `${idx}`,
- canMangle: true,
- exports: getExportsFromData(item)
- }))
- : undefined;
- }
- const exports = [];
- for (const key of Object.keys(data)) {
- exports.push({
- name: key,
- canMangle: true,
- exports: getExportsFromData(data[key])
- });
- }
- return exports;
- }
- return undefined;
-};
-
-class JsonExportsDependency extends NullDependency {
- /**
- * @param {JsonData} data json data
- */
- constructor(data) {
- super();
- this.data = data;
- }
-
- get type() {
- return "json exports";
- }
-
- /**
- * Returns the exported names
- * @param {ModuleGraph} moduleGraph module graph
- * @returns {ExportsSpec | undefined} export names
- */
- getExports(moduleGraph) {
- return {
- exports: getExportsFromData(
- this.data && /** @type {RawJsonData} */ (this.data.get())
- ),
- dependencies: undefined
- };
- }
-
- /**
- * Update the hash
- * @param {Hash} hash hash to be updated
- * @param {UpdateHashContext} context context
- * @returns {void}
- */
- updateHash(hash, context) {
- this.data.updateHash(hash);
- }
-
- /**
- * @param {ObjectSerializerContext} context context
- */
- serialize(context) {
- const { write } = context;
- write(this.data);
- super.serialize(context);
- }
-
- /**
- * @param {ObjectDeserializerContext} context context
- */
- deserialize(context) {
- const { read } = context;
- this.data = read();
- super.deserialize(context);
- }
-}
-
-makeSerializable(
- JsonExportsDependency,
- "webpack/lib/dependencies/JsonExportsDependency"
-);
-
-module.exports = JsonExportsDependency;