@wavemaker/app-rn-runtime 11.12.1-next.28204 → 11.12.1-rc.6244
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.
- package/components/basic/audio/audio.component.js +52 -47
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/label/label.component.js +120 -5
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.props.js +2 -0
- package/components/basic/label/label.props.js.map +1 -1
- package/components/basic/video/video.component.js +89 -64
- package/components/basic/video/video.component.js.map +1 -1
- package/components/container/tabs/tabs.component.js +1 -0
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +77 -8
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/container/wizard/wizard.styles.js +86 -1
- package/components/container/wizard/wizard.styles.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +29 -18
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/camera/camera.component.js +28 -19
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/input/chips/chips.component.js +50 -9
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/chips/chips.props.js +11 -0
- package/components/input/chips/chips.props.js.map +1 -1
- package/components/input/chips/chips.styles.js +64 -0
- package/components/input/chips/chips.styles.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +17 -13
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/page/page-content/page-content.component.js +18 -2
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +4 -3
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/base.component.js +13 -1
- package/core/base.component.js.map +1 -1
- package/core/device/av-service.js +8 -0
- package/core/device/av-service.js.map +1 -0
- package/core/device/calendar-service.js +7 -1
- package/core/device/calendar-service.js.map +1 -1
- package/core/device/camera-service.js +6 -0
- package/core/device/camera-service.js.map +1 -1
- package/core/device/contacts-service.js +7 -1
- package/core/device/contacts-service.js.map +1 -1
- package/core/device/fileupload-service.js +8 -0
- package/core/device/fileupload-service.js.map +1 -0
- package/core/device/location-service.js +7 -1
- package/core/device/location-service.js.map +1 -1
- package/core/device/openfile-service.js +10 -0
- package/core/device/openfile-service.js.map +1 -0
- package/core/device/scan-service.js +6 -0
- package/core/device/scan-service.js.map +1 -1
- package/core/utils.js +0 -6
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +6937 -5978
- package/package-lock.json +6937 -5978
- package/package.json +4 -4
- package/runtime/services/device/calendar-service.js +9 -5
- package/runtime/services/device/calendar-service.js.map +1 -1
- package/runtime/services/device/camera-service.js +39 -22
- package/runtime/services/device/camera-service.js.map +1 -1
- package/runtime/services/device/contacts-service.js +6 -5
- package/runtime/services/device/contacts-service.js.map +1 -1
- package/runtime/services/device/location-service.js +4 -4
- package/runtime/services/device/location-service.js.map +1 -1
- package/runtime/services/device/permission-service.js +5 -0
- package/runtime/services/device/permission-service.js.map +1 -0
- package/runtime/services/device/permissions.js +34 -39
- package/runtime/services/device/permissions.js.map +1 -1
- package/runtime/services/device/scan-service.js +4 -3
- package/runtime/services/device/scan-service.js.map +1 -1
- package/variables/device/calendar/create-event.operation.js +8 -2
- package/variables/device/calendar/create-event.operation.js.map +1 -1
- package/variables/device/calendar/delete-event.operation.js +8 -2
- package/variables/device/calendar/delete-event.operation.js.map +1 -1
- package/variables/device/calendar/get-events.operation.js +8 -2
- package/variables/device/calendar/get-events.operation.js.map +1 -1
- package/variables/device/camera/capture-image.operation.js +6 -2
- package/variables/device/camera/capture-image.operation.js.map +1 -1
- package/variables/device/camera/capture-video.operation.js +5 -2
- package/variables/device/camera/capture-video.operation.js.map +1 -1
- package/variables/device/contacts/get-contacts.operation.js +8 -2
- package/variables/device/contacts/get-contacts.operation.js.map +1 -1
- package/variables/device/device/current-geo-position.operation.js +8 -2
- package/variables/device/device/current-geo-position.operation.js.map +1 -1
- package/variables/device/file/open-file.operation.js +9 -9
- package/variables/device/file/open-file.operation.js.map +1 -1
- package/variables/device/file/upload-file.operation.js +5 -2
- package/variables/device/file/upload-file.operation.js.map +1 -1
- package/variables/device/scan/scan.operation.js +8 -2
- package/variables/device/scan/scan.operation.js.map +1 -1
- package/variables/http.service.js +1 -6
- package/variables/http.service.js.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmCameraProps","DEFAULT_CLASS","WmButton","CameraConsumer","WmCameraState","WmCamera","constructor","props","_defineProperty","onCameraTap","state","capturetype","params","allowImageEdit","allowedit","imageQuality","imagequality","imageEncodingType","imageencodingtype","imageTargetWidth","imagetargetwidth","imageTargetHeight","imagetargetheight","camera","captureImage","then","res","updateModel","imagePath","content","captureVideo","videoPath","$event","value","startsWith","localFile","updateState","datavalue","localFilePath","invokeEventCallback","bind","proxy","renderWidget","accessibilityProps","accessible","accessibilitylabel","caption","accessibilityrole","hint","createElement","cameraService","_background","style","styles","root","onLayout","event","handleLayout","_extends","id","getTestId","iconclass","iconsize","iconposition","button","onTap"],"sources":["camera.component.tsx"],"sourcesContent":["import React from 'react';\nimport { AccessibilityRole, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmCameraProps from './camera.props';\nimport { DEFAULT_CLASS, WmCameraStyles } from './camera.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { CaptureImageOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-image.operation';\nimport { CameraConsumer, CameraInput, CameraService } from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { CaptureVideoOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-video.operation';\n\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmCameraState extends BaseComponentState<WmCameraProps> {}\n\nexport default class WmCamera extends BaseComponent<WmCameraProps, WmCameraState, WmCameraStyles> {\n private camera: CameraService = null as any;\n public localFile: string = '';\n constructor(props: WmCameraProps) {\n super(props, DEFAULT_CLASS, new WmCameraProps());\n }\n\n onCameraTap() {\n const props = this.state.props;\n if (props.capturetype === 'IMAGE') {\n const params: CameraInput = {\n allowImageEdit: props.allowedit,\n imageQuality: props.imagequality,\n imageEncodingType: props.imageencodingtype,\n imageTargetWidth: props.imagetargetwidth,\n imageTargetHeight: props.imagetargetheight\n };\n\n this.camera.captureImage(params).then((res: CaptureImageOutput) => {\n this.updateModel(null, res.imagePath, res.content);\n });\n } else {\n this.camera.captureVideo().then((res: CaptureVideoOutput) => {\n this.updateModel(null, res.videoPath, res.content);\n });\n }\n\n }\n\n private updateModel($event: any, value: any, content: string) {\n value = (value.startsWith('file://') ? '' : 'file://') + value;\n this.localFile = content;\n this.updateState({\n props: {\n datavalue: value,\n localFilePath: value\n }\n } as WmCameraState, this.invokeEventCallback.bind(this, 'onSuccess', [null, this.proxy, value, this.localFile]));\n }\n\n renderWidget(props: WmCameraProps) {\n const accessibilityProps = {\n accessible: props.accessible, \n accessibilitylabel: props.accessibilitylabel || props.caption,\n accessibilityrole: props.accessibilityrole,\n hint: props.hint,\n }\n return (\n <CameraConsumer>\n {(cameraService: CameraService) => {\n {this._background}\n this.camera = cameraService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <WmButton id={this.getTestId('button')} caption={props.caption} iconclass={props.iconclass} iconsize={props.iconsize} iconposition={props.caption ? '' : 'left'} styles={this.styles.button} onTap={this.onCameraTap.bind(this)} {...accessibilityProps}></WmButton>\n </View>\n }}\n </CameraConsumer>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAA4BC,IAAI,QAAQ,cAAc;AACtD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,OAAOC,QAAQ,MAAM,oEAAoE;AAEzF,SAASC,cAAc,
|
1
|
+
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmCameraProps","DEFAULT_CLASS","WmButton","CameraConsumer","PermissionConsumer","WmCameraState","WmCamera","constructor","props","_defineProperty","onCameraTap","state","capturetype","params","allowImageEdit","allowedit","imageQuality","imagequality","imageEncodingType","imageencodingtype","imageTargetWidth","imagetargetwidth","imageTargetHeight","imagetargetheight","permissionService","camera","captureImage","then","res","updateModel","imagePath","content","captureVideo","videoPath","$event","value","startsWith","localFile","updateState","datavalue","localFilePath","invokeEventCallback","bind","proxy","renderWidget","accessibilityProps","accessible","accessibilitylabel","caption","accessibilityrole","hint","createElement","cameraService","_background","style","styles","root","onLayout","event","handleLayout","_extends","id","getTestId","iconclass","iconsize","iconposition","button","onTap"],"sources":["camera.component.tsx"],"sourcesContent":["import React from 'react';\nimport { AccessibilityRole, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmCameraProps from './camera.props';\nimport { DEFAULT_CLASS, WmCameraStyles } from './camera.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { CaptureImageOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-image.operation';\nimport { CameraConsumer, CameraInput, CameraService, CameraVideoInput } from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { CaptureVideoOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-video.operation';\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\n\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmCameraState extends BaseComponentState<WmCameraProps> {}\n\nexport default class WmCamera extends BaseComponent<WmCameraProps, WmCameraState, WmCameraStyles> {\n private camera: CameraService = null as any;\n private permissionService: PermissionService = null as any;\n public localFile: string = '';\n constructor(props: WmCameraProps) {\n super(props, DEFAULT_CLASS, new WmCameraProps());\n }\n\n onCameraTap() {\n const props = this.state.props;\n if (props.capturetype === 'IMAGE') {\n const params: CameraInput = {\n allowImageEdit: props.allowedit,\n imageQuality: props.imagequality,\n imageEncodingType: props.imageencodingtype,\n imageTargetWidth: props.imagetargetwidth,\n imageTargetHeight: props.imagetargetheight,\n permissionService: this.permissionService\n };\n\n this.camera.captureImage(params).then((res: CaptureImageOutput) => {\n this.updateModel(null, res.imagePath, res.content);\n });\n } else {\n const params: CameraVideoInput = {\n permissionService: this.permissionService\n };\n this.camera.captureVideo(params).then((res: CaptureVideoOutput) => {\n this.updateModel(null, res.videoPath, res.content);\n });\n }\n\n }\n\n private updateModel($event: any, value: any, content: string) {\n value = (value.startsWith('file://') ? '' : 'file://') + value;\n this.localFile = content;\n this.updateState({\n props: {\n datavalue: value,\n localFilePath: value\n }\n } as WmCameraState, this.invokeEventCallback.bind(this, 'onSuccess', [null, this.proxy, value, this.localFile]));\n }\n\n renderWidget(props: WmCameraProps) {\n const accessibilityProps = {\n accessible: props.accessible, \n accessibilitylabel: props.accessibilitylabel || props.caption,\n accessibilityrole: props.accessibilityrole,\n hint: props.hint,\n }\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n this.permissionService = permissionService;\n return (<CameraConsumer>\n {(cameraService: CameraService) => {\n {this._background}\n this.camera = cameraService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <WmButton id={this.getTestId('button')} caption={props.caption} iconclass={props.iconclass} iconsize={props.iconsize} iconposition={props.caption ? '' : 'left'} styles={this.styles.button} onTap={this.onCameraTap.bind(this)} {...accessibilityProps}></WmButton>\n </View>\n }}\n </CameraConsumer>)\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -112,13 +112,24 @@ export default class WmChips extends BaseDatasetComponent {
|
|
112
112
|
});
|
113
113
|
}
|
114
114
|
selectChip(chipItem) {
|
115
|
-
|
116
|
-
|
115
|
+
const selectionMode = this.state.props.selectionmode || 'multiple';
|
116
|
+
if (selectionMode === 'single') {
|
117
|
+
// Single selection: deselect all others and select only the clicked one
|
118
|
+
forEach(this.state.dataItems, item => {
|
119
|
+
item.selected = item.key === chipItem.key;
|
120
|
+
});
|
121
|
+
} else {
|
122
|
+
// Multiple selection: original working logic
|
123
|
+
if (!chipItem.selected && this.state.props.maxsize > 0 && this.state.chipsList.length === this.state.props.maxsize) {
|
124
|
+
return;
|
125
|
+
}
|
126
|
+
chipItem.selected = !chipItem.selected;
|
127
|
+
const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));
|
128
|
+
if (selectedItem) {
|
129
|
+
selectedItem.selected = chipItem.selected;
|
130
|
+
}
|
117
131
|
}
|
118
|
-
chipItem.selected = !chipItem.selected;
|
119
132
|
const newChipList = [];
|
120
|
-
const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));
|
121
|
-
selectedItem.selected = chipItem.selected;
|
122
133
|
forEach(this.state.dataItems, item => {
|
123
134
|
if (item.selected) {
|
124
135
|
newChipList.push(item);
|
@@ -209,16 +220,25 @@ export default class WmChips extends BaseDatasetComponent {
|
|
209
220
|
if (get(this.props, 'formfield')) {
|
210
221
|
// @ts-ignore
|
211
222
|
this.props.invokeEvent('onChipclick', [null, this, item]);
|
212
|
-
// @ts-
|
223
|
+
// @ts-ignorex
|
213
224
|
this.props.invokeEvent('onChipselect', [null, this, item]);
|
214
225
|
} else {
|
215
226
|
this.invokeEventCallback('onChipclick', [null, this, item]);
|
216
227
|
this.invokeEventCallback('onChipselect', [null, this, item]);
|
217
228
|
}
|
218
229
|
}
|
219
|
-
}),
|
230
|
+
}), this.state.props.getLeftBadge && this.state.props.getLeftBadge(index) ? /*#__PURE__*/React.createElement(WmLabel, _extends({}, this.getTestPropsForAction('chip' + index + 'leftbadge'), {
|
231
|
+
classname: isSelected ? 'app-chips-active-left-badge' : 'app-chips-left-badge',
|
232
|
+
styles: {
|
233
|
+
text: {
|
234
|
+
...this.styles.leftBadge,
|
235
|
+
...(isSelected ? this.styles.activeLeftBadge : {})
|
236
|
+
}
|
237
|
+
},
|
238
|
+
caption: this.state.props.getLeftBadge && this.state.props.getLeftBadge(index)
|
239
|
+
})) : null, isSelected && this.isDefaultView() ? /*#__PURE__*/React.createElement(WmIcon, {
|
220
240
|
id: this.getTestId('checkicon'),
|
221
|
-
iconclass: 'wm-sl-l sl-check',
|
241
|
+
iconclass: this.state.props.selectediconclass || 'wm-sl-l sl-check',
|
222
242
|
iconsize: 16,
|
223
243
|
styles: merge({}, this.styles.doneIcon, {
|
224
244
|
icon: {
|
@@ -226,6 +246,12 @@ export default class WmChips extends BaseDatasetComponent {
|
|
226
246
|
}
|
227
247
|
}),
|
228
248
|
accessible: false
|
249
|
+
}) : this.state.props.getLeftIconClassName && this.state.props.getLeftIconClassName(index) ? /*#__PURE__*/React.createElement(WmIcon, {
|
250
|
+
id: this.getTestId('lefticon'),
|
251
|
+
iconclass: this.state.props.getLeftIconClassName && this.state.props.getLeftIconClassName(index),
|
252
|
+
iconsize: 14,
|
253
|
+
styles: this.styles.leftIcon,
|
254
|
+
accessible: false
|
229
255
|
}) : null, this._showSkeleton ? null : /*#__PURE__*/React.createElement(WmPicture, {
|
230
256
|
id: this.getTestId('chip' + index + 'picture'),
|
231
257
|
styles: this.styles.imageStyles,
|
@@ -240,7 +266,22 @@ export default class WmChips extends BaseDatasetComponent {
|
|
240
266
|
}
|
241
267
|
}) : /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForAction('chip' + index + 'label'), {
|
242
268
|
style: [this.styles.chipLabel, isSelected ? this.styles.activeChipLabel : null]
|
243
|
-
}), item.displayexp || item.displayfield),
|
269
|
+
}), item.displayexp || item.displayfield), this.state.props.getRightBadge && this.state.props.getRightBadge(index) ? /*#__PURE__*/React.createElement(WmLabel, _extends({}, this.getTestPropsForAction('chip' + index + 'rightbadge'), {
|
270
|
+
classname: isSelected ? 'app-chips-active-right-badge' : 'app-chips-right-badge',
|
271
|
+
styles: {
|
272
|
+
text: {
|
273
|
+
...this.styles.rightBadge,
|
274
|
+
...(isSelected ? this.styles.activeRightBadge : {})
|
275
|
+
}
|
276
|
+
},
|
277
|
+
caption: this.state.props.getRightBadge && this.state.props.getRightBadge(index)
|
278
|
+
})) : null, this.state.props.getRightIconClassName && this.state.props.getRightIconClassName(index) ? /*#__PURE__*/React.createElement(WmIcon, {
|
279
|
+
id: this.getTestId('righticon'),
|
280
|
+
iconclass: this.state.props.getRightIconClassName && this.state.props.getRightIconClassName(index),
|
281
|
+
iconsize: 16,
|
282
|
+
styles: isSelected ? this.styles.activeRightIcon : this.styles.rightIcon,
|
283
|
+
accessible: false
|
284
|
+
}) : null, !this.isDefaultView() && !(this.state.props.disabled || this.state.props.readonly) ? /*#__PURE__*/React.createElement(WmIcon, {
|
244
285
|
id: this.getTestId('clearbtn'),
|
245
286
|
iconclass: 'wi wi-clear',
|
246
287
|
iconsize: 16,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","TouchableOpacity","Text","clone","findIndex","get","isUndefined","pull","forEach","filter","find","isEqual","merge","WmChipsProps","DEFAULT_CLASS","WmSearch","BaseDatasetComponent","BaseDatasetState","WmIcon","WmPicture","WmLabel","WmChipsState","constructor","args","_defineProperty","WmChips","props","onComponentInit","c","searchRef","val","onPropertyChange","name","$new","$old","length","updateState","chipsList","datavalue","state","dataItems","dataValueItems","Array","isArray","split","map","item","trim","slice","updatedItems","selected","includes","datafield","reset","_this$searchRef","query","onDataItemsUpdate","isDefaultQuery","updateDefaultQueryModel","addItem","$event","widget","_this$props","_this$props2","newChipList","allowAdd","push","queryModel","isFormFieldWidget","isDuplicate","resetSearchModel","invokeEvent","invokeEventCallback","toBoolean","setDatavalue","computeDisplayValue","displayValue","displayexp","displayfield","selectChip","chipItem","maxsize","selectedItem","d","key","dataValue","updateDatavalue","updateMaxSize","prevDatavalue","createCustomDataModel","dataObject","isCustom","clearSearch","chipListLength","saturate","removeItem","index","allowRemove","isDefaultView","_this$state$dataItems","searchable","renderChip","isSelected","accessibilityProps","accessibilityLabel","accessibilityState","accessibilityRole","createElement","_extends","getTestPropsForAction","style","styles","chip","activeChip","onPress","disabled","readonly","id","getTestId","iconclass","iconsize","doneIcon","icon","color","activeChipLabel","accessible","_showSkeleton","imageStyles","picturesource","imgSrc","shape","root","width","chipLabel","clearIcon","onTap","accessibilitylabel","accessibilityrole","selectedItems","componentDidMount","componentDidUpdate","prevProps","prevState","_this$searchRef2","computePosition","renderSkeleton","chipsWrapper","renderWidget","chips","accessibilityHint","hint","onLayout","event","handleLayout","searchContainer","flexDirection","inputposition","search","placeholder","maxSizeReached","listener","dataset","searchkey","minchars","autofocus","displayexpression","getDisplayExpression","displayimagesrc","onSubmit","bind","onChange","_this$props$listener","_this$props$listener2","onComponentChange","showSearchIcon","showclear","type","flexWrap"],"sources":["chips.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, TouchableOpacity, Text, DimensionValue, AccessibilityRole } from 'react-native';\nimport { LifecycleListener } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { clone, findIndex, get, isUndefined, pull, forEach, filter, find, isEqual, merge, isArray, isString } from 'lodash';\nimport WmChipsProps from './chips.props';\nimport { DEFAULT_CLASS, WmChipsStyles } from './chips.styles';\nimport WmSearch from '@wavemaker/app-rn-runtime/components/basic/search/search.component';\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '../../basic/label/label.component';\nimport { isDefined } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmChipsState extends BaseDatasetState<WmChipsProps> {\n chipsList: any = [];\n saturate: any;\n}\n\nexport default class WmChips extends BaseDatasetComponent<WmChipsProps, WmChipsState, WmChipsStyles> {\n constructor(props: WmChipsProps) {\n super(props, DEFAULT_CLASS, new WmChipsProps(), new WmChipsState());\n }\n\n private searchRef: WmSearch = null as any;\n private maxSizeReached = 'Max size reached';\n private isDefaultQuery: boolean = true;\n private prevDatavalue: any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmSearch) {\n this.searchRef = c;\n }\n }\n };\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'datavalue':\n if (!$new || $new.length === 0) {\n this.updateState({\n chipsList: [],\n } as WmChipsState);\n }\n break;\n case 'maxsize':\n if ($new) {\n const { datavalue } = this.state.props;\n const { dataItems } = this.state;\n \n let dataValueItems = Array.isArray(datavalue)\n ? datavalue\n : typeof datavalue === 'string'\n ? datavalue.split(',').map((item) => item.trim())\n : datavalue != null\n ? [datavalue]\n : [];\n\n if (dataValueItems.length >= $new) {\n dataValueItems = dataValueItems.slice(0, $new);\n const updatedItems = dataItems.map((item:any) => ({\n ...item,\n selected: dataValueItems.includes(item.datafield),\n }));\n this.updateState({ dataItems: updatedItems } as WmChipsState);\n }\n\n break;\n }\n }\n }\n\n reset() {\n if (this.searchRef?.state.props.query) {\n this.searchRef.reset();\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isDefaultQuery = true;\n this.updateDefaultQueryModel();\n }\n\n addItem($event: any, widget: any) {\n let newChipList = clone(this.state.chipsList),\n allowAdd;\n newChipList.push(widget.queryModel);\n const isFormFieldWidget = get(this.props, 'formfield');\n if (this.isDuplicate(widget.queryModel)) {\n this.resetSearchModel();\n return;\n }\n\n // @ts-ignore\n allowAdd = isFormFieldWidget ? this.props?.invokeEvent('onBeforeadd', [null, this, widget.queryModel]) : this.invokeEventCallback('onBeforeadd', [null, this, widget.queryModel]);\n\n if (!isUndefined(allowAdd) && !this.toBoolean(allowAdd)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n\n // @ts-ignore\n isFormFieldWidget ? this.props?.invokeEvent('onAdd', [null, this, widget.queryModel]) : this.invokeEventCallback('onAdd', [null, this, widget.queryModel]);\n this.resetSearchModel();\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmChipsState);\n }\n\n selectChip(chipItem: any) {\n if (!chipItem.selected && this.state.props.maxsize > 0 && (this.state.chipsList.length === this.state.props.maxsize)) {\n return;\n }\n chipItem.selected = !chipItem.selected;\n const newChipList: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));\n selectedItem.selected = chipItem.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n newChipList.push(item);\n }\n });\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n }\n\n setDatavalue(newChipList: any) {\n const dataValue = newChipList.map((item: any) => item.datafield);\n this.updateDatavalue(dataValue);\n this.updateMaxSize(newChipList.length);\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [null, this, dataValue, this.prevDatavalue])\n }\n this.prevDatavalue = dataValue;\n }\n\n toBoolean = (val: any) => ((val && val !== 'false') ? true : false);\n\n // Prepare datavalue object from a string(junk) value when datafield is allFields.\n createCustomDataModel(val: string) {\n return {\n key: `${this.state.props.name}_item${this.state.chipsList.length}`,\n dataObject: val,\n displayfield: val,\n datafield: val,\n isCustom: true\n }\n }\n\n resetSearchModel() {\n (this as any).searchRef.isDefaultQuery = false;\n this.searchRef.clearSearch();\n }\n\n isDuplicate(item: any) {\n return findIndex(this.state.chipsList, {datafield: item.datafield}) > -1;\n }\n\n // Check if max size is reached\n private updateMaxSize(chipListLength: number) {\n const saturate = this.state.props.maxsize > 0 && (chipListLength || this.state.chipsList.length) === this.state.props.maxsize;\n \n this.updateState({\n saturate: saturate\n } as WmChipsState);\n }\n\n removeItem(item: any, index: any) {\n let newChipList = clone(this.state.chipsList);\n const isFormFieldWidget = get(this.props, 'formfield');\n newChipList = pull(newChipList, item);\n // prevent deletion if the before-remove event callback returns false\n // @ts-ignore\n const allowRemove = isFormFieldWidget ? this.props.invokeEvent('onBeforeremove',[null, this, item]) : this.invokeEventCallback('onBeforeremove',[null, this, item]);\n if (!isUndefined(allowRemove) && !this.toBoolean(allowRemove)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState,()=>{\n this.setDatavalue(newChipList);\n // @ts-ignore\n isFormFieldWidget ? this.props.invokeEvent && this.props.invokeEvent('onRemove', [null, this, item]) : this.invokeEventCallback('onRemove', [null, this, item]);\n });\n }\n\n private isDefaultView() {\n return !this.state.props.searchable && this.state.dataItems?.length <= 10;\n }\n\n renderChip(item: any, index: any) {\n const isSelected = this.isDefaultView() ? item.selected : true;\n const accessibilityProps = {\n accessibilityLabel: item.displayexp || item.displayfield,\n accessibilityState: {\n selected: isSelected,\n },\n accessibilityRole: 'checkbox' as AccessibilityRole\n }\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction('chip'+ index)}\n {...accessibilityProps}\n style={[this.styles.chip, isSelected ? this.styles.activeChip : null]}\n key={'chipitem_'+ index}\n onPress={() => {\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n if (this.isDefaultView()) {\n this.selectChip(item);\n }\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onChipclick', [null, this, item]);\n // @ts-ignore\n this.props.invokeEvent('onChipselect', [null, this, item]);\n } else {\n this.invokeEventCallback('onChipclick', [null, this, item]);\n this.invokeEventCallback('onChipselect', [null, this, item]);\n }\n }}>\n {isSelected && this.isDefaultView() ? <WmIcon id={this.getTestId('checkicon')} iconclass={'wm-sl-l sl-check'} iconsize={16} styles={merge({}, this.styles.doneIcon, {icon: {color: isSelected ? this.styles.activeChipLabel.color : null}})} accessible={false}></WmIcon> : null}\n { this._showSkeleton ? null : <WmPicture id={this.getTestId('chip'+ index + 'picture')} styles={this.styles.imageStyles} picturesource={item.imgSrc} shape='circle' accessible={false}></WmPicture>}\n { this._showSkeleton ? <WmLabel styles={{root: {width: 50}}}/> : <Text {...this.getTestPropsForAction('chip'+ index+'label')}style={[this.styles.chipLabel, isSelected ? this.styles.activeChipLabel : null]}>{item.displayexp || item.displayfield}</Text>}\n {!this.isDefaultView() && !(this.state.props.disabled||this.state.props.readonly) ? <WmIcon id={this.getTestId('clearbtn')} iconclass={'wi wi-clear'} iconsize={16} styles={this.styles.clearIcon} onTap={() => this.removeItem(item, index)} accessibilitylabel='clear' accessibilityrole='button'></WmIcon> : null}\n </TouchableOpacity>\n )\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItems = filter(this.state.dataItems, (item) => item.selected);\n if (selectedItems.length) {\n this.updateState({\n chipsList: selectedItems\n } as WmChipsState);\n this.updateMaxSize(selectedItems.length);\n }\n this.isDefaultQuery = false;\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n componentDidUpdate(prevProps: WmChipsProps, prevState: WmChipsState) {\n super.componentDidUpdate(prevProps, prevState);\n if (prevState.chipsList !== this.state.chipsList) {\n this.searchRef?.computePosition();\n }\n } \n renderSkeleton(): React.ReactNode {\n return (<View style={this.styles.root}>\n <View style={this.styles.chipsWrapper}>{ \n [{}, {}, {}].map((item: any, index: any) => this.renderChip(item, index)) }\n </View>\n </View>)\n }\n\n renderWidget(props: WmChipsProps) {\n const chips = this.state.chipsList;\n const accessibilityProps = {\n accessible: true,\n accessibilityLabel: props.accessibilitylabel || 'Choose tags',\n accessibilityHint: props.hint,\n accessibilityRole: props.accessibilityrole\n }\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n\n <View style={this.styles.chipsWrapper} {...accessibilityProps}>\n {\n this.isDefaultView() ? this.state.dataItems.map((item: any, index: any) => this.renderChip(item, index)) : null\n }\n { props.searchable || !this.isDefaultView() ?\n <View style={[this.styles.searchContainer, {flexDirection: props.inputposition === 'first' ? 'column' : 'column-reverse'}]}>\n <WmSearch\n id={this.getTestId('search')}\n name=\"app-chip-search\"\n styles={this.styles.search}\n placeholder={this.state.saturate ? this.maxSizeReached : props.placeholder}\n listener={this.listener}\n dataset={props.dataset}\n searchkey={props.searchkey}\n minchars={props.minchars}\n autofocus={props.autofocus}\n disabled={props.disabled || props.readonly || this.state.saturate}\n readonly={props.readonly}\n displayexpression={props.displayexpression}\n getDisplayExpression={props.getDisplayExpression}\n displayimagesrc={props.displayimagesrc}\n displayfield={props.displayfield}\n datafield={props.datafield}\n onSubmit={this.addItem.bind(this)}\n onChange={() => {\n this.isDefaultQuery = false;\n this.props.listener?.onComponentChange && this.props.listener?.onComponentChange(this)\n }}\n showSearchIcon={false}\n showclear={false}\n type={props.minchars === 0 ? 'autocomplete' : 'search'}/>\n <View style={{ flexDirection: 'row', flexWrap: 'wrap'}} {...accessibilityProps}>\n {chips && chips.length ?\n chips.map((item: any, index: any) => this.renderChip(item, index))\n : null}\n </View>\n </View>\n : null }\n </View>\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","View","TouchableOpacity","Text","clone","findIndex","get","isUndefined","pull","forEach","filter","find","isEqual","merge","WmChipsProps","DEFAULT_CLASS","WmSearch","BaseDatasetComponent","BaseDatasetState","WmIcon","WmPicture","WmLabel","WmChipsState","constructor","args","_defineProperty","WmChips","props","onComponentInit","c","searchRef","val","onPropertyChange","name","$new","$old","length","updateState","chipsList","datavalue","state","dataItems","dataValueItems","Array","isArray","split","map","item","trim","slice","updatedItems","selected","includes","datafield","reset","_this$searchRef","query","onDataItemsUpdate","isDefaultQuery","updateDefaultQueryModel","addItem","$event","widget","_this$props","_this$props2","newChipList","allowAdd","push","queryModel","isFormFieldWidget","isDuplicate","resetSearchModel","invokeEvent","invokeEventCallback","toBoolean","setDatavalue","computeDisplayValue","displayValue","displayexp","displayfield","selectChip","chipItem","selectionMode","selectionmode","key","maxsize","selectedItem","d","dataValue","updateDatavalue","updateMaxSize","prevDatavalue","createCustomDataModel","dataObject","isCustom","clearSearch","chipListLength","saturate","removeItem","index","allowRemove","isDefaultView","_this$state$dataItems","searchable","renderChip","isSelected","accessibilityProps","accessibilityLabel","accessibilityState","accessibilityRole","createElement","_extends","getTestPropsForAction","style","styles","chip","activeChip","onPress","disabled","readonly","getLeftBadge","classname","text","leftBadge","activeLeftBadge","caption","id","getTestId","iconclass","selectediconclass","iconsize","doneIcon","icon","color","activeChipLabel","accessible","getLeftIconClassName","leftIcon","_showSkeleton","imageStyles","picturesource","imgSrc","shape","root","width","chipLabel","getRightBadge","rightBadge","activeRightBadge","getRightIconClassName","activeRightIcon","rightIcon","clearIcon","onTap","accessibilitylabel","accessibilityrole","selectedItems","componentDidMount","componentDidUpdate","prevProps","prevState","_this$searchRef2","computePosition","renderSkeleton","chipsWrapper","renderWidget","chips","accessibilityHint","hint","onLayout","event","handleLayout","searchContainer","flexDirection","inputposition","search","placeholder","maxSizeReached","listener","dataset","searchkey","minchars","autofocus","displayexpression","getDisplayExpression","displayimagesrc","onSubmit","bind","onChange","_this$props$listener","_this$props$listener2","onComponentChange","showSearchIcon","showclear","type","flexWrap"],"sources":["chips.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, TouchableOpacity, Text, DimensionValue, AccessibilityRole } from 'react-native';\nimport { LifecycleListener } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { clone, findIndex, get, isUndefined, pull, forEach, filter, find, isEqual, merge, isArray, isString } from 'lodash';\nimport WmChipsProps from './chips.props';\nimport { DEFAULT_CLASS, WmChipsStyles } from './chips.styles';\nimport WmSearch from '@wavemaker/app-rn-runtime/components/basic/search/search.component';\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '../../basic/label/label.component';\nimport { isDefined } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmChipsState extends BaseDatasetState<WmChipsProps> {\n chipsList: any = [];\n saturate: any;\n}\n\nexport default class WmChips extends BaseDatasetComponent<WmChipsProps, WmChipsState, WmChipsStyles> {\n constructor(props: WmChipsProps) {\n super(props, DEFAULT_CLASS, new WmChipsProps(), new WmChipsState());\n }\n\n private searchRef: WmSearch = null as any;\n private maxSizeReached = 'Max size reached';\n private isDefaultQuery: boolean = true;\n private prevDatavalue: any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmSearch) {\n this.searchRef = c;\n }\n }\n };\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'datavalue':\n if (!$new || $new.length === 0) {\n this.updateState({\n chipsList: [],\n } as WmChipsState);\n }\n break;\n case 'maxsize':\n if ($new) {\n const { datavalue } = this.state.props;\n const { dataItems } = this.state;\n \n let dataValueItems = Array.isArray(datavalue)\n ? datavalue\n : typeof datavalue === 'string'\n ? datavalue.split(',').map((item) => item.trim())\n : datavalue != null\n ? [datavalue]\n : [];\n\n if (dataValueItems.length >= $new) {\n dataValueItems = dataValueItems.slice(0, $new);\n const updatedItems = dataItems.map((item:any) => ({\n ...item,\n selected: dataValueItems.includes(item.datafield),\n }));\n this.updateState({ dataItems: updatedItems } as WmChipsState);\n }\n\n break;\n }\n }\n }\n\n reset() {\n if (this.searchRef?.state.props.query) {\n this.searchRef.reset();\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isDefaultQuery = true;\n this.updateDefaultQueryModel();\n }\n\n addItem($event: any, widget: any) {\n let newChipList = clone(this.state.chipsList),\n allowAdd;\n newChipList.push(widget.queryModel);\n const isFormFieldWidget = get(this.props, 'formfield');\n if (this.isDuplicate(widget.queryModel)) {\n this.resetSearchModel();\n return;\n }\n\n // @ts-ignore\n allowAdd = isFormFieldWidget ? this.props?.invokeEvent('onBeforeadd', [null, this, widget.queryModel]) : this.invokeEventCallback('onBeforeadd', [null, this, widget.queryModel]);\n\n if (!isUndefined(allowAdd) && !this.toBoolean(allowAdd)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n\n // @ts-ignore\n isFormFieldWidget ? this.props?.invokeEvent('onAdd', [null, this, widget.queryModel]) : this.invokeEventCallback('onAdd', [null, this, widget.queryModel]);\n this.resetSearchModel();\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmChipsState);\n }\n\n selectChip(chipItem: any) {\n const selectionMode = this.state.props.selectionmode || 'multiple';\n if (selectionMode === 'single') {\n // Single selection: deselect all others and select only the clicked one\n forEach(this.state.dataItems, (item) => {\n item.selected = (item.key === chipItem.key);\n });\n } \n else {\n // Multiple selection: original working logic\n if (!chipItem.selected && this.state.props.maxsize > 0 && (this.state.chipsList.length === this.state.props.maxsize)) {\n return;\n }\n chipItem.selected = !chipItem.selected;\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));\n if (selectedItem) {\n selectedItem.selected = chipItem.selected;\n }\n }\n \n const newChipList: any = [];\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n newChipList.push(item);\n }\n });\n \n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n }\n\n setDatavalue(newChipList: any) {\n const dataValue = newChipList.map((item: any) => item.datafield);\n this.updateDatavalue(dataValue);\n this.updateMaxSize(newChipList.length);\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [null, this, dataValue, this.prevDatavalue])\n }\n this.prevDatavalue = dataValue;\n }\n\n toBoolean = (val: any) => ((val && val !== 'false') ? true : false);\n\n // Prepare datavalue object from a string(junk) value when datafield is allFields.\n createCustomDataModel(val: string) {\n return {\n key: `${this.state.props.name}_item${this.state.chipsList.length}`,\n dataObject: val,\n displayfield: val,\n datafield: val,\n isCustom: true\n }\n }\n\n resetSearchModel() {\n (this as any).searchRef.isDefaultQuery = false;\n this.searchRef.clearSearch();\n }\n\n isDuplicate(item: any) {\n return findIndex(this.state.chipsList, {datafield: item.datafield}) > -1;\n }\n\n // Check if max size is reached\n private updateMaxSize(chipListLength: number) {\n const saturate = this.state.props.maxsize > 0 && (chipListLength || this.state.chipsList.length) === this.state.props.maxsize;\n \n this.updateState({\n saturate: saturate\n } as WmChipsState);\n }\n\n removeItem(item: any, index: any) {\n let newChipList = clone(this.state.chipsList);\n const isFormFieldWidget = get(this.props, 'formfield');\n newChipList = pull(newChipList, item);\n // prevent deletion if the before-remove event callback returns false\n // @ts-ignore\n const allowRemove = isFormFieldWidget ? this.props.invokeEvent('onBeforeremove',[null, this, item]) : this.invokeEventCallback('onBeforeremove',[null, this, item]);\n if (!isUndefined(allowRemove) && !this.toBoolean(allowRemove)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState,()=>{\n this.setDatavalue(newChipList);\n // @ts-ignore\n isFormFieldWidget ? this.props.invokeEvent && this.props.invokeEvent('onRemove', [null, this, item]) : this.invokeEventCallback('onRemove', [null, this, item]);\n });\n }\n\n private isDefaultView() {\n return !this.state.props.searchable && this.state.dataItems?.length <= 10;\n }\n\n renderChip(item: any, index: any) {\n const isSelected = this.isDefaultView() ? item.selected : true;\n const accessibilityProps = {\n accessibilityLabel: item.displayexp || item.displayfield,\n accessibilityState: {\n selected: isSelected,\n },\n accessibilityRole: 'checkbox' as AccessibilityRole\n }\n\n\n\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction('chip'+ index)}\n {...accessibilityProps}\n style={[this.styles.chip, isSelected ? this.styles.activeChip : null]}\n key={'chipitem_'+ index}\n onPress={() => {\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n if (this.isDefaultView()) {\n this.selectChip(item);\n }\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onChipclick', [null, this, item]);\n // @ts-ignorex\n this.props.invokeEvent('onChipselect', [null, this, item]);\n } else {\n this.invokeEventCallback('onChipclick', [null, this, item]);\n this.invokeEventCallback('onChipselect', [null, this, item]);\n }\n }}>\n \n {/* Left Badge */}\n {(this.state.props.getLeftBadge && this.state.props.getLeftBadge(index)) ? (\n <WmLabel \n {...this.getTestPropsForAction('chip'+ index+'leftbadge')} \n classname={isSelected ? 'app-chips-active-left-badge' : 'app-chips-left-badge'}\n styles={{text: {...this.styles.leftBadge, ...(isSelected ? this.styles.activeLeftBadge : {})}}}\n caption={(this.state.props.getLeftBadge && this.state.props.getLeftBadge(index))}\n />\n ) : null}\n \n {/* Selected Icon OR Left Icon (mutually exclusive) */}\n {isSelected && this.isDefaultView() ? (\n <WmIcon \n id={this.getTestId('checkicon')} \n iconclass={this.state.props.selectediconclass || 'wm-sl-l sl-check'} \n iconsize={16} \n styles={merge({}, this.styles.doneIcon, {icon: {color: isSelected ? this.styles.activeChipLabel.color : null}})} \n accessible={false}\n />\n ) : (\n (this.state.props.getLeftIconClassName && this.state.props.getLeftIconClassName(index)) ? (\n <WmIcon \n id={this.getTestId('lefticon')} \n iconclass={this.state.props.getLeftIconClassName && this.state.props.getLeftIconClassName(index)} \n iconsize={14} \n styles={this.styles.leftIcon} \n accessible={false}\n />\n ) : null\n )}\n \n {/* Picture */}\n {this._showSkeleton ? null : (\n <WmPicture \n id={this.getTestId('chip'+ index + 'picture')} \n styles={this.styles.imageStyles} \n picturesource={item.imgSrc} \n shape='circle' \n accessible={false}\n />\n )}\n \n {/* Label */}\n {this._showSkeleton ? (\n <WmLabel styles={{root: {width: 50}}}/>\n ) : (\n <Text \n {...this.getTestPropsForAction('chip'+ index+'label')}\n style={[this.styles.chipLabel, isSelected ? this.styles.activeChipLabel : null]}\n >\n {item.displayexp || item.displayfield}\n </Text>\n )}\n \n {/* Right Badge */}\n {(this.state.props.getRightBadge && this.state.props.getRightBadge(index)) ? (\n <WmLabel \n {...this.getTestPropsForAction('chip'+ index+'rightbadge')} \n classname={isSelected ? 'app-chips-active-right-badge' : 'app-chips-right-badge'}\n styles={{text: {...this.styles.rightBadge, ...(isSelected ? this.styles.activeRightBadge : {})}}}\n caption={(this.state.props.getRightBadge && this.state.props.getRightBadge(index))}\n />\n ) : null}\n \n {/* Right Icon */}\n {(this.state.props.getRightIconClassName && this.state.props.getRightIconClassName(index)) ? (\n <WmIcon \n id={this.getTestId('righticon')} \n iconclass={(this.state.props.getRightIconClassName && this.state.props.getRightIconClassName(index))} \n iconsize={16} \n styles={isSelected ? this.styles.activeRightIcon : this.styles.rightIcon} \n accessible={false}\n />\n ) : null}\n \n {/* Clear Button (only in non-default view) */}\n {!this.isDefaultView() && !(this.state.props.disabled || this.state.props.readonly) ? (\n <WmIcon \n id={this.getTestId('clearbtn')} \n iconclass={'wi wi-clear'} \n iconsize={16} \n styles={this.styles.clearIcon} \n onTap={() => this.removeItem(item, index)} \n accessibilitylabel='clear' \n accessibilityrole='button'\n />\n ) : null}\n </TouchableOpacity>\n )\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItems = filter(this.state.dataItems, (item) => item.selected);\n if (selectedItems.length) {\n this.updateState({\n chipsList: selectedItems\n } as WmChipsState);\n this.updateMaxSize(selectedItems.length);\n }\n this.isDefaultQuery = false;\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n componentDidUpdate(prevProps: WmChipsProps, prevState: WmChipsState) {\n super.componentDidUpdate(prevProps, prevState);\n if (prevState.chipsList !== this.state.chipsList) {\n this.searchRef?.computePosition();\n }\n } \n renderSkeleton(): React.ReactNode {\n return (<View style={this.styles.root}>\n <View style={this.styles.chipsWrapper}>{ \n [{}, {}, {}].map((item: any, index: any) => this.renderChip(item, index)) }\n </View>\n </View>)\n }\n\n renderWidget(props: WmChipsProps) {\n const chips = this.state.chipsList;\n const accessibilityProps = {\n accessible: true,\n accessibilityLabel: props.accessibilitylabel || 'Choose tags',\n accessibilityHint: props.hint,\n accessibilityRole: props.accessibilityrole\n }\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n\n <View style={this.styles.chipsWrapper} {...accessibilityProps}>\n {\n this.isDefaultView() ? this.state.dataItems.map((item: any, index: any) => this.renderChip(item, index)) : null\n }\n { props.searchable || !this.isDefaultView() ?\n <View style={[this.styles.searchContainer, {flexDirection: props.inputposition === 'first' ? 'column' : 'column-reverse'}]}>\n <WmSearch\n id={this.getTestId('search')}\n name=\"app-chip-search\"\n styles={this.styles.search}\n placeholder={this.state.saturate ? this.maxSizeReached : props.placeholder}\n listener={this.listener}\n dataset={props.dataset}\n searchkey={props.searchkey}\n minchars={props.minchars}\n autofocus={props.autofocus}\n disabled={props.disabled || props.readonly || this.state.saturate}\n readonly={props.readonly}\n displayexpression={props.displayexpression}\n getDisplayExpression={props.getDisplayExpression}\n displayimagesrc={props.displayimagesrc}\n displayfield={props.displayfield}\n datafield={props.datafield}\n onSubmit={this.addItem.bind(this)}\n onChange={() => {\n this.isDefaultQuery = false;\n this.props.listener?.onComponentChange && this.props.listener?.onComponentChange(this)\n }}\n showSearchIcon={false}\n showclear={false}\n type={props.minchars === 0 ? 'autocomplete' : 'search'}/>\n <View style={{ flexDirection: 'row', flexWrap: 'wrap'}} {...accessibilityProps}>\n {chips && chips.length ?\n chips.map((item: any, index: any) => this.renderChip(item, index))\n : null}\n </View>\n </View>\n : null }\n </View>\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -13,7 +13,18 @@ export default class WmChipsProps extends BaseDatasetProps {
|
|
13
13
|
_defineProperty(this, "minchars", 1);
|
14
14
|
_defineProperty(this, "maxsize", null);
|
15
15
|
_defineProperty(this, "inputposition", 'last');
|
16
|
+
_defineProperty(this, "selectionmode", 'multiple');
|
16
17
|
_defineProperty(this, "invokeEvent", void 0);
|
18
|
+
_defineProperty(this, "selectediconclass", 'wm-sl-l sl-check');
|
19
|
+
_defineProperty(this, "lefticonclass", null);
|
20
|
+
_defineProperty(this, "leftbadge", null);
|
21
|
+
_defineProperty(this, "righticonclass", null);
|
22
|
+
_defineProperty(this, "rightbadge", null);
|
23
|
+
// Array props for bind: expressions (pre-resolved at code-gen)
|
24
|
+
_defineProperty(this, "getLeftIconClassName", void 0);
|
25
|
+
_defineProperty(this, "getRightIconClassName", void 0);
|
26
|
+
_defineProperty(this, "getLeftBadge", void 0);
|
27
|
+
_defineProperty(this, "getRightBadge", void 0);
|
17
28
|
}
|
18
29
|
}
|
19
30
|
//# sourceMappingURL=chips.props.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseDatasetProps","WmChipsProps","constructor","args","_defineProperty"],"sources":["chips.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\n\nexport default class WmChipsProps extends BaseDatasetProps {\n autofocus: boolean = false;\n placeholder: string = 'Type here...';\n dataset: any = 'Option 1, Option 2, Option 3';\n searchable: boolean = false;\n searchkey: string = null as any;\n minchars: number = 1;\n maxsize: number = null as any;\n inputposition: string = 'last';\n invokeEvent?: Function;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;AAEvG,eAAe,MAAMC,YAAY,SAASD,gBAAgB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACpC,KAAK;IAAAA,eAAA,sBACJ,cAAc;IAAAA,eAAA,kBACrB,8BAA8B;IAAAA,eAAA,qBACvB,KAAK;IAAAA,eAAA,oBACP,IAAI;IAAAA,eAAA,mBACL,CAAC;IAAAA,eAAA,kBACF,IAAI;IAAAA,eAAA,wBACE,MAAM;IAAAA,eAAA;EAAA;
|
1
|
+
{"version":3,"names":["BaseDatasetProps","WmChipsProps","constructor","args","_defineProperty"],"sources":["chips.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\n\nexport default class WmChipsProps extends BaseDatasetProps {\n autofocus: boolean = false;\n placeholder: string = 'Type here...';\n dataset: any = 'Option 1, Option 2, Option 3';\n searchable: boolean = false;\n searchkey: string = null as any;\n minchars: number = 1;\n maxsize: number = null as any;\n inputposition: string = 'last';\n selectionmode?: 'single' | 'multiple' = 'multiple';\n invokeEvent?: Function;\n selectediconclass: string = 'wm-sl-l sl-check'; \n lefticonclass: string = null as any; \n leftbadge: string = null as any; \n righticonclass: string = null as any; \n rightbadge: string = null as any;\n // Array props for bind: expressions (pre-resolved at code-gen)\n getLeftIconClassName?: Function;\n getRightIconClassName?: Function;\n getLeftBadge?: Function;\n getRightBadge?: Function;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;AAEvG,eAAe,MAAMC,YAAY,SAASD,gBAAgB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACpC,KAAK;IAAAA,eAAA,sBACJ,cAAc;IAAAA,eAAA,kBACrB,8BAA8B;IAAAA,eAAA,qBACvB,KAAK;IAAAA,eAAA,oBACP,IAAI;IAAAA,eAAA,mBACL,CAAC;IAAAA,eAAA,kBACF,IAAI;IAAAA,eAAA,wBACE,MAAM;IAAAA,eAAA,wBACW,UAAU;IAAAA,eAAA;IAAAA,eAAA,4BAEvB,kBAAkB;IAAAA,eAAA,wBACtB,IAAI;IAAAA,eAAA,oBACR,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,qBACR,IAAI;IACzB;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;EAAA;AAKF","ignoreList":[]}
|
@@ -84,6 +84,38 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
84
84
|
padding: 4,
|
85
85
|
minHeight: 32
|
86
86
|
}
|
87
|
+
},
|
88
|
+
leftIcon: {
|
89
|
+
icon: {
|
90
|
+
marginRight: 0,
|
91
|
+
fontSize: 16,
|
92
|
+
color: themeVariables.chipDefaultTextColor,
|
93
|
+
marginBottom: 3
|
94
|
+
}
|
95
|
+
},
|
96
|
+
rightIcon: {
|
97
|
+
icon: {
|
98
|
+
marginLeft: 0,
|
99
|
+
fontSize: 16,
|
100
|
+
color: themeVariables.chipDefaultTextColor,
|
101
|
+
marginBottom: 3
|
102
|
+
}
|
103
|
+
},
|
104
|
+
activeLeftIcon: {
|
105
|
+
icon: {
|
106
|
+
marginRight: 0,
|
107
|
+
fontSize: 16,
|
108
|
+
color: themeVariables.chipActiveTextColor,
|
109
|
+
marginBottom: 3
|
110
|
+
}
|
111
|
+
},
|
112
|
+
activeRightIcon: {
|
113
|
+
icon: {
|
114
|
+
marginLeft: 0,
|
115
|
+
fontSize: 16,
|
116
|
+
marginBottom: 3,
|
117
|
+
color: themeVariables.chipActiveTextColor
|
118
|
+
}
|
87
119
|
}
|
88
120
|
});
|
89
121
|
addStyle(DEFAULT_CLASS, '', defaultStyles);
|
@@ -108,5 +140,37 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
108
140
|
}
|
109
141
|
}
|
110
142
|
});
|
143
|
+
addStyle('app-chips-left-badge', '', {
|
144
|
+
text: {
|
145
|
+
fontSize: 14,
|
146
|
+
marginRight: 0,
|
147
|
+
marginTop: 3,
|
148
|
+
fontFamily: themeVariables.baseFont,
|
149
|
+
fontWeight: '500',
|
150
|
+
color: themeVariables.chipDefaultTextColor
|
151
|
+
}
|
152
|
+
});
|
153
|
+
addStyle('app-chips-right-badge', '', {
|
154
|
+
text: {
|
155
|
+
fontSize: 14,
|
156
|
+
marginLeft: 0,
|
157
|
+
marginTop: 3,
|
158
|
+
fontFamily: themeVariables.baseFont,
|
159
|
+
fontWeight: '500',
|
160
|
+
color: themeVariables.chipDefaultTextColor
|
161
|
+
}
|
162
|
+
});
|
163
|
+
addStyle('app-chips-active-left-badge', '', {
|
164
|
+
text: {
|
165
|
+
color: themeVariables.chipActiveTextColor,
|
166
|
+
marginTop: 3
|
167
|
+
}
|
168
|
+
});
|
169
|
+
addStyle('app-chips-active-right-badge', '', {
|
170
|
+
text: {
|
171
|
+
color: themeVariables.chipActiveTextColor,
|
172
|
+
marginTop: 3
|
173
|
+
}
|
174
|
+
});
|
111
175
|
});
|
112
176
|
//# sourceMappingURL=chips.styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexWrap","text","chipsWrapper","flexDirection","chip","margin","backgroundColor","chipContainerColor","borderRadius","alignItems","justifyContent","paddingVertical","paddingHorizontal","minWidth","minHeight","borderWidth","borderColor","chipborderColor","elevation","chipLabel","fontSize","paddingLeft","fontFamily","baseFont","fontWeight","paddingRight","color","chipDefaultTextColor","activeChip","chipSelectedContainerColor","chipSelectedOutlineColor","activeChipLabel","chipActiveTextColor","searchContainer","width","search","marginBottom","borderRightWidth","borderTopRightRadius","borderBottomRightRadius","doneIcon","icon","chipIconColor","clearIcon","imageStyles","height","skeleton","padding","flex","maxWidth","opacity","inputDisabledBgColor"],"sources":["chips.styles.ts"],"sourcesContent":["import { TextStyle } from 'react-native';\nimport BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmSearchStyles } from '@wavemaker/app-rn-runtime/components/basic/search/search.styles';\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\nimport { WmPictureStyles } from '@wavemaker/app-rn-runtime/components/basic/picture/picture.styles';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport type WmChipsStyles = BaseStyles & {\n chip: AllStyle;\n chipLabel: TextStyle;\n chipsWrapper: AllStyle;\n search: WmSearchStyles;\n searchContainer: AllStyle;\n activeChip: AllStyle;\n activeChipLabel: TextStyle;\n clearIcon: WmIconStyles;\n doneIcon: WmIconStyles;\n imageStyles: WmPictureStyles;\n skeleton: WmSkeletonStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-chips';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmChipsStyles = defineStyles({\n root: {\n flexWrap: 'wrap',\n },\n text: {},\n chipsWrapper: {\n flexDirection: 'row',\n flexWrap: 'wrap'\n },\n chip: {\n margin: 2,\n backgroundColor: themeVariables.chipContainerColor,\n borderRadius: 8,\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n paddingVertical: 4,\n paddingHorizontal: 4,\n minWidth: 80,\n minHeight: 32,\n borderWidth: 1,\n borderColor: themeVariables.chipborderColor,\n elevation: 1\n },\n chipLabel : {\n fontSize: 14,\n paddingLeft: 8,\n fontFamily: themeVariables.baseFont,\n fontWeight: '500',\n paddingRight: 12,\n color: themeVariables.chipDefaultTextColor,\n borderColor: themeVariables.chipborderColor\n },\n activeChip: {\n backgroundColor: themeVariables.chipSelectedContainerColor, \n borderColor: themeVariables.chipSelectedOutlineColor,\n borderWidth: 0\n },\n activeChipLabel: {\n color: themeVariables.chipActiveTextColor\n },\n searchContainer: {\n width: '100%',\n flexDirection: 'column'\n },\n search: {\n root: {\n marginBottom: 8\n },\n text: {\n borderRightWidth: 1,\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4\n }\n } as WmSearchStyles,\n doneIcon: {\n icon: {\n paddingLeft: 8,\n fontSize: 18,\n color: themeVariables.chipIconColor,\n }\n } as WmIconStyles,\n clearIcon: {\n icon: {\n color: themeVariables.chipIconColor,\n paddingRight: 8,\n fontSize: 18\n }\n } as WmIconStyles,\n imageStyles: {\n root: {\n width: 32,\n height: 32\n }\n } as WmPictureStyles,\n skeleton: {\n root:{\n width: 80,\n borderRadius: 8,\n padding:4,\n minHeight: 32,\n }\n } as any as WmSkeletonStyles,\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n \n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-chips-input-horizontal', '', {\n root: {\n flex: 1,\n minWidth: 0, // Allow shrinking below intrinsic content size if needed\n maxWidth: '100%' // Prevent overflow\n },\n text: {}\n } as BaseStyles);\n \n addStyle(DEFAULT_CLASS + '-disabled', '', {\n chip: {\n opacity: 0.5\n },\n search: {\n root : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n }\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexWrap","text","chipsWrapper","flexDirection","chip","margin","backgroundColor","chipContainerColor","borderRadius","alignItems","justifyContent","paddingVertical","paddingHorizontal","minWidth","minHeight","borderWidth","borderColor","chipborderColor","elevation","chipLabel","fontSize","paddingLeft","fontFamily","baseFont","fontWeight","paddingRight","color","chipDefaultTextColor","activeChip","chipSelectedContainerColor","chipSelectedOutlineColor","activeChipLabel","chipActiveTextColor","searchContainer","width","search","marginBottom","borderRightWidth","borderTopRightRadius","borderBottomRightRadius","doneIcon","icon","chipIconColor","clearIcon","imageStyles","height","skeleton","padding","leftIcon","marginRight","rightIcon","marginLeft","activeLeftIcon","activeRightIcon","flex","maxWidth","opacity","inputDisabledBgColor","marginTop"],"sources":["chips.styles.ts"],"sourcesContent":["import { TextStyle } from 'react-native';\nimport BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmSearchStyles } from '@wavemaker/app-rn-runtime/components/basic/search/search.styles';\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\nimport { WmPictureStyles } from '@wavemaker/app-rn-runtime/components/basic/picture/picture.styles';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport type WmChipsStyles = BaseStyles & {\n chip: AllStyle;\n chipLabel: TextStyle;\n chipsWrapper: AllStyle;\n search: WmSearchStyles;\n searchContainer: AllStyle;\n activeChip: AllStyle;\n activeChipLabel: TextStyle;\n clearIcon: WmIconStyles;\n doneIcon: WmIconStyles;\n imageStyles: WmPictureStyles;\n skeleton: WmSkeletonStyles;\n leftIcon: WmIconStyles;\n rightIcon: WmIconStyles;\n activeLeftIcon: WmIconStyles;\n activeRightIcon: WmIconStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-chips';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmChipsStyles = defineStyles({\n root: {\n flexWrap: 'wrap',\n },\n text: {},\n chipsWrapper: {\n flexDirection: 'row',\n flexWrap: 'wrap'\n },\n chip: {\n margin: 2,\n backgroundColor: themeVariables.chipContainerColor,\n borderRadius: 8,\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n paddingVertical: 4,\n paddingHorizontal: 4,\n minWidth: 80,\n minHeight: 32,\n borderWidth: 1,\n borderColor: themeVariables.chipborderColor,\n elevation: 1\n },\n chipLabel : {\n fontSize: 14,\n paddingLeft: 8,\n fontFamily: themeVariables.baseFont,\n fontWeight: '500',\n paddingRight: 12,\n color: themeVariables.chipDefaultTextColor,\n borderColor: themeVariables.chipborderColor\n },\n activeChip: {\n backgroundColor: themeVariables.chipSelectedContainerColor, \n borderColor: themeVariables.chipSelectedOutlineColor,\n borderWidth: 0\n },\n activeChipLabel: {\n color: themeVariables.chipActiveTextColor\n },\n searchContainer: {\n width: '100%',\n flexDirection: 'column'\n },\n search: {\n root: {\n marginBottom: 8\n },\n text: {\n borderRightWidth: 1,\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4\n }\n } as WmSearchStyles,\n doneIcon: {\n icon: {\n paddingLeft: 8,\n fontSize: 18,\n color: themeVariables.chipIconColor,\n }\n } as WmIconStyles,\n clearIcon: {\n icon: {\n color: themeVariables.chipIconColor,\n paddingRight: 8,\n fontSize: 18\n }\n } as WmIconStyles,\n imageStyles: {\n root: {\n width: 32,\n height: 32\n }\n } as WmPictureStyles,\n skeleton: {\n root:{\n width: 80,\n borderRadius: 8,\n padding:4,\n minHeight: 32,\n }\n } as any as WmSkeletonStyles,\n leftIcon: {\n icon: {\n marginRight: 0,\n fontSize: 16,\n color: themeVariables.chipDefaultTextColor,\n marginBottom: 3\n }\n } as WmIconStyles,\n rightIcon: {\n icon: {\n marginLeft: 0,\n fontSize: 16,\n color: themeVariables.chipDefaultTextColor,\n marginBottom: 3\n }\n } as WmIconStyles,\n activeLeftIcon: {\n icon: {\n marginRight: 0,\n fontSize: 16,\n color: themeVariables.chipActiveTextColor,\n marginBottom: 3\n }\n } as WmIconStyles,\n activeRightIcon: {\n icon: {\n marginLeft: 0,\n fontSize: 16,\n marginBottom: 3,\n color: themeVariables.chipActiveTextColor,\n }\n } as WmIconStyles,\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n \n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-chips-input-horizontal', '', {\n root: {\n flex: 1,\n minWidth: 0, // Allow shrinking below intrinsic content size if needed\n maxWidth: '100%' // Prevent overflow\n },\n text: {}\n } as BaseStyles);\n \n addStyle(DEFAULT_CLASS + '-disabled', '', {\n chip: {\n opacity: 0.5\n },\n search: {\n root : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n }\n });\n addStyle('app-chips-left-badge', '', {\n text: {\n fontSize: 14,\n marginRight: 0,\n marginTop: 3,\n fontFamily: themeVariables.baseFont,\n fontWeight: '500',\n color: themeVariables.chipDefaultTextColor,\n }\n } as BaseStyles);\n\n addStyle('app-chips-right-badge', '', {\n text: {\n fontSize: 14,\n marginLeft: 0,\n marginTop: 3,\n fontFamily: themeVariables.baseFont,\n fontWeight: '500',\n color: themeVariables.chipDefaultTextColor,\n }\n } as BaseStyles);\n\n addStyle('app-chips-active-left-badge', '', {\n text: {\n color: themeVariables.chipActiveTextColor,\n marginTop: 3\n }\n } as BaseStyles);\n\n addStyle('app-chips-active-right-badge', '', {\n text: {\n color: themeVariables.chipActiveTextColor,\n marginTop: 3\n }\n } as BaseStyles);\n});\n"],"mappings":"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","ignoreList":[]}
|
@@ -4,12 +4,12 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
4
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
5
5
|
import React from 'react';
|
6
6
|
import { Platform, View } from 'react-native';
|
7
|
-
import * as DocumentPicker from 'expo-document-picker';
|
8
7
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
9
8
|
import WmFileuploadProps from './fileupload.props';
|
10
9
|
import { DEFAULT_CLASS } from './fileupload.styles';
|
11
10
|
import WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';
|
12
11
|
import { getMimeType } from '@wavemaker/app-rn-runtime/core/utils';
|
12
|
+
import { FileUploadPluginConsumer } from '@wavemaker/app-rn-runtime/core/device/fileupload-service';
|
13
13
|
export class WmFileuploadState extends BaseComponentState {
|
14
14
|
constructor(...args) {
|
15
15
|
super(...args);
|
@@ -24,10 +24,11 @@ const namedParameters = {
|
|
24
24
|
export default class WmFileupload extends BaseComponent {
|
25
25
|
constructor(props) {
|
26
26
|
super(props, DEFAULT_CLASS, new WmFileuploadProps());
|
27
|
+
_defineProperty(this, "fileUploadService", null);
|
27
28
|
}
|
28
29
|
onTap(props) {
|
29
30
|
namedParameters.type = getMimeType(props.contenttype);
|
30
|
-
|
31
|
+
this.fileUploadService.getDocumentAsync(namedParameters).then(response => {
|
31
32
|
let selectedFile;
|
32
33
|
if (Platform.OS !== 'web') {
|
33
34
|
selectedFile = response.assets[0];
|
@@ -50,17 +51,20 @@ export default class WmFileupload extends BaseComponent {
|
|
50
51
|
hint: props.hint,
|
51
52
|
accessibilityrole: props.accessibilityrole
|
52
53
|
};
|
53
|
-
return /*#__PURE__*/React.createElement(
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
54
|
+
return /*#__PURE__*/React.createElement(FileUploadPluginConsumer, null, fileUploadPluginService => {
|
55
|
+
this.fileUploadService = fileUploadPluginService;
|
56
|
+
return /*#__PURE__*/React.createElement(View, {
|
57
|
+
style: this.styles.root,
|
58
|
+
onLayout: event => this.handleLayout(event)
|
59
|
+
}, this._background, /*#__PURE__*/React.createElement(WmButton, _extends({
|
60
|
+
id: this.getTestId(),
|
61
|
+
iconclass: props.iconclass,
|
62
|
+
caption: props.caption,
|
63
|
+
styles: this.styles.button,
|
64
|
+
iconsize: props.iconsize,
|
65
|
+
onTap: () => this.onTap.bind(this)(props)
|
66
|
+
}, accessibilityProps)));
|
67
|
+
});
|
64
68
|
}
|
65
69
|
}
|
66
70
|
//# sourceMappingURL=fileupload.component.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Platform","View","
|
1
|
+
{"version":3,"names":["React","Platform","View","BaseComponent","BaseComponentState","WmFileuploadProps","DEFAULT_CLASS","WmButton","getMimeType","FileUploadPluginConsumer","WmFileuploadState","constructor","args","_defineProperty","namedParameters","copyToCacheDirectory","multiple","type","WmFileupload","props","onTap","contenttype","fileUploadService","getDocumentAsync","then","response","selectedFile","OS","assets","mimeType","file","invokeEventCallback","proxy","updateState","selectedFiles","bind","renderWidget","accessibilityProps","accessible","accessibilitylabel","hint","accessibilityrole","createElement","fileUploadPluginService","style","styles","root","onLayout","event","handleLayout","_background","_extends","id","getTestId","iconclass","caption","button","iconsize"],"sources":["fileupload.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, View } from 'react-native';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmFileuploadProps from './fileupload.props';\nimport { DEFAULT_CLASS, WmFileuploadStyles } from './fileupload.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { getMimeType } from '@wavemaker/app-rn-runtime/core/utils';\nimport { FileUploadPluginConsumer, FileUploadPluginService } from '@wavemaker/app-rn-runtime/core/device/fileupload-service';\n\nexport interface SelectFileOutput {\n mimeType: string;\n name: string;\n size: number;\n type: 'cancel' | 'success';\n uri: string;\n}\n\nexport class WmFileuploadState extends BaseComponentState<WmFileuploadProps> {\n selectedFiles: any;\n}\n\ntype NamedParametersType = {\n copyToCacheDirectory: boolean,\n multiple: boolean,\n type: string | string[]\n};\n\nconst namedParameters: NamedParametersType = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport default class WmFileupload extends BaseComponent<WmFileuploadProps, WmFileuploadState, WmFileuploadStyles> {\n public fileUploadService: any = null as any;\n\n constructor(props: WmFileuploadProps) {\n super(props, DEFAULT_CLASS, new WmFileuploadProps());\n }\n\n onTap(props: WmFileuploadProps) {\n namedParameters.type = getMimeType(props.contenttype);\n this.fileUploadService.getDocumentAsync(namedParameters).then((response: any) => {\n let selectedFile;\n if (Platform.OS !== 'web') {\n selectedFile = response.assets[0];\n selectedFile.type = selectedFile.mimeType;\n } else {\n selectedFile = [response.assets[0].file];\n }\n this.invokeEventCallback('onBeforeselect', [null, this.proxy, selectedFile]);\n\n this.updateState({\n props: {\n selectedFiles: selectedFile\n }\n } as WmFileuploadState, this.invokeEventCallback.bind(this, 'onSelect', [null, this.proxy, selectedFile]));\n });\n }\n\n renderWidget(props: WmFileuploadProps) {\n const accessibilityProps = {\n accessible: props.accessible,\n accessibilitylabel: props.accessibilitylabel,\n hint: props.hint,\n accessibilityrole: props.accessibilityrole,\n };\n\n return (\n <FileUploadPluginConsumer>\n {(fileUploadPluginService: FileUploadPluginService) => {\n this.fileUploadService = fileUploadPluginService;\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n <WmButton id={this.getTestId()} iconclass={props.iconclass} caption={props.caption} styles={this.styles.button} iconsize={props.iconsize} onTap={() => this.onTap.bind(this)(props)} {...accessibilityProps}></WmButton>\n </View>\n )}}\n </FileUploadPluginConsumer>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -17,6 +17,7 @@ export class WmPageContentState extends BaseComponentState {
|
|
17
17
|
constructor(...args) {
|
18
18
|
super(...args);
|
19
19
|
_defineProperty(this, "navHeightForRender", 0);
|
20
|
+
_defineProperty(this, "bottomTabHeightForRender", 0);
|
20
21
|
}
|
21
22
|
}
|
22
23
|
export default class WmPageContent extends BaseComponent {
|
@@ -51,7 +52,8 @@ export default class WmPageContent extends BaseComponent {
|
|
51
52
|
this.scrollRef = /*#__PURE__*/createRef();
|
52
53
|
this.state = {
|
53
54
|
...this.state,
|
54
|
-
navHeightForRender: 0
|
55
|
+
navHeightForRender: 0,
|
56
|
+
bottomTabHeightForRender: 0
|
55
57
|
};
|
56
58
|
this.subscribe('scrollToPosition', args => {
|
57
59
|
this.scrollTo(args);
|
@@ -76,6 +78,19 @@ export default class WmPageContent extends BaseComponent {
|
|
76
78
|
navHeightForRender: this.context.navHeight.value
|
77
79
|
});
|
78
80
|
}
|
81
|
+
this._unsubscribeNavHeight = this.subscribe('updateBottomTabHeight', bottomTabHeightValue => {
|
82
|
+
if (this.state.bottomTabHeightForRender !== bottomTabHeightValue) {
|
83
|
+
this.setState({
|
84
|
+
bottomTabHeightForRender: bottomTabHeightValue
|
85
|
+
});
|
86
|
+
}
|
87
|
+
return null;
|
88
|
+
});
|
89
|
+
if (this.context && this.context.bottomTabHeight) {
|
90
|
+
this.setState({
|
91
|
+
bottomTabHeightForRender: this.context.bottomTabHeight.value
|
92
|
+
});
|
93
|
+
}
|
79
94
|
}
|
80
95
|
componentWillUnmount() {
|
81
96
|
super.componentWillUnmount();
|
@@ -140,6 +155,7 @@ export default class WmPageContent extends BaseComponent {
|
|
140
155
|
const paddingTopVal = isNumber(paddingTop) ? paddingTop : 0;
|
141
156
|
const paddingBottomVal = isNumber(paddingBottom) ? paddingBottom : 0;
|
142
157
|
const navHeightVal = this.props.onscroll == 'topnav' || this.props.onscroll == 'topnav-bottomnav' ? this.state.navHeightForRender : 0;
|
158
|
+
const bottomTabHeightVal = this.props.onscroll == 'topnav-bottomnav' ? this.state.bottomTabHeightForRender : 0;
|
143
159
|
return /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
|
144
160
|
behavior: Platform.OS === 'ios' ? 'padding' : undefined,
|
145
161
|
keyboardVerticalOffset: verticalOffset,
|
@@ -153,7 +169,7 @@ export default class WmPageContent extends BaseComponent {
|
|
153
169
|
contentContainerStyle: [this.styles.root, {
|
154
170
|
backgroundColor: 'transparent',
|
155
171
|
paddingTop: navHeightVal + paddingTopVal,
|
156
|
-
paddingBottom:
|
172
|
+
paddingBottom: bottomTabHeightVal + paddingBottomVal
|
157
173
|
}],
|
158
174
|
onLayout: this.handleScrollViewLayout,
|
159
175
|
showsVerticalScrollIndicator: showScrollbar,
|