@star-insure/sdk 0.1.10 → 0.1.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.
@@ -1,2 +1,3 @@
1
1
  export * from './dates';
2
2
  export * from './money';
3
+ export * from './vehicles';
@@ -0,0 +1,2 @@
1
+ import { VehicleType } from "../types";
2
+ export declare function sanitiseVehicleType(inputType: string): VehicleType;
@@ -92,6 +92,42 @@ function formatNumber(value) {
92
92
  return parseFloat(value.replace(/[^0-9.]/g, ''));
93
93
  }
94
94
 
95
+ function sanitiseVehicleType(inputType) {
96
+ var type;
97
+
98
+ switch (inputType) {
99
+ case 'TRAILER_CARAVAN':
100
+ case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':
101
+ case 'MOBILE_MACHINE':
102
+ case 'GOODS_VAN_TRUCK_UTILITY':
103
+ case 'BUS':
104
+ case 'MOTOR_CARAVAN':
105
+ {
106
+ type = 'motorhome';
107
+ break;
108
+ }
109
+
110
+ case 'MOTORCYCLE':
111
+ case 'ATV':
112
+ case 'MOPED':
113
+ case 'TRACTOR':
114
+ case 'AGRICULTURAL_MACHINE':
115
+ case 'HIGH_SPEED_AGRICULTURAL_VEHICLE':
116
+ {
117
+ type = 'motorcycle';
118
+ break;
119
+ }
120
+
121
+ case 'PASSENGER_CAR_VAN':
122
+ case 'SPECIAL_PURPOSE_VEHICLE':
123
+ case 'UNKNOWN':
124
+ default:
125
+ type = 'car';
126
+ }
127
+
128
+ return type;
129
+ }
130
+
95
131
  exports.addGst = addGst;
96
132
  exports.formatDateForTable = formatDateForTable;
97
133
  exports.formatDateNice = formatDateNice;
@@ -100,5 +136,6 @@ exports.formatNumber = formatNumber;
100
136
  exports.getGst = getGst;
101
137
  exports.gstCalc = gstCalc;
102
138
  exports.round = round;
139
+ exports.sanitiseVehicleType = sanitiseVehicleType;
103
140
  exports.subtractGst = subtractGst;
104
141
  //# sourceMappingURL=sdk.cjs.development.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.cjs.development.js","sources":["../src/lib/dates.ts","../src/lib/money.ts"],"sourcesContent":["import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n","/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n"],"names":["formatDateNice","date","format","Date","formatDateForTable","round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","gstCalc","input","replace","gst","amountInclusive","amountExclusive","formatMoney","decimals","toFormat","toLocaleString","minimumFractionDigits","maximumFractionDigits","formatNumber"],"mappings":";;;;;;AAEA;;;;SAGgBA,eAAeC;EAC3B,OAAOC,cAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,aAAjB,CAAb;AACH;AAED;;;;SAGgBG,mBAAmBH;EAC/B,OAAOC,cAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,kBAAjB,CAAb;AACH;;ACdD;;;AAGA,SAAgBI,MAAMC;EAClB,OAAOC,MAAM,CAACC,IAAI,CAACH,KAAL,CAAWI,UAAU,CAACH,KAAK,GAAG,GAAR,GAAc,CAAf,CAArB,IAA0C,IAA1C,GAAiD,CAAlD,CAAb;AACH;AAED;;;;AAGA,SAAgBI,OAAOJ;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,CAAR,GAAY,EAAb,CAAZ;AACH;AAED;;;;AAGA,SAAgBK,OAAOL;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,IAAT,CAAZ;AACH;AAED;;;;AAGA,SAAgBM,YAAYN;EACxB,OAAOD,KAAK,CAACC,KAAK,GAAGI,MAAM,CAACJ,KAAD,CAAf,CAAZ;AACH;AAED;;;;AAGA,SAAgBO,QAAQC;EAKpB,IAAIR,KAAK,GAAGQ,KAAZ;;EAEA,IAAI,OAAOR,KAAP,KAAiB,QAArB,EAA+B;IAC3BA,KAAK,GAAGG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAlB;;;EAGJT,KAAK,GAAGD,KAAK,CAACC,KAAD,CAAb;EAEA,OAAO;IACHU,GAAG,EAAEN,MAAM,CAACJ,KAAD,CADR;IAEHW,eAAe,EAAEN,MAAM,CAACL,KAAD,CAFpB;IAGHY,eAAe,EAAEN,WAAW,CAACN,KAAD;GAHhC;AAKH;AAED;;;;AAGC,SAAgBa,YAAYb,OAAsBc;MAAAA;IAAAA,WAAmB;;;EAClE,IAAIC,QAAQ,GAAGf,KAAf;;EACA,IAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;IAC3Be,QAAQ,GAAGf,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAX;;;EAGJ,OAAOR,MAAM,CAACc,QAAD,CAAN,CAAiBC,cAAjB,CAAgC,IAAhC,EAAsC;IACzCC,qBAAqB,EAAEH,QADkB;IAEzCI,qBAAqB,EAAEJ;GAFpB,CAAP;AAIH;AAED;;;;AAGA,SAAgBK,aAAanB;EACzB,OAAOG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAjB;AACH;;;;;;;;;;;;"}
