@bigbinary/neeto-fields-frontend 2.4.6 → 2.4.7

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/README.md CHANGED
@@ -183,10 +183,10 @@ default, but you can customize its behavior by passing optional props.
183
183
  type-based categorization, use an array of objects with `label` and `value`
184
184
  properties representing each resource types.
185
185
  15. `headerSize`: To specify the header size explicitly. Default is 'small'.
186
- 16. `onDeleteSuccess`: Callback function which is triggered on the success of
187
- field deletion.
188
- 17. `onReorderSuccess`: Callback function which is triggered on the success of
189
- reordering of fields.
186
+ 16. `onDeleteSuccess`: Callback function which is triggered on the success of
187
+ field deletion.
188
+ 17. `onReorderSuccess`: Callback function which is triggered on the success of
189
+ reordering of fields.
190
190
 
191
191
  > If no resources are provided, for resource type-based categorization, the
192
192
  > menu bar will fetch all resource types. For owner-based categorization, it
@@ -297,6 +297,9 @@ The `FieldsPane` component handles the `Add / Edit` operations of the field.
297
297
  10. `ownerId`: The ID of the owner in case the owner is not an organization.
298
298
  11. `onMutationSuccess`: The callback function which is triggered on the success
299
299
  of mutation functions( create, update & delete).
300
+ 12. `additionalPayload`: For sending additional data in the field creation
301
+ payload. This object will be merged with the base payload when creating a
302
+ new field.
300
303
 
301
304
  #### Usage
302
305
 
@@ -384,7 +387,9 @@ const queryClient = useQueryClient();
384
387
  fieldValues={user.fieldValues} // We expect the user response from host's backend to send associated field_values with it.
385
388
  resourceId={user?.id}
386
389
  resourceType="users"
387
- onMutationSuccess={() => queryClient.invalidateQueries({ queryKey: ["users"]})}
390
+ onMutationSuccess={() =>
391
+ queryClient.invalidateQueries({ queryKey: ["users"] })
392
+ }
388
393
  onMutate={() => queryClient.setQueriesData({ queryKey: ["users"] }, modifier)}
