pinia-orm-edge 1.9.0-28580767.64b3b57 → 1.9.0-28580890.9c8ee0d

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/dist/casts.cjs CHANGED
@@ -113,7 +113,13 @@ class DateCast extends CastAttribute.CastAttribute {
113
113
  if (value === null) {
114
114
  return null;
115
115
  }
116
- return (typeof value === "string" ? new Date(Date.parse(value)) : value).toISOString();
116
+ if (typeof value === "number") {
117
+ return new Date(value).toISOString();
118
+ }
119
+ if (typeof value === "string") {
120
+ return new Date(Date.parse(value)).toISOString();
121
+ }
122
+ return value.toISOString();
117
123
  }
118
124
  }
119
125
 
package/dist/casts.d.cts CHANGED
@@ -60,7 +60,7 @@ declare class DateCast extends CastAttribute {
60
60
  /**
61
61
  * Make the value for the attribute.
62
62
  */
63
- set(value: string | Date | null): string | null;
63
+ set(value: string | number | Date | null): string | null;
64
64
  }
65
65
 
66
66
  export { ArrayCast, BooleanCast, DateCast, NumberCast, StringCast };
package/dist/casts.d.mts CHANGED
@@ -60,7 +60,7 @@ declare class DateCast extends CastAttribute {
60
60
  /**
61
61
  * Make the value for the attribute.
62
62
  */
63
- set(value: string | Date | null): string | null;
63
+ set(value: string | number | Date | null): string | null;
64
64
  }
65
65
 
66
66
  export { ArrayCast, BooleanCast, DateCast, NumberCast, StringCast };
package/dist/casts.d.ts CHANGED
@@ -60,7 +60,7 @@ declare class DateCast extends CastAttribute {
60
60
  /**
61
61
  * Make the value for the attribute.
62
62
  */
63
- set(value: string | Date | null): string | null;
63
+ set(value: string | number | Date | null): string | null;
64
64
  }
65
65
 
66
66
  export { ArrayCast, BooleanCast, DateCast, NumberCast, StringCast };
package/dist/casts.mjs CHANGED
@@ -111,7 +111,13 @@ class DateCast extends CastAttribute {
111
111
  if (value === null) {
112
112
  return null;
113
113
  }
114
- return (typeof value === "string" ? new Date(Date.parse(value)) : value).toISOString();
114
+ if (typeof value === "number") {
115
+ return new Date(value).toISOString();
116
+ }
117
+ if (typeof value === "string") {
118
+ return new Date(Date.parse(value)).toISOString();
119
+ }
120
+ return value.toISOString();
115
121
  }
116
122
  }
117
123
 
package/dist/helpers.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const Utils = require('./shared/pinia-orm.9bb2aea1.cjs');
3
+ const Utils = require('./shared/pinia-orm.a88d8365.cjs');
4
4
 
