cozy-client 50.4.0 → 51.0.1

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.
@@ -3032,7 +3032,7 @@ var CozyClient = /*#__PURE__*/function () {
3032
3032
  CozyClient.hooks = CozyClient.hooks || {};
3033
3033
  CozyClient.fetchPolicies = _policies.default; //COZY_CLIENT_VERSION_PACKAGE in replaced by babel. See babel config
3034
3034
 
3035
- CozyClient.version = "50.4.0";
3035
+ CozyClient.version = "51.0.1";
3036
3036
 
3037
3037
  _microee.default.mixin(CozyClient);
3038
3038
 
@@ -11,12 +11,6 @@ jest.mock('cozy-device-helper', () => ({
11
11
  isMobileApp: jest.fn()
12
12
  }))
13
13
 
14
- jest.mock('cozy-ui/transpiled/react/deprecated/Alerter', () => ({
15
- success: jest.fn(),
16
- error: jest.fn(),
17
- info: jest.fn()
18
- }))
19
-
20
14
  const ANDROID_ROOT_DIRECTORY = 'externalDataDirectory'
21
15
  const IOS_ROOT_DIRECTORY = 'dataDirectory'
22
16
  const EXTERNAL_CACHE_DIRECTORY = 'externalCacheDirectory'
package/dist/types.js CHANGED
@@ -426,6 +426,20 @@ var _dsl = require("./queries/dsl");
426
426
  * @property {boolean} [favorite] - Whether the document is marked as favorite
427
427
  */
428
428
 
429
+ /**
430
+ * @typedef {object} UploadedBy
431
+ * @property {string} slug - The slug of the application that has made the upload
432
+ * @property {string} version - The version number of this application
433
+ */
434
+
435
+ /**
436
+ * @typedef {object} CozyMetadataFile - Extra fields inside cozyMetadata only for io.cozy.files documents
437
+ * @property {string} [createdOn] - The instance URL on which the file has created (useful if the file is shared between several cozy instances)
438
+ * @property {string} [uploadedAt] - The server date/time of the last upload (when the content was changed)
439
+ * @property {string} [uploadedOn] - The instance URL on which the file content was changed the last time
440
+ * @property {UploadedBy[]} [uploadedBy] - Information on which app has made the last upload
441
+ */
442
+
429
443
  /**
430
444
  * @typedef {object} CozyClientDocumentMeta - Meta object as specified by JSON-API (https://jsonapi.org/format/#document-meta)
431
445
  * @property {string} [rev] - Current revision of the document
@@ -493,6 +507,7 @@ var _dsl = require("./queries/dsl");
493
507
  * @property {string} updated_at - Last modification date of the file
494
508
  * @property {number} size - Size of the file, in bytes
495
509
  * @property {boolean} trashed - Whether the folder is in the trash
510
+ * @property {CozyMetadata & CozyMetadataFile} [cozyMetadata] - Cozy Metadata
496
511
  * @typedef {CozyClientDocument & FileDocument} IOCozyFile - An io.cozy.files document
497
512
  */
498
513
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cozy-client",
3
- "version": "50.4.0",
3
+ "version": "51.0.1",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.node.js",
6
6
  "browser": "dist/index.js",
@@ -18,7 +18,7 @@
18
18
  "@types/jest": "^26.0.20",
19
19
  "@types/lodash": "^4.14.170",
20
20
  "btoa": "^1.2.1",
21
- "cozy-stack-client": "^50.4.0",
21
+ "cozy-stack-client": "^51.0.0",
22
22
  "date-fns": "2.29.3",
23
23
  "json-stable-stringify": "^1.0.1",
24
24
  "lodash": "^4.17.13",
@@ -52,7 +52,6 @@
52
52
  "cozy-flags": "2.10.2",
53
53
  "cozy-intent": "2.23.0",
54
54
  "cozy-logger": "1.7.0",
55
- "cozy-ui": "93.1.1",
56
55
  "jsdoc-plugin-intersection": "1.0.4",
57
56
  "mockdate": "2.0.5",
58
57
  "react": "16.14.0",
@@ -67,7 +66,6 @@
67
66
  "cozy-flags": ">2.8.6",
68
67
  "cozy-intent": ">=2.23.0",
69
68
  "cozy-logger": ">1.7.0",
70
- "cozy-ui": ">=93.1.1",
71
69
  "react": "^16.7.0",
72
70
  "react-native": "^0.65.0",
73
71
  "react-native-google-play-integrity": "github:cozy/react-native-google-play-integrity#1.0.1",
@@ -75,5 +73,5 @@
75
73
  "react-native-ios11-devicecheck": "https://github.com/cozy/react-native-devicecheck#app-attest-v0.1"
76
74
  },