389
394
  customComponents={{
390
395
  hostSpecificKindName: field => <HostSpecificInputFields />,
@@ -485,7 +490,8 @@ The `InlineFieldValueInput` component render the field value input UI.
485
490
  6. `onMutate`: The callback function which is triggered on the mutations
486
491
  7. `onMutationSuccess`: The callback function which is triggered on the success
487
492
  of mutation functions of field value.
488
- 8. `canManageFieldValues`: Boolean value which specifies whether the values can be modified.
493
+ 8. `canManageFieldValues`: Boolean value which specifies whether the values can
494
+ be modified.
489
495
 
490
496
  #### Usage
491
497
 
@@ -494,7 +500,11 @@ tables. The example shows one such usage of building the `columnData` for table
494
500
  with inline editable field value inputs in cell.
495
501
 
496
502
  ```jsx
497
- const buildColumnDataForFields = (fields, onFieldValueUpdateSuccess, canWriteForm) =>
503
+ const buildColumnDataForFields = (
504
+ fields,
505
+ onFieldValueUpdateSuccess,
506
+ canWriteForm
507
+ ) =>
498
508
  fields.map(field => ({
499
509
  dataIndex: "field.id",
500
510
  key: field.id,
@@ -2,10 +2,10 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
5
- var React = require('react');
5
+ var react = require('react');
6
6
  var ramda = require('ramda');
7
7
  var constants = require('./constants-C4kiF-ZI.js');
8
- var utils$1 = require('./utils-f6fwkcvD.js');
8
+ var utils$1 = require('./utils-CY-OOclj.js');
9
9
  var index = require('./index-Ck5frOOX.js');
10
10
  require('@tanstack/react-query');
11
11
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
@@ -80,7 +80,7 @@ var useFieldValues = function useFieldValues(_ref) {
80
80
  ownerId = _ref.ownerId,
81
81
  _ref$queryOptions = _ref.queryOptions,
82
82
  queryOptions = _ref$queryOptions === void 0 ? {} : _ref$queryOptions;
83
- var _useState = React.useState({}),
83
+ var _useState = react.useState({}),
84
84
  _useState2 = _slicedToArray(_useState, 2),
85
85
  submittingFieldDetails = _useState2[0],
86
86
  setSubmittingFieldDetails = _useState2[1];
@@ -195,4 +195,4 @@ var FieldValueInputWrapper = function FieldValueInputWrapper(_ref) {
195
195
 
196
196
  exports.FieldValueInputWrapper = FieldValueInputWrapper;
197
197
  exports.useFieldValues = useFieldValues;
198
- //# sourceMappingURL=FieldValueInputWrapper-D7lOxWHu.js.map
198
+ //# sourceMappingURL=FieldValueInputWrapper-CCQZHCjA.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldValueInputWrapper-D7lOxWHu.js","sources":["../app/javascript/src/components/FieldValuesContainer/utils.js","../app/javascript/src/apis/field_values.js","../app/javascript/src/hooks/reactQuery/useFieldValuesApi.js","../app/javascript/src/hooks/useFieldValues.js","../app/javascript/src/components/FieldValuesContainer/FieldValueInputWrapper.jsx"],"sourcesContent":["import { isEmpty } from \"ramda\";\n\nimport { KINDS } from \"components/FieldsDashBoard/constants\";\n\nexport const isFieldValueEmpty = (fieldKind, fieldValueData) => {\n if (fieldKind === KINDS.multiOption) return isEmpty(fieldValueData.values);\n\n if ([KINDS.timeRange, KINDS.dateRange].includes(fieldKind)) {\n return isEmpty(fieldValueData.value[0]) && isEmpty(fieldValueData.value[1]);\n }\n\n return isEmpty(fieldValueData.value);\n};\n","import axios from \"axios\";\nimport { buildUrl } from \"neetocommons/utils\";\n\nimport { FIELD_VALUES_URL, FIELD_VALUE_URL } from \"src/constants\";\n\nconst fieldValueUrl = fieldValueId =>\n buildUrl(FIELD_VALUE_URL, { fieldValueId });\n\nconst create = payload => axios.post(FIELD_VALUES_URL, payload);\n\nconst fetch = payload => axios.get(FIELD_VALUES_URL, payload);\n\nconst destroy = ({ id, payload }) =>\n axios.delete(fieldValueUrl(id), { data: payload });\n\nconst update = ({ id, payload }) => axios.patch(fieldValueUrl(id), payload);\n\nconst fieldValuesApi = { create, fetch, destroy, update };\n\nexport default fieldValuesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport fieldValuesApi from \"apis/field_values\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchFieldValues = params =>\n useQuery({\n queryKey: [QUERY_KEYS.FIELD_VALUES, params.resource],\n queryFn: () => fieldValuesApi.fetch({ params }),\n });\n\nconst useCreateFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.create, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nconst useUpdateFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.update, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nconst useDeleteFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nexport {\n useCreateFieldValue,\n useFetchFieldValues,\n useUpdateFieldValue,\n useDeleteFieldValue,\n};\n","import { useState } from \"react\";\n\nimport {\n assoc,\n head,\n values as getValues,\n isEmpty,\n omit,\n mergeDeepLeft,\n} from \"ramda\";\n\nimport { isFieldValueEmpty } from \"components/FieldValuesContainer/utils\";\nimport { getTimezone } from \"components/utils\";\nimport { SUBMIT_FIELD_STATUS } from \"src/constants\";\n\nimport {\n useCreateFieldValue,\n useDeleteFieldValue,\n useUpdateFieldValue,\n} from \"./reactQuery/useFieldValuesApi\";\nimport { isDateTime } from \"./utils\";\n\nconst useFieldValues = ({\n resourceId,\n resourceType,\n ownerId,\n queryOptions = {},\n}) => {\n const [submittingFieldDetails, setSubmittingFieldDetails] = useState({});\n\n const onMutationSuccess = (...callbackArguments) => {\n const [response = {}] = callbackArguments;\n\n setSubmittingFieldDetails(\n assoc(response.fieldValue?.fieldId, {\n status: SUBMIT_FIELD_STATUS.SUCCESS,\n })\n );\n queryOptions.onSuccess?.(...callbackArguments);\n };\n\n const onMutationError = (...callbackArguments) => {\n const [_, payload = {}] = callbackArguments;\n\n setSubmittingFieldDetails(\n assoc(payload.payload?.fieldValue?.fieldId, {\n status: SUBMIT_FIELD_STATUS.FAILED,\n })\n );\n queryOptions.onError?.(...callbackArguments);\n };\n\n const onSettled = (...callbackArguments) => {\n const [response = {}, _, request = {}] = callbackArguments;\n const fieldId =\n response.fieldValue?.fieldId || request.payload?.fieldValue?.fieldId;\n\n setTimeout(() => setSubmittingFieldDetails(omit([fieldId])), 5000);\n queryOptions.onSettled?.(...callbackArguments);\n };\n\n const updatedQueryOptions = {\n ...queryOptions,\n onSuccess: onMutationSuccess,\n onError: onMutationError,\n onSettled,\n };\n\n const { mutate: createFieldValue } = useCreateFieldValue(updatedQueryOptions);\n const { mutate: updateFieldValue } = useUpdateFieldValue(updatedQueryOptions);\n const { mutate: deleteFieldValue } = useDeleteFieldValue(updatedQueryOptions);\n\n const handleSubmit = (field, values) => {\n const fieldValue = head(getValues(values));\n setSubmittingFieldDetails(\n assoc(fieldValue.fieldId, { status: SUBMIT_FIELD_STATUS.SUBMITTING })\n );\n\n const fieldKind = field.kind;\n const additionalData = isDateTime(fieldKind)\n ? { timezone: getTimezone() }\n : {};\n\n const payload = {\n fieldValue: mergeDeepLeft({ data: additionalData }, fieldValue),\n resource: resourceType,\n resourceId,\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n };\n\n if (isFieldValueEmpty(fieldKind, fieldValue.data)) {\n deleteFieldValue({ id: fieldValue.id, payload });\n } else {\n fieldValue.id\n ? updateFieldValue({ id: fieldValue.id, payload })\n : createFieldValue(payload);\n }\n };\n\n return { handleSubmit, submittingFieldDetails };\n};\n\nexport default useFieldValues;\n","import classnames from \"classnames\";\nimport { Form as NeetoUIForm } from \"neetoui/formik\";\n\nimport { getInitialFieldValue } from \"components/utils\";\n\nconst FieldValueInputWrapper = ({\n field,\n fieldValues,\n children,\n onSubmit,\n className = \"\",\n}) => (\n <NeetoUIForm\n scrollToErrorField\n className={classnames(\"flex w-full\", className)}\n formikProps={{\n initialValues: getInitialFieldValue({ field, fieldValues }),\n onSubmit,\n enableReinitialize: true,\n }}\n >\n {children}\n </NeetoUIForm>\n);\n\nexport default FieldValueInputWrapper;\n"],"names":["isFieldValueEmpty","fieldKind","fieldValueData","KINDS","multiOption","isEmpty","values","timeRange","dateRange","includes","value","fieldValueUrl","fieldValueId","buildUrl","FIELD_VALUE_URL","create","payload","axios","post","FIELD_VALUES_URL","fetch","get","destroy","_ref","id","data","update","_ref2","patch","fieldValuesApi","useCreateFieldValue","options","useMutationWithInvalidation","_objectSpread","keysToInvalidate","QUERY_KEYS","FIELD_VALUES","useUpdateFieldValue","useDeleteFieldValue","useFieldValues","resourceId","resourceType","ownerId","_ref$queryOptions","queryOptions","_useState","useState","_useState2","_slicedToArray","submittingFieldDetails","setSubmittingFieldDetails","onMutationSuccess","_response$fieldValue","_queryOptions$onSucce","_len","arguments","length","callbackArguments","Array","_key","_callbackArguments$","response","assoc","fieldValue","fieldId","status","SUBMIT_FIELD_STATUS","SUCCESS","onSuccess","call","apply","concat","onMutationError","_payload$payload","_queryOptions$onError","_len2","_key2","_callbackArguments$2","FAILED","onError","onSettled","_response$fieldValue2","_request$payload","_queryOptions$onSettl","_len3","_key3","_callbackArguments$3","_","_callbackArguments$4","request","setTimeout","omit","updatedQueryOptions","_useCreateFieldValue","createFieldValue","mutate","_useUpdateFieldValue","updateFieldValue","_useDeleteFieldValue","deleteFieldValue","handleSubmit","field","head","getValues","SUBMITTING","kind","additionalData","isDateTime","timezone","getTimezone","mergeDeepLeft","resource","undefined","FieldValueInputWrapper","fieldValues","children","onSubmit","_ref$className","className","_jsx","NeetoUIForm","scrollToErrorField","classnames","formikProps","initialValues","getInitialFieldValue","enableReinitialize"],"mappings":"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"}
1
+ {"version":3,"file":"FieldValueInputWrapper-CCQZHCjA.js","sources":["../app/javascript/src/components/FieldValuesContainer/utils.js","../app/javascript/src/apis/field_values.js","../app/javascript/src/hooks/reactQuery/useFieldValuesApi.js","../app/javascript/src/hooks/useFieldValues.js","../app/javascript/src/components/FieldValuesContainer/FieldValueInputWrapper.jsx"],"sourcesContent":["import { isEmpty } from \"ramda\";\n\nimport { KINDS } from \"components/FieldsDashBoard/constants\";\n\nexport const isFieldValueEmpty = (fieldKind, fieldValueData) => {\n if (fieldKind === KINDS.multiOption) return isEmpty(fieldValueData.values);\n\n if ([KINDS.timeRange, KINDS.dateRange].includes(fieldKind)) {\n return isEmpty(fieldValueData.value[0]) && isEmpty(fieldValueData.value[1]);\n }\n\n return isEmpty(fieldValueData.value);\n};\n","import axios from \"axios\";\nimport { buildUrl } from \"neetocommons/utils\";\n\nimport { FIELD_VALUES_URL, FIELD_VALUE_URL } from \"src/constants\";\n\nconst fieldValueUrl = fieldValueId =>\n buildUrl(FIELD_VALUE_URL, { fieldValueId });\n\nconst create = payload => axios.post(FIELD_VALUES_URL, payload);\n\nconst fetch = payload => axios.get(FIELD_VALUES_URL, payload);\n\nconst destroy = ({ id, payload }) =>\n axios.delete(fieldValueUrl(id), { data: payload });\n\nconst update = ({ id, payload }) => axios.patch(fieldValueUrl(id), payload);\n\nconst fieldValuesApi = { create, fetch, destroy, update };\n\nexport default fieldValuesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport fieldValuesApi from \"apis/field_values\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchFieldValues = params =>\n useQuery({\n queryKey: [QUERY_KEYS.FIELD_VALUES, params.resource],\n queryFn: () => fieldValuesApi.fetch({ params }),\n });\n\nconst useCreateFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.create, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nconst useUpdateFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.update, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nconst useDeleteFieldValue = options =>\n useMutationWithInvalidation(fieldValuesApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.FIELD_VALUES]],\n ...options,\n });\n\nexport {\n useCreateFieldValue,\n useFetchFieldValues,\n useUpdateFieldValue,\n useDeleteFieldValue,\n};\n","import { useState } from \"react\";\n\nimport {\n assoc,\n head,\n values as getValues,\n isEmpty,\n omit,\n mergeDeepLeft,\n} from \"ramda\";\n\nimport { isFieldValueEmpty } from \"components/FieldValuesContainer/utils\";\nimport { getTimezone } from \"components/utils\";\nimport { SUBMIT_FIELD_STATUS } from \"src/constants\";\n\nimport {\n useCreateFieldValue,\n useDeleteFieldValue,\n useUpdateFieldValue,\n} from \"./reactQuery/useFieldValuesApi\";\nimport { isDateTime } from \"./utils\";\n\nconst useFieldValues = ({\n resourceId,\n resourceType,\n ownerId,\n queryOptions = {},\n}) => {\n const [submittingFieldDetails, setSubmittingFieldDetails] = useState({});\n\n const onMutationSuccess = (...callbackArguments) => {\n const [response = {}] = callbackArguments;\n\n setSubmittingFieldDetails(\n assoc(response.fieldValue?.fieldId, {\n status: SUBMIT_FIELD_STATUS.SUCCESS,\n })\n );\n queryOptions.onSuccess?.(...callbackArguments);\n };\n\n const onMutationError = (...callbackArguments) => {\n const [_, payload = {}] = callbackArguments;\n\n setSubmittingFieldDetails(\n assoc(payload.payload?.fieldValue?.fieldId, {\n status: SUBMIT_FIELD_STATUS.FAILED,\n })\n );\n queryOptions.onError?.(...callbackArguments);\n };\n\n const onSettled = (...callbackArguments) => {\n const [response = {}, _, request = {}] = callbackArguments;\n const fieldId =\n response.fieldValue?.fieldId || request.payload?.fieldValue?.fieldId;\n\n setTimeout(() => setSubmittingFieldDetails(omit([fieldId])), 5000);\n queryOptions.onSettled?.(...callbackArguments);\n };\n\n const updatedQueryOptions = {\n ...queryOptions,\n onSuccess: onMutationSuccess,\n onError: onMutationError,\n onSettled,\n };\n\n const { mutate: createFieldValue } = useCreateFieldValue(updatedQueryOptions);\n const { mutate: updateFieldValue } = useUpdateFieldValue(updatedQueryOptions);\n const { mutate: deleteFieldValue } = useDeleteFieldValue(updatedQueryOptions);\n\n const handleSubmit = (field, values) => {\n const fieldValue = head(getValues(values));\n setSubmittingFieldDetails(\n assoc(fieldValue.fieldId, { status: SUBMIT_FIELD_STATUS.SUBMITTING })\n );\n\n const fieldKind = field.kind;\n const additionalData = isDateTime(fieldKind)\n ? { timezone: getTimezone() }\n : {};\n\n const payload = {\n fieldValue: mergeDeepLeft({ data: additionalData }, fieldValue),\n resource: resourceType,\n resourceId,\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n };\n\n if (isFieldValueEmpty(fieldKind, fieldValue.data)) {\n deleteFieldValue({ id: fieldValue.id, payload });\n } else {\n fieldValue.id\n ? updateFieldValue({ id: fieldValue.id, payload })\n : createFieldValue(payload);\n }\n };\n\n return { handleSubmit, submittingFieldDetails };\n};\n\nexport default useFieldValues;\n","import classnames from \"classnames\";\nimport { Form as NeetoUIForm } from \"neetoui/formik\";\n\nimport { getInitialFieldValue } from \"components/utils\";\n\nconst FieldValueInputWrapper = ({\n field,\n fieldValues,\n children,\n onSubmit,\n className = \"\",\n}) => (\n <NeetoUIForm\n scrollToErrorField\n className={classnames(\"flex w-full\", className)}\n formikProps={{\n initialValues: getInitialFieldValue({ field, fieldValues }),\n onSubmit,\n enableReinitialize: true,\n }}\n >\n {children}\n </NeetoUIForm>\n);\n\nexport default FieldValueInputWrapper;\n"],"names":["isFieldValueEmpty","fieldKind","fieldValueData","KINDS","multiOption","isEmpty","values","timeRange","dateRange","includes","value","fieldValueUrl","fieldValueId","buildUrl","FIELD_VALUE_URL","create","payload","axios","post","FIELD_VALUES_URL","fetch","get","destroy","_ref","id","data","update","_ref2","patch","fieldValuesApi","useCreateFieldValue","options","useMutationWithInvalidation","_objectSpread","keysToInvalidate","QUERY_KEYS","FIELD_VALUES","useUpdateFieldValue","useDeleteFieldValue","useFieldValues","resourceId","resourceType","ownerId","_ref$queryOptions","queryOptions","_useState","useState","_useState2","_slicedToArray","submittingFieldDetails","setSubmittingFieldDetails","onMutationSuccess","_response$fieldValue","_queryOptions$onSucce","_len","arguments","length","callbackArguments","Array","_key","_callbackArguments$","response","assoc","fieldValue","fieldId","status","SUBMIT_FIELD_STATUS","SUCCESS","onSuccess","call","apply","concat","onMutationError","_payload$payload","_queryOptions$onError","_len2","_key2","_callbackArguments$2","FAILED","onError","onSettled","_response$fieldValue2","_request$payload","_queryOptions$onSettl","_len3","_key3","_callbackArguments$3","_","_callbackArguments$4","request","setTimeout","omit","updatedQueryOptions","_useCreateFieldValue","createFieldValue","mutate","_useUpdateFieldValue","updateFieldValue","_useDeleteFieldValue","deleteFieldValue","handleSubmit","field","head","getValues","SUBMITTING","kind","additionalData","isDateTime","timezone","getTimezone","mergeDeepLeft","resource","undefined","FieldValueInputWrapper","fieldValues","children","onSubmit","_ref$className","className","_jsx","NeetoUIForm","scrollToErrorField","classnames","formikProps","initialValues","getInitialFieldValue","enableReinitialize"],"mappings":"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"}