94 lines
2.0 KiB
Plaintext
94 lines
2.0 KiB
Plaintext
|
// importing plugin globally
|
||
|
@plugin "./plugin/plugin-global";
|
||
|
|
||
|
// transitively include plugins from importing another sheet
|
||
|
@import "./plugin/plugin-transitive";
|
||
|
|
||
|
|
||
|
// `test-global` function should be reachable
|
||
|
// `test-local` function should not be reachable
|
||
|
// `test-shadow` function should return global version
|
||
|
.class {
|
||
|
trans : test-transitive();
|
||
|
global : test-global();
|
||
|
local : test-local();
|
||
|
shadow : test-shadow();
|
||
|
|
||
|
// `test-global` function should propagate and be reachable
|
||
|
// `test-local` function should be reachable
|
||
|
// `test-shadow` function should return local version, shadowing global version
|
||
|
.local {
|
||
|
@plugin "./plugin/plugin-local";
|
||
|
global : test-global();
|
||
|
local : test-local();
|
||
|
shadow : test-shadow();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// calling a mixin or detached ruleset should not bubble local plugins
|
||
|
// imported inside either into the parent scope.
|
||
|
.mixin() {
|
||
|
@plugin "./plugin/plugin-local";
|
||
|
mixin-local : test-local();
|
||
|
mixin-global : test-global();
|
||
|
mixin-shadow : test-shadow();
|
||
|
}
|
||
|
@ruleset : {
|
||
|
@plugin "./plugin/plugin-local";
|
||
|
ruleset-local : test-local();
|
||
|
ruleset-global : test-global();
|
||
|
ruleset-shadow : test-shadow();
|
||
|
};
|
||
|
#ns {
|
||
|
@plugin "./plugin/plugin-local";
|
||
|
.mixin() {
|
||
|
ns-mixin-global : test-global();
|
||
|
ns-mixin-local : test-local();
|
||
|
ns-mixin-shadow : test-shadow();
|
||
|
}
|
||
|
}
|
||
|
.class {
|
||
|
#ns > .mixin();
|
||
|
.mixin();
|
||
|
@ruleset();
|
||
|
class-local : test-local();
|
||
|
}
|
||
|
|
||
|
|
||
|
// `test-global` function should propagate into directive scope
|
||
|
@media screen {
|
||
|
.test {
|
||
|
result : test-global();
|
||
|
}
|
||
|
}
|
||
|
@font-face {
|
||
|
result : test-global();
|
||
|
}
|
||
|
|
||
|
// `test-global` function should propagate into nested directive scopes
|
||
|
@media screen and (min-width:100px) {
|
||
|
@media (max-width:400px) {
|
||
|
.test {
|
||
|
result : test-global();
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.test {
|
||
|
@media screen {
|
||
|
@plugin "./plugin/plugin-local";
|
||
|
result : test-local();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@plugin "./plugin/plugin-tree-nodes";
|
||
|
@ruleset2: test-detached-ruleset();
|
||
|
.root {
|
||
|
@ruleset2();
|
||
|
}
|
||
|
|
||
|
test-directive("@charset"; '"utf-8"');
|
||
|
test-directive("@arbitrary"; "value after ()");
|
||
|
|
||
|
|