123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- "use strict";
- const NormalModule = require("./NormalModule");
- const makeSerializable = require("./util/makeSerializable");
- class CssModule extends NormalModule {
-
- constructor(options) {
- super(options);
-
- this.cssLayer = options.cssLayer;
- this.supports = options.supports;
- this.media = options.media;
- this.inheritance = options.inheritance;
- }
-
- identifier() {
- let identifier = super.identifier();
- if (this.cssLayer) {
- identifier += `|${this.cssLayer}`;
- }
- if (this.supports) {
- identifier += `|${this.supports}`;
- }
- if (this.media) {
- identifier += `|${this.media}`;
- }
- if (this.inheritance) {
- const inheritance = this.inheritance.map(
- (item, index) =>
- `inheritance_${index}|${item[0] || ""}|${item[1] || ""}|${
- item[2] || ""
- }`
- );
- identifier += `|${inheritance.join("|")}`;
- }
- return identifier;
- }
-
- readableIdentifier(requestShortener) {
- const readableIdentifier = super.readableIdentifier(requestShortener);
- let identifier = `css ${readableIdentifier}`;
- if (this.cssLayer) {
- identifier += ` (layer: ${this.cssLayer})`;
- }
- if (this.supports) {
- identifier += ` (supports: ${this.supports})`;
- }
- if (this.media) {
- identifier += ` (media: ${this.media})`;
- }
- return identifier;
- }
-
- updateCacheModule(module) {
- super.updateCacheModule(module);
- const m = (module);
- this.cssLayer = m.cssLayer;
- this.supports = m.supports;
- this.media = m.media;
- this.inheritance = m.inheritance;
- }
-
- serialize(context) {
- const { write } = context;
- write(this.cssLayer);
- write(this.supports);
- write(this.media);
- write(this.inheritance);
- super.serialize(context);
- }
-
- static deserialize(context) {
- const obj = new CssModule({
-
- layer: null,
- type: "",
-
- resource: "",
- context: "",
- request: null,
- userRequest: null,
- rawRequest: null,
- loaders: null,
- matchResource: null,
- parser: null,
- parserOptions: null,
- generator: null,
- generatorOptions: null,
- resolveOptions: null,
- cssLayer: null,
- supports: null,
- media: null,
- inheritance: null
- });
- obj.deserialize(context);
- return obj;
- }
- deserialize(context) {
- const { read } = context;
- this.cssLayer = read();
- this.supports = read();
- this.media = read();
- this.inheritance = read();
- super.deserialize(context);
- }
- }
- makeSerializable(CssModule, "webpack/lib/CssModule");
- module.exports = CssModule;
|