@wix/auto-patterns 1.5.0 → 1.7.0

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.
Files changed (87) hide show
  1. package/dist/cjs/collectionData/cms/CmsCollectionData.js +12 -7
  2. package/dist/cjs/collectionData/cms/CmsCollectionData.js.map +1 -1
  3. package/dist/cjs/collectionData/cms/filterUtils.js +2 -1
  4. package/dist/cjs/collectionData/cms/filterUtils.js.map +1 -1
  5. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +13 -15
  6. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  7. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Checkbox.js +5 -8
  8. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +1 -1
  9. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js +65 -0
  10. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -0
  11. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js +140 -0
  12. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -0
  13. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +16 -12
  14. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
  15. package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js +36 -0
  16. package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -0
  17. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js +36 -0
  18. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -0
  19. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js +8 -32
  20. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
  21. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js +75 -0
  22. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -0
  23. package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js +4 -0
  24. package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js.map +1 -0
  25. package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/dates.js +16 -0
  26. package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +1 -0
  27. package/dist/cjs/index.js +12 -0
  28. package/dist/cjs/index.js.map +1 -1
  29. package/dist/cjs/types/types.js.map +1 -1
  30. package/dist/esm/collectionData/cms/CmsCollectionData.js +11 -6
  31. package/dist/esm/collectionData/cms/CmsCollectionData.js.map +1 -1
  32. package/dist/esm/collectionData/cms/filterUtils.js +2 -1
  33. package/dist/esm/collectionData/cms/filterUtils.js.map +1 -1
  34. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +1 -3
  35. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  36. package/dist/esm/components/AutoPatternsEntityPage/Fields/Checkbox.js +3 -5
  37. package/dist/esm/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +1 -1
  38. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js +46 -0
  39. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -0
  40. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js +97 -0
  41. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -0
  42. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +16 -12
  43. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
  44. package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js +17 -0
  45. package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -0
  46. package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js +17 -0
  47. package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -0
  48. package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js +4 -27
  49. package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
  50. package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js +39 -0
  51. package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -0
  52. package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js +2 -0
  53. package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js.map +1 -0
  54. package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/dates.js +10 -0
  55. package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +1 -0
  56. package/dist/esm/index.js +2 -0
  57. package/dist/esm/index.js.map +1 -1
  58. package/dist/esm/types/types.js.map +1 -1
  59. package/dist/types/collectionData/cms/CmsCollectionData.d.ts +2 -2
  60. package/dist/types/collectionData/cms/CmsCollectionData.d.ts.map +1 -1
  61. package/dist/types/collectionData/cms/filterUtils.d.ts.map +1 -1
  62. package/dist/types/components/AutoPatternsEntityPage/AutoPatternsEntityPage.d.ts.map +1 -1
  63. package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts +1 -1
  64. package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts.map +1 -1
  65. package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts +6 -0
  66. package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts.map +1 -0
  67. package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts +6 -0
  68. package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts.map +1 -0
  69. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts +2 -8
  70. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts.map +1 -1
  71. package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts +6 -0
  72. package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts.map +1 -0
  73. package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts +6 -0
  74. package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts.map +1 -0
  75. package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts +2 -9
  76. package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts.map +1 -1
  77. package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts +6 -0
  78. package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts.map +1 -0
  79. package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts +11 -0
  80. package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts.map +1 -0
  81. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts +3 -0
  82. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts.map +1 -0
  83. package/dist/types/index.d.ts +2 -0
  84. package/dist/types/index.d.ts.map +1 -1
  85. package/dist/types/types/types.d.ts +3 -5
  86. package/dist/types/types/types.d.ts.map +1 -1
  87. package/package.json +2 -2
@@ -7,15 +7,24 @@ var _react = _interopRequireDefault(require("react"));
7
7
  var _ShortText = require("./ShortText");
8
8
  var _patterns = require("@wix/patterns");
9
9
  var _form = require("@wix/patterns/form");
10
- var _data = require("@wix/data");
11
10
  var _Checkbox = require("./Checkbox");
11
+ var _DateInput = require("./DateInput");
12
+ var _DateTime = require("./DateTime");
13
+ var _Number = require("./Number");
14
+ var _LongText = require("./LongText");
15
+ var _Url = require("./Url");
12
16
  var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.tsx";
13
17
  const EDITABLE_INPUT_ELEMENTS = exports.EDITABLE_INPUT_ELEMENTS = {
14
- [_data.collections.Type.TEXT]: _ShortText.ShortText,
15
- [_data.collections.Type.BOOLEAN]: _Checkbox.Checkbox
18
+ SHORT_TEXT: _ShortText.ShortText,
19
+ LONG_TEXT: _LongText.LongText,
20
+ BOOLEAN: _Checkbox.Checkbox,
21
+ DATE: _DateInput.DateInput,
22
+ DATETIME: _DateTime.DateTime,
23
+ NUMBER: _Number.Number,
24
+ URL: _Url.Url
16
25
  };
17
26
  const FormFieldInput = props => {
18
- var _pageState$entity, _controller$fieldStat;
27
+ var _pageState$entity;
19
28
  const {
20
29
  field
21
30
  } = props;
@@ -25,23 +34,18 @@ const FormFieldInput = props => {
25
34
  control: pageState.form.control,
26
35
  defaultValue: (_pageState$entity = pageState.entity) == null ? void 0 : _pageState$entity[(field == null ? void 0 : field.id) ?? '']
27
36
  });
