@wavemaker/angular-codegen 11.2.0-next.140956 → 11.2.0-next.140958
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- angular-codegen/angular-app/angular.json +24 -4
- angular-codegen/angular-app/package.json +3 -2
- angular-codegen/angular-app/src/assets/styles/css/wm-style.css +1 -1
- angular-codegen/angular-app/tsconfig.json +3 -0
- angular-codegen/dependencies/pipe-provider.cjs.js +88 -60
- angular-codegen/dependencies/transpilation-mobile.cjs.js +85 -64
- angular-codegen/dependencies/transpilation-web.cjs.js +85 -64
- angular-codegen/package.json +1 -1
@@ -58685,7 +58685,7 @@ const getFormWidgetTemplate = (widgetType, innerTmpl, attrs, options = {}) => {
|
|
58685
58685
|
tmpl = `<div wmCheckbox ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''}></div>`;
|
58686
58686
|
break;
|
58687
58687
|
case FormWidgetType.CHECKBOXSET:
|
58688
|
-
tmpl = `<ul wmCheckboxset ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''}></ul>`;
|
58688
|
+
tmpl = `<ul role="group" wmCheckboxset ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''}></ul>`;
|
58689
58689
|
break;
|
58690
58690
|
case FormWidgetType.CHIPS:
|
58691
58691
|
tmpl = `<ul wmChips role="input" debouncetime="${attrs.get('debouncetime')}" ${innerTmpl}></ul>`;
|
@@ -58709,7 +58709,7 @@ const getFormWidgetTemplate = (widgetType, innerTmpl, attrs, options = {}) => {
|
|
58709
58709
|
tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type="password" aria-label="Enter password" ${updateOnTmpl}></wm-input>`;
|
58710
58710
|
break;
|
58711
58711
|
case FormWidgetType.RADIOSET:
|
58712
|
-
tmpl = `<ul wmRadioset ${innerTmpl}></ul>`;
|
58712
|
+
tmpl = `<ul role="radiogroup" wmRadioset ${innerTmpl}></ul>`;
|
58713
58713
|
break;
|
58714
58714
|
case FormWidgetType.RATING:
|
58715
58715
|
tmpl = `<div wmRating ${innerTmpl}></div>`;
|
@@ -58731,10 +58731,10 @@ const getFormWidgetTemplate = (widgetType, innerTmpl, attrs, options = {}) => {
|
|
58731
58731
|
break;
|
58732
58732
|
case FormWidgetType.TEXT:
|
58733
58733
|
const inputType = options.inputType || 'inputtype';
|
58734
|
-
tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type="${attrs.get(inputType) || 'text'}"
|
58734
|
+
tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type="${attrs.get(inputType) || 'text'}" ${updateOnTmpl}></wm-input>`;
|
58735
58735
|
break;
|
58736
58736
|
case FormWidgetType.TEXTAREA:
|
58737
|
-
tmpl = `<wm-textarea ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} role="textbox"
|
58737
|
+
tmpl = `<wm-textarea ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} role="textbox" ${updateOnTmpl}></wm-textarea>`;
|
58738
58738
|
break;
|
58739
58739
|
case FormWidgetType.TIME:
|
58740
58740
|
tmpl = `<div wmTime ${attrs.get('required') === 'true' ? 'required=true' : ''} dataentrymode="${attrs.get('dataentrymode')}" ${innerTmpl}></div>`;
|
@@ -58763,7 +58763,7 @@ const getFormWidgetTemplate = (widgetType, innerTmpl, attrs, options = {}) => {
|
|
58763
58763
|
}
|
58764
58764
|
break;
|
58765
58765
|
default:
|
58766
|
-
tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''}
|
58766
|
+
tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type="text" ${updateOnTmpl}></wm-input>`;
|
58767
58767
|
break;
|
58768
58768
|
}
|
58769
58769
|
return tmpl;
|
@@ -60572,41 +60572,42 @@ const validateDataSourceCtx = (ds, ctx) => {
|
|
60572
60572
|
* @param name name of the variable
|
60573
60573
|
* @param context scope of the variable
|
60574
60574
|
*/
|
60575
|
-
const processFilterExpBindNode = (context, filterExpressions) => {
|
60575
|
+
const processFilterExpBindNode = (context, filterExpressions, variable) => {
|
60576
60576
|
const destroyFn = context.registerDestroyListener ? context.registerDestroyListener.bind(context) : _.noop;
|
60577
60577
|
const filter$ = new Subject();
|
60578
60578
|
const bindFilExpObj = (obj, targetNodeKey) => {
|
60579
|
+
const listener = (newVal, oldVal) => {
|
60580
|
+
if ((newVal === oldVal && _.isUndefined(newVal)) || (_.isUndefined(newVal) && !_.isUndefined(oldVal))) {
|
60581
|
+
return;
|
60582
|
+
}
|
60583
|
+
// Skip cloning for blob column
|
60584
|
+
if (!_.includes(['blob', 'file'], obj.type)) {
|
60585
|
+
newVal = getClonedObject(newVal);
|
60586
|
+
}
|
60587
|
+
// backward compatibility: where we are allowing the user to bind complete object
|
60588
|
+
if (obj.target === 'dataBinding') {
|
60589
|
+
// remove the existing databinding element
|
60590
|
+
filterExpressions.rules = [];
|
60591
|
+
// now add all the returned values
|
60592
|
+
_.forEach(newVal, function (value, target) {
|
60593
|
+
filterExpressions.rules.push({
|
60594
|
+
'target': target,
|
60595
|
+
'value': value,
|
60596
|
+
'matchMode': obj.matchMode || 'startignorecase',
|
60597
|
+
'required': false,
|
60598
|
+
'type': ''
|
60599
|
+
});
|
60600
|
+
});
|
60601
|
+
}
|
60602
|
+
else {
|
60603
|
+
// setting value to the root node
|
60604
|
+
obj[targetNodeKey] = newVal;
|
60605
|
+
}
|
60606
|
+
filter$.next({ filterExpressions, newVal });
|
60607
|
+
};
|
60579
60608
|
if (stringStartsWith(obj[targetNodeKey], 'bind:')) {
|
60580
60609
|
// [Todo-CSP]: needs a check, where is this used
|
60581
|
-
destroyFn($watch(obj[targetNodeKey].replace('bind:', ''), context, {}, (
|
60582
|
-
if ((newVal === oldVal && _.isUndefined(newVal)) || (_.isUndefined(newVal) && !_.isUndefined(oldVal))) {
|
60583
|
-
return;
|
60584
|
-
}
|
60585
|
-
// Skip cloning for blob column
|
60586
|
-
if (!_.includes(['blob', 'file'], obj.type)) {
|
60587
|
-
newVal = getClonedObject(newVal);
|
60588
|
-
}
|
60589
|
-
// backward compatibility: where we are allowing the user to bind complete object
|
60590
|
-
if (obj.target === 'dataBinding') {
|
60591
|
-
// remove the existing databinding element
|
60592
|
-
filterExpressions.rules = [];
|
60593
|
-
// now add all the returned values
|
60594
|
-
_.forEach(newVal, function (value, target) {
|
60595
|
-
filterExpressions.rules.push({
|
60596
|
-
'target': target,
|
60597
|
-
'value': value,
|
60598
|
-
'matchMode': obj.matchMode || 'startignorecase',
|
60599
|
-
'required': false,
|
60600
|
-
'type': ''
|
60601
|
-
});
|
60602
|
-
});
|
60603
|
-
}
|
60604
|
-
else {
|
60605
|
-
// setting value to the root node
|
60606
|
-
obj[targetNodeKey] = newVal;
|
60607
|
-
}
|
60608
|
-
filter$.next({ filterExpressions, newVal });
|
60609
|
-
}, undefined, false, { arrayType: _.includes(['in', 'notin'], obj.matchMode) }));
|
60610
|
+
destroyFn($watch(obj[targetNodeKey].replace('bind:', ''), context, {}, variable ? variable.invokeOnFiltertExpressionChange.bind(variable, obj, targetNodeKey) : listener, undefined, false, { arrayType: _.includes(['in', 'notin'], obj.matchMode) }));
|
60610
60611
|
}
|
60611
60612
|
};
|
60612
60613
|
const traverseFilterExpressions = expressions => {
|
@@ -60715,6 +60716,13 @@ const addForIdAttributes = (element) => {
|
|
60715
60716
|
setAttr(labelEl[0], 'for', widgetId);
|
60716
60717
|
}
|
60717
60718
|
}
|
60719
|
+
/*Adding aria-labelledby to radioset, checkboxset widgets*/
|
60720
|
+
const ulEl = element.querySelectorAll('ul');
|
60721
|
+
if (labelEl.length && ulEl.length && (ulEl[0].getAttribute('role') === 'radiogroup' || ulEl[0].getAttribute('role') === 'group')) {
|
60722
|
+
const widgetId = 'wm-group-label-' + generateGUId();
|
60723
|
+
setAttr(ulEl[0], 'aria-labelledby', widgetId);
|
60724
|
+
setAttr(labelEl[0], 'id', widgetId);
|
60725
|
+
}
|
60718
60726
|
};
|
60719
60727
|
/**
|
60720
60728
|
* This method is used to adjust the container position
|
@@ -62107,6 +62115,12 @@ class PaginationService {
|
|
62107
62115
|
fetchNextDatasetOnScroll(dataNavigator, parent) {
|
62108
62116
|
// Load next set of data only after the success of current call
|
62109
62117
|
if (!parent.variableInflight) {
|
62118
|
+
// Fix for [WMS-23263]: set 'isNextPageData' flag to true & 'isDataUpdatedByUser' to false as next page data is being rendered on Scroll
|
62119
|
+
if (parent.widgetType === 'wm-table') {
|
62120
|
+
// set isNextPageData flag to true as next page data is being rendered
|
62121
|
+
parent.gridOptions.setIsNextPageData(true);
|
62122
|
+
parent.gridOptions.setIsDataUpdatedByUser(false);
|
62123
|
+
}
|
62110
62124
|
dataNavigator.navigatePage('next');
|
62111
62125
|
}
|
62112
62126
|
}
|
@@ -62841,13 +62855,13 @@ const scopeComponentStyles = (componentName, componentType, styles = '') => {
|
|
62841
62855
|
|
62842
62856
|
const carouselTagName = 'carousel';
|
62843
62857
|
const dataSetKey$5 = 'dataset';
|
62844
|
-
const idGen$
|
62858
|
+
const idGen$s = new IDGenerator('wm_carousel_ref_');
|
62845
62859
|
const isDynamicCarousel = node => node.attrs.find(attr => attr.name === 'type' && attr.value === 'dynamic');
|
62846
62860
|
register('wm-carousel', () => {
|
62847
62861
|
return {
|
62848
62862
|
pre: (attrs, shared) => {
|
62849
62863
|
// generating unique Id for the carousel
|
62850
|
-
const counter = idGen$
|
62864
|
+
const counter = idGen$s.nextUid();
|
62851
62865
|
shared.set('carousel_ref', counter);
|
62852
62866
|
return `<div class="app-carousel carousel"><${carouselTagName} wmCarousel #${counter}="wmCarousel" ${getAttrMarkup(attrs)} interval="0" [ngClass]="${counter}.navigationClass">`;
|
62853
62867
|
},
|
@@ -62947,12 +62961,12 @@ var marquee_build$1 = /*#__PURE__*/Object.freeze({
|
|
62947
62961
|
});
|
62948
62962
|
|
62949
62963
|
const tagName$1A = 'a';
|
62950
|
-
const idGen$
|
62964
|
+
const idGen$r = new IDGenerator('wm_anchor');
|
62951
62965
|
register('wm-anchor', () => {
|
62952
62966
|
return {
|
62953
62967
|
pre: (attrs) => {
|
62954
|
-
const counter = idGen$
|
62955
|
-
return `<${tagName$1A} wmAnchor #${counter}="wmAnchor" role="link" data-identifier="anchor" [attr.aria-label]="${counter}.hint || ${counter}.caption
|
62968
|
+
const counter = idGen$r.nextUid();
|
62969
|
+
return `<${tagName$1A} wmAnchor #${counter}="wmAnchor" role="link" data-identifier="anchor" [attr.aria-label]="${counter}.hint || ${counter}.caption" ${getAttrMarkup(attrs)}>`;
|
62956
62970
|
},
|
62957
62971
|
post: () => `</${tagName$1A}>`
|
62958
62972
|
};
|
@@ -62979,11 +62993,11 @@ var audio_build$1 = /*#__PURE__*/Object.freeze({
|
|
62979
62993
|
});
|
62980
62994
|
|
62981
62995
|
const tagName$1y = 'div';
|
62982
|
-
const idGen$
|
62996
|
+
const idGen$q = new IDGenerator('wm_html');
|
62983
62997
|
register('wm-html', () => {
|
62984
62998
|
return {
|
62985
62999
|
pre: (attrs) => {
|
62986
|
-
const counter = idGen$
|
63000
|
+
const counter = idGen$q.nextUid();
|
62987
63001
|
return `<${tagName$1y} wmHtml #${counter}="wmHtml" [attr.aria-label]="${counter}.hint || 'HTML content'" ${getAttrMarkup(attrs)}>`;
|
62988
63002
|
},
|
62989
63003
|
post: () => `</${tagName$1y}>`
|
@@ -63025,12 +63039,12 @@ var iframe_build$1 = /*#__PURE__*/Object.freeze({
|
|
63025
63039
|
});
|
63026
63040
|
|
63027
63041
|
const tagName$1v = 'label';
|
63028
|
-
const idGen$
|
63042
|
+
const idGen$p = new IDGenerator('wm_label');
|
63029
63043
|
register('wm-label', () => {
|
63030
63044
|
return {
|
63031
63045
|
pre: (attrs) => {
|
63032
|
-
const counter = idGen$
|
63033
|
-
return `<${tagName$1v} wmLabel #${counter}="wmLabel" [attr.aria-label]="${counter}.hint
|
63046
|
+
const counter = idGen$p.nextUid();
|
63047
|
+
return `<${tagName$1v} wmLabel #${counter}="wmLabel" [attr.aria-label]="${counter}.hint" ${getAttrMarkup(attrs)}>`;
|
63034
63048
|
},
|
63035
63049
|
post: () => `</${tagName$1v}>`
|
63036
63050
|
};
|
@@ -63043,11 +63057,11 @@ var label_build$1 = /*#__PURE__*/Object.freeze({
|
|
63043
63057
|
});
|
63044
63058
|
|
63045
63059
|
const tagName$1u = 'img';
|
63046
|
-
const idGen$
|
63060
|
+
const idGen$o = new IDGenerator('wm_picture');
|
63047
63061
|
register('wm-picture', () => {
|
63048
63062
|
return {
|
63049
63063
|
pre: (attrs) => {
|
63050
|
-
const counter = idGen$
|
63064
|
+
const counter = idGen$o.nextUid();
|
63051
63065
|
return `<${tagName$1u} wmPicture #${counter}="wmPicture" alt="image" wmImageCache="${attrs.get('offline') || 'true'}" [attr.aria-label]="${counter}.hint || 'Image'" ${getAttrMarkup(attrs)}>`;
|
63052
63066
|
}
|
63053
63067
|
};
|
@@ -63060,11 +63074,11 @@ var picture_build$1 = /*#__PURE__*/Object.freeze({
|
|
63060
63074
|
});
|
63061
63075
|
|
63062
63076
|
const tagName$1t = 'div';
|
63063
|
-
const idGen$
|
63077
|
+
const idGen$n = new IDGenerator('wm_spinner');
|
63064
63078
|
register('wm-spinner', () => {
|
63065
63079
|
return {
|
63066
63080
|
pre: (attrs) => {
|
63067
|
-
const counter = idGen$
|
63081
|
+
const counter = idGen$n.nextUid();
|
63068
63082
|
return `<${tagName$1t} wmSpinner #${counter}="wmSpinner" role="alert" [attr.aria-label]="${counter}.hint || 'Loading...'" aria-live="assertive" aria-busy="true" ${getAttrMarkup(attrs)}>`;
|
63069
63083
|
},
|
63070
63084
|
post: () => `</${tagName$1t}>`
|
@@ -63131,11 +63145,11 @@ var progressCircle_build$1 = /*#__PURE__*/Object.freeze({
|
|
63131
63145
|
});
|
63132
63146
|
|
63133
63147
|
const tagName$1q = 'div';
|
63134
|
-
const idGen$
|
63148
|
+
const idGen$m = new IDGenerator('wm_richtexteditor');
|
63135
63149
|
register('wm-richtexteditor', () => {
|
63136
63150
|
return {
|
63137
63151
|
pre: (attrs) => {
|
63138
|
-
const counter = idGen$
|
63152
|
+
const counter = idGen$m.nextUid();
|
63139
63153
|
return `<${tagName$1q} wmRichTextEditor #${counter}="wmRichTextEditor" role="textbox" [attr.aria-label]="${counter}.hint || 'Richtext editor'" ${getFormMarkupAttr(attrs)}>`;
|
63140
63154
|
},
|
63141
63155
|
post: () => `</${tagName$1q}>`
|
@@ -63248,13 +63262,13 @@ var chart_build$1 = /*#__PURE__*/Object.freeze({
|
|
63248
63262
|
|
63249
63263
|
const tagName$1i = 'div';
|
63250
63264
|
const dataSetKey$4 = 'dataset';
|
63251
|
-
const idGen$
|
63265
|
+
const idGen$l = new IDGenerator('wm_accordion_ref_');
|
63252
63266
|
const isDynamicAccordion = node => node.attrs.find(attr => attr.name === 'type' && attr.value === 'dynamic');
|
63253
63267
|
register('wm-accordion', () => {
|
63254
63268
|
return {
|
63255
63269
|
pre: (attrs, shared) => {
|
63256
63270
|
// generating unique Id for the accordion
|
63257
|
-
const counter = idGen$
|
63271
|
+
const counter = idGen$l.nextUid();
|
63258
63272
|
shared.set('accordion_ref', counter);
|
63259
63273
|
return `<${tagName$1i} wmAccordion #${counter}="wmAccordion" role="tablist" aria-multiselectable="true" ${getAttrMarkup(attrs)}>`;
|
63260
63274
|
},
|
@@ -63290,9 +63304,13 @@ var accordion_build$1 = /*#__PURE__*/Object.freeze({
|
|
63290
63304
|
});
|
63291
63305
|
|
63292
63306
|
const tagName$1h = 'div';
|
63307
|
+
const idGen$k = new IDGenerator('wm_accordionpane');
|
63293
63308
|
register('wm-accordionpane', () => {
|
63294
63309
|
return {
|
63295
|
-
pre: attrs =>
|
63310
|
+
pre: (attrs) => {
|
63311
|
+
const counter = idGen$k.nextUid();
|
63312
|
+
return `<${tagName$1h} #${counter}="wmAccordionPane" [attr.aria-expanded]="${counter}.isActive" wmAccordionPane partialContainer wm-navigable-element="true" role="tab" ${getAttrMarkup(attrs)}>`;
|
63313
|
+
},
|
63296
63314
|
post: () => `</${tagName$1h}>`
|
63297
63315
|
};
|
63298
63316
|
});
|
@@ -63365,7 +63383,7 @@ register('wm-panel', () => {
|
|
63365
63383
|
return {
|
63366
63384
|
pre: (attrs) => {
|
63367
63385
|
const counter = idGen$j.nextUid();
|
63368
|
-
return `<${tagName$1c} wmPanel #${counter}="wmPanel" partialContainer
|
63386
|
+
return `<${tagName$1c} wmPanel #${counter}="wmPanel" partialContainer wm-navigable-element="true" ${getAttrMarkup(attrs)}>`;
|
63369
63387
|
},
|
63370
63388
|
post: () => `</${tagName$1c}>`
|
63371
63389
|
};
|
@@ -63886,12 +63904,14 @@ const registerFormField = (isFormField) => {
|
|
63886
63904
|
const pCounter = (parent && parent.get('form_reference')) || 'form';
|
63887
63905
|
const widgetType = attrs.get('widget') || FormWidgetType.TEXT;
|
63888
63906
|
const dataRole = isFormField ? 'form-field' : 'filter-field';
|
63907
|
+
const formFieldErrorMsgId = 'wmform-field-error-' + generateGUId();
|
63889
63908
|
const validationMsg = isFormField ? `<p *ngIf="${counter}._control?.invalid && ${counter}._control?.touched && ${pCounter}.isUpdateMode"
|
63890
|
-
class="help-block text-danger" aria-hidden="false"
|
63891
|
-
aria-live="assertive" [textContent]="${counter}.validationmessage"></p>` : '';
|
63909
|
+
class="help-block text-danger" aria-hidden="false" role="alert"
|
63910
|
+
aria-live="assertive" [attr.aria-label]="${counter}.validationmessage" id="${formFieldErrorMsgId}"><span aria-hidden="true" [textContent]="${counter}.validationmessage"></span></p>` : '';
|
63892
63911
|
const eventsTmpl = widgetType === FormWidgetType.UPLOAD ? '' : getEventsTemplate(attrs);
|
63893
63912
|
const controlLayout = isMobileApp() ? 'col-xs-12' : 'col-sm-12';
|
63894
63913
|
const isInList = pCounter === (parentList && parentList.get('parent_form_reference'));
|
63914
|
+
attrs.set('__errormsg', formFieldErrorMsgId);
|
63895
63915
|
attrs.set('__widgetType', widgetType);
|
63896
63916
|
attrs.delete('widget');
|
63897
63917
|
shared.set('counter', counter);
|
@@ -63908,7 +63928,7 @@ const registerFormField = (isFormField) => {
|
|
63908
63928
|
[ngStyle]="{width: ${pCounter}.captionsize}" [ngClass]="{'text-danger': ${counter}._control?.invalid && ${counter}._control?.touched && ${pCounter}.isUpdateMode,
|
63909
63929
|
required: ${pCounter}.isUpdateMode && ${counter}.required}" [textContent]="${counter}.displayname"> </label>
|
63910
63930
|
<div [ngClass]="${counter}.displayname ? ${pCounter}._widgetClass : '${controlLayout}'">
|
63911
|
-
<label class="form-control-static app-label"
|
63931
|
+
<label class="form-control-static app-label" *ngIf="!(${pCounter}.isUpdateMode || ${counter}.viewmodewidget === 'default' || ${counter}.widgettype === 'upload')"
|
63912
63932
|
[hidden]="${pCounter}.isUpdateMode || ${counter}.viewmodewidget === 'default' || ${counter}.widgettype === 'upload'" [innerHTML]="${getCaptionByWidget(attrs, widgetType, counter)}"></label>
|
63913
63933
|
${getTemplate(attrs, widgetType, eventsTmpl, counter, pCounter, isInList)}
|
63914
63934
|
<span aria-hidden="true" *ngIf="${counter}.showPendingSpinner" class="form-field-spinner fa fa-circle-o-notch fa-spin form-control-feedback"></span>
|
@@ -64179,7 +64199,7 @@ register('wm-button', () => {
|
|
64179
64199
|
return {
|
64180
64200
|
pre: (attrs) => {
|
64181
64201
|
const counter = idGen$c.nextUid();
|
64182
|
-
return `<${tagName$P} wmButton #${counter}="wmButton" [attr.aria-label]="${counter}.hint || ${counter}.caption
|
64202
|
+
return `<${tagName$P} wmButton #${counter}="wmButton" [attr.aria-label]="${counter}.hint || ${counter}.caption" ${getAttrMarkup(attrs)}>`;
|
64183
64203
|
},
|
64184
64204
|
post: () => `</${tagName$P}>`
|
64185
64205
|
};
|
@@ -64208,7 +64228,7 @@ var checkbox_build$1 = /*#__PURE__*/Object.freeze({
|
|
64208
64228
|
const tagName$N = 'ul';
|
64209
64229
|
register('wm-checkboxset', () => {
|
64210
64230
|
return {
|
64211
|
-
pre: attrs => `<${tagName$N} wmCheckboxset ${getFormMarkupAttr(attrs)} ${getChildAttrs(attrs)} ${getNgModelAttr(attrs)}>`,
|
64231
|
+
pre: attrs => `<${tagName$N} role="group" wmCheckboxset ${getFormMarkupAttr(attrs)} ${getChildAttrs(attrs)} ${getNgModelAttr(attrs)}>`,
|
64212
64232
|
post: () => `</${tagName$N}>`
|
64213
64233
|
};
|
64214
64234
|
});
|
@@ -64250,7 +64270,7 @@ var number_build$1 = /*#__PURE__*/Object.freeze({
|
|
64250
64270
|
const tagName$K = 'ul';
|
64251
64271
|
register('wm-radioset', () => {
|
64252
64272
|
return {
|
64253
|
-
pre: attrs => `<${tagName$K} wmRadioset ${getFormMarkupAttr(attrs)} ${getChildAttrs(attrs)} ${getNgModelAttr(attrs)}>`,
|
64273
|
+
pre: attrs => `<${tagName$K} role="radiogroup" wmRadioset ${getFormMarkupAttr(attrs)} ${getChildAttrs(attrs)} ${getNgModelAttr(attrs)}>`,
|
64254
64274
|
post: () => `</${tagName$K}>`
|
64255
64275
|
};
|
64256
64276
|
});
|
@@ -64771,7 +64791,7 @@ register('wm-page', () => {
|
|
64771
64791
|
},
|
64772
64792
|
pre: (attrs) => {
|
64773
64793
|
const counter = idGen$8.nextUid();
|
64774
|
-
return `<${tagName$p} wmPage #${counter}="wmPage" data-role="pageContainer" [attr.aria-label]="${counter}.hint
|
64794
|
+
return `<${tagName$p} wmPage #${counter}="wmPage" data-role="pageContainer" [attr.aria-label]="${counter}.hint" ${getAttrMarkup(attrs)}>`;
|
64775
64795
|
},
|
64776
64796
|
post: () => `</${tagName$p}>`
|
64777
64797
|
};
|
@@ -64885,7 +64905,7 @@ register('wm-left-panel', () => {
|
|
64885
64905
|
return {
|
64886
64906
|
pre: (attrs) => {
|
64887
64907
|
const counter = idGen$4.nextUid();
|
64888
|
-
return `<${tagName$i} wmLeftPanel #${counter}="wmLeftPanel" partialContainer data-role="page-left-panel"
|
64908
|
+
return `<${tagName$i} wmLeftPanel #${counter}="wmLeftPanel" partialContainer data-role="page-left-panel" [attr.aria-label]="${counter}.hint || 'Left navigation panel'" wmSmoothscroll="${attrs.get('smoothscroll') || 'false'}" ${getAttrMarkup(attrs)}>`;
|
64889
64909
|
},
|
64890
64910
|
post: () => `</${tagName$i}>`
|
64891
64911
|
};
|
@@ -65393,12 +65413,13 @@ const tagName$5 = 'div';
|
|
65393
65413
|
const getRowExpansionActionTmpl = (attrs) => {
|
65394
65414
|
const tag = attrs.get('widget-type') === 'anchor' ? 'a' : 'button';
|
65395
65415
|
const directive = attrs.get('widget-type') === 'anchor' ? 'wmAnchor' : 'wmButton';
|
65416
|
+
const title = attrs.get('display-name') || attrs.get('title') || 'Collapse/Expand';
|
65396
65417
|
return `<ng-template #rowExpansionActionTmpl let-row="row">
|
65397
65418
|
<${tag} ${directive}
|
65398
65419
|
${getRowActionAttrs(attrs)}
|
65399
65420
|
class="${attrs.get('class')} row-expansion-button"
|
65400
65421
|
iconclass="${attrs.get('collapseicon')}"
|
65401
|
-
type="button"></${tag}>
|
65422
|
+
type="button" aria-label="${title}"></${tag}>
|
65402
65423
|
</ng-template>`;
|
65403
65424
|
};
|
65404
65425
|
register('wm-table-row', () => {
|