proscenium 0.1.1-x86_64-darwin → 0.1.2-x86_64-darwin

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 82bdc1e3df5b94c577cdd159809c14e40f1222ea4ac95cf5a71edda446e7b7c1
4
- data.tar.gz: e93f0dfbdefbfab76434394ccea87ece4fdda8d24c9d0e130e2260268607a1fb
3
+ metadata.gz: ad7315e0b0349ce11b5629c744808ce9a80050a32eb942bf2572e38a534b9fa9
4
+ data.tar.gz: e93884817dea84e7251a0660d6d2ba650a7643c3e81f7787885e4ea13a904c02
5
5
  SHA512:
6
- metadata.gz: 5eda3a1219261bfa360f2934c1a16bf1c2b2829702fe8bc60cdecb27bf409b1d111400b646a9b45a71ec024a11a55facf1db4a8eef4bfa3cbb4d052a7972e6bb
7
- data.tar.gz: 8f12932f6f6ca57437f273e7c95d765175ffcac0d8dd569b9570f0d7ca642ba8915f3f3264835eea5c1d0fc8176bc669a8bc9f1ae0bde466dc35220320a6d008
6
+ metadata.gz: 57badd536fa32f94881fa5e02e9115510ffa1397d6425fe2ffb4438505c6eb042a8ceb87cea336939ba6972b9bcf08aab8172b7662026e964c071d0de9efd456
7
+ data.tar.gz: 895b1138be200a6fb6a824309d2091d64e11d90ccc12fcb039aa91db73fe633123220cdf5f4a062490d34febe0bea47a743b797bcee77d463e215878464792be
data/bin/esbuild CHANGED
Binary file
@@ -1,6 +1,8 @@
1
1
  export default class ArgumentError extends Error {
2
2
  static MESSAGES = {
3
3
  rootRequired: 'Current working directory is required as --root.',
4
+ lightningcssBinRequired:
5
+ 'Path to the lightningcss CLI binary is required as --lightningcss-bin.',
4
6
  pathsRequired: 'One or more file paths or globs are required.',
5
7
 
6
8
  rootUnknown: ({ root }) => `A valid working directory is required - received ${root}`
@@ -1,16 +1,12 @@
1
1
  import { crypto } from 'std/crypto/mod.ts'
2
- import { join, resolve, dirname, basename, fromFileUrl } from 'std/path/mod.ts'
2
+ import { join, dirname, basename } from 'std/path/mod.ts'
3
3
 
4
4
  import { fileExists } from '../../utils.js'
5
5
  import postcss from './css/postcss.js'
6
6
  import setup from './setup_plugin.js'
7
7
 
8
- export default setup('css', async build => {
8
+ export default setup('css', async (build, options) => {
9
9
  const cwd = build.initialOptions.absWorkingDir
10
- const lightningcssBin = resolve(
11
- dirname(fromFileUrl(import.meta.url)),
12
- '../../../../bin/lightningcss'
13
- )
14
10
 
15
11
  let customMedia
16
12
  try {
@@ -40,7 +36,7 @@ export default setup('css', async build => {
40
36
  }
41
37
 
42
38
  let cmd = [
43
- lightningcssBin,
39
+ options.lightningcssBin,
44
40
  '--nesting',
45
41
  '--error-recovery',
46
42
  args.pluginData?.importedFromJs && '--minify',
@@ -31,6 +31,8 @@ import throwCompileError from './esbuild/compile_error.js'
31
31
  * take place.
32
32
  * --import-map
33
33
  * Path to an import map, relative to the <root>.
34
+ * --lightningcss-bin
35
+ * Path to the lightningcss CLI binary.
34
36
  * --write
35
37
  * Write output to the filesystem according to esbuild logic.
36
38
  * --debug
@@ -40,10 +42,11 @@ if (import.meta.main) {
40
42
  !Deno.env.get('RAILS_ENV') && Deno.env.set('RAILS_ENV', 'development')
41
43
 
42
44
  const { _: paths, ...options } = parseArgs(Deno.args, {
43
- string: ['root', 'import-map'],
45
+ string: ['root', 'import-map', 'lightningcss-bin'],
44
46
  boolean: ['write', 'debug'],
45
47
  alias: {
46
- 'import-map': 'importMap'
48
+ 'import-map': 'importMap',
49
+ 'lightningcss-bin': 'lightningcssBin'
47
50
  }
48
51
  })
49
52
 
@@ -62,6 +65,7 @@ async function main(paths = [], options = {}) {
62
65
 
63
66
  if (!Array.isArray(paths) || paths.length < 1) throw new ArgumentError('pathsRequired')
64
67
  if (!options.root) throw new ArgumentError('rootRequired')
68
+ if (!options.lightningcssBin) throw new ArgumentError('lightningcssBinRequired')
65
69
 
66
70
  const root = resolve(options.root)
67
71
 
@@ -117,7 +121,11 @@ async function main(paths = [], options = {}) {
117
121
  jsxDev: !isTest && !isProd,
118
122
  minify: isProd,
119
123
  bundle: true,
120
- plugins: [envPlugin(), resolvePlugin({ runtimeDir, importMap, debug }), cssPlugin({ debug })],
124
+ plugins: [
125
+ envPlugin(),
126
+ resolvePlugin({ runtimeDir, importMap, debug }),
127
+ cssPlugin({ lightningcssBin: options.lightningcssBin, debug })
128
+ ],
121
129
  metafile: write,
122
130
  write
123
131
  }
@@ -15,7 +15,9 @@ module Proscenium
15
15
 
16
16
  def attempt
17
17
  benchmark :esbuild do
18
- render_response build("#{cli} --root #{root} #{path}")
18
+ render_response build(
19
+ "#{cli} --root #{root} --lightningcss-bin #{lightningcss_cli} #{path}"
20
+ )
19
21
  end
20
22
  rescue CompileError => e
21
23
  render_response "export default #{e.detail.to_json}" do |response|
@@ -38,6 +40,14 @@ module Proscenium
38
40
  Gem.bin_path 'proscenium', 'esbuild'
39
41
  end
40
42
  end
43
+
44
+ def lightningcss_cli
45
+ if ENV['PROSCENIUM_TEST']
46
+ 'bin/lightningcss'
47
+ else
48
+ Gem.bin_path 'proscenium', 'lightningcss'
49
+ end
50
+ end
41
51
  end
42
52
  end
43
53
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Proscenium
4
- VERSION = '0.1.1'
4
+ VERSION = '0.1.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: proscenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Joel Moss