28
- if (!field || !EDITABLE_INPUT_ELEMENTS.hasOwnProperty(field.originalType) || !pageState || !pageState.entity) {
37
+ if (!field || !EDITABLE_INPUT_ELEMENTS.hasOwnProperty(field.type) || !pageState || !pageState.entity) {
29
38
  return null;
30
39
  }
31
- const FieldInput = EDITABLE_INPUT_ELEMENTS[field.originalType];
40
+ const FieldInput = EDITABLE_INPUT_ELEMENTS[field.type];
32
41
  return /*#__PURE__*/_react.default.createElement(FieldInput, {
33
42
  field: field,
34
- initialValue: pageState.entity[field.id],
35
- status: controller.fieldState.invalid ? 'error' : undefined,
36
- statusMessage: (_controller$fieldStat = controller.fieldState.error) == null ? void 0 : _controller$fieldStat.message,
37
- inputRef: controller.field.ref,
38
43
  value: controller.field.value,
39
44
  onChange: controller.field.onChange,
40
- onBlur: controller.field.onBlur,
41
45
  __self: void 0,
42
46
  __source: {
43
47
  fileName: _jsxFileName,
44
- lineNumber: 47,
48
+ lineNumber: 50,
45
49
  columnNumber: 5
46
50
  }
47
51
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ShortText","_patterns","_form","_data","_Checkbox","_jsxFileName","EDITABLE_INPUT_ELEMENTS","exports","collections","Type","TEXT","ShortText","BOOLEAN","Checkbox","FormFieldInput","props","_pageState$entity","_controller$fieldStat","field","pageState","useEntityPageContext","controller","useController","name","id","control","form","defaultValue","entity","hasOwnProperty","originalType","FieldInput","default","createElement","initialValue","status","fieldState","invalid","undefined","statusMessage","error","message","inputRef","ref","value","onChange","onBlur","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/FormFieldInput.tsx"],"sourcesContent":["import React from 'react';\nimport { ShortText } from './ShortText';\nimport { useEntityPageContext } from '@wix/patterns';\nimport { useController } from '@wix/patterns/form';\nimport { Field } from '../../../types';\nimport { collections } from '@wix/data';\nimport { Checkbox } from './Checkbox';\n\nexport interface BaseInputProps<T> {\n field: Field;\n initialValue: T;\n onChange: (newValue: T) => void;\n}\n\nexport const EDITABLE_INPUT_ELEMENTS: Partial<\n Record<collections.Type, React.ComponentType<any>>\n> = {\n [collections.Type.TEXT]: ShortText,\n [collections.Type.BOOLEAN]: Checkbox,\n};\n\nexport interface FormFieldInputProps {\n field?: Field;\n}\n\nexport const FormFieldInput = (props: FormFieldInputProps) => {\n const { field } = props;\n\n const pageState = useEntityPageContext();\n const controller = useController({\n name: field?.id ?? '',\n control: pageState.form.control,\n defaultValue: (pageState.entity as any)?.[field?.id ?? ''],\n });\n\n if (\n !field ||\n !EDITABLE_INPUT_ELEMENTS.hasOwnProperty(field.originalType) ||\n !pageState ||\n !pageState.entity\n ) {\n return null;\n }\n const FieldInput = EDITABLE_INPUT_ELEMENTS[field.originalType]!;\n\n return (\n <FieldInput\n field={field}\n initialValue={(pageState.entity as any)[field.id]}\n status={controller.fieldState.invalid ? 'error' : undefined}\n statusMessage={controller.fieldState.error?.message}\n inputRef={controller.field.ref}\n value={controller.field.value}\n onChange={controller.field.onChange}\n onBlur={controller.field.onBlur}\n />\n );\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAEA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAAsC,IAAAM,YAAA;AAQ/B,MAAMC,uBAEZ,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACF,CAACE,iBAAW,CAACC,IAAI,CAACC,IAAI,GAAGC,oBAAS;EAClC,CAACH,iBAAW,CAACC,IAAI,CAACG,OAAO,GAAGC;AAC9B,CAAC;AAMM,MAAMC,cAAc,GAAIC,KAA0B,IAAK;EAAA,IAAAC,iBAAA,EAAAC,qBAAA;EAC5D,MAAM;IAAEC;EAAM,CAAC,GAAGH,KAAK;EAEvB,MAAMI,SAAS,GAAG,IAAAC,8BAAoB,EAAC,CAAC;EACxC,MAAMC,UAAU,GAAG,IAAAC,mBAAa,EAAC;IAC/BC,IAAI,EAAE,CAAAL,KAAK,oBAALA,KAAK,CAAEM,EAAE,KAAI,EAAE;IACrBC,OAAO,EAAEN,SAAS,CAACO,IAAI,CAACD,OAAO;IAC/BE,YAAY,GAAAX,iBAAA,GAAGG,SAAS,CAACS,MAAM,qBAAjBZ,iBAAA,CAA4B,CAAAE,KAAK,oBAALA,KAAK,CAAEM,EAAE,KAAI,EAAE;EAC3D,CAAC,CAAC;EAEF,IACE,CAACN,KAAK,IACN,CAACZ,uBAAuB,CAACuB,cAAc,CAACX,KAAK,CAACY,YAAY,CAAC,IAC3D,CAACX,SAAS,IACV,CAACA,SAAS,CAACS,MAAM,EACjB;IACA,OAAO,IAAI;EACb;EACA,MAAMG,UAAU,GAAGzB,uBAAuB,CAACY,KAAK,CAACY,YAAY,CAAE;EAE/D,oBACEjC,MAAA,CAAAmC,OAAA,CAAAC,aAAA,CAACF,UAAU;IACTb,KAAK,EAAEA,KAAM;IACbgB,YAAY,EAAGf,SAAS,CAACS,MAAM,CAASV,KAAK,CAACM,EAAE,CAAE;IAClDW,MAAM,EAAEd,UAAU,CAACe,UAAU,CAACC,OAAO,GAAG,OAAO,GAAGC,SAAU;IAC5DC,aAAa,GAAAtB,qBAAA,GAAEI,UAAU,CAACe,UAAU,CAACI,KAAK,qBAA3BvB,qBAAA,CAA6BwB,OAAQ;IACpDC,QAAQ,EAAErB,UAAU,CAACH,KAAK,CAACyB,GAAI;IAC/BC,KAAK,EAAEvB,UAAU,CAACH,KAAK,CAAC0B,KAAM;IAC9BC,QAAQ,EAAExB,UAAU,CAACH,KAAK,CAAC2B,QAAS;IACpCC,MAAM,EAAEzB,UAAU,CAACH,KAAK,CAAC4B,MAAO;IAAAC,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAA5C,YAAA;MAAA6C,UAAA;MAAAC,YAAA;IAAA;EAAA,CACjC,CAAC;AAEN,CAAC;AAAC5C,OAAA,CAAAO,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_ShortText","_patterns","_form","_Checkbox","_DateInput","_DateTime","_Number","_LongText","_Url","_jsxFileName","EDITABLE_INPUT_ELEMENTS","exports","SHORT_TEXT","ShortText","LONG_TEXT","LongText","BOOLEAN","Checkbox","DATE","DateInput","DATETIME","DateTime","NUMBER","Number","URL","Url","FormFieldInput","props","_pageState$entity","field","pageState","useEntityPageContext","controller","useController","name","id","control","form","defaultValue","entity","hasOwnProperty","type","FieldInput","default","createElement","value","onChange","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/FormFieldInput.tsx"],"sourcesContent":["import React from 'react';\nimport { ShortText } from './ShortText';\nimport { useEntityPageContext } from '@wix/patterns';\nimport { useController } from '@wix/patterns/form';\nimport { Field, PatternsFieldType } from '../../../types';\nimport { Checkbox } from './Checkbox';\nimport { DateInput } from './DateInput';\nimport { DateTime } from './DateTime';\nimport { Number } from './Number';\nimport { LongText } from './LongText';\nimport { Url } from './Url';\n\nexport const EDITABLE_INPUT_ELEMENTS: Partial<\n Record<PatternsFieldType, React.ComponentType<any>>\n> = {\n SHORT_TEXT: ShortText,\n LONG_TEXT: LongText,\n BOOLEAN: Checkbox,\n DATE: DateInput,\n DATETIME: DateTime,\n NUMBER: Number,\n URL: Url,\n};\n\nexport interface FormFieldInputProps {\n field?: Field;\n}\n\nexport const FormFieldInput = (props: FormFieldInputProps) => {\n const { field } = props;\n\n const pageState = useEntityPageContext();\n const controller = useController({\n name: field?.id ?? '',\n control: pageState.form.control,\n defaultValue: (pageState.entity as any)?.[field?.id ?? ''],\n });\n\n if (\n !field ||\n !EDITABLE_INPUT_ELEMENTS.hasOwnProperty(field.type) ||\n !pageState ||\n !pageState.entity\n ) {\n return null;\n }\n const FieldInput = EDITABLE_INPUT_ELEMENTS[field.type]!;\n\n return (\n <FieldInput\n field={field}\n value={controller.field.value}\n onChange={controller.field.onChange}\n />\n );\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAEA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,IAAA,GAAAT,OAAA;AAA4B,IAAAU,YAAA;AAErB,MAAMC,uBAEZ,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACFE,UAAU,EAAEC,oBAAS;EACrBC,SAAS,EAAEC,kBAAQ;EACnBC,OAAO,EAAEC,kBAAQ;EACjBC,IAAI,EAAEC,oBAAS;EACfC,QAAQ,EAAEC,kBAAQ;EAClBC,MAAM,EAAEC,cAAM;EACdC,GAAG,EAAEC;AACP,CAAC;AAMM,MAAMC,cAAc,GAAIC,KAA0B,IAAK;EAAA,IAAAC,iBAAA;EAC5D,MAAM;IAAEC;EAAM,CAAC,GAAGF,KAAK;EAEvB,MAAMG,SAAS,GAAG,IAAAC,8BAAoB,EAAC,CAAC;EACxC,MAAMC,UAAU,GAAG,IAAAC,mBAAa,EAAC;IAC/BC,IAAI,EAAE,CAAAL,KAAK,oBAALA,KAAK,CAAEM,EAAE,KAAI,EAAE;IACrBC,OAAO,EAAEN,SAAS,CAACO,IAAI,CAACD,OAAO;IAC/BE,YAAY,GAAAV,iBAAA,GAAGE,SAAS,CAACS,MAAM,qBAAjBX,iBAAA,CAA4B,CAAAC,KAAK,oBAALA,KAAK,CAAEM,EAAE,KAAI,EAAE;EAC3D,CAAC,CAAC;EAEF,IACE,CAACN,KAAK,IACN,CAACnB,uBAAuB,CAAC8B,cAAc,CAACX,KAAK,CAACY,IAAI,CAAC,IACnD,CAACX,SAAS,IACV,CAACA,SAAS,CAACS,MAAM,EACjB;IACA,OAAO,IAAI;EACb;EACA,MAAMG,UAAU,GAAGhC,uBAAuB,CAACmB,KAAK,CAACY,IAAI,CAAE;EAEvD,oBACE5C,MAAA,CAAA8C,OAAA,CAAAC,aAAA,CAACF,UAAU;IACTb,KAAK,EAAEA,KAAM;IACbgB,KAAK,EAAEb,UAAU,CAACH,KAAK,CAACgB,KAAM;IAC9BC,QAAQ,EAAEd,UAAU,CAACH,KAAK,CAACiB,QAAS;IAAAC,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAxC,YAAA;MAAAyC,UAAA;MAAAC,YAAA;IAAA;EAAA,CACrC,CAAC;AAEN,CAAC;AAACxC,OAAA,CAAAe,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ exports.__esModule = true;
5
+ exports.LongText = void 0;
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _designSystem = require("@wix/design-system");
8
+ var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.tsx";
9
+ const LongText = props => {
10
+ const {
11
+ field,
12
+ value,
13
+ onChange
14
+ } = props;
15
+ return /*#__PURE__*/_react.default.createElement(_designSystem.FormField, {
16
+ label: field.displayName,
17
+ __self: void 0,
18
+ __source: {
19
+ fileName: _jsxFileName,
20
+ lineNumber: 11,
21
+ columnNumber: 5
22
+ }
23
+ }, /*#__PURE__*/_react.default.createElement(_designSystem.InputArea, {
24
+ value: value,
25
+ onChange: e => onChange == null ? void 0 : onChange(e.target.value),
26
+ dataHook: `long-text-${field.id}`,
27
+ __self: void 0,
28
+ __source: {
29
+ fileName: _jsxFileName,
30
+ lineNumber: 12,
31
+ columnNumber: 7
32
+ }
33
+ }));
34
+ };
35
+ exports.LongText = LongText;
36
+ //# sourceMappingURL=LongText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_jsxFileName","LongText","props","field","value","onChange","default","createElement","FormField","label","displayName","__self","__source","fileName","lineNumber","columnNumber","InputArea","e","target","dataHook","id","exports"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/LongText.tsx"],"sourcesContent":["import React from 'react';\nimport { FormField, InputArea } from '@wix/design-system';\nimport { BaseInputProps } from './types';\n\nexport interface LongTextProps extends BaseInputProps<string> {}\n\nexport const LongText = (props: LongTextProps) => {\n const { field, value, onChange } = props;\n\n return (\n <FormField label={field.displayName}>\n <InputArea\n value={value}\n onChange={(e) => onChange?.(e.target.value)}\n dataHook={`long-text-${field.id}`}\n />\n </FormField>\n );\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAA0D,IAAAE,YAAA;AAKnD,MAAMC,QAAQ,GAAIC,KAAoB,IAAK;EAChD,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAExC,oBACEN,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAS,SAAS;IAACC,KAAK,EAAEN,KAAK,CAACO,WAAY;IAAAC,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,gBAClCnB,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAiB,SAAS;IACRZ,KAAK,EAAEA,KAAM;IACbC,QAAQ,EAAGY,CAAC,IAAKZ,QAAQ,oBAARA,QAAQ,CAAGY,CAAC,CAACC,MAAM,CAACd,KAAK,CAAE;IAC5Ce,QAAQ,EAAE,aAAahB,KAAK,CAACiB,EAAE,EAAG;IAAAT,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,CACnC,CACQ,CAAC;AAEhB,CAAC;AAACM,OAAA,CAAApB,QAAA,GAAAA,QAAA","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ exports.__esModule = true;
5
+ exports.Number = void 0;
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _designSystem = require("@wix/design-system");
8
+ var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.tsx";
9
+ const Number = props => {
10
+ const {
11
+ field,
12
+ value,
13
+ onChange
14
+ } = props;
15
+ return /*#__PURE__*/_react.default.createElement(_designSystem.FormField, {
16
+ label: field.displayName,
17
+ __self: void 0,
18
+ __source: {
19
+ fileName: _jsxFileName,
20
+ lineNumber: 11,
21
+ columnNumber: 5
22
+ }
23
+ }, /*#__PURE__*/_react.default.createElement(_designSystem.NumberInput, {
24
+ value: value || undefined,
25
+ onChange: e => onChange(e),
26
+ dataHook: `number-${field.id}`,
27
+ __self: void 0,
28
+ __source: {
29
+ fileName: _jsxFileName,
30
+ lineNumber: 12,
31
+ columnNumber: 7
32
+ }
33
+ }));
34
+ };
35
+ exports.Number = Number;
36
+ //# sourceMappingURL=Number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_jsxFileName","Number","props","field","value","onChange","default","createElement","FormField","label","displayName","__self","__source","fileName","lineNumber","columnNumber","NumberInput","undefined","e","dataHook","id","exports"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/Number.tsx"],"sourcesContent":["import React from 'react';\nimport { FormField, NumberInput } from '@wix/design-system';\nimport { BaseInputProps } from './types';\n\nexport interface NumberProps extends BaseInputProps<number | null> {}\n\nexport const Number = (props: NumberProps) => {\n const { field, value, onChange } = props;\n\n return (\n <FormField label={field.displayName}>\n <NumberInput\n value={value || undefined}\n onChange={(e) => onChange(e)}\n dataHook={`number-${field.id}`}\n />\n </FormField>\n );\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAA4D,IAAAE,YAAA;AAKrD,MAAMC,MAAM,GAAIC,KAAkB,IAAK;EAC5C,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAExC,oBACEN,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAS,SAAS;IAACC,KAAK,EAAEN,KAAK,CAACO,WAAY;IAAAC,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,gBAClCnB,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAiB,WAAW;IACVZ,KAAK,EAAEA,KAAK,IAAIa,SAAU;IAC1BZ,QAAQ,EAAGa,CAAC,IAAKb,QAAQ,CAACa,CAAC,CAAE;IAC7BC,QAAQ,EAAE,UAAUhB,KAAK,CAACiB,EAAE,EAAG;IAAAT,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,CAChC,CACQ,CAAC;AAEhB,CAAC;AAACM,OAAA,CAAApB,MAAA,GAAAA,MAAA","ignoreList":[]}
@@ -1,57 +1,33 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  exports.__esModule = true;
4
- exports.useTextInput = exports.ShortText = void 0;
5
- var _react = _interopRequireWildcard(require("react"));
5
+ exports.ShortText = void 0;
6
+ var _react = _interopRequireDefault(require("react"));
6
7
  var _designSystem = require("@wix/design-system");
7
8
  var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.tsx";
8
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
- const useTextInput = ({
11
- initialValue,
12
- onChange
13
- }) => {
14
- const [value, setValue] = (0, _react.useState)(initialValue || '');
15
- const handleChange = e => {
16
- const newValue = e.target.value;
17
- setValue(newValue);
18
- onChange == null || onChange(newValue);
19
- };
20
- return {
21
- value,
22
- handleChange
23
- };
24
- };
25
- exports.useTextInput = useTextInput;
26
9
  const ShortText = props => {
27
10
  const {
28
11
  field,
29
- initialValue,
30
- onChange
12
+ onChange,
13
+ value
31
14
  } = props;
32
- const {
33
- value,
34
- handleChange
35
- } = useTextInput({
36
- initialValue,
37
- onChange
38
- });
39
15
  return /*#__PURE__*/_react.default.createElement(_designSystem.FormField, {
40
16
  label: field.displayName,
41
17
  __self: void 0,
42
18
  __source: {
43
19
  fileName: _jsxFileName,
44
- lineNumber: 39,
20
+ lineNumber: 10,
45
21
  columnNumber: 5
46
22
  }
47
23
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Input, {
48
24
  value: value,
49
- onChange: handleChange,
25
+ onChange: e => onChange == null ? void 0 : onChange(e.target.value),
50
26
  dataHook: `short-text-${field.id}`,
51
27
  __self: void 0,
52
28
  __source: {
53
29
  fileName: _jsxFileName,
54
- lineNumber: 40,
30
+ lineNumber: 11,
55
31
  columnNumber: 7
56
32
  }
57
33
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useTextInput","initialValue","onChange","value","setValue","useState","handleChange","newValue","target","exports","ShortText","props","field","createElement","FormField","label","displayName","__self","__source","fileName","lineNumber","columnNumber","Input","dataHook","id"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/ShortText.tsx"],"sourcesContent":["import React, { ChangeEvent, useState } from 'react';\nimport { FormField, Input } from '@wix/design-system';\nimport { BaseInputProps } from './FormFieldInput';\n\nexport const useTextInput = ({\n initialValue,\n onChange,\n}: {\n initialValue: string;\n onChange: (value: string) => void;\n}) => {\n const [value, setValue] = useState(initialValue || '');\n\n const handleChange = (\n e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n ) => {\n const newValue = e.target.value;\n\n setValue(newValue);\n onChange?.(newValue);\n };\n\n return {\n value,\n handleChange,\n };\n};\n\nexport interface ShortTextProps extends BaseInputProps<string> {}\n\nexport const ShortText = (props: ShortTextProps) => {\n const { field, initialValue, onChange } = props;\n const { value, handleChange } = useTextInput({\n initialValue,\n onChange,\n });\n\n return (\n <FormField label={field.displayName}>\n <Input\n value={value}\n onChange={handleChange}\n dataHook={`short-text-${field.id}`}\n />\n </FormField>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_jsxFileName","ShortText","props","field","onChange","value","default","createElement","FormField","label","displayName","__self","__source","fileName","lineNumber","columnNumber","Input","e","target","dataHook","id","exports"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/ShortText.tsx"],"sourcesContent":["import React from 'react';\nimport { FormField, Input } from '@wix/design-system';\nimport { BaseInputProps } from './types';\n\nexport interface ShortTextProps extends BaseInputProps<string> {}\n\nexport const ShortText = (props: ShortTextProps) => {\n const { field, onChange, value } = props;\n return (\n <FormField label={field.displayName}>\n <Input\n value={value}\n onChange={(e) => onChange?.(e.target.value)}\n dataHook={`short-text-${field.id}`}\n />\n </FormField>\n );\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAAsD,IAAAE,YAAA;AAK/C,MAAMC,SAAS,GAAIC,KAAqB,IAAK;EAClD,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAGH,KAAK;EACxC,oBACEN,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAS,SAAS;IAACC,KAAK,EAAEN,KAAK,CAACO,WAAY;IAAAC,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,gBAClCnB,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,aAAA,CAAAiB,KAAK;IACJX,KAAK,EAAEA,KAAM;IACbD,QAAQ,EAAGa,CAAC,IAAKb,QAAQ,oBAARA,QAAQ,CAAGa,CAAC,CAACC,MAAM,CAACb,KAAK,CAAE;IAC5Cc,QAAQ,EAAE,cAAchB,KAAK,CAACiB,EAAE,EAAG;IAAAT,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAb,YAAA;MAAAc,UAAA;MAAAC,YAAA;IAAA;EAAA,CACpC,CACQ,CAAC;AAEhB,CAAC;AAACM,OAAA,CAAApB,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ exports.__esModule = true;
5
+ exports.Url = void 0;
6
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _designSystem = require("@wix/design-system");
9
+ var _wixUiIconsCommon = require("@wix/wix-ui-icons-common");
10
+ var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.tsx";
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ const Url = props => {
14
+ const {
15
+ field,
16
+ value,
17
+ onChange
18
+ } = props;
19
+ const ref = (0, _react.useRef)({});
20
+ const [fieldsStatus, setFieldStatus] = (0, _react.useState)({});
21
+ // Same regex as data-extensions https://github.com/wix-private/server-infra/blob/a6c3009d39bbb0312c929f68ee81c559e1eb5b4e/iptf/dataextensions/src/main/scala/com/wixpress/infra/dataextensions/runtime/validator/Formats.scala#L31
22
+ const uriPattern = /^[A-Za-z][A-Za-z0-9+.-]*:(\/\/([A-Za-z0-9._~\-%!$&'()*+,;=:]*@)?[A-Za-z0-9._~\-!$&'()*+,;=%:\[\]]*(:[0-9]*)?)?[A-Za-z0-9._~\-%!$&'()*+,;=:@\/]*([?][A-Za-z0-9._~\-%!$&'()*+,;=:@\/?]*)?([#][A-Za-z0-9._~\-%!$&'()*+,;=:@\/?]*)?$/;
23
+ return /*#__PURE__*/_react.default.createElement(_designSystem.FormField, (0, _extends2.default)({
24
+ label: field.displayName
25
+ }, fieldsStatus, {
26
+ __self: void 0,
27
+ __source: {
28
+ fileName: _jsxFileName,
29
+ lineNumber: 20,
30
+ columnNumber: 5
31
+ }
32
+ }), /*#__PURE__*/_react.default.createElement(_designSystem.Input, {
33
+ prefix: /*#__PURE__*/_react.default.createElement(_designSystem.Input.IconAffix, {
34
+ __self: void 0,
35
+ __source: {
36
+ fileName: _jsxFileName,
37
+ lineNumber: 23,
38
+ columnNumber: 11
39
+ }
40
+ }, /*#__PURE__*/_react.default.createElement(_wixUiIconsCommon.Link, {
41
+ __self: void 0,
42
+ __source: {
43
+ fileName: _jsxFileName,
44
+ lineNumber: 24,
45
+ columnNumber: 13
46
+ }
47
+ })),
48
+ placeholder: "https://www.wix.com",
49
+ dataHook: `url-${field.id}`,
50
+ value: value,
51
+ onChange: e => onChange == null ? void 0 : onChange(e.target.value),
52
+ onBlur: () => {
53
+ ref.current.invalid = value ? !uriPattern.test(value) : false;
54
+ if (ref.current.invalid) {
55
+ setFieldStatus({
56
+ status: 'error',
57
+ statusMessage: 'Invalid URL'
58
+ });
59
+ } else {
60
+ setFieldStatus({
61
+ status: undefined,
62
+ statusMessage: undefined
63
+ });
64
+ }
65
+ },
66
+ __self: void 0,
67
+ __source: {
68
+ fileName: _jsxFileName,
69
+ lineNumber: 21,
70
+ columnNumber: 7
71
+ }
72
+ }));
73
+ };
74
+ exports.Url = Url;
75
+ //# sourceMappingURL=Url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_wixUiIconsCommon","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Url","props","field","value","onChange","ref","useRef","fieldsStatus","setFieldStatus","useState","uriPattern","createElement","FormField","_extends2","label","displayName","__self","__source","fileName","lineNumber","columnNumber","Input","prefix","IconAffix","Link","placeholder","dataHook","id","target","onBlur","current","invalid","test","status","statusMessage","undefined","exports"],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/Url.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { FormField, Input, StatusType } from '@wix/design-system';\nimport { BaseInputProps, BaseInputRef } from './types';\nimport { Link } from '@wix/wix-ui-icons-common';\n\nexport interface UrlProps extends BaseInputProps<string> {}\n\nexport const Url = (props: UrlProps) => {\n const { field, value, onChange } = props;\n const ref = useRef<BaseInputRef>({});\n const [fieldsStatus, setFieldStatus] = useState<{\n status?: StatusType;\n statusMessage?: string;\n }>({});\n // Same regex as data-extensions https://github.com/wix-private/server-infra/blob/a6c3009d39bbb0312c929f68ee81c559e1eb5b4e/iptf/dataextensions/src/main/scala/com/wixpress/infra/dataextensions/runtime/validator/Formats.scala#L31\n const uriPattern =\n /^[A-Za-z][A-Za-z0-9+.-]*:(\\/\\/([A-Za-z0-9._~\\-%!$&'()*+,;=:]*@)?[A-Za-z0-9._~\\-!$&'()*+,;=%:\\[\\]]*(:[0-9]*)?)?[A-Za-z0-9._~\\-%!$&'()*+,;=:@\\/]*([?][A-Za-z0-9._~\\-%!$&'()*+,;=:@\\/?]*)?([#][A-Za-z0-9._~\\-%!$&'()*+,;=:@\\/?]*)?$/;\n\n return (\n <FormField label={field.displayName} {...fieldsStatus}>\n <Input\n prefix={\n <Input.IconAffix>\n <Link />\n </Input.IconAffix>\n }\n placeholder=\"https://www.wix.com\"\n dataHook={`url-${field.id}`}\n value={value}\n onChange={(e) => onChange?.(e.target.value)}\n onBlur={() => {\n ref.current.invalid = value ? !uriPattern.test(value) : false;\n\n if (ref.current.invalid) {\n setFieldStatus({\n status: 'error',\n statusMessage: 'Invalid URL',\n });\n } else {\n setFieldStatus({ status: undefined, statusMessage: undefined });\n }\n }}\n />\n </FormField>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../../src/components/AutoPatternsEntityPage/Fields/types.ts"],"sourcesContent":["import { Field } from '../../../types';\n\nexport interface BaseInputRef {\n focus?: () => void;\n invalid?: boolean;\n}\n\nexport interface BaseInputProps<T> {\n field: Field;\n value: T;\n onChange: (newValue: T) => void;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.getISODateStringWithFixedTimezone = exports.getDateWithoutTimezone = void 0;
5
+ // this function is used to get the date without timezone
6
+ const getDateWithoutTimezone = date => new Date(new Date(date).toISOString().slice(0, -1));
7
+
8
+ // this function is used to get the date with fixed timezone
9
+ exports.getDateWithoutTimezone = getDateWithoutTimezone;
10
+ const getISODateStringWithFixedTimezone = date => {
11
+ const _date = new Date(date);
12
+ const userTimezoneOffset = _date.getTimezoneOffset() * 60000;
13
+ return new Date(_date.getTime() - userTimezoneOffset).toISOString().slice(0, -1);
14
+ };
15
+ exports.getISODateStringWithFixedTimezone = getISODateStringWithFixedTimezone;
16
+ //# sourceMappingURL=dates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getDateWithoutTimezone","date","Date","toISOString","slice","exports","getISODateStringWithFixedTimezone","_date","userTimezoneOffset","getTimezoneOffset","getTime"],"sources":["../../../../../../src/components/AutoPatternsEntityPage/Fields/utils/dates.ts"],"sourcesContent":["// this function is used to get the date without timezone\nexport const getDateWithoutTimezone = (date: Date | string) =>\n new Date(new Date(date).toISOString().slice(0, -1));\n\n// this function is used to get the date with fixed timezone\nexport const getISODateStringWithFixedTimezone = (date: Date | string) => {\n const _date = new Date(date);\n const userTimezoneOffset = _date.getTimezoneOffset() * 60000;\n return new Date(_date.getTime() - userTimezoneOffset)\n .toISOString()\n .slice(0, -1);\n};\n"],"mappings":";;;;AAAA;AACO,MAAMA,sBAAsB,GAAIC,IAAmB,IACxD,IAAIC,IAAI,CAAC,IAAIA,IAAI,CAACD,IAAI,CAAC,CAACE,WAAW,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;;AAErD;AAAAC,OAAA,CAAAL,sBAAA,GAAAA,sBAAA;AACO,MAAMM,iCAAiC,GAAIL,IAAmB,IAAK;EACxE,MAAMM,KAAK,GAAG,IAAIL,IAAI,CAACD,IAAI,CAAC;EAC5B,MAAMO,kBAAkB,GAAGD,KAAK,CAACE,iBAAiB,CAAC,CAAC,GAAG,KAAK;EAC5D,OAAO,IAAIP,IAAI,CAACK,KAAK,CAACG,OAAO,CAAC,CAAC,GAAGF,kBAAkB,CAAC,CAClDL,WAAW,CAAC,CAAC,CACbC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACjB,CAAC;AAACC,OAAA,CAAAC,iCAAA,GAAAA,iCAAA","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -13,4 +13,16 @@ Object.keys(_hooks).forEach(function (key) {
13
13
  if (key in exports && exports[key] === _hooks[key]) return;
14
14
  exports[key] = _hooks[key];
15
15
  });
16
+ var _AutoPatternsApp = require("./components/AutoPatternsApp");
17
+ Object.keys(_AutoPatternsApp).forEach(function (key) {
18
+ if (key === "default" || key === "__esModule") return;
19
+ if (key in exports && exports[key] === _AutoPatternsApp[key]) return;
20
+ exports[key] = _AutoPatternsApp[key];
21
+ });
22
+ var _types = require("./types");
23
+ Object.keys(_types).forEach(function (key) {
24
+ if (key === "default" || key === "__esModule") return;
25
+ if (key in exports && exports[key] === _types[key]) return;
26
+ exports[key] = _types[key];
27
+ });
16
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_providers","require","Object","keys","forEach","key","exports","_hooks"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './providers';\nexport * from './hooks';\n"],"mappings":";;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,UAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,MAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,MAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,MAAA,CAAAF,GAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_providers","require","Object","keys","forEach","key","exports","_hooks","_AutoPatternsApp","_types"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './providers';\nexport * from './hooks';\nexport * from './components/AutoPatternsApp';\nexport * from './types';\n"],"mappings":";;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,UAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,MAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,MAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,MAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,gBAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,gBAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,gBAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,gBAAA,CAAAH,GAAA;AAAA;AACA,IAAAI,MAAA,GAAAR,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAM,MAAA,EAAAL,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAI,MAAA,CAAAJ,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAI,MAAA,CAAAJ,GAAA;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/types/types.ts"],"sourcesContent":["import { PrimaryActions, SecondaryActions } from '@wix/patterns';\nimport { EntityPageConfig } from './EntityPageConfig';\nimport { CollectionPageConfig } from './CollectionPageConfig';\nimport { collections } from '@wix/data';\n\nexport type PatternsColumnType =\n | 'STRING'\n | 'NUMBER'\n | 'BOOLEAN'\n | 'DATE'\n | 'DATETIME'\n | 'ARRAY'\n | 'ENUM';\n\nexport interface AppConfig {\n pages: PageConfig[];\n}\n\nexport interface PageConfig {\n id: string;\n routePath: string;\n type: 'collectionPage' | 'entityPage';\n collectionPage?: CollectionPageConfig;\n entityPage?: EntityPageConfig;\n}\n\nexport type EntityProps = { [key: string]: any };\n\nexport interface IMenuItem<T extends EntityProps = {}> {\n item: T;\n}\nexport interface IColumnValue<T> {\n value: T;\n}\n\nexport type QueryOperator =\n | 'CONTAINS'\n | 'ENDS_WITH'\n | 'EQ'\n | 'EXISTS'\n | 'GT'\n | 'GTE'\n | 'HAS_ALL'\n | 'HAS_SOME'\n | 'LT'\n | 'LTE'\n | 'NE'\n | 'STARTS_WITH'\n | 'URLIZED';\n\nexport interface Field {\n id: string;\n displayName: string;\n type: PatternsColumnType;\n originalType: collections.Type;\n capabilities: {\n supportedQueryOperators: QueryOperator[];\n sortable: boolean;\n };\n}\n\nexport interface SchemaConfig {\n fields: Record<string, Field | undefined>;\n displayField: string;\n actions: {\n get: (entityId: string) => Promise<any>;\n create: (newEntity: Partial<any>) => Promise<any>;\n update: (updatedEntity: any) => Promise<any>;\n delete: (entityId: string) => Promise<any>;\n };\n}\n\nexport type PagePrimaryActionProps = React.ComponentProps<\n typeof PrimaryActions\n>;\n\nexport type PageSecondaryActionProps = React.ComponentProps<\n typeof SecondaryActions\n>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/types/types.ts"],"sourcesContent":["import { PrimaryActions, SecondaryActions } from '@wix/patterns';\nimport { EntityPageConfig } from './EntityPageConfig';\nimport { CollectionPageConfig } from './CollectionPageConfig';\n\nexport type PatternsFieldType =\n | 'SHORT_TEXT'\n | 'LONG_TEXT'\n | 'NUMBER'\n | 'BOOLEAN'\n | 'DATE'\n | 'DATETIME'\n | 'URL'\n | 'ARRAY';\n\nexport interface AppConfig {\n pages: PageConfig[];\n}\n\nexport interface PageConfig {\n id: string;\n routePath: string;\n type: 'collectionPage' | 'entityPage';\n collectionPage?: CollectionPageConfig;\n entityPage?: EntityPageConfig;\n}\n\nexport type EntityProps = { [key: string]: any };\n\nexport interface IMenuItem<T extends EntityProps = any> {\n item: T;\n}\nexport interface IColumnValue<T> {\n value: T;\n}\n\nexport type QueryOperator =\n | 'CONTAINS'\n | 'ENDS_WITH'\n | 'EQ'\n | 'EXISTS'\n | 'GT'\n | 'GTE'\n | 'HAS_ALL'\n | 'HAS_SOME'\n | 'LT'\n | 'LTE'\n | 'NE'\n | 'STARTS_WITH'\n | 'URLIZED';\n\nexport interface Field {\n id: string;\n displayName: string;\n type: PatternsFieldType;\n capabilities: {\n supportedQueryOperators: QueryOperator[];\n sortable: boolean;\n };\n}\n\nexport interface SchemaConfig {\n fields: Record<string, Field | undefined>;\n displayField: string;\n actions: {\n get: (entityId: string) => Promise<any>;\n create: (newEntity: Partial<any>) => Promise<any>;\n update: (updatedEntity: any) => Promise<any>;\n delete: (entityId: string) => Promise<any>;\n };\n}\n\nexport type PagePrimaryActionProps = React.ComponentProps<\n typeof PrimaryActions\n>;\n\nexport type PageSecondaryActionProps = React.ComponentProps<\n typeof SecondaryActions\n>;\n"],"mappings":"","ignoreList":[]}
@@ -1,13 +1,19 @@
1
1
  import { collections, items } from '@wix/data';
2
2
  import { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';
3
3
  import { addSortToDataQuery } from './sortUtils';
4
- export const CmsColumnTypeToPatternsColumnType = {
5
- [collections.Type.TEXT]: 'STRING',
6
- [collections.Type.ARRAY]: 'ARRAY',
4
+ export const CmsFieldTypeToPatternsFieldType = {
5
+ [collections.Type.TEXT]: 'SHORT_TEXT',
7
6
  [collections.Type.DATE]: 'DATE',
8
7
  [collections.Type.DATETIME]: 'DATETIME',
9
8
  [collections.Type.NUMBER]: 'NUMBER',
10
- [collections.Type.BOOLEAN]: 'BOOLEAN'
9
+ [collections.Type.BOOLEAN]: 'BOOLEAN',
10
+ [collections.Type.URL]: 'URL',
11
+ [collections.Type.ADDRESS]: 'SHORT_TEXT',
12
+ [collections.Type.OBJECT]: 'LONG_TEXT',
13
+ [collections.Type.RICH_TEXT]: 'LONG_TEXT',
14
+ [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',
15
+ [collections.Type.ARRAY]: 'ARRAY',
16
+ [collections.Type.ARRAY_STRING]: 'ARRAY'
11
17
  };
12
18
  export async function fetchCmsSchema(collectionId) {
13
19
  const schema = await collections.getDataCollection(collectionId);
@@ -20,8 +26,7 @@ export async function fetchCmsSchema(collectionId) {
20
26
  }
21
27
  acc[field.key] = {
22
28
  id: field.key,
23
- type: field.type ? CmsColumnTypeToPatternsColumnType[field.type] || 'STRING' : 'STRING',
24
- originalType: field.type ?? collections.Type.TEXT,
29
+ type: field.type ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT' : 'SHORT_TEXT',
25
30
  displayName: field.displayName || '',
26
31
  capabilities: {
27
32
  supportedQueryOperators: ((_field$capabilities = field.capabilities) == null ? void 0 : _field$capabilities.queryOperators) || [],
@@ -1 +1 @@
1
- {"version":3,"names":["collections","items","addFiltersToDataQuery","addSearchToDataQuery","addSortToDataQuery","CmsColumnTypeToPatternsColumnType","Type","TEXT","ARRAY","DATE","DATETIME","NUMBER","BOOLEAN","fetchCmsSchema","collectionId","schema","getDataCollection","displayField","fields","reduce","acc","field","_field$capabilities","_field$capabilities2","key","id","type","originalType","displayName","capabilities","supportedQueryOperators","queryOperators","sortable","actions","get","entityId","create","entity","insert","update","delete","remove","getCmsCollectionData","config","visibleFieldIds","collection","fetchData","query","dataQuery","res","skip","offset","limit","find","returnTotalCount","total","totalCount","entityIdKey","entityNameKey"],"sources":["../../../../src/collectionData/cms/CmsCollectionData.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsColumnType } from '../../types';\nimport { collections, items } from '@wix/data';\nimport { CollectionData } from '../CollectionData';\nimport { ComputedQuery } from '@wix/patterns';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\nimport { CollectionConfig } from '../../types/CollectionPageConfig';\n\nexport const CmsColumnTypeToPatternsColumnType: Partial<\n Record<collections.Type, PatternsColumnType>\n> = {\n [collections.Type.TEXT]: 'STRING',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n};\n\nexport async function fetchCmsSchema(\n collectionId: CollectionConfig['collectionId'],\n): Promise<SchemaConfig> {\n const schema = await collections.getDataCollection(collectionId);\n return {\n displayField: schema.displayField ?? '_id',\n fields: schema.fields.reduce((acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n acc[field.key] = {\n id: field.key,\n type: field.type\n ? CmsColumnTypeToPatternsColumnType[field.type] || 'STRING'\n : 'STRING',\n originalType: field.type ?? collections.Type.TEXT,\n displayName: field.displayName || '',\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n return acc;\n }, {} as Record<string, Field>),\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n },\n };\n}\n\nexport async function getCmsCollectionData(\n config: CollectionConfig,\n visibleFieldIds: string[],\n): Promise<CollectionData> {\n const schema = await fetchCmsSchema(config.collectionId);\n\n const collection = {\n fetchData: async (query: ComputedQuery<any>) => {\n let dataQuery = items.query(config.collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n schema,\n });\n const res = await dataQuery\n .skip(query.offset)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount,\n };\n },\n };\n\n return {\n schema,\n collection,\n entityIdKey: '_id',\n entityNameKey: schema.displayField,\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["collections","items","addFiltersToDataQuery","addSearchToDataQuery","addSortToDataQuery","CmsFieldTypeToPatternsFieldType","Type","TEXT","DATE","DATETIME","NUMBER","BOOLEAN","URL","ADDRESS","OBJECT","RICH_TEXT","RICH_CONTENT","ARRAY","ARRAY_STRING","fetchCmsSchema","collectionId","schema","getDataCollection","displayField","fields","reduce","acc","field","_field$capabilities","_field$capabilities2","key","id","type","displayName","capabilities","supportedQueryOperators","queryOperators","sortable","actions","get","entityId","create","entity","insert","update","delete","remove","getCmsCollectionData","config","visibleFieldIds","collection","fetchData","query","dataQuery","res","skip","offset","limit","find","returnTotalCount","total","totalCount","entityIdKey","entityNameKey"],"sources":["../../../../src/collectionData/cms/CmsCollectionData.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsFieldType } from '../../types';\nimport { collections, items } from '@wix/data';\nimport { CollectionData } from '../CollectionData';\nimport { ComputedQuery } from '@wix/patterns';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\nimport { CollectionConfig } from '../../types/CollectionPageConfig';\n\nexport const CmsFieldTypeToPatternsFieldType: Partial<\n Record<collections.Type, PatternsFieldType>\n> = {\n [collections.Type.TEXT]: 'SHORT_TEXT',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n [collections.Type.URL]: 'URL',\n [collections.Type.ADDRESS]: 'SHORT_TEXT',\n [collections.Type.OBJECT]: 'LONG_TEXT',\n [collections.Type.RICH_TEXT]: 'LONG_TEXT',\n [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.ARRAY_STRING]: 'ARRAY',\n};\n\nexport async function fetchCmsSchema(\n collectionId: CollectionConfig['collectionId'],\n): Promise<SchemaConfig> {\n const schema = await collections.getDataCollection(collectionId);\n return {\n displayField: schema.displayField ?? '_id',\n fields: schema.fields.reduce((acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n acc[field.key] = {\n id: field.key,\n type: field.type\n ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT'\n : 'SHORT_TEXT',\n displayName: field.displayName || '',\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n return acc;\n }, {} as Record<string, Field>),\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n },\n };\n}\n\nexport async function getCmsCollectionData(\n config: CollectionConfig,\n visibleFieldIds: string[],\n): Promise<CollectionData> {\n const schema = await fetchCmsSchema(config.collectionId);\n\n const collection = {\n fetchData: async (query: ComputedQuery<any>) => {\n let dataQuery = items.query(config.collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n schema,\n });\n const res = await dataQuery\n .skip(query.offset)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount,\n };\n },\n };\n\n return {\n schema,\n collection,\n entityIdKey: '_id',\n entityNameKey: schema.displayField,\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -66,6 +66,7 @@ export function addFiltersToDataQuery(_ref) {
66
66
  }
67
67
  return dataQueryWithFilters;
68
68
  }
69
+ const TEXT_FIELD_TYPES = ['LONG_TEXT', 'SHORT_TEXT'];
69
70
  export function addSearchToDataQuery(_ref2) {
70
71
  let {
71
72
  dataQuery,
@@ -76,7 +77,7 @@ export function addSearchToDataQuery(_ref2) {
76
77
  const searchableFields = Object.keys(schema.fields).filter(key => {
77
78
  const field = schema.fields[key];
78
79
  const column = visibleFieldIds.find(id => id === key);
79
- return column && field && field.type === 'STRING';
80
+ return column && field && TEXT_FIELD_TYPES.includes(field.type);
80
81
  });
81
82
  if (query.search && searchableFields.length > 0) {
82
83
  let searchFilter = null;
@@ -1 +1 @@
1
- {"version":3,"names":["items","BooleanFilters","FilterPropToOperator","FilterPropToMethod","from","to","isValidFilterProp","prop","getOperatorForFilter","undefined","isSupportedOperator","schema","filterProp","filterKey","field","fields","operator","supportedOperators","capabilities","supportedQueryOperators","includes","addFiltersToDataQuery","_ref","dataQuery","query","dataQueryWithFilters","filters","fieldKey","filter","Array","isArray","_schema$fields$fieldK","filterArray","type","some","item","id","checked","eq","hasSome","map","filterObj","value","addSearchToDataQuery","_ref2","visibleFieldIds","searchableFields","Object","keys","key","column","find","search","length","searchFilter","forEach","currentFilter","contains","or","and"],"sources":["../../../../src/collectionData/cms/filterUtils.ts"],"sourcesContent":["import { ComputedQuery } from '@wix/patterns';\nimport { items } from '@wix/data';\nimport { BooleanFilters, FilterProp, FilterPropToOperator } from '../constants';\nimport { SchemaConfig } from '../../types';\n\nexport type CmsOperatorMethod = 'ge' | 'le';\n\nconst FilterPropToMethod: Record<FilterProp, CmsOperatorMethod> = {\n from: 'ge',\n to: 'le',\n};\n\nfunction isValidFilterProp(prop: string): prop is FilterProp {\n return prop in FilterPropToMethod;\n}\n\nfunction getOperatorForFilter(prop: string): CmsOperatorMethod | undefined {\n if (isValidFilterProp(prop)) {\n return FilterPropToMethod[prop];\n }\n return undefined;\n}\n\nconst isSupportedOperator = (\n schema: SchemaConfig,\n filterProp: string,\n filterKey: string,\n) => {\n const field = schema.fields[filterKey];\n if (!field) {\n return false;\n }\n\n if (!isValidFilterProp(filterProp)) {\n return false;\n }\n\n const operator = FilterPropToOperator[filterProp];\n const supportedOperators = field.capabilities.supportedQueryOperators;\n return supportedOperators.includes(operator);\n};\n\nexport function addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n}) {\n let dataQueryWithFilters = dataQuery;\n const { filters } = query;\n for (const fieldKey in filters) {\n const filter = filters[fieldKey];\n if (filter) {\n if (Array.isArray(filter)) {\n const filterArray = filter as { [key: string]: any }[];\n if (schema.fields[fieldKey]?.type === 'BOOLEAN') {\n if (filterArray.some((item) => item.id === BooleanFilters.checked)) {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldKey, true);\n } else {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldKey, false);\n }\n } else {\n dataQueryWithFilters = dataQueryWithFilters.hasSome(\n fieldKey,\n filterArray.map((item) => item.id),\n );\n }\n } else if (typeof filter === 'object') {\n const filterObj = filter as Record<string, any>;\n\n for (const filterProp in filterObj) {\n const operator = getOperatorForFilter(filterProp);\n if (\n operator &&\n typeof dataQuery[operator] === 'function' &&\n isSupportedOperator(schema, filterProp, fieldKey)\n ) {\n const value = filterObj[filterProp];\n if (value !== undefined && value !== null) {\n dataQueryWithFilters = dataQueryWithFilters[operator](\n fieldKey,\n value,\n );\n }\n }\n }\n }\n }\n }\n\n return dataQueryWithFilters;\n}\n\nexport function addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n visibleFieldIds: string[];\n}) {\n const searchableFields = Object.keys(schema.fields).filter((key) => {\n const field = schema.fields[key];\n const column = visibleFieldIds.find((id) => id === key);\n\n return column && field && field.type === 'STRING';\n });\n\n if (query.search && searchableFields.length > 0) {\n let searchFilter: items.WixDataFilter | null = null;\n\n searchableFields.forEach((field) => {\n const currentFilter = items.filter().contains(field, query.search!);\n searchFilter = searchFilter\n ? searchFilter.or(currentFilter)\n : currentFilter;\n });\n\n if (searchFilter) {\n dataQuery = dataQuery.and(searchFilter);\n }\n }\n\n return dataQuery;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["items","BooleanFilters","FilterPropToOperator","FilterPropToMethod","from","to","isValidFilterProp","prop","getOperatorForFilter","undefined","isSupportedOperator","schema","filterProp","filterKey","field","fields","operator","supportedOperators","capabilities","supportedQueryOperators","includes","addFiltersToDataQuery","_ref","dataQuery","query","dataQueryWithFilters","filters","fieldKey","filter","Array","isArray","_schema$fields$fieldK","filterArray","type","some","item","id","checked","eq","hasSome","map","filterObj","value","TEXT_FIELD_TYPES","addSearchToDataQuery","_ref2","visibleFieldIds","searchableFields","Object","keys","key","column","find","search","length","searchFilter","forEach","currentFilter","contains","or","and"],"sources":["../../../../src/collectionData/cms/filterUtils.ts"],"sourcesContent":["import { ComputedQuery } from '@wix/patterns';\nimport { items } from '@wix/data';\nimport { BooleanFilters, FilterProp, FilterPropToOperator } from '../constants';\nimport { SchemaConfig } from '../../types';\n\nexport type CmsOperatorMethod = 'ge' | 'le';\n\nconst FilterPropToMethod: Record<FilterProp, CmsOperatorMethod> = {\n from: 'ge',\n to: 'le',\n};\n\nfunction isValidFilterProp(prop: string): prop is FilterProp {\n return prop in FilterPropToMethod;\n}\n\nfunction getOperatorForFilter(prop: string): CmsOperatorMethod | undefined {\n if (isValidFilterProp(prop)) {\n return FilterPropToMethod[prop];\n }\n return undefined;\n}\n\nconst isSupportedOperator = (\n schema: SchemaConfig,\n filterProp: string,\n filterKey: string,\n) => {\n const field = schema.fields[filterKey];\n if (!field) {\n return false;\n }\n\n if (!isValidFilterProp(filterProp)) {\n return false;\n }\n\n const operator = FilterPropToOperator[filterProp];\n const supportedOperators = field.capabilities.supportedQueryOperators;\n return supportedOperators.includes(operator);\n};\n\nexport function addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n}) {\n let dataQueryWithFilters = dataQuery;\n const { filters } = query;\n for (const fieldKey in filters) {\n const filter = filters[fieldKey];\n if (filter) {\n if (Array.isArray(filter)) {\n const filterArray = filter as { [key: string]: any }[];\n if (schema.fields[fieldKey]?.type === 'BOOLEAN') {\n if (filterArray.some((item) => item.id === BooleanFilters.checked)) {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldKey, true);\n } else {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldKey, false);\n }\n } else {\n dataQueryWithFilters = dataQueryWithFilters.hasSome(\n fieldKey,\n filterArray.map((item) => item.id),\n );\n }\n } else if (typeof filter === 'object') {\n const filterObj = filter as Record<string, any>;\n\n for (const filterProp in filterObj) {\n const operator = getOperatorForFilter(filterProp);\n if (\n operator &&\n typeof dataQuery[operator] === 'function' &&\n isSupportedOperator(schema, filterProp, fieldKey)\n ) {\n const value = filterObj[filterProp];\n if (value !== undefined && value !== null) {\n dataQueryWithFilters = dataQueryWithFilters[operator](\n fieldKey,\n value,\n );\n }\n }\n }\n }\n }\n }\n\n return dataQueryWithFilters;\n}\n\nconst TEXT_FIELD_TYPES = ['LONG_TEXT', 'SHORT_TEXT'];\nexport function addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n visibleFieldIds: string[];\n}) {\n const searchableFields = Object.keys(schema.fields).filter((key) => {\n const field = schema.fields[key];\n const column = visibleFieldIds.find((id) => id === key);\n\n return column && field && TEXT_FIELD_TYPES.includes(field.type);\n });\n\n if (query.search && searchableFields.length > 0) {\n let searchFilter: items.WixDataFilter | null = null;\n\n searchableFields.forEach((field) => {\n const currentFilter = items.filter().contains(field, query.search!);\n searchFilter = searchFilter\n ? searchFilter.or(currentFilter)\n : currentFilter;\n });\n\n if (searchFilter) {\n dataQuery = dataQuery.and(searchFilter);\n }\n }\n\n return dataQuery;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -23,15 +23,13 @@ export const AutoPatternsEntityPage = _ref => {
23
23
  parentPath,
24
24
  form,
25
25
  onSave: async () => {
26
- var _state$entity;
27
26
  const formValues = form.getValues();
28
27
  const updatedEntity = {
29
28
  ...state.entity,
30
29
  ...formValues
31
30
  };
32
31
  let newUpdatedEntity;
33
- // TODO: Works only for CMS collections, need to be extracted from collection data somehow or share similar context
34
- if ((_state$entity = state.entity) != null && _state$entity._id) {
32
+ if (entityId) {
35
33
  newUpdatedEntity = await schema.actions.update(updatedEntity);
36
34
  } else {
37
35
  newUpdatedEntity = await schema.actions.create(updatedEntity);