RobLoach/component-installer

Adding custom modules configuration into generated require.js file

Opened this issue · 0 comments

Here is my scenario:

  • component-dir defined to assets
  • some dependencies like jquery, d3, installed either as components, or with custom "extra" section with defined files.
  • custom js module, in assets/modules/bar_chart.js, which has dependcy on d3

Now when I add following section to composer.json

   "extra": {
        "component": {
            "mbostock/d3": {
                "files": [
                    "d3.min.js"
                ],
                "shim": {
                    "deps": ["jquery"]
                }
            },
            "semantic/ui": {
                "files": [
                    "dist/semantic.min.css",
                    "dist/semantic.min.js"
                ]
            },
            "shim": {
                "modules/bar_chart" : ["d3/d3.min"]
            }
        }
    }

I get following code in require.js

var components = {
    "packages": [
        {
            "name": "jquery",
            "main": "jquery-built.js"
        }
    ],
    "shim": {
        "d3": {
            "deps": [
                "jquery"
            ]
        },
        "data-visualization": {
            "modules/bar_chart": [
                "d3/d3.min"
            ]
        }
    },
    "baseUrl": "/assets"
};

what I really need is

 "shim": {
        "d3": {
            "deps": [
                "jquery"
            ]
        },
            "modules/bar_chart": [
                "d3/d3.min"
            ]
    },

that is without "data-visualization", which happens to be project name.
Is there any way to achieve this result with component-installer?