zds-pickers 4.0.5 → 4.0.7

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.
Files changed (76) hide show
  1. package/.editorconfig +19 -0
  2. package/.github/workflows/codeql-analysis.yml +67 -0
  3. package/.nvmrc +1 -0
  4. package/.prettierignore +0 -0
  5. package/.prettierrc +13 -0
  6. package/.storybook/main.ts +42 -0
  7. package/.storybook/manager.ts +12 -0
  8. package/.storybook/preview.tsx +26 -0
  9. package/.vscode/extensions.json +32 -0
  10. package/.vscode/javascript.code-snippets +229 -0
  11. package/.vscode/settings.json +358 -0
  12. package/biome.jsonc +158 -0
  13. package/dist/index.cjs.js +13 -12
  14. package/dist/index.cjs.js.map +1 -0
  15. package/dist/index.es.js +638 -644
  16. package/dist/index.es.js.map +1 -0
  17. package/dist/types/index.d.ts +34 -2
  18. package/dist/types/pickers/CCPicker.d.ts +2 -1
  19. package/dist/types/pickers/ChannelMappingPicker.d.ts +2 -1
  20. package/dist/types/pickers/ChannelPicker.d.ts +5 -3
  21. package/dist/types/pickers/LatchPicker.d.ts +5 -3
  22. package/dist/types/pickers/MappingPicker.d.ts +2 -1
  23. package/dist/types/pickers/NotePicker.d.ts +2 -1
  24. package/dist/types/pickers/PolarityPicker.d.ts +6 -4
  25. package/dist/types/pickers/ResponseCurve.d.ts +14 -5
  26. package/dist/types/pickers/ResponseCurvePicker.d.ts +6 -4
  27. package/dist/types/pickers/StatusPicker.d.ts +2 -1
  28. package/dist/types/pickers/ValuePicker.d.ts +2 -1
  29. package/lib/@types/nebiru-react-rotary-knob.d.ts +20 -0
  30. package/lib/@types/react-svgmt.d.ts +74 -0
  31. package/lib/@types/zds-mappings.d.ts +55 -0
  32. package/lib/@types/zds-react-piano.d.ts +17 -0
  33. package/lib/hooks/useComponentSize.ts +52 -0
  34. package/lib/hooks/useStateWithDynamicDefault.ts +13 -0
  35. package/lib/index.ts +51 -0
  36. package/lib/midi/ccValues.ts +139 -0
  37. package/lib/midi/export.ts +54 -0
  38. package/lib/other/DefaultTooltip.ts +14 -0
  39. package/lib/other/OctavePlayer.tsx +141 -0
  40. package/lib/other/SVGText.tsx +221 -0
  41. package/lib/other/SoundFontProvider.tsx +130 -0
  42. package/lib/pickers/CCPicker.tsx +28 -0
  43. package/lib/pickers/ChannelMappingPicker.tsx +135 -0
  44. package/lib/pickers/ChannelPicker.tsx +76 -0
  45. package/lib/pickers/Knob.tsx +93 -0
  46. package/lib/pickers/KnobPicker.tsx +93 -0
  47. package/lib/pickers/LatchPicker.tsx +33 -0
  48. package/lib/pickers/MappingPicker.tsx +68 -0
  49. package/lib/pickers/NotePicker.tsx +95 -0
  50. package/lib/pickers/PianoPicker.tsx +77 -0
  51. package/lib/pickers/PolarityPicker.tsx +39 -0
  52. package/lib/pickers/ResponseCurve.tsx +304 -0
  53. package/lib/pickers/ResponseCurvePicker.tsx +74 -0
  54. package/lib/pickers/Select.tsx +248 -0
  55. package/lib/pickers/StatusPicker.tsx +28 -0
  56. package/lib/pickers/ValuePicker.tsx +67 -0
  57. package/lib/pickers/knobSkin10.tsx +94 -0
  58. package/lib/rotaryKnob/InternalInput.tsx +43 -0
  59. package/lib/rotaryKnob/Types.ts +6 -0
  60. package/lib/rotaryKnob/helpers/DrawCircle.tsx +41 -0
  61. package/lib/rotaryKnob/helpers/DrawLine.tsx +32 -0
  62. package/lib/rotaryKnob/helpers/HelpersOverlay.tsx +43 -0
  63. package/lib/rotaryKnob/helpers/KnobVisualHelpers.tsx +138 -0
  64. package/lib/rotaryKnob/index.tsx +417 -0
  65. package/lib/rotaryKnob/knobdefaultskin.ts +56 -0
  66. package/lib/rotaryKnob/utils.ts +112 -0
  67. package/lib/temp/acoustic_grand_piano-mp3.js +94 -0
  68. package/lib/utils.ts +41 -0
  69. package/package.json +2 -6
  70. package/stories/assets/sampleStyles.css +349 -0
  71. package/stories/assets/utils.js +7 -0
  72. package/stories/picker.stories.tsx +313 -0
  73. package/tsconfig.json +34 -0
  74. package/vite.config.ts +48 -0
  75. package/dist/index.d.ts +0 -244
  76. package/dist/types/main.d.ts +0 -19
