Yes, it is possible. You can create variables within your namespace, and then create a new js file(mywidgetconfig.js as you wanted) which would contain only the configuration that you want the new team to change.
As an example, you can have your custom widget (customwidget.js) as shown below, which defines the variables within its namespace
/**
* @class Myns.CustomWidget
* @extends CQ.form.CompositeField
* This is a custom widget based on {@link CQ.form.CompositeField}.
* @constructor
* Creates a new CustomWidget.
* @param {Object} config The config object
*/
var Myns = {};
Myns.CustomWidget = CQ.Ext.extend(CQ.form.CompositeField, {
hiddenField: null,
/**
* @private
* @type CQ.Ext.form.TextField
*/
textf: null,
/**
* @private
* @type CQ.Ext.form.NumberField
*/
numberf: null,
constructor: function(config) {
config = config || { };
var defaults = {
"border": true,
"layout": "form"
};
config = CQ.Util.applyDefaults(config, defaults);
Myns.CustomWidget.superclass.constructor.call(this, config);
},
// overriding CQ.Ext.Component#initComponent
initComponent: function() {
Myns.CustomWidget.superclass.initComponent.call(this);
this.hiddenField = new CQ.Ext.form.Hidden({
name: this.name
});
this.add(this.hiddenField);
this.textf = new CQ.Ext.form.TextField({
fieldLabel: Myns.TEXTFIELDLABEL, //using variable
allowBlank: false
});
this.add(this.textf);
this.numberf = new CQ.Ext.form.NumberField({
fieldLabel: Myns.NUMBERFIELDLABEL, //using variable
allowBlank: false
});
this.add(this.numberf);
}
// rest of the code goes here
});
Myns.TEXTFIELDLABEL = "Enter Text"; //defining variable
Myns.NUMBERFIELDLABEL = "Enter a number"; //defining variable
// register xtype
CQ.Ext.reg('customwidget', Myns.CustomWidget);
And your mywidgetconfig.js would contain those variables which can be modified by others.
/*
* Field Label for the text field
*/
Myns.TEXTFIELDLABEL = "New Text";
/*
* Field label for number field
*/
Myns.NUMBERFIELDLABEL = "New number";
And in your js.txt, make sure you add mywidgetconfig.js below your customwidget.js
#base=js
customwidget.js
mywidgetconfig.js