summaryrefslogtreecommitdiffstats
path: root/src/components/atoms/icons/posts-stack.module.scss
blob: a22d265627792c16c5c63cc3fde833ea23187577 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@use "@styles/abstracts/functions" as fun;

.icon {
  display: block;
  width: var(--icon-size, #{fun.convert-px(40)});
}

.lines {
  fill: var(--color-fg);
  stroke-width: 4;
}

.picture {
  fill: var(--color-primary-lighter);
  stroke: var(--color-primary-darker);
}

.background {
  fill: var(--color-bg);
  stroke: var(--color-primary-darker);
  stroke-width: 4;
}
gated lookaheads like `[ \t]+(?![ \t])`. This is a trick to ensure // that quantifiers behave *atomically*. Atomic quantifiers are necessary to prevent exponential backtracking. var spaceAfterBackSlash = /\\[\r\n](?:\s|\\[\r\n]|#.*(?!.))*(?![\s#]|\\[\r\n])/.source; // At least one space, comment, or line break var space = /(?:[ \t]+(?![ \t])(?:<SP_BS>)?|<SP_BS>)/.source.replace( /<SP_BS>/g, function () { return spaceAfterBackSlash; } ); var string = /"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"|'(?:[^'\\\r\n]|\\(?:\r\n|[\s\S]))*'/ .source; var option = /--[\w-]+=(?:<STR>|(?!["'])(?:[^\s\\]|\\.)+)/.source.replace( /<STR>/g, function () { return string; } ); var stringRule = { pattern: RegExp(string), greedy: true, }; var commentRule = { pattern: /(^[ \t]*)#.*/m, lookbehind: true, greedy: true, }; /** * @param {string} source * @param {string} flags * @returns {RegExp} */ function re(source, flags) { source = source .replace(/<OPT>/g, function () { return option; }) .replace(/<SP>/g, function () { return space; }); return RegExp(source, flags); } Prism.languages.docker = { instruction: { pattern: /(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im, lookbehind: true, greedy: true, inside: { options: { pattern: re( /(^(?:ONBUILD<SP>)?\w+<SP>)<OPT>(?:<SP><OPT>)*/.source, 'i' ), lookbehind: true, greedy: true, inside: { property: { pattern: /(^|\s)--[\w-]+/, lookbehind: true, }, string: [ stringRule, { pattern: /(=)(?!["'])(?:[^\s\\]|\\.)+/, lookbehind: true, }, ], operator: /\\$/m, punctuation: /=/, }, }, keyword: [ { // https://docs.docker.com/engine/reference/builder/#healthcheck pattern: re( /(^(?:ONBUILD<SP>)?HEALTHCHECK<SP>(?:<OPT><SP>)*)(?:CMD|NONE)\b/ .source, 'i' ), lookbehind: true, greedy: true, }, { // https://docs.docker.com/engine/reference/builder/#from pattern: re( /(^(?:ONBUILD<SP>)?FROM<SP>(?:<OPT><SP>)*(?!--)[^ \t\\]+<SP>)AS/ .source, 'i' ), lookbehind: true, greedy: true, }, { // https://docs.docker.com/engine/reference/builder/#onbuild pattern: re(/(^ONBUILD<SP>)\w+/.source, 'i'), lookbehind: true, greedy: true, }, { pattern: /^\w+/, greedy: true, }, ], comment: commentRule, string: stringRule, variable: /\$(?:\w+|\{[^{}"'\\]*\})/, operator: /\\$/m, }, }, comment: commentRule, }; Prism.languages.dockerfile = Prism.languages.docker; })(Prism);