@@ -0,0 +1,358 @@
1
+ {
2
+ "[json]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
4
+ },
5
+ "cSpell.words": [
6
+ "accentcolor",
7
+ "acumin",
8
+ "alertdialog",
9
+ "annotatable",
10
+ "antialiased",
11
+ "apos",
12
+ "appbar",
13
+ "arity",
14
+ "assetcode",
15
+ "autobind",
16
+ "autoinstall",
17
+ "autosize",
18
+ "avclub",
19
+ "bgcolor",
20
+ "biblio",
21
+ "bitbucket",
22
+ "blastpoll",
23
+ "Bookhead",
24
+ "borderless",
25
+ "browserslist",
26
+ "builtins",
27
+ "callout",
28
+ "callouts",
29
+ "camelcase",
30
+ "caniuse",
31
+ "cata",
32
+ "classnames",
33
+ "clearfix",
34
+ "colspan",
35
+ "columnheader",
36
+ "combinator",
37
+ "combobox",
38
+ "Confirmer",
39
+ "Consolas",
40
+ "consts",
41
+ "contenteditable",
42
+ "contenthash",
43
+ "contentid",
44
+ "contentsubtype",
45
+ "contenttype",
46
+ "contrib",
47
+ "controltype",
48
+ "corejs",
49
+ "crossfades",
50
+ "crosshair",
51
+ "cssnext",
52
+ "dash",
53
+ "deauthorize",
54
+ "debounced",
55
+ "decycle",
56
+ "dedupe",
57
+ "deduped",
58
+ "deepmerge",
59
+ "deletable",
60
+ "desaturate",
61
+ "describedby",
62
+ "devs",
63
+ "devtool",
64
+ "devtools",
65
+ "doubleclick",
66
+ "dpcm",
67
+ "draftjs",
68
+ "dragpreview",
69
+ "Dropdown",
70
+ "Droppable",
71
+ "dualheadline",
72
+ "ELAR",
73
+ "enlargen",
74
+ "extq",
75
+ "Falsy",
76
+ "favicons",
77
+ "filesize",
78
+ "flowplayer",
79
+ "flowtype",
80
+ "fname",
81
+ "Fontello",
82
+ "formik",
83
+ "fullchain",
84
+ "Fullscreen",
85
+ "gdocs",
86
+ "gradebook",
87
+ "grammarly",
88
+ "grayscale",
89
+ "greyscale",
90
+ "hacky",
91
+ "Hardcode",
92
+ "harker",
93
+ "haspopup",
94
+ "healthcheck",
95
+ "hellip",
96
+ "Helvetica",
97
+ "hideothers",
98
+ "highjpg",
99
+ "Hotspot",
100
+ "hsshc",
101
+ "htaccess",
102
+ "Idxs",
103
+ "immer",
104
+ "indentfirstline",
105
+ "interactives",
106
+ "isect",
107
+ "keyframes",
108
+ "labelledby",
109
+ "lcov",
110
+ "lectura",
111
+ "lexile",
112
+ "lexiles",
113
+ "likei",
114
+ "lname",
115
+ "loadouts",
116
+ "localstorage",
117
+ "macos",
118
+ "mailto",
119
+ "managedtabmode",
120
+ "markdownlint",
121
+ "mediaquery",
122
+ "memoized",
123
+ "Menlo",
124
+ "middlewares",
125
+ "minimap",
126
+ "mixins",
127
+ "mkdocs",
128
+ "mockdate",
129
+ "monospace",
130
+ "mpegurl",
131
+ "multiline",
132
+ "multitool",
133
+ "nassignments",
134
+ "nbinder",
135
+ "nblast",
136
+ "nbsp",
137
+ "ndefine",
138
+ "Newbery",
139
+ "nintro",
140
+ "nlibrary",
141
+ "nmodel",
142
+ "nonclassified",
143
+ "noninteractive",
144
+ "noopener",
145
+ "noreferrer",
146
+ "notistack",
147
+ "novalidate",
148
+ "noverview",
149
+ "nowrap",
150
+ "npractice",
151
+ "nread",
152
+ "nreview",
153
+ "nsynctv",
154
+ "nthink",
155
+ "nusinglanguage",
156
+ "nvocab",
157
+ "nwrite",
158
+ "nyourturn",
159
+ "objs",
160
+ "omittable",
161
+ "Outdent",
162
+ "pageset",
163
+ "paren",
164
+ "partch",
165
+ "pasteandmatchstyle",
166
+ "piechart",
167
+ "pinnable",
168
+ "pixi",
169
+ "playbackrates",
170
+ "plusplus",
171
+ "pmmmwh",
172
+ "polyfill",
173
+ "Portalling",
174
+ "preflight",
175
+ "Prefs",
176
+ "preinstall",
177
+ "preloaded",
178
+ "println",
179
+ "privkey",
180
+ "Quik",
181
+ "quikpoll",
182
+ "rainforest",
183
+ "rainforests",
184
+ "rangeslider",
185
+ "recurse",
186
+ "redbox",
187
+ "rehooks",
188
+ "renderprops",
189
+ "rerender",
190
+ "reselect",
191
+ "reselector",
192
+ "resetzoom",
193
+ "reviewee",
194
+ "rfdc",
195
+ "Roboto",
196
+ "rotater",
197
+ "rowgroup",
198
+ "rowheader",
199
+ "rowspan",
200
+ "sbblast",
201
+ "sbpoll",
202
+ "sbvocab",
203
+ "scorable",
204
+ "scrollable",
205
+ "scrollbar",
206
+ "scrollbars",
207
+ "Scroller",
208
+ "seekbar",
209
+ "selectable",
210
+ "selectall",
211
+ "semibold",
212
+ "serializer",
213
+ "Serializers",
214
+ "shallowequal",
215
+ "showdate",
216
+ "sidebarstate",
217
+ "signin",
218
+ "skillstv",
219
+ "smtp",
220
+ "Snackbar",
221
+ "soundfont",
222
+ "spacebar",
223
+ "spaghettification",
224
+ "spinbutton",
225
+ "squeries",
226
+ "Squery",
227
+ "sstls",
228
+ "storysource",
229
+ "strikethrough",
230
+ "studysync",
231
+ "subappbar",
232
+ "submenu",
233
+ "subnav",
234
+ "substate",
235
+ "Substates",
236
+ "subvariant",
237
+ "superstatic",
238
+ "svgmt",
239
+ "svgr",
240
+ "svgsprites",
241
+ "swcrc",
242
+ "swipeable",
243
+ "swiper",
244
+ "SYNCBLAST",
245
+ "syncblasts",
246
+ "Synctv",
247
+ "tablist",
248
+ "tabpanel",
249
+ "Tahoma",
250
+ "tanuki",
251
+ "tawk",
252
+ "testid",
253
+ "textbox",
254
+ "themr",
255
+ "thunked",
256
+ "togglefullscreen",
257
+ "toolbutton",
258
+ "Tooltipped",
259
+ "tooltips",
260
+ "Truthy",
261
+ "tunajs",
262
+ "Turnitin",
263
+ "unhide",
264
+ "Uniqs",
265
+ "unmock",
266
+ "Unmount",
267
+ "unmounting",
268
+ "Unsectioned",
269
+ "Unstyled",
270
+ "Validators",
271
+ "valuenow",
272
+ "valuetext",
273
+ "videojs",
274
+ "visualiser",
275
+ "voiceovers",
276
+ "WCAG",
277
+ "webfont",
278
+ "webfontloader",
279
+ "webvtt",
280
+ "Wireframe",
281
+ "wordcloud",
282
+ "xlarge",
283
+ "xlink",
284
+ "xsmall",
285
+ "xxlarge",
286
+ "xxsmall",
287
+ "xxxlarge",
288
+ "zoomin",
289
+ "zoomout",
290
+ "Zoomy"
291
+ ],
292
+ "editor.autoClosingBrackets": "beforeWhitespace",
293
+ "editor.autoClosingQuotes": "beforeWhitespace",
294
+ "editor.autoIndent": "full",
295
+ "editor.codeActionsOnSave": {
296
+ "source.fixAll.eslint": "explicit"
297
+ },
298
+ "editor.detectIndentation": false,
299
+ "editor.formatOnPaste": false,
300
+ "editor.formatOnType": false,
301
+ "editor.formatOnSave": true,
302
+ "editor.formatOnSaveMode": "modifications",
303
+ "editor.tabCompletion": "on",
304
+ "emmet.excludeLanguages": ["markdown", "javascript"],
305
+ "emmet.includeLanguages": {
306
+ "javascript": "javascriptreact",
307
+ "markdown": "html"
308
+ },
309
+ "eslint.alwaysShowStatus": true,
310
+ "eslint.packageManager": "yarn",
311
+ "eslint.workingDirectories": [
312
+ {
313
+ "changeProcessCWD": true,
314
+ "directory": "./"
315
+ }
316
+ ],
317
+ "eslint.options": {
318
+ "extensions": [".js", ".jsx", ".md", ".mdx", ".ts", ".tsx"]
319
+ },
320
+ "eslint.validate": [
321
+ "javascript",
322
+ "javascriptreact",
323
+ "markdown",
324
+ "mdx",
325
+ "typescript",
326
+ "typescriptreact"
327
+ ],
328
+ "files.exclude": {
329
+ "**/*.flow": true,
330
+ "**/.DS_Store": true,
331
+ "**/.git": true,
332
+ "**/.hg": true,
333
+ "**/.svn": true,
334
+ "**/CVS": true,
335
+ ".cache": true,
336
+ ".vscode": true,
337
+ "coverage": true,
338
+ "dist": true,
339
+ "flow-coverage": true,
340
+ "node_modules": true
341
+ },
342
+ "files.insertFinalNewline": true,
343
+ "files.trimTrailingWhitespace": true,
344
+ "html.format.endWithNewline": true,
345
+ "javascript.validate.enable": false,
346
+ "js/ts.implicitProjectConfig.checkJs": false,
347
+ "search.exclude": {
348
+ "**/bower_components": true,
349
+ "**/node_modules": true,
350
+ "build": true,
351
+ "coverage": true,
352
+ "dist": true,
353
+ "flow-coverage": true,
354
+ "native/chrome": true
355
+ },
356
+ "terminal.integrated.shellArgs.osx": [],
357
+ "window.title": "${rootName} ${activeEditorMedium} ${dirty}"
358
+ }
package/biome.jsonc ADDED
@@ -0,0 +1,158 @@
1
+ {
2
+ "$schema": "https://biomejs.dev/schemas/1.9.3/schema.json",
3
+ "vcs": {
4
+ "enabled": true,
5
+ "clientKind": "git",
6
+ "useIgnoreFile": false
7
+ },
8
+ "files": {
9
+ "ignoreUnknown": false,
10
+ "include": [
11
+ //
12
+ "**/*.[tj]s*"
13
+ ],
14
+ "ignore": [
15
+ //
16
+ "**/dist",
17
+ "**/playwright-report",
18
+ "**/coverage",
19
+ "**/e2e-results",
20
+ "**/e2e/__config__/sessions",
21
+ "**/.storybook/site",
22
+ "**/__mocks__",
23
+ "**/__config__",
24
+ "*.spec.*",
25
+ "acoustic_grand_piano-mp3.js"
26
+ ]
27
+ },
28
+ "formatter": {
29
+ "enabled": true,
30
+
31
+ "attributePosition": "multiline",
32
+ "formatWithErrors": true,
33
+ "ignore": [],
34
+ "indentStyle": "space",
35
+ "indentWidth": 2,
36
+ "lineWidth": 80,
37
+ "useEditorconfig": true
38
+ },
39
+ "organizeImports": {
40
+ "enabled": true,
41
+ "ignore": []
42
+ },
43
+ "linter": {
44
+ "enabled": true,
45
+ "ignore": [],
46
+ "rules": {
47
+ "recommended": true,
48
+
49
+ "a11y": {
50
+ "noLabelWithoutControl": "off",
51
+ "noSvgWithoutTitle": "off",
52
+ "useFocusableInteractive": "off",
53
+ "useKeyWithClickEvents": "off",
54
+ "useSemanticElements": "off",
55
+ "useAltText": "off"
56
+ },
57
+
58
+ "complexity": {
59
+ "noExcessiveCognitiveComplexity": {
60
+ "level": "error",
61
+ "options": {
62
+ "maxAllowedComplexity": 20
63
+ }
64
+ },
65
+ "noForEach": "error",
66
+ "noUselessStringConcat": "error",
67
+ "noUselessUndefinedInitialization": "error",
68
+ "noVoid": "error",
69
+ "useSimplifiedLogicExpression": "error"
70
+ },
71
+
72
+ "correctness": {
73
+ "noInvalidNewBuiltin": "error",
74
+ "noNewSymbol": "error",
75
+ "noNodejsModules": "off",
76
+ // fails for aliases atm
77
+ // "noUndeclaredDependencies": "error",
78
+ "noUndeclaredVariables": "error",
79
+ "noUnusedFunctionParameters": {
80
+ "level": "error",
81
+ "fix": "none"
82
+ },
83
+ "noUnusedImports": "error",
84
+ "noUnusedPrivateClassMembers": {
85
+ "level": "error",
86
+ "fix": "none"
87
+ },
88
+ "noUnusedVariables": {
89
+ "level": "error",
90
+ "fix": "none"
91
+ },
92
+ "useHookAtTopLevel": "error"
93
+ },
94
+
95
+ "performance": {
96
+ "noReExportAll": "error",
97
+ "useTopLevelRegex": "off",
98
+ "noAccumulatingSpread": "error"
99
+ },
100
+
101
+ "style": {
102
+ "noDefaultExport": "off",
103
+ "noDoneCallback": "error",
104
+ "noNegationElse": "error",
105
+ "noYodaExpression": "error",
106
+ "useBlockStatements": "off",
107
+ "useCollapsedElseIf": "error",
108
+ "useConsistentArrayType": "error",
109
+ "useConsistentBuiltinInstantiation": "error",
110
+ "useDefaultSwitchClause": "error",
111
+ "useForOf": "warn",
112
+ "useFragmentSyntax": "error",
113
+ "useShorthandArrayType": "error",
114
+ "useShorthandAssign": "error",
115
+ "useThrowNewError": "error",
116
+ "useThrowOnlyError": "error"
117
+ },
118
+
119
+ "suspicious": {
120
+ "noArrayIndexKey": "off",
121
+ "noConsole": "error",
122
+ "noEvolvingTypes": "error",
123
+ "noMisplacedAssertion": "error",
124
+ "noSkippedTests": "error",
125
+ "useAwait": "error",
126
+ "useErrorMessage": "error",
127
+ "useNumberToFixedDigitsArgument": "error"
128
+ }
129
+ }
130
+ },
131
+ "javascript": {
132
+ "formatter": {
133
+ "enabled": true,
134
+
135
+ "arrowParentheses": "asNeeded",
136
+ "attributePosition": "multiline",
137
+ "bracketSameLine": true,
138
+ "bracketSpacing": true,
139
+ "jsxQuoteStyle": "double",
140
+ "quoteProperties": "asNeeded",
141
+ "quoteStyle": "single",
142
+ "semicolons": "asNeeded",
143
+ "trailingCommas": "all"
144
+ },
145
+ "globals": ["gapi", "afterEach", "React"]
146
+ },
147
+ "json": {
148
+ "parser": {
149
+ "allowComments": true,
150
+ "allowTrailingCommas": true
151
+ },
152
+ "formatter": {
153
+ "trailingCommas": "none"
154
+ }
155
+ },
156
+
157
+ "overrides": []
158
+ }