init
This commit is contained in:
21
mc_test/node_modules/@emotion/sheet/LICENSE
generated
vendored
Executable file
21
mc_test/node_modules/@emotion/sheet/LICENSE
generated
vendored
Executable file
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Emotion team and other contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
121
mc_test/node_modules/@emotion/sheet/README.md
generated
vendored
Executable file
121
mc_test/node_modules/@emotion/sheet/README.md
generated
vendored
Executable file
@ -0,0 +1,121 @@
|
||||
# @emotion/sheet
|
||||
|
||||
> A StyleSheet for css-in-js libraries
|
||||
|
||||
```bash
|
||||
yarn add @emotion/sheet
|
||||
```
|
||||
|
||||
```jsx
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
const sheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
sheet.insert('html { color: hotpink; }')
|
||||
```
|
||||
|
||||
> **Note:**
|
||||
> This is not useful for server-side rendering, you should implement SSR seperately
|
||||
|
||||
## StyleSheet
|
||||
|
||||
### Options
|
||||
|
||||
```ts
|
||||
type Options = {
|
||||
nonce?: string
|
||||
key: string
|
||||
container: Node
|
||||
speedy?: boolean
|
||||
prepend?: boolean
|
||||
}
|
||||
```
|
||||
|
||||
#### nonce
|
||||
|
||||
A nonce that will be set on each style tag that the sheet inserts for [Content Security Policies](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP).
|
||||
|
||||
#### container
|
||||
|
||||
A DOM Node that the sheet will insert all of it's style tags into, this is useful for inserting styles into iframes.
|
||||
|
||||
#### key
|
||||
|
||||
This will be set as the value of the `data-emotion` attribute on the style tags that get inserted. This is useful to identify different sheets.
|
||||
|
||||
#### speedy
|
||||
|
||||
This defines how rules are inserted. If it is true, rules will be inserted with [`insertRule`](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule) which is very fast but doesn't allow rules to be edited in DevTools. If it is false, rules will be inserted by appending text nodes to style elements which is much slower than insertRule but allows rules to be edited in DevTools. By default, speedy is enabled in production and disabled in development.
|
||||
|
||||
#### prepend
|
||||
|
||||
**Deprecated:** Please use `insertionPoint` option instead.
|
||||
|
||||
This defines where rules are inserted into the `container`. By default they are appended but this can be changed by using `prepend: true` option.
|
||||
|
||||
#### insertionPoint
|
||||
|
||||
This defines specific dom node after which the rules are inserted into the `container`. You can use a `meta` tag to specify the specific location:
|
||||
|
||||
```jsx
|
||||
const head = document.querySelector('head')
|
||||
|
||||
// <meta name="emotion-insertion-point" content="">
|
||||
const emotionInsertionPoint = document.createElement('meta')
|
||||
emotionInsertionPoint.setAttribute('name', 'emotion-insertion-point')
|
||||
emotionInsertionPoint.setAttribute('content', '')
|
||||
|
||||
head.appendChild(emotionInsertionPoint)
|
||||
|
||||
// the emotion sheets should be inserted right after the meta tag
|
||||
const cache = createCache({
|
||||
key: 'my-app',
|
||||
insertionPoint: emotionInsertionPoint
|
||||
})
|
||||
|
||||
function App() {
|
||||
return (
|
||||
<CacheProvider value={cache}>
|
||||
<Main />
|
||||
</CacheProvider>
|
||||
)
|
||||
}
|
||||
```
|
||||
|
||||
### Methods
|
||||
|
||||
#### insert
|
||||
|
||||
This method inserts a single rule into the document. It **must** be a single rule otherwise an error will be thrown in speedy mode which is enabled by default in production.
|
||||
|
||||
#### flush
|
||||
|
||||
This method will remove all style tags that were inserted into the document.
|
||||
|
||||
#### hydrate
|
||||
|
||||
This method moves given style elements into sheet's container and put them into internal tags collection. It's can be used for SSRed styles.
|
||||
|
||||
### Example with all options
|
||||
|
||||
```jsx
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
const container = document.createElement('div')
|
||||
|
||||
document.head.appendChild(container)
|
||||
|
||||
const sheet = new StyleSheet({
|
||||
nonce: 'some-nonce',
|
||||
key: 'some-key',
|
||||
container
|
||||
})
|
||||
|
||||
sheet.insert('html { color: hotpink; }')
|
||||
|
||||
sheet.flush()
|
||||
```
|
||||
|
||||
# Thanks
|
||||
|
||||
This StyleSheet is based on [glamor's StyleSheet](https://github.com/threepointone/glamor) written by [Sunil Pai](https://github.com/threepointone). ❤️
|
||||
25
mc_test/node_modules/@emotion/sheet/dist/declarations/src/index.d.ts
generated
vendored
Executable file
25
mc_test/node_modules/@emotion/sheet/dist/declarations/src/index.d.ts
generated
vendored
Executable file
@ -0,0 +1,25 @@
|
||||
export type Options = {
|
||||
nonce?: string;
|
||||
key: string;
|
||||
container: Node;
|
||||
speedy?: boolean;
|
||||
prepend?: boolean;
|
||||
insertionPoint?: HTMLElement;
|
||||
};
|
||||
export declare class StyleSheet {
|
||||
isSpeedy: boolean;
|
||||
ctr: number;
|
||||
tags: HTMLStyleElement[];
|
||||
container: Node;
|
||||
key: string;
|
||||
nonce: string | undefined;
|
||||
prepend: boolean | undefined;
|
||||
before: Element | null;
|
||||
insertionPoint: HTMLElement | undefined;
|
||||
private _alreadyInsertedOrderInsensitiveRule;
|
||||
constructor(options: Options);
|
||||
private _insertTag;
|
||||
hydrate(nodes: HTMLStyleElement[]): void;
|
||||
insert(rule: string): void;
|
||||
flush(): void;
|
||||
}
|
||||
2
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.d.mts
generated
vendored
Executable file
2
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.d.mts
generated
vendored
Executable file
@ -0,0 +1,2 @@
|
||||
export * from "./declarations/src/index.js";
|
||||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1vdGlvbi1zaGVldC5janMuZC5tdHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuL2RlY2xhcmF0aW9ucy9zcmMvaW5kZXguZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSJ9
|
||||
2
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.d.ts
generated
vendored
Executable file
2
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.d.ts
generated
vendored
Executable file
@ -0,0 +1,2 @@
|
||||
export * from "./declarations/src/index";
|
||||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1vdGlvbi1zaGVldC5janMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4vZGVjbGFyYXRpb25zL3NyYy9pbmRleC5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBIn0=
|
||||
144
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.js
generated
vendored
Executable file
144
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.js
generated
vendored
Executable file
@ -0,0 +1,144 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
|
||||
var isDevelopment = false;
|
||||
|
||||
/*
|
||||
|
||||
Based off glamor's StyleSheet, thanks Sunil ❤️
|
||||
|
||||
high performance StyleSheet for css-in-js systems
|
||||
|
||||
- uses multiple style tags behind the scenes for millions of rules
|
||||
- uses `insertRule` for appending in production for *much* faster performance
|
||||
|
||||
// usage
|
||||
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
let styleSheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
styleSheet.insert('#box { border: 1px solid red; }')
|
||||
- appends a css rule into the stylesheet
|
||||
|
||||
styleSheet.flush()
|
||||
- empties the stylesheet of all its contents
|
||||
|
||||
*/
|
||||
|
||||
function sheetForTag(tag) {
|
||||
if (tag.sheet) {
|
||||
return tag.sheet;
|
||||
} // this weirdness brought to you by firefox
|
||||
|
||||
/* istanbul ignore next */
|
||||
|
||||
|
||||
for (var i = 0; i < document.styleSheets.length; i++) {
|
||||
if (document.styleSheets[i].ownerNode === tag) {
|
||||
return document.styleSheets[i];
|
||||
}
|
||||
} // this function should always return with a value
|
||||
// TS can't understand it though so we make it stop complaining here
|
||||
|
||||
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function createStyleElement(options) {
|
||||
var tag = document.createElement('style');
|
||||
tag.setAttribute('data-emotion', options.key);
|
||||
|
||||
if (options.nonce !== undefined) {
|
||||
tag.setAttribute('nonce', options.nonce);
|
||||
}
|
||||
|
||||
tag.appendChild(document.createTextNode(''));
|
||||
tag.setAttribute('data-s', '');
|
||||
return tag;
|
||||
}
|
||||
|
||||
var StyleSheet = /*#__PURE__*/function () {
|
||||
// Using Node instead of HTMLElement since container may be a ShadowRoot
|
||||
function StyleSheet(options) {
|
||||
var _this = this;
|
||||
|
||||
this._insertTag = function (tag) {
|
||||
var before;
|
||||
|
||||
if (_this.tags.length === 0) {
|
||||
if (_this.insertionPoint) {
|
||||
before = _this.insertionPoint.nextSibling;
|
||||
} else if (_this.prepend) {
|
||||
before = _this.container.firstChild;
|
||||
} else {
|
||||
before = _this.before;
|
||||
}
|
||||
} else {
|
||||
before = _this.tags[_this.tags.length - 1].nextSibling;
|
||||
}
|
||||
|
||||
_this.container.insertBefore(tag, before);
|
||||
|
||||
_this.tags.push(tag);
|
||||
};
|
||||
|
||||
this.isSpeedy = options.speedy === undefined ? !isDevelopment : options.speedy;
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
|
||||
|
||||
this.key = options.key;
|
||||
this.container = options.container;
|
||||
this.prepend = options.prepend;
|
||||
this.insertionPoint = options.insertionPoint;
|
||||
this.before = null;
|
||||
}
|
||||
|
||||
var _proto = StyleSheet.prototype;
|
||||
|
||||
_proto.hydrate = function hydrate(nodes) {
|
||||
nodes.forEach(this._insertTag);
|
||||
};
|
||||
|
||||
_proto.insert = function insert(rule) {
|
||||
// the max length is how many rules we have per style tag, it's 65000 in speedy mode
|
||||
// it's 1 in dev because we insert source maps that map a single rule to a location
|
||||
// and you can only have one source map per style tag
|
||||
if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
|
||||
this._insertTag(createStyleElement(this));
|
||||
}
|
||||
|
||||
var tag = this.tags[this.tags.length - 1];
|
||||
|
||||
if (this.isSpeedy) {
|
||||
var sheet = sheetForTag(tag);
|
||||
|
||||
try {
|
||||
// this is the ultrafast version, works across browsers
|
||||
// the big drawback is that the css won't be editable in devtools
|
||||
sheet.insertRule(rule, sheet.cssRules.length);
|
||||
} catch (e) {
|
||||
}
|
||||
} else {
|
||||
tag.appendChild(document.createTextNode(rule));
|
||||
}
|
||||
|
||||
this.ctr++;
|
||||
};
|
||||
|
||||
_proto.flush = function flush() {
|
||||
this.tags.forEach(function (tag) {
|
||||
var _tag$parentNode;
|
||||
|
||||
return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
|
||||
});
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
};
|
||||
|
||||
return StyleSheet;
|
||||
}();
|
||||
|
||||
exports.StyleSheet = StyleSheet;
|
||||
3
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.mjs
generated
vendored
Executable file
3
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.cjs.mjs
generated
vendored
Executable file
@ -0,0 +1,3 @@
|
||||
export {
|
||||
StyleSheet
|
||||
} from "./emotion-sheet.cjs.js";
|
||||
164
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.cjs.js
generated
vendored
Executable file
164
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.cjs.js
generated
vendored
Executable file
@ -0,0 +1,164 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
|
||||
var isDevelopment = true;
|
||||
|
||||
/*
|
||||
|
||||
Based off glamor's StyleSheet, thanks Sunil ❤️
|
||||
|
||||
high performance StyleSheet for css-in-js systems
|
||||
|
||||
- uses multiple style tags behind the scenes for millions of rules
|
||||
- uses `insertRule` for appending in production for *much* faster performance
|
||||
|
||||
// usage
|
||||
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
let styleSheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
styleSheet.insert('#box { border: 1px solid red; }')
|
||||
- appends a css rule into the stylesheet
|
||||
|
||||
styleSheet.flush()
|
||||
- empties the stylesheet of all its contents
|
||||
|
||||
*/
|
||||
|
||||
function sheetForTag(tag) {
|
||||
if (tag.sheet) {
|
||||
return tag.sheet;
|
||||
} // this weirdness brought to you by firefox
|
||||
|
||||
/* istanbul ignore next */
|
||||
|
||||
|
||||
for (var i = 0; i < document.styleSheets.length; i++) {
|
||||
if (document.styleSheets[i].ownerNode === tag) {
|
||||
return document.styleSheets[i];
|
||||
}
|
||||
} // this function should always return with a value
|
||||
// TS can't understand it though so we make it stop complaining here
|
||||
|
||||
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function createStyleElement(options) {
|
||||
var tag = document.createElement('style');
|
||||
tag.setAttribute('data-emotion', options.key);
|
||||
|
||||
if (options.nonce !== undefined) {
|
||||
tag.setAttribute('nonce', options.nonce);
|
||||
}
|
||||
|
||||
tag.appendChild(document.createTextNode(''));
|
||||
tag.setAttribute('data-s', '');
|
||||
return tag;
|
||||
}
|
||||
|
||||
var StyleSheet = /*#__PURE__*/function () {
|
||||
// Using Node instead of HTMLElement since container may be a ShadowRoot
|
||||
function StyleSheet(options) {
|
||||
var _this = this;
|
||||
|
||||
this._insertTag = function (tag) {
|
||||
var before;
|
||||
|
||||
if (_this.tags.length === 0) {
|
||||
if (_this.insertionPoint) {
|
||||
before = _this.insertionPoint.nextSibling;
|
||||
} else if (_this.prepend) {
|
||||
before = _this.container.firstChild;
|
||||
} else {
|
||||
before = _this.before;
|
||||
}
|
||||
} else {
|
||||
before = _this.tags[_this.tags.length - 1].nextSibling;
|
||||
}
|
||||
|
||||
_this.container.insertBefore(tag, before);
|
||||
|
||||
_this.tags.push(tag);
|
||||
};
|
||||
|
||||
this.isSpeedy = options.speedy === undefined ? !isDevelopment : options.speedy;
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
|
||||
|
||||
this.key = options.key;
|
||||
this.container = options.container;
|
||||
this.prepend = options.prepend;
|
||||
this.insertionPoint = options.insertionPoint;
|
||||
this.before = null;
|
||||
}
|
||||
|
||||
var _proto = StyleSheet.prototype;
|
||||
|
||||
_proto.hydrate = function hydrate(nodes) {
|
||||
nodes.forEach(this._insertTag);
|
||||
};
|
||||
|
||||
_proto.insert = function insert(rule) {
|
||||
// the max length is how many rules we have per style tag, it's 65000 in speedy mode
|
||||
// it's 1 in dev because we insert source maps that map a single rule to a location
|
||||
// and you can only have one source map per style tag
|
||||
if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
|
||||
this._insertTag(createStyleElement(this));
|
||||
}
|
||||
|
||||
var tag = this.tags[this.tags.length - 1];
|
||||
|
||||
{
|
||||
var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;
|
||||
|
||||
if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {
|
||||
// this would only cause problem in speedy mode
|
||||
// but we don't want enabling speedy to affect the observable behavior
|
||||
// so we report this error at all times
|
||||
console.error("You're attempting to insert the following rule:\n" + rule + '\n\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');
|
||||
}
|
||||
|
||||
this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;
|
||||
}
|
||||
|
||||
if (this.isSpeedy) {
|
||||
var sheet = sheetForTag(tag);
|
||||
|
||||
try {
|
||||
// this is the ultrafast version, works across browsers
|
||||
// the big drawback is that the css won't be editable in devtools
|
||||
sheet.insertRule(rule, sheet.cssRules.length);
|
||||
} catch (e) {
|
||||
if (!/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {
|
||||
console.error("There was a problem inserting the following rule: \"" + rule + "\"", e);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tag.appendChild(document.createTextNode(rule));
|
||||
}
|
||||
|
||||
this.ctr++;
|
||||
};
|
||||
|
||||
_proto.flush = function flush() {
|
||||
this.tags.forEach(function (tag) {
|
||||
var _tag$parentNode;
|
||||
|
||||
return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
|
||||
});
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
|
||||
{
|
||||
this._alreadyInsertedOrderInsensitiveRule = false;
|
||||
}
|
||||
};
|
||||
|
||||
return StyleSheet;
|
||||
}();
|
||||
|
||||
exports.StyleSheet = StyleSheet;
|
||||
3
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.cjs.mjs
generated
vendored
Executable file
3
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.cjs.mjs
generated
vendored
Executable file
@ -0,0 +1,3 @@
|
||||
export {
|
||||
StyleSheet
|
||||
} from "./emotion-sheet.development.cjs.js";
|
||||
160
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.esm.js
generated
vendored
Executable file
160
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.development.esm.js
generated
vendored
Executable file
@ -0,0 +1,160 @@
|
||||
var isDevelopment = true;
|
||||
|
||||
/*
|
||||
|
||||
Based off glamor's StyleSheet, thanks Sunil ❤️
|
||||
|
||||
high performance StyleSheet for css-in-js systems
|
||||
|
||||
- uses multiple style tags behind the scenes for millions of rules
|
||||
- uses `insertRule` for appending in production for *much* faster performance
|
||||
|
||||
// usage
|
||||
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
let styleSheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
styleSheet.insert('#box { border: 1px solid red; }')
|
||||
- appends a css rule into the stylesheet
|
||||
|
||||
styleSheet.flush()
|
||||
- empties the stylesheet of all its contents
|
||||
|
||||
*/
|
||||
|
||||
function sheetForTag(tag) {
|
||||
if (tag.sheet) {
|
||||
return tag.sheet;
|
||||
} // this weirdness brought to you by firefox
|
||||
|
||||
/* istanbul ignore next */
|
||||
|
||||
|
||||
for (var i = 0; i < document.styleSheets.length; i++) {
|
||||
if (document.styleSheets[i].ownerNode === tag) {
|
||||
return document.styleSheets[i];
|
||||
}
|
||||
} // this function should always return with a value
|
||||
// TS can't understand it though so we make it stop complaining here
|
||||
|
||||
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function createStyleElement(options) {
|
||||
var tag = document.createElement('style');
|
||||
tag.setAttribute('data-emotion', options.key);
|
||||
|
||||
if (options.nonce !== undefined) {
|
||||
tag.setAttribute('nonce', options.nonce);
|
||||
}
|
||||
|
||||
tag.appendChild(document.createTextNode(''));
|
||||
tag.setAttribute('data-s', '');
|
||||
return tag;
|
||||
}
|
||||
|
||||
var StyleSheet = /*#__PURE__*/function () {
|
||||
// Using Node instead of HTMLElement since container may be a ShadowRoot
|
||||
function StyleSheet(options) {
|
||||
var _this = this;
|
||||
|
||||
this._insertTag = function (tag) {
|
||||
var before;
|
||||
|
||||
if (_this.tags.length === 0) {
|
||||
if (_this.insertionPoint) {
|
||||
before = _this.insertionPoint.nextSibling;
|
||||
} else if (_this.prepend) {
|
||||
before = _this.container.firstChild;
|
||||
} else {
|
||||
before = _this.before;
|
||||
}
|
||||
} else {
|
||||
before = _this.tags[_this.tags.length - 1].nextSibling;
|
||||
}
|
||||
|
||||
_this.container.insertBefore(tag, before);
|
||||
|
||||
_this.tags.push(tag);
|
||||
};
|
||||
|
||||
this.isSpeedy = options.speedy === undefined ? !isDevelopment : options.speedy;
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
|
||||
|
||||
this.key = options.key;
|
||||
this.container = options.container;
|
||||
this.prepend = options.prepend;
|
||||
this.insertionPoint = options.insertionPoint;
|
||||
this.before = null;
|
||||
}
|
||||
|
||||
var _proto = StyleSheet.prototype;
|
||||
|
||||
_proto.hydrate = function hydrate(nodes) {
|
||||
nodes.forEach(this._insertTag);
|
||||
};
|
||||
|
||||
_proto.insert = function insert(rule) {
|
||||
// the max length is how many rules we have per style tag, it's 65000 in speedy mode
|
||||
// it's 1 in dev because we insert source maps that map a single rule to a location
|
||||
// and you can only have one source map per style tag
|
||||
if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
|
||||
this._insertTag(createStyleElement(this));
|
||||
}
|
||||
|
||||
var tag = this.tags[this.tags.length - 1];
|
||||
|
||||
{
|
||||
var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;
|
||||
|
||||
if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {
|
||||
// this would only cause problem in speedy mode
|
||||
// but we don't want enabling speedy to affect the observable behavior
|
||||
// so we report this error at all times
|
||||
console.error("You're attempting to insert the following rule:\n" + rule + '\n\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');
|
||||
}
|
||||
|
||||
this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;
|
||||
}
|
||||
|
||||
if (this.isSpeedy) {
|
||||
var sheet = sheetForTag(tag);
|
||||
|
||||
try {
|
||||
// this is the ultrafast version, works across browsers
|
||||
// the big drawback is that the css won't be editable in devtools
|
||||
sheet.insertRule(rule, sheet.cssRules.length);
|
||||
} catch (e) {
|
||||
if (!/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {
|
||||
console.error("There was a problem inserting the following rule: \"" + rule + "\"", e);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tag.appendChild(document.createTextNode(rule));
|
||||
}
|
||||
|
||||
this.ctr++;
|
||||
};
|
||||
|
||||
_proto.flush = function flush() {
|
||||
this.tags.forEach(function (tag) {
|
||||
var _tag$parentNode;
|
||||
|
||||
return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
|
||||
});
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
|
||||
{
|
||||
this._alreadyInsertedOrderInsensitiveRule = false;
|
||||
}
|
||||
};
|
||||
|
||||
return StyleSheet;
|
||||
}();
|
||||
|
||||
export { StyleSheet };
|
||||
140
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js
generated
vendored
Executable file
140
mc_test/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js
generated
vendored
Executable file
@ -0,0 +1,140 @@
|
||||
var isDevelopment = false;
|
||||
|
||||
/*
|
||||
|
||||
Based off glamor's StyleSheet, thanks Sunil ❤️
|
||||
|
||||
high performance StyleSheet for css-in-js systems
|
||||
|
||||
- uses multiple style tags behind the scenes for millions of rules
|
||||
- uses `insertRule` for appending in production for *much* faster performance
|
||||
|
||||
// usage
|
||||
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
let styleSheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
styleSheet.insert('#box { border: 1px solid red; }')
|
||||
- appends a css rule into the stylesheet
|
||||
|
||||
styleSheet.flush()
|
||||
- empties the stylesheet of all its contents
|
||||
|
||||
*/
|
||||
|
||||
function sheetForTag(tag) {
|
||||
if (tag.sheet) {
|
||||
return tag.sheet;
|
||||
} // this weirdness brought to you by firefox
|
||||
|
||||
/* istanbul ignore next */
|
||||
|
||||
|
||||
for (var i = 0; i < document.styleSheets.length; i++) {
|
||||
if (document.styleSheets[i].ownerNode === tag) {
|
||||
return document.styleSheets[i];
|
||||
}
|
||||
} // this function should always return with a value
|
||||
// TS can't understand it though so we make it stop complaining here
|
||||
|
||||
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function createStyleElement(options) {
|
||||
var tag = document.createElement('style');
|
||||
tag.setAttribute('data-emotion', options.key);
|
||||
|
||||
if (options.nonce !== undefined) {
|
||||
tag.setAttribute('nonce', options.nonce);
|
||||
}
|
||||
|
||||
tag.appendChild(document.createTextNode(''));
|
||||
tag.setAttribute('data-s', '');
|
||||
return tag;
|
||||
}
|
||||
|
||||
var StyleSheet = /*#__PURE__*/function () {
|
||||
// Using Node instead of HTMLElement since container may be a ShadowRoot
|
||||
function StyleSheet(options) {
|
||||
var _this = this;
|
||||
|
||||
this._insertTag = function (tag) {
|
||||
var before;
|
||||
|
||||
if (_this.tags.length === 0) {
|
||||
if (_this.insertionPoint) {
|
||||
before = _this.insertionPoint.nextSibling;
|
||||
} else if (_this.prepend) {
|
||||
before = _this.container.firstChild;
|
||||
} else {
|
||||
before = _this.before;
|
||||
}
|
||||
} else {
|
||||
before = _this.tags[_this.tags.length - 1].nextSibling;
|
||||
}
|
||||
|
||||
_this.container.insertBefore(tag, before);
|
||||
|
||||
_this.tags.push(tag);
|
||||
};
|
||||
|
||||
this.isSpeedy = options.speedy === undefined ? !isDevelopment : options.speedy;
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
|
||||
|
||||
this.key = options.key;
|
||||
this.container = options.container;
|
||||
this.prepend = options.prepend;
|
||||
this.insertionPoint = options.insertionPoint;
|
||||
this.before = null;
|
||||
}
|
||||
|
||||
var _proto = StyleSheet.prototype;
|
||||
|
||||
_proto.hydrate = function hydrate(nodes) {
|
||||
nodes.forEach(this._insertTag);
|
||||
};
|
||||
|
||||
_proto.insert = function insert(rule) {
|
||||
// the max length is how many rules we have per style tag, it's 65000 in speedy mode
|
||||
// it's 1 in dev because we insert source maps that map a single rule to a location
|
||||
// and you can only have one source map per style tag
|
||||
if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
|
||||
this._insertTag(createStyleElement(this));
|
||||
}
|
||||
|
||||
var tag = this.tags[this.tags.length - 1];
|
||||
|
||||
if (this.isSpeedy) {
|
||||
var sheet = sheetForTag(tag);
|
||||
|
||||
try {
|
||||
// this is the ultrafast version, works across browsers
|
||||
// the big drawback is that the css won't be editable in devtools
|
||||
sheet.insertRule(rule, sheet.cssRules.length);
|
||||
} catch (e) {
|
||||
}
|
||||
} else {
|
||||
tag.appendChild(document.createTextNode(rule));
|
||||
}
|
||||
|
||||
this.ctr++;
|
||||
};
|
||||
|
||||
_proto.flush = function flush() {
|
||||
this.tags.forEach(function (tag) {
|
||||
var _tag$parentNode;
|
||||
|
||||
return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
|
||||
});
|
||||
this.tags = [];
|
||||
this.ctr = 0;
|
||||
};
|
||||
|
||||
return StyleSheet;
|
||||
}();
|
||||
|
||||
export { StyleSheet };
|
||||
47
mc_test/node_modules/@emotion/sheet/package.json
generated
vendored
Executable file
47
mc_test/node_modules/@emotion/sheet/package.json
generated
vendored
Executable file
@ -0,0 +1,47 @@
|
||||
{
|
||||
"name": "@emotion/sheet",
|
||||
"version": "1.4.0",
|
||||
"description": "emotion's stylesheet",
|
||||
"main": "dist/emotion-sheet.cjs.js",
|
||||
"module": "dist/emotion-sheet.esm.js",
|
||||
"types": "dist/emotion-sheet.cjs.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"types": {
|
||||
"import": "./dist/emotion-sheet.cjs.mjs",
|
||||
"default": "./dist/emotion-sheet.cjs.js"
|
||||
},
|
||||
"development": {
|
||||
"module": "./dist/emotion-sheet.development.esm.js",
|
||||
"import": "./dist/emotion-sheet.development.cjs.mjs",
|
||||
"default": "./dist/emotion-sheet.development.cjs.js"
|
||||
},
|
||||
"module": "./dist/emotion-sheet.esm.js",
|
||||
"import": "./dist/emotion-sheet.cjs.mjs",
|
||||
"default": "./dist/emotion-sheet.cjs.js"
|
||||
},
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
"imports": {
|
||||
"#is-development": {
|
||||
"development": "./src/conditions/true.ts",
|
||||
"default": "./src/conditions/false.ts"
|
||||
}
|
||||
},
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"test:typescript": "dtslint types"
|
||||
},
|
||||
"repository": "https://github.com/emotion-js/emotion/tree/main/packages/sheet",
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"files": [
|
||||
"src",
|
||||
"dist"
|
||||
],
|
||||
"devDependencies": {
|
||||
"@definitelytyped/dtslint": "0.0.112",
|
||||
"typescript": "^5.4.5"
|
||||
}
|
||||
}
|
||||
1
mc_test/node_modules/@emotion/sheet/src/conditions/false.ts
generated
vendored
Executable file
1
mc_test/node_modules/@emotion/sheet/src/conditions/false.ts
generated
vendored
Executable file
@ -0,0 +1 @@
|
||||
export default false
|
||||
1
mc_test/node_modules/@emotion/sheet/src/conditions/true.ts
generated
vendored
Executable file
1
mc_test/node_modules/@emotion/sheet/src/conditions/true.ts
generated
vendored
Executable file
@ -0,0 +1 @@
|
||||
export default true
|
||||
173
mc_test/node_modules/@emotion/sheet/src/index.ts
generated
vendored
Executable file
173
mc_test/node_modules/@emotion/sheet/src/index.ts
generated
vendored
Executable file
@ -0,0 +1,173 @@
|
||||
import isDevelopment from '#is-development'
|
||||
/*
|
||||
|
||||
Based off glamor's StyleSheet, thanks Sunil ❤️
|
||||
|
||||
high performance StyleSheet for css-in-js systems
|
||||
|
||||
- uses multiple style tags behind the scenes for millions of rules
|
||||
- uses `insertRule` for appending in production for *much* faster performance
|
||||
|
||||
// usage
|
||||
|
||||
import { StyleSheet } from '@emotion/sheet'
|
||||
|
||||
let styleSheet = new StyleSheet({ key: '', container: document.head })
|
||||
|
||||
styleSheet.insert('#box { border: 1px solid red; }')
|
||||
- appends a css rule into the stylesheet
|
||||
|
||||
styleSheet.flush()
|
||||
- empties the stylesheet of all its contents
|
||||
|
||||
*/
|
||||
|
||||
function sheetForTag(tag: HTMLStyleElement): CSSStyleSheet {
|
||||
if (tag.sheet) {
|
||||
return tag.sheet
|
||||
}
|
||||
|
||||
// this weirdness brought to you by firefox
|
||||
/* istanbul ignore next */
|
||||
for (let i = 0; i < document.styleSheets.length; i++) {
|
||||
if (document.styleSheets[i].ownerNode === tag) {
|
||||
return document.styleSheets[i]
|
||||
}
|
||||
}
|
||||
|
||||
// this function should always return with a value
|
||||
// TS can't understand it though so we make it stop complaining here
|
||||
return undefined as any
|
||||
}
|
||||
|
||||
export type Options = {
|
||||
nonce?: string
|
||||
key: string
|
||||
container: Node
|
||||
speedy?: boolean
|
||||
prepend?: boolean
|
||||
insertionPoint?: HTMLElement
|
||||
}
|
||||
|
||||
function createStyleElement(options: Options): HTMLStyleElement {
|
||||
let tag = document.createElement('style')
|
||||
tag.setAttribute('data-emotion', options.key)
|
||||
if (options.nonce !== undefined) {
|
||||
tag.setAttribute('nonce', options.nonce)
|
||||
}
|
||||
tag.appendChild(document.createTextNode(''))
|
||||
tag.setAttribute('data-s', '')
|
||||
return tag
|
||||
}
|
||||
|
||||
export class StyleSheet {
|
||||
isSpeedy: boolean
|
||||
ctr: number
|
||||
tags: HTMLStyleElement[]
|
||||
// Using Node instead of HTMLElement since container may be a ShadowRoot
|
||||
container: Node
|
||||
key: string
|
||||
nonce: string | undefined
|
||||
prepend: boolean | undefined
|
||||
before: Element | null
|
||||
insertionPoint: HTMLElement | undefined
|
||||
|
||||
private _alreadyInsertedOrderInsensitiveRule: boolean | undefined
|
||||
|
||||
constructor(options: Options) {
|
||||
this.isSpeedy =
|
||||
options.speedy === undefined ? !isDevelopment : options.speedy
|
||||
this.tags = []
|
||||
this.ctr = 0
|
||||
this.nonce = options.nonce
|
||||
// key is the value of the data-emotion attribute, it's used to identify different sheets
|
||||
this.key = options.key
|
||||
this.container = options.container
|
||||
this.prepend = options.prepend
|
||||
this.insertionPoint = options.insertionPoint
|
||||
this.before = null
|
||||
}
|
||||
|
||||
private _insertTag = (tag: HTMLStyleElement): void => {
|
||||
let before
|
||||
if (this.tags.length === 0) {
|
||||
if (this.insertionPoint) {
|
||||
before = this.insertionPoint.nextSibling
|
||||
} else if (this.prepend) {
|
||||
before = this.container.firstChild
|
||||
} else {
|
||||
before = this.before
|
||||
}
|
||||
} else {
|
||||
before = this.tags[this.tags.length - 1].nextSibling
|
||||
}
|
||||
this.container.insertBefore(tag, before)
|
||||
this.tags.push(tag)
|
||||
}
|
||||
|
||||
hydrate(nodes: HTMLStyleElement[]): void {
|
||||
nodes.forEach(this._insertTag)
|
||||
}
|
||||
|
||||
insert(rule: string): void {
|
||||
// the max length is how many rules we have per style tag, it's 65000 in speedy mode
|
||||
// it's 1 in dev because we insert source maps that map a single rule to a location
|
||||
// and you can only have one source map per style tag
|
||||
if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
|
||||
this._insertTag(createStyleElement(this))
|
||||
}
|
||||
const tag = this.tags[this.tags.length - 1]
|
||||
|
||||
if (isDevelopment) {
|
||||
const isImportRule =
|
||||
rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105
|
||||
|
||||
if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {
|
||||
// this would only cause problem in speedy mode
|
||||
// but we don't want enabling speedy to affect the observable behavior
|
||||
// so we report this error at all times
|
||||
console.error(
|
||||
`You're attempting to insert the following rule:\n` +
|
||||
rule +
|
||||
'\n\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.'
|
||||
)
|
||||
}
|
||||
|
||||
this._alreadyInsertedOrderInsensitiveRule =
|
||||
this._alreadyInsertedOrderInsensitiveRule || !isImportRule
|
||||
}
|
||||
|
||||
if (this.isSpeedy) {
|
||||
const sheet = sheetForTag(tag)
|
||||
try {
|
||||
// this is the ultrafast version, works across browsers
|
||||
// the big drawback is that the css won't be editable in devtools
|
||||
sheet.insertRule(rule, sheet.cssRules.length)
|
||||
} catch (e) {
|
||||
if (
|
||||
isDevelopment &&
|
||||
!/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(
|
||||
rule
|
||||
)
|
||||
) {
|
||||
console.error(
|
||||
`There was a problem inserting the following rule: "${rule}"`,
|
||||
e
|
||||
)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tag.appendChild(document.createTextNode(rule))
|
||||
}
|
||||
this.ctr++
|
||||
}
|
||||
|
||||
flush(): void {
|
||||
this.tags.forEach(tag => tag.parentNode?.removeChild(tag))
|
||||
this.tags = []
|
||||
this.ctr = 0
|
||||
if (isDevelopment) {
|
||||
this._alreadyInsertedOrderInsensitiveRule = false
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user