77
75
  "sideEffects": false,
78
- "gitHead": "4498f6268d0e467a66c918c0f2ddf1e5ebfce8af"
76
+ "gitHead": "6b03c58ebef0e5c8455490b3300e36c803ca0565"
79
77
  }
package/types/types.d.ts CHANGED
@@ -705,6 +705,37 @@ export type CozyMetadata = {
705
705
  */
706
706
  favorite?: boolean;
707
707
  };
708
+ export type UploadedBy = {
709
+ /**
710
+ * - The slug of the application that has made the upload
711
+ */
712
+ slug: string;
713
+ /**
714
+ * - The version number of this application
715
+ */
716
+ version: string;
717
+ };
718
+ /**
719
+ * - Extra fields inside cozyMetadata only for io.cozy.files documents
720
+ */
721
+ export type CozyMetadataFile = {
722
+ /**
723
+ * - The instance URL on which the file has created (useful if the file is shared between several cozy instances)
724
+ */
725
+ createdOn?: string;
726
+ /**
727
+ * - The server date/time of the last upload (when the content was changed)
728
+ */
729
+ uploadedAt?: string;
730
+ /**
731
+ * - The instance URL on which the file content was changed the last time
732
+ */
733
+ uploadedOn?: string;
734
+ /**
735
+ * - Information on which app has made the last upload
736
+ */
737
+ uploadedBy?: UploadedBy[];
738
+ };
708
739
  /**
709
740
  * - Meta object as specified by JSON-API (https://jsonapi.org/format/#document-meta)
710
741
  */
@@ -894,6 +925,10 @@ export type FileDocument = {
894
925
  * - Whether the folder is in the trash
895
926
  */
896
927
  trashed: boolean;
928
+ /**
929
+ * - Cozy Metadata
930
+ */
931
+ cozyMetadata?: CozyMetadata & CozyMetadataFile;
897
932
  };
