shinkansen-pinion 1.0.63 → 1.0.65

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shinkansen-pinion",
3
- "version": "1.0.63",
3
+ "version": "1.0.65",
4
4
  "description": "Shinkansen Pinion",
5
5
  "keywords": [
6
6
  "Shinkansen",
@@ -32,7 +32,7 @@
32
32
  "pregulp": "npm run nvm",
33
33
  "gulp": "gulp --color",
34
34
  "prelint": "npm run nvm",
35
- "lint": "eslint . .storybook --ext .mjs --ext .cjs",
35
+ "lint": "eslint . .storybook --ext .mjs --ext .cjs --ext .jsx --ext .mts --ext .cts",
36
36
  "lint:fix": "npm run lint -- --fix",
37
37
  "pretest": "npm run nvm",
38
38
  "test": "cross-env NODE_ENV=test jest --collect-coverage false --verbose --run-in-band",
@@ -53,13 +53,16 @@
53
53
  "@babel/preset-env": "^7.21.5",
54
54
  "@babel/preset-react": "^7.18.6",
55
55
  "@babel/register": "^7.21.0",
56
- "@modernpoacher/design-system": "1.0.6",
57
- "@modernpoacher/hooks": "^1.0.396",
56
+ "@modernpoacher/design-system": "1.0.7",
57
+ "@modernpoacher/hooks": "^1.0.397",
58
58
  "@sequencemedia/gulp": "^1.0.7",
59
59
  "@storybook/addon-actions": "6.5.12",
60
60
  "@storybook/addon-essentials": "6.5.12",
61
61
  "@storybook/addon-links": "6.5.12",
62
62
  "@storybook/react": "6.5.12",
63
+ "@types/react": "^18.2.6",
64
+ "@typescript-eslint/eslint-plugin": "^5.59.5",
65
+ "@typescript-eslint/parser": "^5.59.5",
63
66
  "autoprefixer": "^10.4.14",
64
67
  "babel-plugin-module-resolver": "^5.0.0",
65
68
  "core-js": "^3.30.2",
@@ -70,6 +73,7 @@
70
73
  "enzyme-adapter-react-16": "^1.15.7",
71
74
  "eslint": "^8.40.0",
72
75
  "eslint-config-standard": "^17.0.0",
76
+ "eslint-config-standard-with-typescript": "^34.0.1",
73
77
  "eslint-import-resolver-babel-module": "^5.3.2",
74
78
  "eslint-plugin-import": "^2.27.5",
75
79
  "eslint-plugin-node": "^11.1.0",
@@ -99,10 +103,10 @@
99
103
  "regenerator-runtime": "^0.13.11",
100
104
  "rimraf": "^5.0.0",
101
105
  "sass": "^1.62.1",
102
- "shinkansen-cogs": "1.5.63",
103
- "shinkansen-rails": "1.0.32",
104
- "shinkansen-signals": "1.1.15",
105
- "shinkansen-sprockets": "1.0.61",
106
+ "shinkansen-cogs": "1.5.65",
107
+ "shinkansen-rails": "1.0.34",
108
+ "shinkansen-signals": "1.1.17",
109
+ "shinkansen-sprockets": "1.0.63",
106
110
  "vinyl-paths": "^5.0.0"
107
111
  },
