nitro-web 0.0.200 → 0.0.202
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/.eslintrc.json +1 -1
- package/client/index.ts +1 -1
- package/components/partials/element/avatar.tsx +1 -1
- package/components/partials/element/button.tsx +1 -1
- package/components/partials/form/location.tsx +6 -4
- package/components/partials/form/select.tsx +36 -13
- package/package.json +1 -1
- package/types/server/models/company.d.ts +4 -7
- package/types/server/models/company.d.ts.map +1 -1
- package/types/util.d.ts +4 -7
- package/types/util.d.ts.map +1 -1
- package/util.js +12 -6
package/.eslintrc.json
CHANGED
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"allowObject": true
|
|
42
42
|
}],
|
|
43
43
|
"indent": ["error", 2, { "SwitchCase": 1, "offsetTernaryExpressions": true }],
|
|
44
|
-
"max-len": ["error", { "code":
|
|
44
|
+
"max-len": ["error", { "code": 142, "ignorePattern": "^\\s*(<(rect|path|line)\\s|class=|className=|'|`)" }],
|
|
45
45
|
"no-var": "off",
|
|
46
46
|
"no-prototype-builtins": "off",
|
|
47
47
|
"@typescript-eslint/no-this-alias": "off",
|
package/client/index.ts
CHANGED
|
@@ -50,7 +50,7 @@ export { type FieldColorProps } from '../components/partials/form/field-color'
|
|
|
50
50
|
export { type FieldCurrencyProps } from '../components/partials/form/field-currency'
|
|
51
51
|
export { type FieldDateProps } from '../components/partials/form/field-date'
|
|
52
52
|
export { Location } from '../components/partials/form/location'
|
|
53
|
-
export { Select, getSelectClassName, type SelectProps, type SelectOption } from '../components/partials/form/select'
|
|
53
|
+
export { Select, getSelectClassName, type SelectProps, type SelectOption, type SelectedOption } from '../components/partials/form/select'
|
|
54
54
|
|
|
55
55
|
// Component Other Components
|
|
56
56
|
export { IsFirstRender } from '../components/partials/is-first-render'
|
|
@@ -34,7 +34,7 @@ export function Avatar({ awsUrl, isRound, user, showPlaceholderImage, className
|
|
|
34
34
|
? <img class={classes} src={s3Image(awsUrl, user.avatar, 'small')} />
|
|
35
35
|
: showPlaceholderImage
|
|
36
36
|
? <img class={classes} src={avatarImg} width="30px" />
|
|
37
|
-
: <Initials className={classes}
|
|
37
|
+
: <Initials className={classes} initials={getInitials(user)} color={getHex(user)} isRound={isRound} />
|
|
38
38
|
)
|
|
39
39
|
}
|
|
40
40
|
|
|
@@ -36,7 +36,7 @@ export function Button({
|
|
|
36
36
|
const iconPosition =
|
|
37
37
|
IconLeft ? 'left' : IconLeftEnd ? 'leftEnd' : IconRight ? 'right' : IconRightEnd ? 'rightEnd' : IconCenter ? 'center' : 'none'
|
|
38
38
|
const base =
|
|
39
|
-
'relative inline-flex items-center justify-center text-center font-medium shadow-
|
|
39
|
+
'relative inline-flex items-center justify-center text-center font-medium shadow-button focus-visible:outline ' +
|
|
40
40
|
'focus-visible:outline-2 focus-visible:outline-offset-2 ring-inset ring-1' + (children ? '' : ' aspect-square')
|
|
41
41
|
|
|
42
42
|
// Button colors, you can use custom colors by using className instead
|
|
@@ -117,20 +117,22 @@ export function Location({ clear, id, name, onInput, onSelect, placeholder, plac
|
|
|
117
117
|
if (clear) setInputValue('')
|
|
118
118
|
else setInputValue(place.formatted_address)
|
|
119
119
|
const addressObject = formatAddressObject(place)
|
|
120
|
+
// removed: line1 (unit/number street)
|
|
121
|
+
// removed: line2 (suburb, postcode)
|
|
122
|
+
// removed: unit
|
|
120
123
|
onSelect({
|
|
121
124
|
city: addressObject.city,
|
|
122
125
|
country: addressObject.country,
|
|
123
|
-
line1: [[addressObject.unit, addressObject.number].filter(o=>o).join('/'), addressObject.street].join(' '),
|
|
124
|
-
line2: [addressObject.suburb, addressObject.postcode].filter(o=>o).join(', '),
|
|
125
126
|
full: place.formatted_address,
|
|
126
|
-
number: addressObject.number,
|
|
127
|
+
number: [addressObject.unit,addressObject.number].filter(o=>o).join('/'),
|
|
127
128
|
postcode: addressObject.postcode,
|
|
129
|
+
region: addressObject.region,
|
|
130
|
+
street: addressObject.street,
|
|
128
131
|
suburb: addressObject.suburb,
|
|
129
132
|
location: {
|
|
130
133
|
coordinates: [place.geometry.location.lng(), place.geometry.location.lat()],
|
|
131
134
|
type: 'Point',
|
|
132
135
|
},
|
|
133
|
-
unit: addressObject.unit,
|
|
134
136
|
area: !util.deepFind(place, 'geometry.viewport') ? undefined : {
|
|
135
137
|
bottomLeft: [
|
|
136
138
|
place.geometry.viewport.getSouthWest().lng(),
|
|
@@ -32,10 +32,14 @@ export type SelectOption = {
|
|
|
32
32
|
fixed?: boolean,
|
|
33
33
|
IconLeft?: React.ReactNode,
|
|
34
34
|
flag?: string | React.ReactNode,
|
|
35
|
+
className?: string,
|
|
35
36
|
data?: { [key: string]: unknown }
|
|
36
37
|
}
|
|
38
|
+
|
|
39
|
+
export type SelectedOption = SelectOption | null
|
|
40
|
+
|
|
37
41
|
/** Select (all other props are passed to react-select) **/
|
|
38
|
-
export type SelectProps = {
|
|
42
|
+
export type SelectProps<IsMulti extends boolean = false> = {
|
|
39
43
|
/** field name or path on state (used to match errors), e.g. 'date', 'company.email' **/
|
|
40
44
|
name: string
|
|
41
45
|
/** inputId, the name is used if not provided **/
|
|
@@ -46,8 +50,10 @@ export type SelectProps = {
|
|
|
46
50
|
minMenuWidth?: number
|
|
47
51
|
/** The prefix to add to the input **/
|
|
48
52
|
prefix?: string
|
|
49
|
-
/**
|
|
50
|
-
|
|
53
|
+
/** Whether multiple values can be selected **/
|
|
54
|
+
isMulti?: IsMulti
|
|
55
|
+
/** The onChange handler (option should really ref options using ts generics) **/
|
|
56
|
+
onChange?: (event: { target: { name: string, value: unknown } }, option: IsMulti extends true ? SelectOption[] : SelectedOption) => void
|
|
51
57
|
/** The options to display in the dropdown, data is used to pass additional data to the option **/
|
|
52
58
|
options: SelectOption[]
|
|
53
59
|
/** The state object to get the value and check errors from **/
|
|
@@ -68,13 +74,13 @@ export type SelectProps = {
|
|
|
68
74
|
|
|
69
75
|
export const Select = memo(SelectBase, (prev, next) => {
|
|
70
76
|
return isFieldCached(prev, next)
|
|
71
|
-
})
|
|
77
|
+
}) as <IsMulti extends boolean = false>(props: SelectProps<IsMulti>) => React.ReactElement | null
|
|
72
78
|
|
|
73
|
-
function SelectBase({
|
|
79
|
+
function SelectBase<IsMulti extends boolean = false>({
|
|
74
80
|
id, containerId, minMenuWidth, name, prefix='', onChange, options, state, mode='', errorTitle, classNames: classNamesProp,
|
|
75
81
|
showSearchIcon, className,
|
|
76
82
|
...props
|
|
77
|
-
}: SelectProps) {
|
|
83
|
+
}: SelectProps<IsMulti>) {
|
|
78
84
|
let value: unknown|unknown[]
|
|
79
85
|
const error = getErrorFromState(state, errorTitle || name)
|
|
80
86
|
if (!name) throw new Error('Select component requires a `name` and `options` prop')
|
|
@@ -89,6 +95,7 @@ function SelectBase({
|
|
|
89
95
|
|
|
90
96
|
// Input is always controlled if state is passed in
|
|
91
97
|
if (typeof state == 'object' && typeof value == 'undefined') value = ''
|
|
98
|
+
else if (typeof value == 'undefined') value = null // new
|
|
92
99
|
|
|
93
100
|
// Merge class names (up to 1 level deep)
|
|
94
101
|
const classNames = useMemo(() => {
|
|
@@ -126,7 +133,6 @@ function SelectBase({
|
|
|
126
133
|
* menuIsOpen={false}
|
|
127
134
|
*/
|
|
128
135
|
{...props}
|
|
129
|
-
// @ts-expect-error
|
|
130
136
|
_nitro={{ prefix, mode, showSearchIcon }}
|
|
131
137
|
key={value as string}
|
|
132
138
|
unstyled={true}
|
|
@@ -140,14 +146,31 @@ function SelectBase({
|
|
|
140
146
|
menuPlacement="auto"
|
|
141
147
|
minMenuHeight={250}
|
|
142
148
|
onChange={!onChange ? undefined : (o) => {
|
|
143
|
-
//
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
149
|
+
// An array is returned for multi-select
|
|
150
|
+
type OptionType = IsMulti extends true ? SelectOption[] : SelectedOption
|
|
151
|
+
let value: unknown | unknown[] = []
|
|
152
|
+
let optionCopy = [] as unknown as OptionType
|
|
153
|
+
|
|
154
|
+
if (Array.isArray(o)) {
|
|
155
|
+
for (const v of o) {
|
|
156
|
+
const isObject = typeof v == 'object' && v !== null && 'value' in v;
|
|
157
|
+
(optionCopy as OptionType[]).push(isObject ? { ...v } : v);
|
|
158
|
+
(value as unknown[]).push(isObject ? v.value : v)
|
|
159
|
+
}
|
|
160
|
+
} else {
|
|
161
|
+
const isObject = typeof o == 'object' && o !== null && 'value' in o
|
|
162
|
+
value = isObject ? o.value : o
|
|
163
|
+
optionCopy = (isObject ? { ...o } : o) as OptionType
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
return onChange(
|
|
167
|
+
{ target: { name: name, value: value }},
|
|
168
|
+
optionCopy
|
|
169
|
+
)
|
|
148
170
|
}}
|
|
149
171
|
options={options}
|
|
150
172
|
value={value}
|
|
173
|
+
// @ts-expect-error
|
|
151
174
|
classNames={useMemo(() => ({
|
|
152
175
|
// Input container
|
|
153
176
|
control: (p) => getSelectClassName({ name: 'control', hasError: !!error, ...p, classNames: classNames }),
|
|
@@ -263,7 +286,7 @@ function SingleValue({ children, ...props }: SingleValueProps) {
|
|
|
263
286
|
}
|
|
264
287
|
|
|
265
288
|
function Option(props: OptionProps) {
|
|
266
|
-
const data = props.data as
|
|
289
|
+
const data = props.data as SelectOption
|
|
267
290
|
// const _nitro = (props.selectProps as { _nitro?: { mode?: string } })?._nitro
|
|
268
291
|
// @ts-expect-error
|
|
269
292
|
const flagClassName = props.getClassNames('flag')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nitro-web",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.202",
|
|
4
4
|
"repository": "github:boycce/nitro-web",
|
|
5
5
|
"homepage": "https://boycce.github.io/nitro-web/",
|
|
6
6
|
"description": "Nitro is a battle-tested, modular base project to turbocharge your projects, styled using Tailwind 🚀",
|
|
@@ -13,24 +13,21 @@ declare namespace _default {
|
|
|
13
13
|
type: string;
|
|
14
14
|
index: string;
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
number: {
|
|
17
17
|
type: string;
|
|
18
18
|
};
|
|
19
|
-
|
|
19
|
+
postcode: {
|
|
20
20
|
type: string;
|
|
21
21
|
};
|
|
22
|
-
|
|
22
|
+
region: {
|
|
23
23
|
type: string;
|
|
24
24
|
};
|
|
25
|
-
|
|
25
|
+
street: {
|
|
26
26
|
type: string;
|
|
27
27
|
};
|
|
28
28
|
suburb: {
|
|
29
29
|
type: string;
|
|
30
30
|
};
|
|
31
|
-
unit: {
|
|
32
|
-
type: string;
|
|
33
|
-
};
|
|
34
31
|
area: {
|
|
35
32
|
bottomLeft: {
|
|
36
33
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.d.ts","sourceRoot":"","sources":["../../../server/models/company.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"company.d.ts","sourceRoot":"","sources":["../../../server/models/company.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+CgB,sCAEX;QACc;;;;;;;;;;;;;;;;;;;;;;;YAyBd"}
|
package/types/util.d.ts
CHANGED
|
@@ -13,24 +13,21 @@ export function addressSchema(): {
|
|
|
13
13
|
type: string;
|
|
14
14
|
index: string;
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
number: {
|
|
17
17
|
type: string;
|
|
18
18
|
};
|
|
19
|
-
|
|
19
|
+
postcode: {
|
|
20
20
|
type: string;
|
|
21
21
|
};
|
|
22
|
-
|
|
22
|
+
region: {
|
|
23
23
|
type: string;
|
|
24
24
|
};
|
|
25
|
-
|
|
25
|
+
street: {
|
|
26
26
|
type: string;
|
|
27
27
|
};
|
|
28
28
|
suburb: {
|
|
29
29
|
type: string;
|
|
30
30
|
};
|
|
31
|
-
unit: {
|
|
32
|
-
type: string;
|
|
33
|
-
};
|
|
34
31
|
area: {
|
|
35
32
|
bottomLeft: {
|
|
36
33
|
type: string;
|
package/types/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../util.js"],"names":[],"mappings":"AAoDA;;GAEG;AACH
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../util.js"],"names":[],"mappings":"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"}
|
package/util.js
CHANGED
|
@@ -55,21 +55,25 @@ let axiosInstance
|
|
|
55
55
|
*/
|
|
56
56
|
export function addressSchema () {
|
|
57
57
|
// Google autocomplete should return the following object
|
|
58
|
+
//
|
|
58
59
|
/** @param {any} array @param {object} schema @returns {[]} */
|
|
59
60
|
function arrayWithSchema (array, schema) {
|
|
60
61
|
array.schema = schema
|
|
61
62
|
return array
|
|
62
63
|
}
|
|
63
64
|
return {
|
|
65
|
+
// removed: line1 (unit/number street)
|
|
66
|
+
// removed: line2 (suburb, postcode)
|
|
67
|
+
// removed: unit
|
|
68
|
+
// added: region
|
|
64
69
|
city: { type: 'string' },
|
|
65
70
|
country: { type: 'string', default: 'New Zealand' },
|
|
66
71
|
full: { type: 'string', index: 'text' },
|
|
67
|
-
line1: { type: 'string' },
|
|
68
|
-
line2: { type: 'string' },
|
|
69
72
|
number: { type: 'string' },
|
|
70
73
|
postcode: { type: 'string' },
|
|
74
|
+
region: { type: 'string' },
|
|
75
|
+
street: { type: 'string' },
|
|
71
76
|
suburb: { type: 'string' },
|
|
72
|
-
unit: { type: 'string' },
|
|
73
77
|
// Google places viewport
|
|
74
78
|
area: {
|
|
75
79
|
bottomLeft: [{ type: 'number' }], // lng, lat
|
|
@@ -213,11 +217,11 @@ export function currency (cents, options) {
|
|
|
213
217
|
|
|
214
218
|
if (currency && !currencyObject) {
|
|
215
219
|
throw new Error(`Currency ${currency} not found in default currencies, please pass custom format options`)
|
|
216
|
-
} else if (!currency &&
|
|
217
|
-
throw new Error('currency:
|
|
220
|
+
} else if (!currency && typeof decimals === 'undefined') {
|
|
221
|
+
throw new Error('currency: When passing custom options, you must include a `currency` or `decimals` option')
|
|
218
222
|
}
|
|
219
223
|
|
|
220
|
-
const _prefix = prefix ?? currencyObject?.symbol
|
|
224
|
+
const _prefix = prefix ?? typeof suffix === 'undefined' ? currencyObject?.symbol : ''
|
|
221
225
|
const _decimals = decimals ?? currencyObject?.digits
|
|
222
226
|
let displayNum = Number(cents / Math.pow(10, _decimals))
|
|
223
227
|
if (!isNumber(displayNum)) displayNum = 0
|
|
@@ -912,6 +916,7 @@ export function getDirectories (path, pwd) {
|
|
|
912
916
|
distDir: path.join(_pwd, process.env.distDir || ((process.env.clientDir || 'client') + '/dist'), '/'),
|
|
913
917
|
emailTemplateDir: path.join(_pwd, process.env.emailTemplateDir || 'server/email', '/'),
|
|
914
918
|
imgsDir: path.join(_pwd, (process.env.clientDir || 'client'), 'imgs', '/'),
|
|
919
|
+
fontsDir: path.join(_pwd, (process.env.clientDir || 'client'), 'fonts', '/'),
|
|
915
920
|
tmpDir: path.join(_pwd, process.env.tmpDir || 'tmp', '/'),
|
|
916
921
|
}
|
|
917
922
|
}
|
|
@@ -948,6 +953,7 @@ export function getResponseErrors (errs) {
|
|
|
948
953
|
|
|
949
954
|
// new Error
|
|
950
955
|
} else if (errs instanceof Error || errs === null) {
|
|
956
|
+
console.error('getResponseErrors(): ', errs)
|
|
951
957
|
return [{ title: 'error', detail: 'Oops there was an error' }]
|
|
952
958
|
|
|
953
959
|
// Mongo errors (when called on the backend)
|