898
933
  /**
899
934
  * - An io.cozy.files document
@@ -1,109 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.FlagEdit = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
18
- var _TextField = _interopRequireDefault(require("cozy-ui/transpiled/react/TextField"));
19
-
20
- var _Buttons = _interopRequireDefault(require("cozy-ui/transpiled/react/Buttons"));
21
-
22
- var _cozyFlags = _interopRequireDefault(require("cozy-flags"));
23
-
24
- var _helpers = require("./helpers");
25
-
26
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
27
-
28
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
29
-
30
- var FlagEdit = function FlagEdit(_ref) {
31
- var editedFlag = _ref.flag;
32
-
33
- var _useState = (0, _react.useState)({
34
- key: '',
35
- name: '',
36
- value: '',
37
- humanValue: ''
38
- }),
39
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
40
- formData = _useState2[0],
41
- setFormData = _useState2[1];
42
-
43
- (0, _react.useEffect)(function () {
44
- if (editedFlag) setFormData(editedFlag);
45
- }, [editedFlag]);
46
-
47
- var handleSubmit = function handleSubmit(e) {
48
- e.preventDefault();
49
- if (!formData.name || !formData.value) return;
50
- /** @type {any} */
51
-
52
- var value = formData.value;
53
-
54
- if ((0, _helpers.isJSONString)(value)) {
55
- value = JSON.parse(value);
56
- } else if (value === 'true' || value === 'false') {
57
- value = Boolean(value);
58
- }
59
-
60
- (0, _cozyFlags.default)(formData.name, value);
61
- location.reload();
62
- };
63
-
64
- var handleFlagNameChange = function handleFlagNameChange(e) {
65
- setFormData(_objectSpread(_objectSpread({}, formData), {}, {
66
- key: "flag__".concat(e.target.value),
67
- name: e.target.value
68
- }));
69
- };
70
-
71
- var handleFlagValueChange = function handleFlagValueChange(e) {
72
- var value = e.target.value;
73
-
74
- if (Number.isInteger(value)) {
75
- value = parseInt(value);
76
- }
77
-
78
- setFormData(_objectSpread(_objectSpread({}, formData), {}, {
79
- value: value,
80
- humanValue: (0, _helpers.makeHumanValue)(value)
81
- }));
82
- };
83
-
84
- return /*#__PURE__*/_react.default.createElement("form", {
85
- onSubmit: handleSubmit,
86
- className: "u-mt-1 u-flex-items-center u-flex"
87
- }, /*#__PURE__*/_react.default.createElement(_TextField.default, {
88
- label: "Name",
89
- name: "name",
90
- onChange: handleFlagNameChange,
91
- value: formData.name,
92
- size: "small",
93
- variant: "outlined"
94
- }), /*#__PURE__*/_react.default.createElement(_TextField.default, {
95
- label: "Value",
96
- name: "value",
97
- onChange: handleFlagValueChange,
98
- value: formData.humanValue,
99
- size: "small",
100
- variant: "outlined",
101
- className: "u-ml-1"
102
- }), /*#__PURE__*/_react.default.createElement(_Buttons.default, {
103
- type: "submit",
104
- label: "Edit",
105
- className: "u-ml-1"
106
- }));
107
- };
108
-
109
- exports.FlagEdit = FlagEdit;
@@ -1,71 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _reactInspector = require("react-inspector");
13
-
14
- var _IconButton = _interopRequireDefault(require("cozy-ui/transpiled/react/IconButton"));
15
-
16
- var _Icon = _interopRequireDefault(require("cozy-ui/transpiled/react/Icon"));
17
-
18
- var _Pen = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/Pen"));
19
-
20
- var _Trash = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/Trash"));
21
-
22
- var _ListItem = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItem"));
23
-
24
- var _ListItemText = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItemText"));
25
-
26
- var _ListItemSecondaryAction = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItemSecondaryAction"));
27
-
28
- var _Checkbox = _interopRequireDefault(require("cozy-ui/transpiled/react/Checkbox"));
29
-
30
- var _ListItemIcon = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItemIcon"));
31
-
32
- var _cozyFlags = _interopRequireDefault(require("cozy-flags"));
33
-
34
- var FlagItem = function FlagItem(_ref) {
35
- var flag = _ref.flag,
36
- onEdit = _ref.onEdit,
37
- onTrash = _ref.onTrash;
38
-
39
- var handleCheckboxChange = function handleCheckboxChange(e) {
40
- (0, _cozyFlags.default)(flag.name, e.target.checked);
41
- location.reload();
42
- };
43
-
44
- return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
45
- size: "small"
46
- }, /*#__PURE__*/_react.default.createElement(_ListItemIcon.default, null, flag.type === 'boolean' ? /*#__PURE__*/_react.default.createElement(_Checkbox.default, {
47
- size: "small",
48
- checked: flag.value,
49
- onChange: handleCheckboxChange
50
- }) : null), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
51
- primary: flag.humanName,
52
- secondary: flag.type === 'object' ? /*#__PURE__*/_react.default.createElement(_reactInspector.ObjectInspector, {
53
- data: flag.value
54
- }) : flag.type !== 'boolean' ? flag.humanValue : null
55
- }), /*#__PURE__*/_react.default.createElement(_ListItemSecondaryAction.default, null, /*#__PURE__*/_react.default.createElement(_IconButton.default, {
56
- onClick: function onClick() {
57
- return onEdit(flag);
58
- }
59
- }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
60
- icon: _Pen.default
61
- })), /*#__PURE__*/_react.default.createElement(_IconButton.default, {
62
- onClick: function onClick() {
63
- return onTrash(flag);
64
- }
65
- }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
66
- icon: _Trash.default
67
- }))));
68
- };
69
-
70
- var _default = FlagItem;
71
- exports.default = _default;
@@ -1,65 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.default = void 0;
11
-
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
- var _react = _interopRequireWildcard(require("react"));
15
-
16
- var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography"));
17
-
18
- var _List = _interopRequireDefault(require("cozy-ui/transpiled/react/List"));
19
-
20
- var _PanelContent = _interopRequireDefault(require("../PanelContent"));
21
-
22
- var _FlagEdit = require("./FlagEdit");
23
-
24
- var _helpers = require("./helpers");
25
-
26
- var _FlagItem = _interopRequireDefault(require("./FlagItem"));
27
-
28
- var Flags = function Flags() {
29
- var _useState = (0, _react.useState)(null),
30
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
31
- edited = _useState2[0],
32
- setEdited = _useState2[1];
33
-
34
- var flags = (0, _helpers.computeFlags)();
35
-
36
- var handleEdit = function handleEdit(flag) {
37
- setEdited(flag);
38
- };
39
-
40
- var handleTrash = function handleTrash(flag) {
41
- if (localStorage.getItem(flag.key)) {
42
- localStorage.removeItem(flag.key);
43
- location.reload();
44
- }
45
- };
46
-
47
- return /*#__PURE__*/_react.default.createElement(_PanelContent.default, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
48
- variant: "subtitle1"
49
- }, "Flags"), /*#__PURE__*/_react.default.createElement(_List.default, {
50
- dense: true,
51
- className: "u-maw-6"
52
- }, flags.map(function (flag) {
53
- return /*#__PURE__*/_react.default.createElement(_FlagItem.default, {
54
- key: flag.key,
55
- flag: flag,
56
- onEdit: handleEdit,
57
- onTrash: handleTrash
58
- });
59
- })), /*#__PURE__*/_react.default.createElement(_FlagEdit.FlagEdit, {
60
- flag: edited
61
- }));
62
- };
63
-
64
- var _default = Flags;
65
- exports.default = _default;
@@ -1,49 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.isJSONString = exports.computeFlags = exports.makeHumanValue = void 0;
9
-
10
- var _cozyFlags = _interopRequireDefault(require("cozy-flags"));
11
-
12
- var human = function human(name) {
13
- return name.replace(/[a-z][A-Z]/g, function (str) {
14
- return str[0] + ' ' + str[1].toLowerCase();
15
- });
16
- };
17
-
18
- var makeHumanValue = function makeHumanValue(value) {
19
- return typeof value === 'object' ? JSON.stringify(value) : value.toString();
20
- };
21
-
22
- exports.makeHumanValue = makeHumanValue;
23
-
24
- var computeFlags = function computeFlags() {
25
- return _cozyFlags.default.list().map(function (name) {
26
- var value = (0, _cozyFlags.default)(name);
27
- return {
28
- key: "flag__".concat(name),
29
- name: name,
30
- type: typeof value,
31
- humanName: human(name),
32
- value: value,
33
- humanValue: makeHumanValue(value)
34
- };
35
- });
36
- };
37
-
38
- exports.computeFlags = computeFlags;
39
-
40
- var isJSONString = function isJSONString(str) {
41
- try {
42
- JSON.parse(str);
43
- return true;
44
- } catch (e) {
45
- return false;
46
- }
47
- };
48
-
49
- exports.isJSONString = isJSONString;
@@ -1,42 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography"));
15
-
16
- var _PanelContent = _interopRequireDefault(require("./PanelContent"));
17
-
18
- /* global __VERSIONS__ */
19
- var Versions = function Versions() {
20
- // @ts-ignore
21
- var versions = typeof __VERSIONS__ !== 'undefined' ? __VERSIONS__ : {};
22
- var entries = Object.entries(versions);
23
- return /*#__PURE__*/_react.default.createElement(_PanelContent.default, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
24
- variant: "subtitle1",
25
- gutterBottom: true
26
- }, "Library versions"), entries.map(function (_ref) {
27
- var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
28
- pkg = _ref2[0],
29
- version = _ref2[1];
30
-
31
- return /*#__PURE__*/_react.default.createElement("div", {
32
- key: pkg
33
- }, pkg, ": ", version, " -", ' ', /*#__PURE__*/_react.default.createElement("img", {
34
- src: "https://img.shields.io/npm/v/".concat(pkg, "?style=flat-square}")
35
- }));
36
- }), entries.length === 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
37
- variant: "body1"
38
- }, "__VERSIONS__ is not exposed to the app. For this panel to work, you must add the VersionsPlugin."), /*#__PURE__*/_react.default.createElement("pre", null, "\nconst VersionPlugin = require('cozy-scripts/plugins/VersionPlugin')\n\nnew VersionPlugin({\n packages: ['cozy-bar', 'cozy-ui', 'cozy-harvest-lib']\n})\n ")) : null);
39
- };
40
-
41
- var _default = Versions;
42
- exports.default = _default;
@@ -1,24 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _Box = _interopRequireDefault(require("@material-ui/core/Box"));
13
-
14
- var PanelContent = function PanelContent(_ref) {
15
- var children = _ref.children;
16
- return /*#__PURE__*/_react.default.createElement(_Box.default, {
17
- p: 1,
18
- overflow: "scroll",
19
- width: "100%"
20
- }, children);
21
- };
22
-
23
- var _default = PanelContent;
24
- exports.default = _default;