108
112
  "imports": {
@@ -4,4 +4,4 @@ const log = debug('shinkansen-pinion/components/common')
4
4
 
5
5
  log('`shinkansen` is awake')
6
6
 
7
- export * as textContent from './text-content/index.cjs'
7
+ export * as TextContent from './text-content/index.cjs'
@@ -1,6 +1,16 @@
1
+ /**
2
+ * TextContent component
3
+ *
4
+ * @typedef {import('shinkansen-pinion/components/common/text-content').TextContentProps} TextContentProps
5
+ */
6
+
1
7
  import React from 'react'
2
8
  import PropTypes from 'prop-types'
3
9
 
10
+ /**
11
+ * @param {TextContentProps}
12
+ * @returns {React.JSX.Element}
13
+ */
4
14
  const TextContent = ({ textContent }) => (
5
15
  <span className='text-content'>
6
16
  {textContent}
@@ -1,3 +1,13 @@
1
+ /**
2
+ * Pinion component
3
+ *
4
+ * @typedef {import('shinkansen-pinion/pinion').PinionType} PinionType
5
+ * @typedef {import('shinkansen-pinion/pinion').ParamsType} ParamsType
6
+ * @typedef {import('shinkansen-pinion/pinion').GroupProps} GroupProps
7
+ * @typedef {import('shinkansen-pinion/pinion').FieldProps} FieldProps
8
+ * @typedef {import('shinkansen-pinion/pinion').PinionProps} PinionProps
9
+ */
10
+
1
11
  import React from 'react'
2
12
  import PropTypes from 'prop-types'
3
13
  import debug from 'debug'
@@ -33,7 +43,13 @@ const getKey = (value, index) => `${value}-${index}`
33
43
  const getDefaultValue = (field) => Reflect.has(field, 'defaultValue') ? Reflect.get(field, 'defaultValue') : ''
34
44
  const getValue = (field) => Reflect.has(field, 'value') ? Reflect.get(field, 'value') : getDefaultValue(field)
35
45
 
36
- /* eslint-disable-next-line react/prop-types */
46
+ /**
47
+ * @param {PinionTypes.MetaType}
48
+ * @param {PinionTypes.ElementsEnumType}
49
+ * @param {ParamsType}
50
+ * @param {PinionTypes.OnChangeType} onChange
51
+ * @returns {React.JSX.Element}
52
+ */
37
53
  export function renderToRadiosForEnum ({ items = [], selectedItems = [], uri }, { title, description, enum: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
38
54
  log('renderToRadiosForEnum')
39
55
 
@@ -62,7 +78,13 @@ export function renderToRadiosForEnum ({ items = [], selectedItems = [], uri },
62
78
  )
63
79
  }
64
80
 
65
- /* eslint-disable-next-line react/prop-types */
81
+ /**
82
+ * @param {PinionTypes.MetaType}
83
+ * @param {PinionTypes.ElementsAnyOfType}
84
+ * @param {ParamsType}
85
+ * @param {PinionTypes.OnChangeType} onChange
86
+ * @returns {React.JSX.Element}
87
+ */
66
88
  export function renderToRadiosForAnyOf ({ items = [], selectedItems = [], uri }, { title, description, anyOf: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
67
89
  log('renderToRadiosForAnyOf')
68
90
 
@@ -88,7 +110,13 @@ export function renderToRadiosForAnyOf ({ items = [], selectedItems = [], uri },
88
110
  )
89
111
  }
90
112
 
91
- /* eslint-disable-next-line react/prop-types */
113
+ /**
114
+ * @param {PinionTypes.MetaType}
115
+ * @param {PinionTypes.ElementsOneOfType}
116
+ * @param {ParamsType}
117
+ * @param {PinionTypes.OnChangeType} onChange
118
+ * @returns {React.JSX.Element}
119
+ */
92
120
  export function renderToRadiosForOneOf ({ items = [], selectedItems = [], uri }, { title, description, oneOf: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
93
121
  log('renderToRadiosForOneOf')
94
122
 
@@ -114,7 +142,13 @@ export function renderToRadiosForOneOf ({ items = [], selectedItems = [], uri },
114
142
  )
115
143
  }
116
144
 
117
- /* eslint-disable-next-line react/prop-types */
145
+ /**
146
+ * @param {PinionTypes.MetaType}
147
+ * @param {PinionTypes.ElementsEnumType}
148
+ * @param {ParamsType}
149
+ * @param {PinionTypes.OnChangeType} onChange
150
+ * @returns {React.JSX.Element}
151
+ */
118
152
  export function renderToSelectForEnum ({ items = [], selectedItems = [], uri }, { title, description, enum: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
119
153
  log('renderToSelectForEnum')
120
154
 
@@ -138,7 +172,13 @@ export function renderToSelectForEnum ({ items = [], selectedItems = [], uri },
138
172
  )
139
173
  }
140
174
 
141
- /* eslint-disable-next-line react/prop-types */
175
+ /**
176
+ * @param {PinionTypes.MetaType}
177
+ * @param {PinionTypes.ElementsAnyOfType}
178
+ * @param {ParamsType}
179
+ * @param {PinionTypes.OnChangeType} onChange
180
+ * @returns {React.JSX.Element}
181
+ */
142
182
  export function renderToSelectForAnyOf ({ items = [], selectedItems = [], uri }, { title, description, anyOf: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
143
183
  log('renderToSelectForAnyOf')
144
184
 
@@ -162,7 +202,13 @@ export function renderToSelectForAnyOf ({ items = [], selectedItems = [], uri },
162
202
  )
163
203
  }
164
204
 
165
- /* eslint-disable-next-line react/prop-types */
205
+ /**
206
+ * @param {PinionTypes.MetaType}
207
+ * @param {PinionTypes.ElementsOneOfType}
208
+ * @param {ParamsType}
209
+ * @param {PinionTypes.OnChangeType} onChange
210
+ * @returns {React.JSX.Element}
211
+ */
166
212
  export function renderToSelectForOneOf ({ items = [], selectedItems = [], uri }, { title, description, oneOf: { id, name = id, isRequired = false } }, { components, errors }, onChange) {
167
213
  log('renderToSelectForOneOf')
168
214
 
@@ -186,6 +232,13 @@ export function renderToSelectForOneOf ({ items = [], selectedItems = [], uri },
186
232
  )
187
233
  }
188
234
 
235
+ /**
236
+ * @param {PinionTypes.MetaType} meta
237
+ * @param {PinionTypes.ElementsFieldType} elements
238
+ * @param {ParamsType} params
239
+ * @param {PinionTypes.OnChangeType} onChange
240
+ * @returns {React.JSX.Element}
241
+ */
189
242
  export function renderToField (meta, elements, params, onChange) {
190
243
  log('renderToField')
191
244
 
@@ -220,14 +273,18 @@ export function renderToField (meta, elements, params, onChange) {
220
273
  )
221
274
  }
222
275
 
223
- export function GroupComponent ({ component, meta, elements, params, onChange }) {
276
+ export function ComponentGroup ({ component, meta, elements, params, onChange }) {
224
277
 
225
278
  }
226
279
 
227
- export function FieldComponent ({ component, meta, elements, params, onChange }) {
280
+ export function ComponentField ({ component, meta, elements, params, onChange }) {
228
281
 
229
282
  }
230
283
 
284
+ /**
285
+ * @param {GroupProps}
286
+ * @returns {React.JSX.Element}
287
+ */
231
288
  export function Group ({ meta, elements, params, onChange }) {
232
289
  log('Group')
233
290
 
@@ -281,6 +338,10 @@ Group.defaultProps = {
281
338
  onChange
282
339
  }
283
340
 
341
+ /**
342
+ * @param {FieldProps}
343
+ * @returns {React.JSX.Element}
344
+ */
284
345
  export function Field ({ meta, elements, params, onChange }) {
285
346
  log('Field')
286
347
 
@@ -318,6 +379,12 @@ Field.defaultProps = {
318
379
  onChange
319
380
  }
320
381
 
382
+ /**
383
+ * @param {PinionTypes.PinionType}
384
+ * @param {ParamsType} params
385
+ * @param {PinionTypes.OnChangeType} onChange
386
+ * @returns {React.JSX.Element}
387
+ */
321
388
  export function renderGroup ({ meta, elements }, params, onChange) { // eslint-disable-line
322
389
  log('renderGroup')
323
390
 
@@ -325,7 +392,7 @@ export function renderGroup ({ meta, elements }, params, onChange) { // eslint-d
325
392
  const component = getComponent(meta)
326
393
 
327
394
  return (
328
- <GroupComponent
395
+ <ComponentGroup
329
396
  component={component}
330
397
  meta={meta}
331
398
  elements={elements}
@@ -345,6 +412,12 @@ export function renderGroup ({ meta, elements }, params, onChange) { // eslint-d
345
412
  )
346
413
  }
347
414
 
415
+ /**
416
+ * @param {PinionType}
417
+ * @param {ParamsType} params
418
+ * @param {PinionTypes.OnChangeType} onChange
419
+ * @returns {React.JSX.Element}
420
+ */
348
421
  export function renderField ({ meta, elements }, params, onChange) { // eslint-disable-line
349
422
  log('renderField')
350
423
 
@@ -352,7 +425,7 @@ export function renderField ({ meta, elements }, params, onChange) { // eslint-d
352
425
  const component = getComponent(meta)
353
426
 
354
427
  return (
355
- <FieldComponent
428
+ <ComponentField
356
429
  component={component}
357
430
  meta={meta}
358
431
  elements={elements}
@@ -372,6 +445,10 @@ export function renderField ({ meta, elements }, params, onChange) { // eslint-d
372
445
  )
373
446
  }
374
447
 
448
+ /**
449
+ * @param {PinionProps}
450
+ * @returns {React.JSX.Element}
451
+ */
375
452
  export default function Pinion ({ pinion, params, onChange }) {
376
453
  log('Pinion')
377
454