5
5
  function useSum(models, field) {
6
6
  return models.reduce((sum, item) => {
package/dist/helpers.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { k as getValue, o as orderBy } from './shared/pinia-orm.07af123e.mjs';
1
+ import { l as getValue, o as orderBy } from './shared/pinia-orm.f3905af9.mjs';
2
2
 
3
3
  function useSum(models, field) {
4
4
  return models.reduce((sum, item) => {
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const Utils = require('./shared/pinia-orm.9bb2aea1.cjs');
3
+ const Utils = require('./shared/pinia-orm.a88d8365.cjs');
4
4
  const pinia = require('pinia');
5
5
  const normalizr = require('@pinia-orm/normalizr');
6
6
  const CastAttribute = require('./shared/pinia-orm.a7e3e0f3.cjs');
@@ -1307,16 +1307,16 @@ class Query {
1307
1307
  const record = elements[id];
1308
1308
  const existing = currentData[id];
1309
1309
  let model = existing ? this.hydrate({ ...existing, ...record }, { operation: "set", action: "update" }) : this.hydrate(record, { operation: "set", action: "save" });
1310
- const isSaving = model.$self().saving(model, record);
1311
- const isUpdatingOrCreating = existing ? model.$self().updating(model, record) : model.$self().creating(model, record);
1310
+ const isSaving = model.$self().saving(model, existing ?? {});
1311
+ const isUpdatingOrCreating = existing ? model.$self().updating(model, existing ?? {}) : model.$self().creating(model, existing ?? {});
1312
1312
  if (isSaving === false || isUpdatingOrCreating === false) {
1313
1313
  continue;
1314
1314
  }
1315
1315
  if (model.$isDirty()) {
1316
1316
  model = this.hydrate(model.$getAttributes(), { operation: "set", action: existing ? "update" : "save" });
1317
1317
  }
1318
- afterSavingHooks.push(() => model.$self().saved(model, record));
1319
- afterSavingHooks.push(() => existing ? model.$self().updated(model, record) : model.$self().created(model, record));
1318
+ afterSavingHooks.push(() => model.$self().saved(model, existing ?? {}));
1319
+ afterSavingHooks.push(() => existing ? model.$self().updated(model, existing ?? {}) : model.$self().created(model, existing ?? {}));
1320
1320
  newData[id] = model.$getAttributes();
1321
1321
  if (Object.values(model.$types()).length > 0 && !newData[id][model.$typeKey()]) {
1322
1322
  newData[id][model.$typeKey()] = record[model.$typeKey()];
@@ -2023,7 +2023,7 @@ let String$1 = class String extends Type {
2023
2023
  }
2024
2024
  };
2025
2025
 
2026
- let Number$1 = class Number extends Type {
2026
+ class Number extends Type {
2027
2027
  /**
2028
2028
  * Create a new Number attribute instance.
2029
2029
  */
@@ -2036,7 +2036,7 @@ let Number$1 = class Number extends Type {
2036
2036
  make(value) {
2037
2037
  return this.makeReturn("number", value);
2038
2038
  }
2039
- };
2039
+ }
2040
2040
 
2041
2041
  class Boolean extends Type {
2042
2042
  /**
@@ -2915,7 +2915,7 @@ class Model {
2915
2915
  * Create a new Number attribute instance.
2916
2916
  */
2917
2917
  static number(value) {
2918
- return new Number$1(this.newRawInstance(), value);
2918
+ return new Number(this.newRawInstance(), value);
2919
2919
  }
2920
2920
  /**
2921
2921
  * Create a new Boolean attribute instance.
@@ -3445,7 +3445,7 @@ class Model {
3445
3445
  return this.serializeArray(value);
3446
3446
  }
3447
3447
  if (typeof value === "object") {
3448
- if (value instanceof Date && !Number.isNaN(value.getTime()) && typeof value.toISOString === "function") {
3448
+ if (Utils.isDate(value)) {
3449
3449
  return value.toISOString();
3450
3450
  } else {
3451
3451
  return this.serializeObject(value);
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { i as isArray, t as throwError, a as assert, g as generateId, b as isNullish, c as compareWithOperator, d as generateKey, e as isEmpty, f as isFunction, h as groupBy, o as orderBy, j as equals } from './shared/pinia-orm.07af123e.mjs';
1
+ import { i as isArray, t as throwError, a as assert, g as generateId, b as isNullish, c as compareWithOperator, d as generateKey, e as isEmpty, f as isFunction, h as groupBy, o as orderBy, j as equals, k as isDate } from './shared/pinia-orm.f3905af9.mjs';
2
2
  import { defineStore, acceptHMRUpdate } from 'pinia';
3
3
  import { schema, normalize } from '@pinia-orm/normalizr';
4
4
  export { C as CastAttribute } from './shared/pinia-orm.4ff2e12f.mjs';
@@ -1305,16 +1305,16 @@ class Query {
1305
1305
  const record = elements[id];
1306
1306
  const existing = currentData[id];
1307
1307
  let model = existing ? this.hydrate({ ...existing, ...record }, { operation: "set", action: "update" }) : this.hydrate(record, { operation: "set", action: "save" });
1308
- const isSaving = model.$self().saving(model, record);
1309
- const isUpdatingOrCreating = existing ? model.$self().updating(model, record) : model.$self().creating(model, record);
1308
+ const isSaving = model.$self().saving(model, existing ?? {});
1309
+ const isUpdatingOrCreating = existing ? model.$self().updating(model, existing ?? {}) : model.$self().creating(model, existing ?? {});
1310
1310
  if (isSaving === false || isUpdatingOrCreating === false) {
1311
1311
  continue;
1312
1312
  }
1313
1313
  if (model.$isDirty()) {
1314
1314
  model = this.hydrate(model.$getAttributes(), { operation: "set", action: existing ? "update" : "save" });
1315
1315
  }
1316
- afterSavingHooks.push(() => model.$self().saved(model, record));
1317
- afterSavingHooks.push(() => existing ? model.$self().updated(model, record) : model.$self().created(model, record));
1316
+ afterSavingHooks.push(() => model.$self().saved(model, existing ?? {}));
1317
+ afterSavingHooks.push(() => existing ? model.$self().updated(model, existing ?? {}) : model.$self().created(model, existing ?? {}));
1318
1318
  newData[id] = model.$getAttributes();
1319
1319
  if (Object.values(model.$types()).length > 0 && !newData[id][model.$typeKey()]) {
1320
1320
  newData[id][model.$typeKey()] = record[model.$typeKey()];
@@ -2021,7 +2021,7 @@ let String$1 = class String extends Type {
2021
2021
  }
2022
2022
  };
2023
2023
 
2024
- let Number$1 = class Number extends Type {
2024
+ class Number extends Type {
2025
2025
  /**
2026
2026
  * Create a new Number attribute instance.
2027
2027
  */
@@ -2034,7 +2034,7 @@ let Number$1 = class Number extends Type {
2034
2034
  make(value) {
2035
2035
  return this.makeReturn("number", value);
2036
2036
  }
2037
- };
2037
+ }
2038
2038
 
2039
2039
  class Boolean extends Type {
2040
2040
  /**
@@ -2913,7 +2913,7 @@ class Model {
2913
2913
  * Create a new Number attribute instance.
2914
2914
  */
2915
2915
  static number(value) {
2916
- return new Number$1(this.newRawInstance(), value);
2916
+ return new Number(this.newRawInstance(), value);
2917
2917
  }
2918
2918
  /**
2919
2919
  * Create a new Boolean attribute instance.
@@ -3443,7 +3443,7 @@ class Model {
3443
3443
  return this.serializeArray(value);
3444
3444
  }
3445
3445
  if (typeof value === "object") {
3446
- if (value instanceof Date && !Number.isNaN(value.getTime()) && typeof value.toISOString === "function") {
3446
+ if (isDate(value)) {
3447
3447
  return value.toISOString();
3448
3448
  } else {
3449
3449
  return this.serializeObject(value);
@@ -21,6 +21,9 @@ function compareWithOperator(leftValue, rightValue, operator) {
21
21
  function isNullish(value) {
22
22
  return value === void 0 || value === null;
23
23
  }
24
+ function isDate(value) {
25
+ return value instanceof Date && !Number.isNaN(value.getTime()) && typeof value.toISOString === "function";
26
+ }
24
27
  function isArray(value) {
25
28
  return Array.isArray(value);
26
29
  }
@@ -37,7 +40,11 @@ function orderBy(collection, iteratees, directions, flags = "SORT_REGULAR") {
37
40
  let index = -1;
38
41
  const result = collection.map((value) => {
39
42
  const criteria = iteratees.map((iteratee) => {
40
- return typeof iteratee === "function" ? iteratee(value) : getValue(value, iteratee, false);
43
+ if (typeof iteratee === "function") {
44
+ return iteratee(value);
45
+ }
46
+ const newValue = getValue(value, iteratee, false);
47
+ return isDate(newValue) ? new Date(newValue).getTime() : newValue;
41
48
  });
42
49
  return { criteria, index: ++index, value };
43
50
  });
@@ -160,6 +167,7 @@ exports.generateKey = generateKey;
160
167
  exports.getValue = getValue;
161
168
  exports.groupBy = groupBy;
162
169
  exports.isArray = isArray;
170
+ exports.isDate = isDate;
163
171
  exports.isEmpty = isEmpty;
164
172
  exports.isFunction = isFunction;
165
173
  exports.isNullish = isNullish;
@@ -19,6 +19,9 @@ function compareWithOperator(leftValue, rightValue, operator) {
19
19
  function isNullish(value) {
20
20
  return value === void 0 || value === null;
21
21
  }
22
+ function isDate(value) {
23
+ return value instanceof Date && !Number.isNaN(value.getTime()) && typeof value.toISOString === "function";
24
+ }
22
25
  function isArray(value) {
23
26
  return Array.isArray(value);
24
27
  }
@@ -35,7 +38,11 @@ function orderBy(collection, iteratees, directions, flags = "SORT_REGULAR") {
35
38
  let index = -1;
36
39
  const result = collection.map((value) => {
37
40
  const criteria = iteratees.map((iteratee) => {
38
- return typeof iteratee === "function" ? iteratee(value) : getValue(value, iteratee, false);
41
+ if (typeof iteratee === "function") {
42
+ return iteratee(value);
43
+ }
44
+ const newValue = getValue(value, iteratee, false);
45
+ return isDate(newValue) ? new Date(newValue).getTime() : newValue;
39
46
  });
40
47
  return { criteria, index: ++index, value };
41
48
  });
@@ -150,4 +157,4 @@ function equals(a, b) {
150
157
  return keys.every((k) => equals(a[k], b[k]));
151
158
  }
152
159
 
153
- export { assert as a, isNullish as b, compareWithOperator as c, generateKey as d, isEmpty as e, isFunction as f, generateId as g, groupBy as h, isArray as i, equals as j, getValue as k, orderBy as o, throwError as t };
160
+ export { assert as a, isNullish as b, compareWithOperator as c, generateKey as d, isEmpty as e, isFunction as f, generateId as g, groupBy as h, isArray as i, equals as j, isDate as k, getValue as l, orderBy as o, throwError as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pinia-orm-edge",
3
- "version": "1.9.0-28580767.64b3b57",
3
+ "version": "1.9.0-28580890.9c8ee0d",
4
4
  "description": "The Pinia plugin to enable Object-Relational Mapping access to the Pinia Store.",
5
5
  "keywords": [
6
6
  "vue",
@@ -46,7 +46,7 @@
46
46
  "pinia": "^2.1.7"
47
47
  },
48
48
  "dependencies": {
49
- "@pinia-orm/normalizr": "npm:@pinia-orm/normalizr-edge@1.9.0-28580767.64b3b57"
49
+ "@pinia-orm/normalizr": "npm:@pinia-orm/normalizr-edge@1.9.0-28580890.9c8ee0d"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@nuxt/eslint-config": "^0.3.10",