Sha256: 73ad900de4c6151bf574eef2b7c74c340282254c3d96e683b80ffffdbadffef7

Contents?: true

Size: 641 Bytes

Versions: 95

Compression:

Stored size: 641 Bytes

Contents

'use strict';
const callsites = require('callsites');

module.exports = filepath => {
	const stacks = callsites();

	if (!filepath) {
		return stacks[2].getFileName();
	}

	let seenVal = false;

	// Skip the first stack as it's this function
	stacks.shift();

	for (const stack of stacks) {
		const parentFilepath = stack.getFileName();

		if (typeof parentFilepath !== 'string') {
			continue;
		}

		if (parentFilepath === filepath) {
			seenVal = true;
			continue;
		}

		// Skip native modules
		if (parentFilepath === 'module.js') {
			continue;
		}

		if (seenVal && parentFilepath !== filepath) {
			return parentFilepath;
		}
	}
};

Version data entries

95 entries across 94 versions & 10 rubygems

Version Path
groonga-client-model-6.0.0 test/apps/rails6.1.3/node_modules/parent-module/index.js
groonga-client-model-6.0.0 test/apps/rails6.0.3.5/node_modules/parent-module/index.js
ruby2js-4.0.4 lib/tasks/testrails/node_modules/parent-module/index.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/parent-module/index.js
trusty-cms-4.2.1 node_modules/parent-module/index.js
trusty-cms-4.2 node_modules/parent-module/index.js
trusty-cms-4.1.9 node_modules/parent-module/index.js
trusty-cms-4.1.8 node_modules/parent-module/index.js
tang-0.2.0 spec/tang_app/node_modules/parent-module/index.js
trusty-cms-4.1.7 node_modules/parent-module/index.js
tang-0.1.0 spec/tang_app/node_modules/parent-module/index.js
tang-0.0.9 spec/tang_app/node_modules/parent-module/index.js
trusty-cms-4.1.6 node_modules/parent-module/index.js
trusty-cms-4.1.5 node_modules/parent-module/index.js
enju_library-0.3.8 spec/dummy/node_modules/parent-module/index.js