123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- // 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 (option) "./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 (test=test) "./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-empty {
- val1: foo;
- test-collapse();
- val2: foo;
- }
- .test-simple {
- @plugin "./plugin/plugin-simple";
- value: pi-anon();
- value: (pi() * 2);
- }
- .test-conflicts {
- @plugin "./plugin/plugin-scope1";
- value: foo();
- }
- .test-conflicts {
- @plugin "./plugin/plugin-scope2";
- value: foo();
- }
- .test-conflicts {
- @plugin "./plugin/plugin-scope1";
- value: foo();
- }
- .test-collection {
- @plugin "./plugin/plugin-collection";
- @var: 32;
- store(@var);
- store(5);
- store("bird");
- list: list();
- }
- test-atrule("@charset"; '"utf-8"');
- test-atrule("@arbitrary"; "value after ()");
- // no minVersion specified
- @plugin (option1) "./plugin/plugin-set-options";
- @plugin "./plugin/plugin-set-options";
- @plugin (option2) "./plugin/plugin-set-options";
- @plugin "./plugin/plugin-set-options";
- @plugin (option3) "./plugin/plugin-set-options";
- // specifies minVersion: [2,0,0]
- @plugin (option1) "./plugin/plugin-set-options-v2";
- @plugin "./plugin/plugin-set-options-v2";
- @plugin (option2) "./plugin/plugin-set-options-v2";
- @plugin "./plugin/plugin-set-options-v2";
- @plugin (option3) "./plugin/plugin-set-options-v2";
- // specifies minVersion: [3,0,0]
- @plugin (option1) "./plugin/plugin-set-options-v3";
- @plugin "./plugin/plugin-set-options-v3";
- @plugin (option2) "./plugin/plugin-set-options-v3";
- @plugin "./plugin/plugin-set-options-v3";
- @plugin (option3) "./plugin/plugin-set-options-v3";
|