jcc-express-mvc 1.7.9 → 1.7.11

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/global.d.ts CHANGED
@@ -10,12 +10,14 @@ import { Str } from "./lib/util/Str";
10
10
  import { Event } from "./lib/Event/Event";
11
11
  import { Queue } from "./lib/Queue";
12
12
  import { Container } from "./lib/Container";
13
+ import { Carbon } from "./lib/Date";
13
14
 
14
15
  declare global {
15
16
  var app: Container;
16
17
  var bcrypt: bcrypt;
17
18
  var emit: OmitThisParameter<Event["dispatch"]>;
18
19
  var env: (key: string, defaultValue?: string | null) => string | null;
20
+ var now: (date?: string) => Carbon;
19
21
  var dispatch: OmitThisParameter<Queue["push"]>;
20
22
  var jwtVerify: jwtVerify;
21
23
  var jwtSign: jwtSign;
@@ -48,6 +48,12 @@ export declare class Carbon {
48
48
  * ```
49
49
  */
50
50
  toISOString(): string;
51
+ /**
52
+ * Serializes the Carbon instance to a JSON-compatible string.
53
+ * This ensures that when the object is serialized to JSON, it returns a string representation.
54
+ * @returns {string} The date formatted as a datetime string
55
+ */
56
+ toJSON(): string;
51
57
  /**
52
58
  * Converts the date to a date string (without time)
53
59
  * @returns {string} Date string in 'YYYY-MM-DD' format
@@ -422,7 +428,7 @@ export declare class Carbon {
422
428
  * @param {Date | string | number} otherDate - The date to compare against (defaults to now)
423
429
  * @returns {string} A human-readable difference (e.g., "2 days ago", "in 3 months")
424
430
  */
425
- diffForHumans(otherDate?: Date | string | number): string;
431
+ diffForHumans(): string;
426
432
  /**
427
433
  * Gets the day of the week (0 = Sunday, 6 = Saturday)
428
434
  * @returns {number} The day of the week
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Date/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Date/index.ts"],"names":[],"mappings":"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"}
package/lib/Date/index.js CHANGED
@@ -63,6 +63,14 @@ class Carbon {
63
63
  toISOString() {
64
64
  return this.date.toISOString();
65
65
  }
66
+ /**
67
+ * Serializes the Carbon instance to a JSON-compatible string.
68
+ * This ensures that when the object is serialized to JSON, it returns a string representation.
69
+ * @returns {string} The date formatted as a datetime string
70
+ */
71
+ toJSON() {
72
+ return this.toDateTimeString();
73
+ }
66
74
  /**
67
75
  * Converts the date to a date string (without time)
68
76
  * @returns {string} Date string in 'YYYY-MM-DD' format
@@ -607,58 +615,8 @@ class Carbon {
607
615
  * @param {Date | string | number} otherDate - The date to compare against (defaults to now)
608
616
  * @returns {string} A human-readable difference (e.g., "2 days ago", "in 3 months")
609
617
  */
610
- diffForHumans(otherDate) {
611
- const targetDate = otherDate ? new Carbon(otherDate) : Carbon.now();
612
- const now = this.date;
613
- const diffInDays = (0, date_fns_1.differenceInDays)(now, targetDate.date);
614
- const diffInMonths = (0, date_fns_1.differenceInMonths)(now, targetDate.date);
615
- const diffInYears = (0, date_fns_1.differenceInYears)(now, targetDate.date);
616
- const diffInHours = (0, date_fns_1.differenceInHours)(now, targetDate.date);
617
- const diffInMinutes = (0, date_fns_1.differenceInMinutes)(now, targetDate.date);
618
- if ((0, date_fns_1.isSameDay)(now, targetDate.date)) {
619
- if (Math.abs(diffInHours) < 1) {
620
- if (Math.abs(diffInMinutes) < 1) {
621
- return "just now";
622
- }
623
- if (diffInMinutes === 1)
624
- return "1 minute ago";
625
- if (diffInMinutes === -1)
626
- return "in 1 minute";
627
- return diffInMinutes > 0
628
- ? `${diffInMinutes} minutes ago`
629
- : `in ${Math.abs(diffInMinutes)} minutes`;
630
- }
631
- if (diffInHours === 1)
632
- return "1 hour ago";
633
- if (diffInHours === -1)
634
- return "in 1 hour";
635
- return diffInHours > 0
636
- ? `${diffInHours} hours ago`
637
- : `in ${Math.abs(diffInHours)} hours`;
638
- }
639
- if (diffInDays === 1)
640
- return "1 day ago";
641
- if (diffInDays === -1)
642
- return "tomorrow";
643
- if (diffInDays < 0)
644
- return `in ${Math.abs(diffInDays)} days`;
645
- if (diffInDays < 30)
646
- return `${diffInDays} days ago`;
647
- if (diffInMonths === 1)
648
- return "1 month ago";
649
- if (diffInMonths === -1)
650
- return "in 1 month";
651
- if (diffInMonths < 0)
652
- return `in ${Math.abs(diffInMonths)} months`;
653
- if (diffInMonths < 12)
654
- return `${diffInMonths} months ago`;
655
- if (diffInYears === 1)
656
- return "1 year ago";
657
- if (diffInYears === -1)
658
- return "in 1 year";
659
- return diffInYears > 0
660
- ? `${diffInYears} years ago`
661
- : `in ${Math.abs(diffInYears)} years`;
618
+ diffForHumans() {
619
+ return (0, date_fns_1.formatDistanceToNow)(new Date(this.date), { addSuffix: true });
662
620
  }
663
621
  // ==================== GETTERS ====================
664
622
  /**
@@ -5,32 +5,38 @@ const Config_1 = require("../Config/Config");
5
5
  const Event_1 = require("../Event/Event");
6
6
  const Str_1 = require("../util/Str");
7
7
  const util_1 = require("../util");
8
+ const Carbon_1 = require("../Date/index");
8
9
  const globalHelpers = (app) => {
9
- globalThis.app = app;
10
- //
11
- globalThis.env = (key, defaultValue) => {
12
- return Config_1.config.get(key, defaultValue);
13
- };
14
- globalThis.emit = (arg) => {
15
- const event = app.resolve(Event_1.Event.name);
16
- return event.dispatch(arg);
17
- };
18
- globalThis.dispatch = (job) => {
19
- const queue = app.resolve("Queue");
20
- if (job.delay > 0) {
21
- return queue.later(job, job.delay);
22
- }
23
- return queue.push(job);
24
- };
25
- globalThis.str = () => {
26
- return Str_1.Str;
27
- };
28
- //
29
- globalThis.bcrypt = util_1.bcrypt;
30
- globalThis.verifyHash = util_1.verifyHash;
31
- globalThis.jwtSign = util_1.jwtSign;
32
- globalThis.jwtVerify = util_1.jwtVerify;
33
- globalThis.rootPath = util_1.rootPath;
34
- //rootPath
10
+ globalThis.app = app;
11
+ //
12
+ globalThis.env = (key, defaultValue) => {
13
+ return Config_1.config.get(key, defaultValue);
14
+ };
15
+
16
+ globalThis.now = (date = new Date()) => {
17
+ return new Carbon_1.Carbon(date);
18
+ };
19
+
20
+ globalThis.emit = (arg) => {
21
+ const event = app.resolve(Event_1.Event.name);
22
+ return event.dispatch(arg);
23
+ };
24
+ globalThis.dispatch = (job) => {
25
+ const queue = app.resolve("Queue");
26
+ if (job.delay > 0) {
27
+ return queue.later(job, job.delay);
28
+ }
29
+ return queue.push(job);
30
+ };
31
+ globalThis.str = () => {
32
+ return Str_1.Str;
33
+ };
34
+ //
35
+ globalThis.bcrypt = util_1.bcrypt;
36
+ globalThis.verifyHash = util_1.verifyHash;
37
+ globalThis.jwtSign = util_1.jwtSign;
38
+ globalThis.jwtVerify = util_1.jwtVerify;
39
+ globalThis.rootPath = util_1.rootPath;
40
+ //rootPath
35
41
  };
36
42
  exports.globalHelpers = globalHelpers;
@@ -77,7 +77,7 @@ class InertiaMiddleware {
77
77
  }
78
78
  // Render the view with or without SSR content
79
79
  return res.render(options.rootView, {
80
- inertia: JSON.stringify(inertiaData),
80
+ inertia: inertiaData,
81
81
  ssrHead: ssrResult?.head?.join("\n") || "",
82
82
  ssrBody: ssrResult?.body || "",
83
83
  ...option,
@@ -1 +1 @@
1
- {"version":3,"file":"BaseModel.d.ts","sourceRoot":"","sources":["../../../../Framework/lib/Jcc-eloquent/lib/BaseModel.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG3C,qBAAa,SAAU,SAAQ,YAAY;IACzC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAQ;IACpC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAM;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAM;IAChC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IACpD,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IACxD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAQ;IACrC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAS;IAEvC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAChD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAC7C,SAAS,CAAC,MAAM,EAAE,OAAO,CAAS;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IAE1B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;WAuCtB,eAAe,IAAI,GAAG,EAAE;IAOtC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAKnC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAY9B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAiBpC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAY9B,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAI3C,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAQxD,SAAS,CAAC,YAAY,IAAI,IAAI;IAIvB,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAatC;;OAEG;IACI,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAoBtC,OAAO,CAAC,GAAG,EAAE,MAAM;IAInB,OAAO,CAAC,GAAG,EAAE,MAAM;IAInB,KAAK;IAsFZ;;OAEG;IACI,UAAU,IAAI,IAAI;IAKzB;;OAEG;IACI,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAwB3C,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzC;;OAEG;IACI,UAAU,IAAI,IAAI;IAWzB,SAAS,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAGvC"}
1
+ {"version":3,"file":"BaseModel.d.ts","sourceRoot":"","sources":["../../../../Framework/lib/Jcc-eloquent/lib/BaseModel.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG3C,qBAAa,SAAU,SAAQ,YAAY;IACzC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAQ;IACpC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAM;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAM;IAChC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IACpD,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IACxD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAQ;IACrC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAS;IAEvC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAChD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAC7C,SAAS,CAAC,MAAM,EAAE,OAAO,CAAS;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IAE1B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;WAwEtB,eAAe,IAAI,GAAG,EAAE;IAOtC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAKnC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAY9B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAuBpC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAiB9B,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAI3C,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAQxD,SAAS,CAAC,YAAY,IAAI,IAAI;IAIvB,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAatC;;OAEG;IACI,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAoBtC,OAAO,CAAC,GAAG,EAAE,MAAM;IAInB,OAAO,CAAC,GAAG,EAAE,MAAM;IAInB,KAAK;IAsFZ;;OAEG;IACI,UAAU,IAAI,IAAI;IAKzB;;OAEG;IACI,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAwB3C,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzC;;OAEG;IACI,UAAU,IAAI,IAAI;IAWzB,SAAS,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAGvC"}
@@ -22,16 +22,47 @@ class BaseModel extends QueryBuilder_1.QueryBuilder {
22
22
  }
23
23
  toJSON() {
24
24
  const data = {};
25
+ const casts = this.getCasts();
25
26
  // Add non-hidden _attributes
26
27
  for (const key in this._attributes) {
27
28
  if (!this.hidden.includes(key)) {
28
- data[key] = this.getAttribute(key);
29
+ let value = this.getAttribute(key);
30
+ if (casts[key] && value instanceof Date_1.Carbon) {
31
+ if (casts[key] === "date") {
32
+ value = value.toDateString();
33
+ }
34
+ else if (casts[key] === "datetime") {
35
+ value = value.toDateTimeString();
36
+ }
37
+ else if (casts[key].startsWith("date:") ||
38
+ casts[key].startsWith("datetime:")) {
39
+ const format = casts[key].split(":")[1];
40
+ // Simple mapping for common PHP formats to date-fns if needed,
41
+ // but Carbon.format uses date-fns tokens.
42
+ // User might use PHP tokens like Y-m-d, need to check if Carbon supports that or if I need to map.
43
+ // The existing Carbon implementation wrapper might not support PHP tokens directly if it just calls format(date, str).
44
+ // Let's assume standard behavior for now or just toDateTimeString if complex.
45
+ // Actually, let's just stick to date/datetime basic first as requested.
46
+ // Re-reading Carbon.ts: format(formatStr: string) -> format(this.date, formatStr) (date-fns).
47
+ // date-fns uses 'yyyy-MM-dd'. PHP uses 'Y-m-d'.
48
+ // If user uses 'date:Y-m-d', it will break if passed to date-fns.
49
+ // For now, I will implement basic 'date' and 'datetime' support.
50
+ }
51
+ }
52
+ data[key] =
53
+ value && typeof value.toJSON === "function" ? value.toJSON() : value;
29
54
  }
30
55
  }
31
56
  // Add appends
32
57
  for (const key of this.appends) {
33
58
  if (!this.hidden.includes(key)) {
34
- data[key] = this.getAttribute(key);
59
+ const value = this.getAttribute(key);
60
+ // Appends usually don't have casts defs in casts property directly unless specified.
61
+ // But we should treat them similarly if they return Carbon.
62
+ // If accessing via accessor, we don't know the "cast" type easily unless we look at casts[key] which might not exist for appends.
63
+ // So for appends, we rely on their native toJSON (which is toDateTimeString via Carbon.toJSON).
64
+ data[key] =
65
+ value && typeof value.toJSON === "function" ? value.toJSON() : value;
35
66
  }
36
67
  }
37
68
  // Add loaded relations
@@ -84,6 +115,11 @@ class BaseModel extends QueryBuilder_1.QueryBuilder {
84
115
  this[method](value);
85
116
  return;
86
117
  }
118
+ const startAttributes = this.attributes();
119
+ if (startAttributes[key] && startAttributes[key].set) {
120
+ startAttributes[key].set(value);
121
+ return;
122
+ }
87
123
  this._attributes[key] = value;
88
124
  const cls = this.constructor;
89
125
  const casts = this.getCasts();
@@ -99,6 +135,10 @@ class BaseModel extends QueryBuilder_1.QueryBuilder {
99
135
  if (typeof this[method] === "function") {
100
136
  return this[method](this._attributes[key]);
101
137
  }
138
+ const startAttributes = this.attributes();
139
+ if (startAttributes[key] && startAttributes[key].get) {
140
+ return startAttributes[key].get(this._attributes[key]);
141
+ }
102
142
  return this._attributes[key];
103
143
  }
104
144
  getAttributes() {
@@ -13,6 +13,5 @@ export declare class Cast {
13
13
  private static array;
14
14
  private static integer;
15
15
  private static boolean;
16
- private static getAttributeName;
17
16
  }
18
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../Framework/lib/Jcc-eloquent/lib/Cast/index.ts"],"names":[],"mappings":"AAoBA,qBAAa,IAAI;WACD,iBAAiB,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAgBjC;;OAEG;WACW,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAqD1D;;OAEG;WACW,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAmB7D,OAAO,CAAC,MAAM,CAAC,MAAM;IAKrB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAKvB,OAAO,CAAC,MAAM,CAAC,KAAK;IAwBpB,OAAO,CAAC,MAAM,CAAC,OAAO;IAKtB,OAAO,CAAC,MAAM,CAAC,OAAO;IAQtB,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAU7B;CACH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../Framework/lib/Jcc-eloquent/lib/Cast/index.ts"],"names":[],"mappings":"AAoBA,qBAAa,IAAI;WACD,iBAAiB,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAgBjC;;OAEG;WACW,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAqD1D;;OAEG;WACW,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAmB7D,OAAO,CAAC,MAAM,CAAC,MAAM;IAKrB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAKvB,OAAO,CAAC,MAAM,CAAC,KAAK;IAwBpB,OAAO,CAAC,MAAM,CAAC,OAAO;IAKtB,OAAO,CAAC,MAAM,CAAC,OAAO;CAOvB"}
@@ -46,16 +46,16 @@ class Cast {
46
46
  return this.array(value);
47
47
  }
48
48
  if (actionType === types_1.DATETIME) {
49
- return this.dateTime(value, "yyyy-MM-dd HH:mm:ss");
49
+ return new Date_1.Carbon(value).toDateTimeString();
50
50
  }
51
51
  if (actionType === types_1.DATE) {
52
- return this.dateTime(value, "yyyy-MM-dd");
52
+ return new Date_1.Carbon(value).toDateString();
53
53
  }
54
54
  if (actionType === types_1.TIME) {
55
- return this.dateTime(value, "HH:mm:ss");
55
+ return new Date_1.Carbon(value).toTimeString();
56
56
  }
57
57
  if (actionType === types_1.NOW) {
58
- return this.dateTime(value, types_1.NOW);
58
+ return new Date_1.Carbon(value).diffForHumans();
59
59
  }
60
60
  if (actionType.startsWith("decimal:")) {
61
61
  const digits = parseInt(actionType.split(":")[1]) || 2;
@@ -96,7 +96,7 @@ class Cast {
96
96
  static dateTime(value, format) {
97
97
  if (!value)
98
98
  return "";
99
- return new Date_1.Carbon(value);
99
+ return new Date_1.Carbon(value).format(format);
100
100
  }
101
101
  static array(data) {
102
102
  if (typeof data === "string") {
@@ -136,15 +136,3 @@ class Cast {
136
136
  }
137
137
  }
138
138
  exports.Cast = Cast;
139
- Cast.getAttributeName = (attr) => {
140
- try {
141
- return attr
142
- .replace(/(set|get)/g, "")
143
- .toLowerCase()
144
- .replace(/([a-z0-9])([A-Z])/g, "$1_$2")
145
- .trim();
146
- }
147
- catch (error) {
148
- throw new DatabaseError_1.DatabaseError(error.message, constant_1.CAST_ATTRIBUTE);
149
- }
150
- };
@@ -50,5 +50,6 @@ export declare class EngineHelpers extends TemplateRegex {
50
50
  protected addCSSLinkTag(link: string): string;
51
51
  protected getResource(resources: Array<string>, select?: number): string;
52
52
  protected injectReactRefefresh(): string;
53
+ protected escapeJsonForHtml(json: string): string;
53
54
  }
54
55
  //# sourceMappingURL=engineHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engineHelper.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Templating-engine/engineHelper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,qBAAa,aAAc,SAAQ,aAAa;IAE9C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;;IAK3B;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,WAAW;IAM3D;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IA2BhE;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM;IAKxE;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAYxC;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3C,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG;IAgC1D,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM;IAWnC,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM;IAOpC,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM;IAOlC,SAAS,CAAC,YAAY,CACpB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM;IA8BT,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM;IAIpC,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAE,MAAU;IAOlE,SAAS,CAAC,oBAAoB;CAS/B"}
1
+ {"version":3,"file":"engineHelper.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Templating-engine/engineHelper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,qBAAa,aAAc,SAAQ,aAAa;IAE9C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;;IAK3B;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,WAAW;IAM3D;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IA2BhE;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM;IAKxE;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAYxC;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3C,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG;IAgC1D,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM;IAWnC,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM;IAOpC,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM;IAOlC,SAAS,CAAC,YAAY,CACpB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM;IA8BT,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM;IAIpC,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAE,MAAU;IAOlE,SAAS,CAAC,oBAAoB;IAU9B,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAUlD"}
@@ -196,5 +196,15 @@ class EngineHelpers extends expressions_1.TemplateRegex {
196
196
  window.__vite_plugin_react_preamble_installed__ = true;
197
197
  </script>`;
198
198
  }
199
+ escapeJsonForHtml(json) {
200
+ return json
201
+ .replace(/&/g, "&amp;")
202
+ .replace(/</g, "&lt;")
203
+ .replace(/>/g, "&gt;")
204
+ .replace(/"/g, "&quot;")
205
+ .replace(/'/g, "&apos;")
206
+ .replace(/\u2028/g, "\\u2028") // Line separator
207
+ .replace(/\u2029/g, "\\u2029"); // Paragraph separator
208
+ }
199
209
  }
200
210
  exports.EngineHelpers = EngineHelpers;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Templating-engine/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,cAAM,gBAAiB,SAAQ,aAAa;IAC1C,OAAO,CAAC,MAAM,CAAM;IAEpB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAevB;;;;;;OAMG;IACH,OAAO,CAAC,OAAO;IAYf;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB/C;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAYhB;;;;;;OAMG;IACH,OAAO,CAAC,IAAI;IAmBZ;;;;;;OAMG;IACH,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,IAAI;IAqBZ,OAAO,CAAC,gBAAgB;IAUxB;;;;;OAKG;IACH,OAAO,CAAC,MAAM;IAyCd;;;;OAIG;cACa,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQpD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;IAazD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM;CAG3C;AAGD,QAAA,MAAM,OAAO,SANG,MAAM,UAAU,GAAG,KAAG,MAMK,CAAC;AAC5C,QAAA,MAAM,aAAa,kBAAS,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Framework/lib/Templating-engine/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,cAAM,gBAAiB,SAAQ,aAAa;IAC1C,OAAO,CAAC,MAAM,CAAM;IAEpB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAevB;;;;;;OAMG;IACH,OAAO,CAAC,OAAO;IAYf;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB/C;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAYhB;;;;;;OAMG;IACH,OAAO,CAAC,IAAI;IAmBZ;;;;;;OAMG;IACH,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,IAAI;IAqBZ,OAAO,CAAC,gBAAgB;IAUxB;;;;;OAKG;IACH,OAAO,CAAC,MAAM;IAyCd;;;;OAIG;cACa,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQpD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;IAazD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM;CAG3C;AAGD,QAAA,MAAM,OAAO,SANG,MAAM,UAAU,GAAG,KAAG,MAMK,CAAC;AAC5C,QAAA,MAAM,aAAa,kBAAS,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC"}
@@ -174,7 +174,8 @@ class TemplatingEngine extends engineHelper_1.EngineHelpers {
174
174
  return this.parser(beforMatch + result + afterMatch, param);
175
175
  }
176
176
  inertia(content, match, param = this.option) {
177
- const interiaContent = param?.ssrBody || `<div id="app" data-page='${param.inertia}'></div>`;
177
+ const props = this.escapeJsonForHtml(JSON.stringify(param.inertia));
178
+ const interiaContent = param?.ssrBody || `<div id="app" data-page='${props}'></div>`;
178
179
  const { beforMatch, afterMatch } = this.content(content, match);
179
180
  return this.parser(beforMatch + interiaContent + afterMatch, param);
180
181
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jcc-express-mvc",
3
- "version": "1.7.9",
3
+ "version": "1.7.11",
4
4
  "description": "express mvc structure",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",