@bash-app/bash-common 30.146.0 → 30.147.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.
package/dist/index.d.ts CHANGED
@@ -9,6 +9,7 @@ export * from "./utils/awsS3Utils";
9
9
  export * from "./utils/bashPointsPaymentUtils";
10
10
  export * from "./utils/contentFilterUtils";
11
11
  export * from "./utils/dateTimeUtils";
12
+ export * from "./utils/displayDateUtils";
12
13
  export * from "./utils/discountEngine/bestPriceResolver";
13
14
  export * from "./utils/discountEngine/eligibilityValidator";
14
15
  export * from "./utils/objUtils";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AAGxC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE7E,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAE7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAG3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EACR,WAAW,EAAE,YAAY,EACzB,YAAY,EAAE,QAAQ,EAAE,sBAAsB,EAAE,cAAc,EACjE,MAAM,mBAAmB,CAAC;AAG3B,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AAGxC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE7E,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAE7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAG3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EACR,WAAW,EAAE,YAAY,EACzB,YAAY,EAAE,QAAQ,EAAE,sBAAsB,EAAE,cAAc,EACjE,MAAM,mBAAmB,CAAC;AAG3B,cAAc,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -8,6 +8,7 @@ export * from "./utils/awsS3Utils";
8
8
  export * from "./utils/bashPointsPaymentUtils";
9
9
  export * from "./utils/contentFilterUtils";
10
10
  export * from "./utils/dateTimeUtils";
11
+ export * from "./utils/displayDateUtils";
11
12
  export * from "./utils/discountEngine/bestPriceResolver";
12
13
  export * from "./utils/discountEngine/eligibilityValidator";
13
14
  export * from "./utils/objUtils";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AAKxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,+DAA+D;AAC/D,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,sDAAsD;AACtD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAE3C,iFAAiF;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAMxD,kBAAkB;AAClB,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AAKxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,+DAA+D;AAC/D,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,sDAAsD;AACtD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAE3C,iFAAiF;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAMxD,kBAAkB;AAClB,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Display date formatting for UI components.
3
+ * Uses browser local timezone (same as new Date().toLocaleDateString()).
4
+ * No Luxon dependency to avoid timezone behavior changes for UTC ISO strings.
5
+ */
6
+ /** "Mar 7, 2026" — standard short display date for UI components. Formats in browser local timezone. */
7
+ export declare function formatShortDate(date: Date | string | null | undefined, fallback?: string): string;
8
+ /** "March 7, 2026" — long display date for blog/billing UI. Formats in browser local timezone. */
9
+ export declare function formatLongDate(date: Date | string | null | undefined, fallback?: string): string;
10
+ //# sourceMappingURL=displayDateUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayDateUtils.d.ts","sourceRoot":"","sources":["../../src/utils/displayDateUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wGAAwG;AACxG,wBAAgB,eAAe,CAC7B,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,QAAQ,SAAa,GACpB,MAAM,CASR;AAED,kGAAkG;AAClG,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,QAAQ,SAAK,GACZ,MAAM,CASR"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Display date formatting for UI components.
3
+ * Uses browser local timezone (same as new Date().toLocaleDateString()).
4
+ * No Luxon dependency to avoid timezone behavior changes for UTC ISO strings.
5
+ */
6
+ /** "Mar 7, 2026" — standard short display date for UI components. Formats in browser local timezone. */
7
+ export function formatShortDate(date, fallback = 'Date TBD') {
8
+ if (!date)
9
+ return fallback;
10
+ const jsDate = typeof date === 'string' ? new Date(date) : date;
11
+ if (isNaN(jsDate.getTime()))
12
+ return fallback;
13
+ return jsDate.toLocaleDateString('en-US', {
14
+ month: 'short',
15
+ day: 'numeric',
16
+ year: 'numeric',
17
+ });
18
+ }
19
+ /** "March 7, 2026" — long display date for blog/billing UI. Formats in browser local timezone. */
20
+ export function formatLongDate(date, fallback = '') {
21
+ if (!date)
22
+ return fallback;
23
+ const jsDate = typeof date === 'string' ? new Date(date) : date;
24
+ if (isNaN(jsDate.getTime()))
25
+ return fallback;
26
+ return jsDate.toLocaleDateString('en-US', {
27
+ month: 'long',
28
+ day: 'numeric',
29
+ year: 'numeric',
30
+ });
31
+ }
32
+ //# sourceMappingURL=displayDateUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayDateUtils.js","sourceRoot":"","sources":["../../src/utils/displayDateUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wGAAwG;AACxG,MAAM,UAAU,eAAe,CAC7B,IAAsC,EACtC,QAAQ,GAAG,UAAU;IAErB,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3B,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7C,OAAO,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE;QACxC,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,cAAc,CAC5B,IAAsC,EACtC,QAAQ,GAAG,EAAE;IAEb,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3B,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7C,OAAO,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE;QACxC,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bash-app/bash-common",
3
- "version": "30.146.0",
3
+ "version": "30.147.0",
4
4
  "description": "Common data and scripts to use on the frontend and backend",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
package/src/index.ts CHANGED
@@ -12,6 +12,7 @@ export * from "./utils/awsS3Utils";
12
12
  export * from "./utils/bashPointsPaymentUtils";
13
13
  export * from "./utils/contentFilterUtils";
14
14
  export * from "./utils/dateTimeUtils";
15
+ export * from "./utils/displayDateUtils";
15
16
  export * from "./utils/discountEngine/bestPriceResolver";
16
17
  export * from "./utils/discountEngine/eligibilityValidator";
17
18
  export * from "./utils/objUtils";
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Display date formatting for UI components.
3
+ * Uses browser local timezone (same as new Date().toLocaleDateString()).
4
+ * No Luxon dependency to avoid timezone behavior changes for UTC ISO strings.
5
+ */
6
+
7
+ /** "Mar 7, 2026" — standard short display date for UI components. Formats in browser local timezone. */
8
+ export function formatShortDate(
9
+ date: Date | string | null | undefined,
10
+ fallback = 'Date TBD'
11
+ ): string {
12
+ if (!date) return fallback;
13
+ const jsDate = typeof date === 'string' ? new Date(date) : date;
14
+ if (isNaN(jsDate.getTime())) return fallback;
15
+ return jsDate.toLocaleDateString('en-US', {
16
+ month: 'short',
17
+ day: 'numeric',
18
+ year: 'numeric',
19
+ });
20
+ }
21
+
22
+ /** "March 7, 2026" — long display date for blog/billing UI. Formats in browser local timezone. */
23
+ export function formatLongDate(
24
+ date: Date | string | null | undefined,
25
+ fallback = ''
26
+ ): string {
27
+ if (!date) return fallback;
28
+ const jsDate = typeof date === 'string' ? new Date(date) : date;
29
+ if (isNaN(jsDate.getTime())) return fallback;
30
+ return jsDate.toLocaleDateString('en-US', {
31
+ month: 'long',
32
+ day: 'numeric',
33
+ year: 'numeric',
34
+ });
35
+ }