1
+ {"version":3,"file":"sdk.cjs.development.js","sources":["../src/lib/dates.ts","../src/lib/money.ts","../src/lib/vehicles.ts"],"sourcesContent":["import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n","/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n","import { VehicleType } from \"../types\";\n\nexport function sanitiseVehicleType(inputType: string): VehicleType {\n let type: VehicleType;\n\n switch (inputType) {\n case 'TRAILER_CARAVAN':\n case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':\n case 'MOBILE_MACHINE':\n case 'GOODS_VAN_TRUCK_UTILITY':\n case 'BUS':\n case 'MOTOR_CARAVAN': {\n type = 'motorhome';\n break;\n }\n case 'MOTORCYCLE':\n case 'ATV':\n case 'MOPED':\n case 'TRACTOR':\n case 'AGRICULTURAL_MACHINE':\n case 'HIGH_SPEED_AGRICULTURAL_VEHICLE': {\n type = 'motorcycle';\n break;\n }\n case 'PASSENGER_CAR_VAN':\n case 'SPECIAL_PURPOSE_VEHICLE':\n case 'UNKNOWN':\n default:\n type = 'car';\n }\n\n return type;\n}\n"],"names":["formatDateNice","date","format","Date","formatDateForTable","round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","gstCalc","input","replace","gst","amountInclusive","amountExclusive","formatMoney","decimals","toFormat","toLocaleString","minimumFractionDigits","maximumFractionDigits","formatNumber","sanitiseVehicleType","inputType","type"],"mappings":";;;;;;AAEA;;;;SAGgBA,eAAeC;EAC3B,OAAOC,cAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,aAAjB,CAAb;AACH;AAED;;;;SAGgBG,mBAAmBH;EAC/B,OAAOC,cAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,kBAAjB,CAAb;AACH;;ACdD;;;AAGA,SAAgBI,MAAMC;EAClB,OAAOC,MAAM,CAACC,IAAI,CAACH,KAAL,CAAWI,UAAU,CAACH,KAAK,GAAG,GAAR,GAAc,CAAf,CAArB,IAA0C,IAA1C,GAAiD,CAAlD,CAAb;AACH;AAED;;;;AAGA,SAAgBI,OAAOJ;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,CAAR,GAAY,EAAb,CAAZ;AACH;AAED;;;;AAGA,SAAgBK,OAAOL;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,IAAT,CAAZ;AACH;AAED;;;;AAGA,SAAgBM,YAAYN;EACxB,OAAOD,KAAK,CAACC,KAAK,GAAGI,MAAM,CAACJ,KAAD,CAAf,CAAZ;AACH;AAED;;;;AAGA,SAAgBO,QAAQC;EAKpB,IAAIR,KAAK,GAAGQ,KAAZ;;EAEA,IAAI,OAAOR,KAAP,KAAiB,QAArB,EAA+B;IAC3BA,KAAK,GAAGG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAlB;;;EAGJT,KAAK,GAAGD,KAAK,CAACC,KAAD,CAAb;EAEA,OAAO;IACHU,GAAG,EAAEN,MAAM,CAACJ,KAAD,CADR;IAEHW,eAAe,EAAEN,MAAM,CAACL,KAAD,CAFpB;IAGHY,eAAe,EAAEN,WAAW,CAACN,KAAD;GAHhC;AAKH;AAED;;;;AAGC,SAAgBa,YAAYb,OAAsBc;MAAAA;IAAAA,WAAmB;;;EAClE,IAAIC,QAAQ,GAAGf,KAAf;;EACA,IAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;IAC3Be,QAAQ,GAAGf,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAX;;;EAGJ,OAAOR,MAAM,CAACc,QAAD,CAAN,CAAiBC,cAAjB,CAAgC,IAAhC,EAAsC;IACzCC,qBAAqB,EAAEH,QADkB;IAEzCI,qBAAqB,EAAEJ;GAFpB,CAAP;AAIH;AAED;;;;AAGA,SAAgBK,aAAanB;EACzB,OAAOG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAjB;AACH;;SCrEeW,oBAAoBC;EAChC,IAAIC,IAAJ;;EAEA,QAAQD,SAAR;IACI,KAAK,iBAAL;IACA,KAAK,sCAAL;IACA,KAAK,gBAAL;IACA,KAAK,yBAAL;IACA,KAAK,KAAL;IACA,KAAK,eAAL;MAAsB;QAClBC,IAAI,GAAG,WAAP;QACA;;;IAEJ,KAAK,YAAL;IACA,KAAK,KAAL;IACA,KAAK,OAAL;IACA,KAAK,SAAL;IACA,KAAK,sBAAL;IACA,KAAK,iCAAL;MAAwC;QACpCA,IAAI,GAAG,YAAP;QACA;;;IAEJ,KAAK,mBAAL;IACA,KAAK,yBAAL;IACA,KAAK,SAAL;IACA;MACIA,IAAI,GAAG,KAAP;;;EAGR,OAAOA,IAAP;AACH;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("date-fns");function e(t){return Number(Math.round(parseFloat(t+"e2"))+"e-2")}function r(t){return e(3*t/23)}function n(t){return e(1.15*t)}function o(t){return e(t-r(t))}exports.addGst=n,exports.formatDateForTable=function(e){return t.format(new Date(e),"dd/MM/yyyy h:mma")},exports.formatDateNice=function(e){return t.format(new Date(e),"MMM d, yyyy")},exports.formatMoney=function(t,e){void 0===e&&(e=2);var r=t;return"string"==typeof t&&(r=t.replace(/[^\d.-]/g,"")),Number(r).toLocaleString("en",{minimumFractionDigits:e,maximumFractionDigits:e})},exports.formatNumber=function(t){return parseFloat(t.replace(/[^0-9.]/g,""))},exports.getGst=r,exports.gstCalc=function(t){var a=t;return"string"==typeof a&&(a=parseFloat(a.replace(/[^0-9.]/g,""))),{gst:r(a=e(a)),amountInclusive:n(a),amountExclusive:o(a)}},exports.round=e,exports.subtractGst=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("date-fns");function t(e){return Number(Math.round(parseFloat(e+"e2"))+"e-2")}function r(e){return t(3*e/23)}function a(e){return t(1.15*e)}function o(e){return t(e-r(e))}exports.addGst=a,exports.formatDateForTable=function(t){return e.format(new Date(t),"dd/MM/yyyy h:mma")},exports.formatDateNice=function(t){return e.format(new Date(t),"MMM d, yyyy")},exports.formatMoney=function(e,t){void 0===t&&(t=2);var r=e;return"string"==typeof e&&(r=e.replace(/[^\d.-]/g,"")),Number(r).toLocaleString("en",{minimumFractionDigits:t,maximumFractionDigits:t})},exports.formatNumber=function(e){return parseFloat(e.replace(/[^0-9.]/g,""))},exports.getGst=r,exports.gstCalc=function(e){var n=e;return"string"==typeof n&&(n=parseFloat(n.replace(/[^0-9.]/g,""))),{gst:r(n=t(n)),amountInclusive:a(n),amountExclusive:o(n)}},exports.round=t,exports.sanitiseVehicleType=function(e){var t;switch(e){case"TRAILER_CARAVAN":case"TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE":case"MOBILE_MACHINE":case"GOODS_VAN_TRUCK_UTILITY":case"BUS":case"MOTOR_CARAVAN":t="motorhome";break;case"MOTORCYCLE":case"ATV":case"MOPED":case"TRACTOR":case"AGRICULTURAL_MACHINE":case"HIGH_SPEED_AGRICULTURAL_VEHICLE":t="motorcycle";break;case"PASSENGER_CAR_VAN":case"SPECIAL_PURPOSE_VEHICLE":case"UNKNOWN":default:t="car"}return t},exports.subtractGst=o;
2
2
  //# sourceMappingURL=sdk.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.cjs.production.min.js","sources":["../src/lib/money.ts","../src/lib/dates.ts"],"sourcesContent":["/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n","import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n"],"names":["round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","date","format","Date","decimals","toFormat","replace","toLocaleString","minimumFractionDigits","maximumFractionDigits","input","gst","amountInclusive","amountExclusive"],"mappings":"uGAGgBA,EAAMC,GAClB,OAAOC,OAAOC,KAAKH,MAAMI,WAAWH,EAAAA,OAAtBE,gBAMFE,EAAOJ,GACnB,OAAOD,EAAc,EAARC,EAAY,aAMbK,EAAOL,GACnB,OAAOD,EAAc,KAARC,YAMDM,EAAYN,GACxB,OAAOD,EAAMC,EAAQI,EAAOJ,yDCbGO,GAC/B,OAAOC,SAAO,IAAIC,KAAKF,GAAO,qDARHA,GAC3B,OAAOC,SAAO,IAAIC,KAAKF,GAAO,6CDgDLP,EAAsBU,YAAAA,IAAAA,EAAmB,GAClE,IAAIC,EAAWX,EAKf,MAJqB,iBAAVA,IACPW,EAAWX,EAAMY,QAAQ,WAAY,KAGlCX,OAAOU,GAAUE,eAAe,KAAM,CACzCC,sBAAuBJ,EACvBK,sBAAuBL,mCAOFV,GACzB,OAAOG,WAAWH,EAAMY,QAAQ,WAAY,gDAvCxBI,GAKpB,IAAIhB,EAAQgB,EAQZ,MANqB,iBAAVhB,IACPA,EAAQG,WAAWH,EAAMY,QAAQ,WAAY,MAK1C,CACHK,IAAKb,EAHTJ,EAAQD,EAAMC,IAIVkB,gBAAiBb,EAAOL,GACxBmB,gBAAiBb,EAAYN"}
1
+ {"version":3,"file":"sdk.cjs.production.min.js","sources":["../src/lib/money.ts","../src/lib/dates.ts","../src/lib/vehicles.ts"],"sourcesContent":["/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n","import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n","import { VehicleType } from \"../types\";\n\nexport function sanitiseVehicleType(inputType: string): VehicleType {\n let type: VehicleType;\n\n switch (inputType) {\n case 'TRAILER_CARAVAN':\n case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':\n case 'MOBILE_MACHINE':\n case 'GOODS_VAN_TRUCK_UTILITY':\n case 'BUS':\n case 'MOTOR_CARAVAN': {\n type = 'motorhome';\n break;\n }\n case 'MOTORCYCLE':\n case 'ATV':\n case 'MOPED':\n case 'TRACTOR':\n case 'AGRICULTURAL_MACHINE':\n case 'HIGH_SPEED_AGRICULTURAL_VEHICLE': {\n type = 'motorcycle';\n break;\n }\n case 'PASSENGER_CAR_VAN':\n case 'SPECIAL_PURPOSE_VEHICLE':\n case 'UNKNOWN':\n default:\n type = 'car';\n }\n\n return type;\n}\n"],"names":["round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","date","format","Date","decimals","toFormat","replace","toLocaleString","minimumFractionDigits","maximumFractionDigits","input","gst","amountInclusive","amountExclusive","inputType","type"],"mappings":"uGAGgBA,EAAMC,GAClB,OAAOC,OAAOC,KAAKH,MAAMI,WAAWH,EAAAA,OAAtBE,gBAMFE,EAAOJ,GACnB,OAAOD,EAAc,EAARC,EAAY,aAMbK,EAAOL,GACnB,OAAOD,EAAc,KAARC,YAMDM,EAAYN,GACxB,OAAOD,EAAMC,EAAQI,EAAOJ,yDCbGO,GAC/B,OAAOC,SAAO,IAAIC,KAAKF,GAAO,qDARHA,GAC3B,OAAOC,SAAO,IAAIC,KAAKF,GAAO,6CDgDLP,EAAsBU,YAAAA,IAAAA,EAAmB,GAClE,IAAIC,EAAWX,EAKf,MAJqB,iBAAVA,IACPW,EAAWX,EAAMY,QAAQ,WAAY,KAGlCX,OAAOU,GAAUE,eAAe,KAAM,CACzCC,sBAAuBJ,EACvBK,sBAAuBL,mCAOFV,GACzB,OAAOG,WAAWH,EAAMY,QAAQ,WAAY,gDAvCxBI,GAKpB,IAAIhB,EAAQgB,EAQZ,MANqB,iBAAVhB,IACPA,EAAQG,WAAWH,EAAMY,QAAQ,WAAY,MAK1C,CACHK,IAAKb,EAHTJ,EAAQD,EAAMC,IAIVkB,gBAAiBb,EAAOL,GACxBmB,gBAAiBb,EAAYN,0DE7CDoB,GAChC,IAAIC,EAEJ,OAAQD,GACJ,IAAK,kBACL,IAAK,uCACL,IAAK,iBACL,IAAK,0BACL,IAAK,MACL,IAAK,gBACDC,EAAO,YACP,MAEJ,IAAK,aACL,IAAK,MACL,IAAK,QACL,IAAK,UACL,IAAK,uBACL,IAAK,kCACDA,EAAO,aACP,MAEJ,IAAK,oBACL,IAAK,0BACL,IAAK,UACL,QACIA,EAAO,MAGf,OAAOA"}
package/dist/sdk.esm.js CHANGED
@@ -88,5 +88,41 @@ function formatNumber(value) {
88
88
  return parseFloat(value.replace(/[^0-9.]/g, ''));
89
89
  }
90
90
 
91
- export { addGst, formatDateForTable, formatDateNice, formatMoney, formatNumber, getGst, gstCalc, round, subtractGst };
91
+ function sanitiseVehicleType(inputType) {
92
+ var type;
93
+
94
+ switch (inputType) {
95
+ case 'TRAILER_CARAVAN':
96
+ case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':
97
+ case 'MOBILE_MACHINE':
98
+ case 'GOODS_VAN_TRUCK_UTILITY':
99
+ case 'BUS':
100
+ case 'MOTOR_CARAVAN':
101
+ {
102
+ type = 'motorhome';
103
+ break;
104
+ }
105
+
106
+ case 'MOTORCYCLE':
107
+ case 'ATV':
108
+ case 'MOPED':
109
+ case 'TRACTOR':
110
+ case 'AGRICULTURAL_MACHINE':
111
+ case 'HIGH_SPEED_AGRICULTURAL_VEHICLE':
112
+ {
113
+ type = 'motorcycle';
114
+ break;
115
+ }
116
+
117
+ case 'PASSENGER_CAR_VAN':
118
+ case 'SPECIAL_PURPOSE_VEHICLE':
119
+ case 'UNKNOWN':
120
+ default:
121
+ type = 'car';
122
+ }
123
+
124
+ return type;
125
+ }
126
+
127
+ export { addGst, formatDateForTable, formatDateNice, formatMoney, formatNumber, getGst, gstCalc, round, sanitiseVehicleType, subtractGst };
92
128
  //# sourceMappingURL=sdk.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.esm.js","sources":["../src/lib/dates.ts","../src/lib/money.ts"],"sourcesContent":["import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n","/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n"],"names":["formatDateNice","date","format","Date","formatDateForTable","round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","gstCalc","input","replace","gst","amountInclusive","amountExclusive","formatMoney","decimals","toFormat","toLocaleString","minimumFractionDigits","maximumFractionDigits","formatNumber"],"mappings":";;AAEA;;;;SAGgBA,eAAeC;EAC3B,OAAOC,MAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,aAAjB,CAAb;AACH;AAED;;;;SAGgBG,mBAAmBH;EAC/B,OAAOC,MAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,kBAAjB,CAAb;AACH;;ACdD;;;AAGA,SAAgBI,MAAMC;EAClB,OAAOC,MAAM,CAACC,IAAI,CAACH,KAAL,CAAWI,UAAU,CAACH,KAAK,GAAG,GAAR,GAAc,CAAf,CAArB,IAA0C,IAA1C,GAAiD,CAAlD,CAAb;AACH;AAED;;;;AAGA,SAAgBI,OAAOJ;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,CAAR,GAAY,EAAb,CAAZ;AACH;AAED;;;;AAGA,SAAgBK,OAAOL;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,IAAT,CAAZ;AACH;AAED;;;;AAGA,SAAgBM,YAAYN;EACxB,OAAOD,KAAK,CAACC,KAAK,GAAGI,MAAM,CAACJ,KAAD,CAAf,CAAZ;AACH;AAED;;;;AAGA,SAAgBO,QAAQC;EAKpB,IAAIR,KAAK,GAAGQ,KAAZ;;EAEA,IAAI,OAAOR,KAAP,KAAiB,QAArB,EAA+B;IAC3BA,KAAK,GAAGG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAlB;;;EAGJT,KAAK,GAAGD,KAAK,CAACC,KAAD,CAAb;EAEA,OAAO;IACHU,GAAG,EAAEN,MAAM,CAACJ,KAAD,CADR;IAEHW,eAAe,EAAEN,MAAM,CAACL,KAAD,CAFpB;IAGHY,eAAe,EAAEN,WAAW,CAACN,KAAD;GAHhC;AAKH;AAED;;;;AAGC,SAAgBa,YAAYb,OAAsBc;MAAAA;IAAAA,WAAmB;;;EAClE,IAAIC,QAAQ,GAAGf,KAAf;;EACA,IAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;IAC3Be,QAAQ,GAAGf,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAX;;;EAGJ,OAAOR,MAAM,CAACc,QAAD,CAAN,CAAiBC,cAAjB,CAAgC,IAAhC,EAAsC;IACzCC,qBAAqB,EAAEH,QADkB;IAEzCI,qBAAqB,EAAEJ;GAFpB,CAAP;AAIH;AAED;;;;AAGA,SAAgBK,aAAanB;EACzB,OAAOG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAjB;AACH;;;;"}
1
+ {"version":3,"file":"sdk.esm.js","sources":["../src/lib/dates.ts","../src/lib/money.ts","../src/lib/vehicles.ts"],"sourcesContent":["import { format } from \"date-fns\";\n\n/**\n * Formats a date like \"Jan 1, 2022\"\n */\nexport function formatDateNice(date: string) {\n return format(new Date(date), \"MMM d, yyyy\");\n}\n\n/**\n * Formats a date like \"01/01/2022 9:50AM\"\n */\nexport function formatDateForTable(date: string) {\n return format(new Date(date), 'dd/MM/yyyy h:mma');\n}\n","/**\n * Safely rounds a number\n */\nexport function round(value: number): number {\n return Number(Math.round(parseFloat(value + 'e' + 2)) + 'e-' + 2)\n}\n\n/**\n * Gets the GST value from a number\n */\nexport function getGst(value: number): number {\n return round(value * 3 / 23);\n}\n\n/**\n * Adds GST to a number\n */\nexport function addGst(value: number): number {\n return round(value * 1.15);\n}\n\n/**\n * Subtracts GST from a number\n */\nexport function subtractGst(value: number): number {\n return round(value - getGst(value));\n}\n\n/**\n * Calculates the various GST values on a figure\n */\nexport function gstCalc(input: number|string): {\n gst: number,\n amountInclusive: number,\n amountExclusive: number\n} {\n let value = input;\n\n if (typeof value === 'string') {\n value = parseFloat(value.replace(/[^0-9.]/g, ''));\n }\n\n value = round(value);\n\n return {\n gst: getGst(value),\n amountInclusive: addGst(value),\n amountExclusive: subtractGst(value)\n }\n}\n\n/**\n * Formats a value nicely\n */\n export function formatMoney(value: string|number, decimals: number = 2): string {\n let toFormat = value;\n if (typeof value === 'string') {\n toFormat = value.replace(/[^\\d.-]/g, '')\n }\n\n return Number(toFormat).toLocaleString('en', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n}\n\n/**\n * Turns a formatted value in to a float\n */\nexport function formatNumber(value: string): number {\n return parseFloat(value.replace(/[^0-9.]/g, ''));\n}\n","import { VehicleType } from \"../types\";\n\nexport function sanitiseVehicleType(inputType: string): VehicleType {\n let type: VehicleType;\n\n switch (inputType) {\n case 'TRAILER_CARAVAN':\n case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':\n case 'MOBILE_MACHINE':\n case 'GOODS_VAN_TRUCK_UTILITY':\n case 'BUS':\n case 'MOTOR_CARAVAN': {\n type = 'motorhome';\n break;\n }\n case 'MOTORCYCLE':\n case 'ATV':\n case 'MOPED':\n case 'TRACTOR':\n case 'AGRICULTURAL_MACHINE':\n case 'HIGH_SPEED_AGRICULTURAL_VEHICLE': {\n type = 'motorcycle';\n break;\n }\n case 'PASSENGER_CAR_VAN':\n case 'SPECIAL_PURPOSE_VEHICLE':\n case 'UNKNOWN':\n default:\n type = 'car';\n }\n\n return type;\n}\n"],"names":["formatDateNice","date","format","Date","formatDateForTable","round","value","Number","Math","parseFloat","getGst","addGst","subtractGst","gstCalc","input","replace","gst","amountInclusive","amountExclusive","formatMoney","decimals","toFormat","toLocaleString","minimumFractionDigits","maximumFractionDigits","formatNumber","sanitiseVehicleType","inputType","type"],"mappings":";;AAEA;;;;SAGgBA,eAAeC;EAC3B,OAAOC,MAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,aAAjB,CAAb;AACH;AAED;;;;SAGgBG,mBAAmBH;EAC/B,OAAOC,MAAM,CAAC,IAAIC,IAAJ,CAASF,IAAT,CAAD,EAAiB,kBAAjB,CAAb;AACH;;ACdD;;;AAGA,SAAgBI,MAAMC;EAClB,OAAOC,MAAM,CAACC,IAAI,CAACH,KAAL,CAAWI,UAAU,CAACH,KAAK,GAAG,GAAR,GAAc,CAAf,CAArB,IAA0C,IAA1C,GAAiD,CAAlD,CAAb;AACH;AAED;;;;AAGA,SAAgBI,OAAOJ;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,CAAR,GAAY,EAAb,CAAZ;AACH;AAED;;;;AAGA,SAAgBK,OAAOL;EACnB,OAAOD,KAAK,CAACC,KAAK,GAAG,IAAT,CAAZ;AACH;AAED;;;;AAGA,SAAgBM,YAAYN;EACxB,OAAOD,KAAK,CAACC,KAAK,GAAGI,MAAM,CAACJ,KAAD,CAAf,CAAZ;AACH;AAED;;;;AAGA,SAAgBO,QAAQC;EAKpB,IAAIR,KAAK,GAAGQ,KAAZ;;EAEA,IAAI,OAAOR,KAAP,KAAiB,QAArB,EAA+B;IAC3BA,KAAK,GAAGG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAlB;;;EAGJT,KAAK,GAAGD,KAAK,CAACC,KAAD,CAAb;EAEA,OAAO;IACHU,GAAG,EAAEN,MAAM,CAACJ,KAAD,CADR;IAEHW,eAAe,EAAEN,MAAM,CAACL,KAAD,CAFpB;IAGHY,eAAe,EAAEN,WAAW,CAACN,KAAD;GAHhC;AAKH;AAED;;;;AAGC,SAAgBa,YAAYb,OAAsBc;MAAAA;IAAAA,WAAmB;;;EAClE,IAAIC,QAAQ,GAAGf,KAAf;;EACA,IAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;IAC3Be,QAAQ,GAAGf,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAX;;;EAGJ,OAAOR,MAAM,CAACc,QAAD,CAAN,CAAiBC,cAAjB,CAAgC,IAAhC,EAAsC;IACzCC,qBAAqB,EAAEH,QADkB;IAEzCI,qBAAqB,EAAEJ;GAFpB,CAAP;AAIH;AAED;;;;AAGA,SAAgBK,aAAanB;EACzB,OAAOG,UAAU,CAACH,KAAK,CAACS,OAAN,CAAc,UAAd,EAA0B,EAA1B,CAAD,CAAjB;AACH;;SCrEeW,oBAAoBC;EAChC,IAAIC,IAAJ;;EAEA,QAAQD,SAAR;IACI,KAAK,iBAAL;IACA,KAAK,sCAAL;IACA,KAAK,gBAAL;IACA,KAAK,yBAAL;IACA,KAAK,KAAL;IACA,KAAK,eAAL;MAAsB;QAClBC,IAAI,GAAG,WAAP;QACA;;;IAEJ,KAAK,YAAL;IACA,KAAK,KAAL;IACA,KAAK,OAAL;IACA,KAAK,SAAL;IACA,KAAK,sBAAL;IACA,KAAK,iCAAL;MAAwC;QACpCA,IAAI,GAAG,YAAP;QACA;;;IAEJ,KAAK,mBAAL;IACA,KAAK,yBAAL;IACA,KAAK,SAAL;IACA;MACIA,IAAI,GAAG,KAAP;;;EAGR,OAAOA,IAAP;AACH;;;;"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@star-insure/sdk",
3
3
  "description": "The SDK for Star Insure client apps with shared helper functions and TypeScript definitions.",
4
4
  "author": "alexclark_nz",
5
- "version": "0.1.10",
5
+ "version": "0.1.11",
6
6
  "license": "MIT",
7
7
  "repository": {
8
8
  "type": "git",
package/src/lib/index.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './dates';
2
2
  export * from './money';
3
+ export * from './vehicles';
@@ -0,0 +1,33 @@
1
+ import { VehicleType } from "../types";
2
+
3
+ export function sanitiseVehicleType(inputType: string): VehicleType {
4
+ let type: VehicleType;
5
+
6
+ switch (inputType) {
7
+ case 'TRAILER_CARAVAN':
8
+ case 'TRAILER_NOT_DESIGNED_FOR_HIGHWAY_USE':
9
+ case 'MOBILE_MACHINE':
10
+ case 'GOODS_VAN_TRUCK_UTILITY':
11
+ case 'BUS':
12
+ case 'MOTOR_CARAVAN': {
13
+ type = 'motorhome';
14
+ break;
15
+ }
16
+ case 'MOTORCYCLE':
17
+ case 'ATV':
18
+ case 'MOPED':
19
+ case 'TRACTOR':
20
+ case 'AGRICULTURAL_MACHINE':
21
+ case 'HIGH_SPEED_AGRICULTURAL_VEHICLE': {
22
+ type = 'motorcycle';
23
+ break;
24
+ }
25
+ case 'PASSENGER_CAR_VAN':
26
+ case 'SPECIAL_PURPOSE_VEHICLE':
27
+ case 'UNKNOWN':
28
+ default:
29
+ type = 'car';
30
+ }
31
+
32
+ return type;
33
+ }