@elliemae/ds-legacy-classnames 1.0.0-rc.1
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/cjs/aggregatedClasses.js +87 -0
- package/dist/cjs/aggregatedClasses.js.map +7 -0
- package/dist/cjs/aggregatedClasses.md +323 -0
- package/dist/cjs/classNameManager.js +84 -0
- package/dist/cjs/classNameManager.js.map +7 -0
- package/dist/cjs/converPropsToFormModifiers.js +59 -0
- package/dist/cjs/converPropsToFormModifiers.js.map +7 -0
- package/dist/cjs/convertPropToFeedBackModifiers.js +61 -0
- package/dist/cjs/convertPropToFeedBackModifiers.js.map +7 -0
- package/dist/cjs/convertPropsToColorModifiers.js +59 -0
- package/dist/cjs/convertPropsToColorModifiers.js.map +7 -0
- package/dist/cjs/convertPropsToLayoutModifiers.js +61 -0
- package/dist/cjs/convertPropsToLayoutModifiers.js.map +7 -0
- package/dist/cjs/convertPropsToSizeModifiers.js +78 -0
- package/dist/cjs/convertPropsToSizeModifiers.js.map +7 -0
- package/dist/cjs/convertPropsToTextModifiers.js +59 -0
- package/dist/cjs/convertPropsToTextModifiers.js.map +7 -0
- package/dist/cjs/dimsum.config.js +38 -0
- package/dist/cjs/dimsum.config.js.map +7 -0
- package/dist/cjs/index.js +39 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/package.json +7 -0
- package/dist/cjs/validateNativeProps.js +430 -0
- package/dist/cjs/validateNativeProps.js.map +7 -0
- package/dist/esm/aggregatedClasses.js +60 -0
- package/dist/esm/aggregatedClasses.js.map +7 -0
- package/dist/esm/aggregatedClasses.md +323 -0
- package/dist/esm/classNameManager.js +54 -0
- package/dist/esm/classNameManager.js.map +7 -0
- package/dist/esm/converPropsToFormModifiers.js +29 -0
- package/dist/esm/converPropsToFormModifiers.js.map +7 -0
- package/dist/esm/convertPropToFeedBackModifiers.js +31 -0
- package/dist/esm/convertPropToFeedBackModifiers.js.map +7 -0
- package/dist/esm/convertPropsToColorModifiers.js +29 -0
- package/dist/esm/convertPropsToColorModifiers.js.map +7 -0
- package/dist/esm/convertPropsToLayoutModifiers.js +31 -0
- package/dist/esm/convertPropsToLayoutModifiers.js.map +7 -0
- package/dist/esm/convertPropsToSizeModifiers.js +48 -0
- package/dist/esm/convertPropsToSizeModifiers.js.map +7 -0
- package/dist/esm/convertPropsToTextModifiers.js +29 -0
- package/dist/esm/convertPropsToTextModifiers.js.map +7 -0
- package/dist/esm/dimsum.config.js +8 -0
- package/dist/esm/dimsum.config.js.map +7 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +7 -0
- package/dist/esm/validateNativeProps.js +400 -0
- package/dist/esm/validateNativeProps.js.map +7 -0
- package/dist/types/aggregatedClasses.d.ts +11 -0
- package/dist/types/classNameManager.d.ts +28 -0
- package/dist/types/converPropsToFormModifiers.d.ts +15 -0
- package/dist/types/convertPropToFeedBackModifiers.d.ts +17 -0
- package/dist/types/convertPropsToColorModifiers.d.ts +11 -0
- package/dist/types/convertPropsToLayoutModifiers.d.ts +17 -0
- package/dist/types/convertPropsToSizeModifiers.d.ts +25 -0
- package/dist/types/convertPropsToTextModifiers.d.ts +15 -0
- package/dist/types/dimsum.config.d.ts +4 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/validateNativeProps.d.ts +265 -0
- package/package.json +102 -0
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var validateNativeProps_exports = {};
|
|
30
|
+
__export(validateNativeProps_exports, {
|
|
31
|
+
isAriaAttribute: () => isAriaAttribute,
|
|
32
|
+
isDataAttribute: () => isDataAttribute,
|
|
33
|
+
isNativeHTMLElement: () => isNativeHTMLElement,
|
|
34
|
+
isValidNativeAttribute: () => isValidNativeAttribute,
|
|
35
|
+
whiteList: () => whiteList
|
|
36
|
+
});
|
|
37
|
+
module.exports = __toCommonJS(validateNativeProps_exports);
|
|
38
|
+
var React = __toESM(require("react"));
|
|
39
|
+
const attributeWhiteList = {
|
|
40
|
+
accept: true,
|
|
41
|
+
acceptCharset: true,
|
|
42
|
+
accessKey: true,
|
|
43
|
+
action: true,
|
|
44
|
+
allowFullScreen: true,
|
|
45
|
+
allowTransparency: true,
|
|
46
|
+
alt: true,
|
|
47
|
+
async: true,
|
|
48
|
+
autoComplete: true,
|
|
49
|
+
autoFocus: true,
|
|
50
|
+
autoPlay: true,
|
|
51
|
+
capture: true,
|
|
52
|
+
cellPadding: true,
|
|
53
|
+
cellSpacing: true,
|
|
54
|
+
charSet: true,
|
|
55
|
+
challenge: true,
|
|
56
|
+
checked: true,
|
|
57
|
+
classID: true,
|
|
58
|
+
className: true,
|
|
59
|
+
cols: true,
|
|
60
|
+
colSpan: true,
|
|
61
|
+
content: true,
|
|
62
|
+
contentEditable: true,
|
|
63
|
+
contextMenu: true,
|
|
64
|
+
controls: true,
|
|
65
|
+
coords: true,
|
|
66
|
+
crossOrigin: true,
|
|
67
|
+
data: true,
|
|
68
|
+
dateTime: true,
|
|
69
|
+
defer: true,
|
|
70
|
+
dir: true,
|
|
71
|
+
disabled: true,
|
|
72
|
+
download: true,
|
|
73
|
+
draggable: true,
|
|
74
|
+
encType: true,
|
|
75
|
+
form: true,
|
|
76
|
+
formAction: true,
|
|
77
|
+
formEncType: true,
|
|
78
|
+
formMethod: true,
|
|
79
|
+
formNoValidate: true,
|
|
80
|
+
formTarget: true,
|
|
81
|
+
frameBorder: true,
|
|
82
|
+
headers: true,
|
|
83
|
+
height: true,
|
|
84
|
+
hidden: true,
|
|
85
|
+
high: true,
|
|
86
|
+
href: true,
|
|
87
|
+
hrefLang: true,
|
|
88
|
+
htmlFor: true,
|
|
89
|
+
httpEquiv: true,
|
|
90
|
+
icon: true,
|
|
91
|
+
id: true,
|
|
92
|
+
inputMode: true,
|
|
93
|
+
keyParams: true,
|
|
94
|
+
keyType: true,
|
|
95
|
+
label: true,
|
|
96
|
+
lang: true,
|
|
97
|
+
list: true,
|
|
98
|
+
loop: true,
|
|
99
|
+
low: true,
|
|
100
|
+
manifest: true,
|
|
101
|
+
marginHeight: true,
|
|
102
|
+
marginWidth: true,
|
|
103
|
+
max: true,
|
|
104
|
+
maxLength: true,
|
|
105
|
+
media: true,
|
|
106
|
+
mediaGroup: true,
|
|
107
|
+
method: true,
|
|
108
|
+
min: true,
|
|
109
|
+
minLength: true,
|
|
110
|
+
multiple: true,
|
|
111
|
+
muted: true,
|
|
112
|
+
name: true,
|
|
113
|
+
noValidate: true,
|
|
114
|
+
open: true,
|
|
115
|
+
optimum: true,
|
|
116
|
+
pattern: true,
|
|
117
|
+
placeholder: true,
|
|
118
|
+
poster: true,
|
|
119
|
+
preload: true,
|
|
120
|
+
radioGroup: true,
|
|
121
|
+
readOnly: true,
|
|
122
|
+
rel: true,
|
|
123
|
+
required: true,
|
|
124
|
+
role: true,
|
|
125
|
+
rows: true,
|
|
126
|
+
rowSpan: true,
|
|
127
|
+
sandbox: true,
|
|
128
|
+
scope: true,
|
|
129
|
+
scoped: true,
|
|
130
|
+
scrolling: true,
|
|
131
|
+
seamless: true,
|
|
132
|
+
selected: true,
|
|
133
|
+
shape: true,
|
|
134
|
+
size: true,
|
|
135
|
+
sizes: true,
|
|
136
|
+
span: true,
|
|
137
|
+
spellCheck: true,
|
|
138
|
+
src: true,
|
|
139
|
+
srcDoc: true,
|
|
140
|
+
srcSet: true,
|
|
141
|
+
start: true,
|
|
142
|
+
step: true,
|
|
143
|
+
style: true,
|
|
144
|
+
summary: true,
|
|
145
|
+
tabIndex: true,
|
|
146
|
+
target: true,
|
|
147
|
+
title: true,
|
|
148
|
+
type: true,
|
|
149
|
+
useMap: true,
|
|
150
|
+
value: true,
|
|
151
|
+
width: true,
|
|
152
|
+
wmode: true,
|
|
153
|
+
wrap: true
|
|
154
|
+
};
|
|
155
|
+
const svgAttributesWhiteList = {
|
|
156
|
+
clipPath: true,
|
|
157
|
+
cx: true,
|
|
158
|
+
cy: true,
|
|
159
|
+
d: true,
|
|
160
|
+
dx: true,
|
|
161
|
+
dy: true,
|
|
162
|
+
fill: true,
|
|
163
|
+
fillOpacity: true,
|
|
164
|
+
fontFamily: true,
|
|
165
|
+
fontSize: true,
|
|
166
|
+
fx: true,
|
|
167
|
+
fy: true,
|
|
168
|
+
gradientTransform: true,
|
|
169
|
+
gradientUnits: true,
|
|
170
|
+
markerEnd: true,
|
|
171
|
+
markerMid: true,
|
|
172
|
+
markerStart: true,
|
|
173
|
+
offset: true,
|
|
174
|
+
opacity: true,
|
|
175
|
+
patternContentUnits: true,
|
|
176
|
+
patternUnits: true,
|
|
177
|
+
points: true,
|
|
178
|
+
preserveAspectRatio: true,
|
|
179
|
+
r: true,
|
|
180
|
+
rx: true,
|
|
181
|
+
ry: true,
|
|
182
|
+
spreadMethod: true,
|
|
183
|
+
stopColor: true,
|
|
184
|
+
stopOpacity: true,
|
|
185
|
+
stroke: true,
|
|
186
|
+
strokeDasharray: true,
|
|
187
|
+
strokeLinecap: true,
|
|
188
|
+
strokeOpacity: true,
|
|
189
|
+
strokeWidth: true,
|
|
190
|
+
textAnchor: true,
|
|
191
|
+
transform: true,
|
|
192
|
+
version: true,
|
|
193
|
+
viewBox: true,
|
|
194
|
+
x1: true,
|
|
195
|
+
x2: true,
|
|
196
|
+
x: true,
|
|
197
|
+
xlinkActuate: true,
|
|
198
|
+
xlinkArcrole: true,
|
|
199
|
+
xlinkHref: true,
|
|
200
|
+
xlinkRole: true,
|
|
201
|
+
xlinkShow: true,
|
|
202
|
+
xlinkTitle: true,
|
|
203
|
+
xlinkType: true,
|
|
204
|
+
xmlBase: true,
|
|
205
|
+
xmlLang: true,
|
|
206
|
+
xmlSpace: true,
|
|
207
|
+
y1: true,
|
|
208
|
+
y2: true,
|
|
209
|
+
y: true
|
|
210
|
+
};
|
|
211
|
+
const otherWhiteList = {
|
|
212
|
+
autoCapitalize: true,
|
|
213
|
+
autoCorrect: true,
|
|
214
|
+
property: true,
|
|
215
|
+
itemProp: true,
|
|
216
|
+
itemScope: true,
|
|
217
|
+
itemType: true,
|
|
218
|
+
itemRef: true,
|
|
219
|
+
itemID: true,
|
|
220
|
+
unselectable: true,
|
|
221
|
+
results: true,
|
|
222
|
+
autoSave: true
|
|
223
|
+
};
|
|
224
|
+
const eventsWhiteList = {
|
|
225
|
+
onCopy: true,
|
|
226
|
+
onCut: true,
|
|
227
|
+
onPaste: true,
|
|
228
|
+
onCompositionEnd: true,
|
|
229
|
+
onCompositionStart: true,
|
|
230
|
+
onCompositionUpdate: true,
|
|
231
|
+
onKeyDown: true,
|
|
232
|
+
onKeyPress: true,
|
|
233
|
+
onKeyUp: true,
|
|
234
|
+
onFocus: true,
|
|
235
|
+
onBlur: true,
|
|
236
|
+
onChange: true,
|
|
237
|
+
onInput: true,
|
|
238
|
+
onInvalid: true,
|
|
239
|
+
onReset: true,
|
|
240
|
+
onSubmit: true,
|
|
241
|
+
onError: true,
|
|
242
|
+
onLoad: true,
|
|
243
|
+
onClick: true,
|
|
244
|
+
onContextMenu: true,
|
|
245
|
+
onDoubleClick: true,
|
|
246
|
+
onDrag: true,
|
|
247
|
+
onDragEnd: true,
|
|
248
|
+
onDragEnter: true,
|
|
249
|
+
onDragExit: true,
|
|
250
|
+
onDragLeave: true,
|
|
251
|
+
onDragOver: true,
|
|
252
|
+
onDragStart: true,
|
|
253
|
+
onDrop: true,
|
|
254
|
+
onMouseDown: true,
|
|
255
|
+
onMouseEnter: true,
|
|
256
|
+
onMouseLeave: true,
|
|
257
|
+
onMouseMove: true,
|
|
258
|
+
onMouseOut: true,
|
|
259
|
+
onMouseOver: true,
|
|
260
|
+
onMouseUp: true,
|
|
261
|
+
onPointerDown: true,
|
|
262
|
+
onPointerMove: true,
|
|
263
|
+
onPointerUp: true,
|
|
264
|
+
onPointerCancel: true,
|
|
265
|
+
onGotPointerCapture: true,
|
|
266
|
+
onLostPointerCapture: true,
|
|
267
|
+
onPointerEnter: true,
|
|
268
|
+
onPointerLeave: true,
|
|
269
|
+
onPointerOver: true,
|
|
270
|
+
onPointerOut: true,
|
|
271
|
+
onSelect: true,
|
|
272
|
+
onTouchCancel: true,
|
|
273
|
+
onTouchEnd: true,
|
|
274
|
+
onTouchMove: true,
|
|
275
|
+
onTouchStart: true,
|
|
276
|
+
onScroll: true,
|
|
277
|
+
onWheel: true,
|
|
278
|
+
onAbort: true,
|
|
279
|
+
onCanPlay: true,
|
|
280
|
+
onCanPlayThrough: true,
|
|
281
|
+
onDurationChange: true,
|
|
282
|
+
onEmptied: true,
|
|
283
|
+
onEncrypted: true,
|
|
284
|
+
onEnded: true,
|
|
285
|
+
onLoadedData: true,
|
|
286
|
+
onLoadedMetadata: true,
|
|
287
|
+
onLoadStart: true,
|
|
288
|
+
onPause: true,
|
|
289
|
+
onPlay: true,
|
|
290
|
+
onPlaying: true,
|
|
291
|
+
onProgress: true,
|
|
292
|
+
onRateChange: true,
|
|
293
|
+
onSeeked: true,
|
|
294
|
+
onSeeking: true,
|
|
295
|
+
onStalled: true,
|
|
296
|
+
onSuspend: true,
|
|
297
|
+
onTimeUpdate: true,
|
|
298
|
+
onVolumeChange: true,
|
|
299
|
+
onWaiting: true,
|
|
300
|
+
onAnimationStart: true,
|
|
301
|
+
onAnimationEnd: true,
|
|
302
|
+
onAnimationIteration: true,
|
|
303
|
+
onTransitionEnd: true,
|
|
304
|
+
onToggle: true
|
|
305
|
+
};
|
|
306
|
+
const whiteList = {
|
|
307
|
+
...attributeWhiteList,
|
|
308
|
+
...svgAttributesWhiteList,
|
|
309
|
+
...otherWhiteList,
|
|
310
|
+
...eventsWhiteList
|
|
311
|
+
};
|
|
312
|
+
const isDataAttribute = (attribute) => attribute.substring(0, 5) === "data-";
|
|
313
|
+
const isAriaAttribute = (attribute) => attribute.substring(0, 6) === "aria-";
|
|
314
|
+
const isValidNativeAttribute = (attribute) => whiteList[attribute] === true || isDataAttribute(attribute) || isAriaAttribute(attribute) || attribute.toLowerCase() === attribute;
|
|
315
|
+
const nativeHTMLElements = {
|
|
316
|
+
a: true,
|
|
317
|
+
abbr: true,
|
|
318
|
+
address: true,
|
|
319
|
+
area: true,
|
|
320
|
+
article: true,
|
|
321
|
+
aside: true,
|
|
322
|
+
audio: true,
|
|
323
|
+
b: true,
|
|
324
|
+
base: true,
|
|
325
|
+
bdi: true,
|
|
326
|
+
bdo: true,
|
|
327
|
+
big: true,
|
|
328
|
+
blockquote: true,
|
|
329
|
+
body: true,
|
|
330
|
+
br: true,
|
|
331
|
+
button: true,
|
|
332
|
+
canvas: true,
|
|
333
|
+
caption: true,
|
|
334
|
+
cite: true,
|
|
335
|
+
code: true,
|
|
336
|
+
col: true,
|
|
337
|
+
colgroup: true,
|
|
338
|
+
data: true,
|
|
339
|
+
datalist: true,
|
|
340
|
+
dd: true,
|
|
341
|
+
del: true,
|
|
342
|
+
details: true,
|
|
343
|
+
dfn: true,
|
|
344
|
+
dialog: true,
|
|
345
|
+
div: true,
|
|
346
|
+
dl: true,
|
|
347
|
+
dt: true,
|
|
348
|
+
em: true,
|
|
349
|
+
embed: true,
|
|
350
|
+
fieldset: true,
|
|
351
|
+
figcaption: true,
|
|
352
|
+
figure: true,
|
|
353
|
+
footer: true,
|
|
354
|
+
form: true,
|
|
355
|
+
h1: true,
|
|
356
|
+
h2: true,
|
|
357
|
+
h3: true,
|
|
358
|
+
h4: true,
|
|
359
|
+
h5: true,
|
|
360
|
+
h6: true,
|
|
361
|
+
head: true,
|
|
362
|
+
header: true,
|
|
363
|
+
hr: true,
|
|
364
|
+
html: true,
|
|
365
|
+
i: true,
|
|
366
|
+
iframe: true,
|
|
367
|
+
img: true,
|
|
368
|
+
input: true,
|
|
369
|
+
ins: true,
|
|
370
|
+
kbd: true,
|
|
371
|
+
keygen: true,
|
|
372
|
+
label: true,
|
|
373
|
+
legend: true,
|
|
374
|
+
li: true,
|
|
375
|
+
link: true,
|
|
376
|
+
main: true,
|
|
377
|
+
map: true,
|
|
378
|
+
mark: true,
|
|
379
|
+
menu: true,
|
|
380
|
+
menuitem: true,
|
|
381
|
+
meta: true,
|
|
382
|
+
meter: true,
|
|
383
|
+
nav: true,
|
|
384
|
+
noscript: true,
|
|
385
|
+
object: true,
|
|
386
|
+
ol: true,
|
|
387
|
+
optgroup: true,
|
|
388
|
+
option: true,
|
|
389
|
+
output: true,
|
|
390
|
+
p: true,
|
|
391
|
+
param: true,
|
|
392
|
+
picture: true,
|
|
393
|
+
pre: true,
|
|
394
|
+
progress: true,
|
|
395
|
+
q: true,
|
|
396
|
+
rp: true,
|
|
397
|
+
rt: true,
|
|
398
|
+
ruby: true,
|
|
399
|
+
s: true,
|
|
400
|
+
samp: true,
|
|
401
|
+
script: true,
|
|
402
|
+
section: true,
|
|
403
|
+
select: true,
|
|
404
|
+
small: true,
|
|
405
|
+
source: true,
|
|
406
|
+
span: true,
|
|
407
|
+
strong: true,
|
|
408
|
+
style: true,
|
|
409
|
+
sub: true,
|
|
410
|
+
summary: true,
|
|
411
|
+
sup: true,
|
|
412
|
+
table: true,
|
|
413
|
+
tbody: true,
|
|
414
|
+
td: true,
|
|
415
|
+
textarea: true,
|
|
416
|
+
tfoot: true,
|
|
417
|
+
th: true,
|
|
418
|
+
thead: true,
|
|
419
|
+
time: true,
|
|
420
|
+
title: true,
|
|
421
|
+
tr: true,
|
|
422
|
+
track: true,
|
|
423
|
+
u: true,
|
|
424
|
+
ul: true,
|
|
425
|
+
var: true,
|
|
426
|
+
video: true,
|
|
427
|
+
wbr: true
|
|
428
|
+
};
|
|
429
|
+
const isNativeHTMLElement = (type) => nativeHTMLElements[type] === true;
|
|
430
|
+
//# sourceMappingURL=validateNativeProps.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/validateNativeProps.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\nconst attributeWhiteList = {\n accept: true,\n acceptCharset: true,\n accessKey: true,\n action: true,\n allowFullScreen: true,\n allowTransparency: true,\n alt: true,\n async: true,\n autoComplete: true,\n autoFocus: true,\n autoPlay: true,\n capture: true,\n cellPadding: true,\n cellSpacing: true,\n charSet: true,\n challenge: true,\n checked: true,\n classID: true,\n className: true,\n cols: true,\n colSpan: true,\n content: true,\n contentEditable: true,\n contextMenu: true,\n controls: true,\n coords: true,\n crossOrigin: true,\n data: true,\n dateTime: true,\n defer: true,\n dir: true,\n disabled: true,\n download: true,\n draggable: true,\n encType: true,\n form: true,\n formAction: true,\n formEncType: true,\n formMethod: true,\n formNoValidate: true,\n formTarget: true,\n frameBorder: true,\n headers: true,\n height: true,\n hidden: true,\n high: true,\n href: true,\n hrefLang: true,\n htmlFor: true,\n httpEquiv: true,\n icon: true,\n id: true,\n inputMode: true,\n keyParams: true,\n keyType: true,\n label: true,\n lang: true,\n list: true,\n loop: true,\n low: true,\n manifest: true,\n marginHeight: true,\n marginWidth: true,\n max: true,\n maxLength: true,\n media: true,\n mediaGroup: true,\n method: true,\n min: true,\n minLength: true,\n multiple: true,\n muted: true,\n name: true,\n noValidate: true,\n open: true,\n optimum: true,\n pattern: true,\n placeholder: true,\n poster: true,\n preload: true,\n radioGroup: true,\n readOnly: true,\n rel: true,\n required: true,\n role: true,\n rows: true,\n rowSpan: true,\n sandbox: true,\n scope: true,\n scoped: true,\n scrolling: true,\n seamless: true,\n selected: true,\n shape: true,\n size: true,\n sizes: true,\n span: true,\n spellCheck: true,\n src: true,\n srcDoc: true,\n srcSet: true,\n start: true,\n step: true,\n style: true,\n summary: true,\n tabIndex: true,\n target: true,\n title: true,\n type: true,\n useMap: true,\n value: true,\n width: true,\n wmode: true,\n wrap: true,\n};\n\nconst svgAttributesWhiteList = {\n clipPath: true,\n cx: true,\n cy: true,\n d: true,\n dx: true,\n dy: true,\n fill: true,\n fillOpacity: true,\n fontFamily: true,\n fontSize: true,\n fx: true,\n fy: true,\n gradientTransform: true,\n gradientUnits: true,\n markerEnd: true,\n markerMid: true,\n markerStart: true,\n offset: true,\n opacity: true,\n patternContentUnits: true,\n patternUnits: true,\n points: true,\n preserveAspectRatio: true,\n r: true,\n rx: true,\n ry: true,\n spreadMethod: true,\n stopColor: true,\n stopOpacity: true,\n stroke: true,\n strokeDasharray: true,\n strokeLinecap: true,\n strokeOpacity: true,\n strokeWidth: true,\n textAnchor: true,\n transform: true,\n version: true,\n viewBox: true,\n x1: true,\n x2: true,\n x: true,\n xlinkActuate: true,\n xlinkArcrole: true,\n xlinkHref: true,\n xlinkRole: true,\n xlinkShow: true,\n xlinkTitle: true,\n xlinkType: true,\n xmlBase: true,\n xmlLang: true,\n xmlSpace: true,\n y1: true,\n y2: true,\n y: true,\n};\n\nconst otherWhiteList = {\n autoCapitalize: true,\n autoCorrect: true,\n property: true,\n itemProp: true,\n itemScope: true,\n itemType: true,\n itemRef: true,\n itemID: true,\n unselectable: true,\n results: true,\n autoSave: true,\n};\n\nconst eventsWhiteList = {\n onCopy: true,\n onCut: true,\n onPaste: true,\n onCompositionEnd: true,\n onCompositionStart: true,\n onCompositionUpdate: true,\n onKeyDown: true,\n onKeyPress: true,\n onKeyUp: true,\n onFocus: true,\n onBlur: true,\n onChange: true,\n onInput: true,\n onInvalid: true,\n onReset: true,\n onSubmit: true,\n onError: true,\n onLoad: true,\n onClick: true,\n onContextMenu: true,\n onDoubleClick: true,\n onDrag: true,\n onDragEnd: true,\n onDragEnter: true,\n onDragExit: true,\n onDragLeave: true,\n onDragOver: true,\n onDragStart: true,\n onDrop: true,\n onMouseDown: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseMove: true,\n onMouseOut: true,\n onMouseOver: true,\n onMouseUp: true,\n onPointerDown: true,\n onPointerMove: true,\n onPointerUp: true,\n onPointerCancel: true,\n onGotPointerCapture: true,\n onLostPointerCapture: true,\n onPointerEnter: true,\n onPointerLeave: true,\n onPointerOver: true,\n onPointerOut: true,\n onSelect: true,\n onTouchCancel: true,\n onTouchEnd: true,\n onTouchMove: true,\n onTouchStart: true,\n onScroll: true,\n onWheel: true,\n onAbort: true,\n onCanPlay: true,\n onCanPlayThrough: true,\n onDurationChange: true,\n onEmptied: true,\n onEncrypted: true,\n onEnded: true,\n onLoadedData: true,\n onLoadedMetadata: true,\n onLoadStart: true,\n onPause: true,\n onPlay: true,\n onPlaying: true,\n onProgress: true,\n onRateChange: true,\n onSeeked: true,\n onSeeking: true,\n onStalled: true,\n onSuspend: true,\n onTimeUpdate: true,\n onVolumeChange: true,\n onWaiting: true,\n onAnimationStart: true,\n onAnimationEnd: true,\n onAnimationIteration: true,\n onTransitionEnd: true,\n onToggle: true,\n};\n\nexport const whiteList = {\n ...attributeWhiteList,\n ...svgAttributesWhiteList,\n ...otherWhiteList,\n ...eventsWhiteList,\n};\n\nexport const isDataAttribute = (attribute) => attribute.substring(0, 5) === 'data-';\nexport const isAriaAttribute = (attribute) => attribute.substring(0, 6) === 'aria-';\n\nexport const isValidNativeAttribute = (attribute) =>\n whiteList[attribute] === true ||\n isDataAttribute(attribute) ||\n isAriaAttribute(attribute) ||\n attribute.toLowerCase() === attribute;\n\nconst nativeHTMLElements = {\n a: true,\n abbr: true,\n address: true,\n area: true,\n article: true,\n aside: true,\n audio: true,\n b: true,\n base: true,\n bdi: true,\n bdo: true,\n big: true,\n blockquote: true,\n body: true,\n br: true,\n button: true,\n canvas: true,\n caption: true,\n cite: true,\n code: true,\n col: true,\n colgroup: true,\n data: true,\n datalist: true,\n dd: true,\n del: true,\n details: true,\n dfn: true,\n dialog: true,\n div: true,\n dl: true,\n dt: true,\n em: true,\n embed: true,\n fieldset: true,\n figcaption: true,\n figure: true,\n footer: true,\n form: true,\n h1: true,\n h2: true,\n h3: true,\n h4: true,\n h5: true,\n h6: true,\n head: true,\n header: true,\n hr: true,\n html: true,\n i: true,\n iframe: true,\n img: true,\n input: true,\n ins: true,\n kbd: true,\n keygen: true,\n label: true,\n legend: true,\n li: true,\n link: true,\n main: true,\n map: true,\n mark: true,\n menu: true,\n menuitem: true,\n meta: true,\n meter: true,\n nav: true,\n noscript: true,\n object: true,\n ol: true,\n optgroup: true,\n option: true,\n output: true,\n p: true,\n param: true,\n picture: true,\n pre: true,\n progress: true,\n q: true,\n rp: true,\n rt: true,\n ruby: true,\n s: true,\n samp: true,\n script: true,\n section: true,\n select: true,\n small: true,\n source: true,\n span: true,\n strong: true,\n style: true,\n sub: true,\n summary: true,\n sup: true,\n table: true,\n tbody: true,\n td: true,\n textarea: true,\n tfoot: true,\n th: true,\n thead: true,\n time: true,\n title: true,\n tr: true,\n track: true,\n u: true,\n ul: true,\n var: true,\n video: true,\n wbr: true,\n};\n\nexport const isNativeHTMLElement = (type) => nativeHTMLElements[type] === true;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import cx from "obj-str";
|
|
4
|
+
import { convertPropToCssClassName } from "./classNameManager.js";
|
|
5
|
+
import { dimsumConfig } from "./dimsum.config.js";
|
|
6
|
+
import {
|
|
7
|
+
isValidNativeAttribute,
|
|
8
|
+
isNativeHTMLElement
|
|
9
|
+
} from "./validateNativeProps.js";
|
|
10
|
+
const cssPrefix = dimsumConfig.classNamePrefix;
|
|
11
|
+
const generateClassNameWithModifier = (block, element, modifier) => `${cssPrefix}-${block}${element ? `__${element}` : ""}--${modifier}`;
|
|
12
|
+
const appendBlockAndPrefixToObj = (obj, block, element) => obj ? Object.keys(obj).reduce(
|
|
13
|
+
(acc, key) => ({
|
|
14
|
+
...acc,
|
|
15
|
+
[`${generateClassNameWithModifier(block, element, key)}`]: obj[key]
|
|
16
|
+
}),
|
|
17
|
+
{}
|
|
18
|
+
) : [];
|
|
19
|
+
const aggregatedClasses = (type, props) => (block, element, additionalModifiers, options = {}) => React2.forwardRef(({ innerRef, children, classProps, useComponent, className, as, ...rest }, ref) => {
|
|
20
|
+
let otherModifiers = appendBlockAndPrefixToObj(additionalModifiers, block, element);
|
|
21
|
+
if (typeof additionalModifiers === "function")
|
|
22
|
+
otherModifiers = appendBlockAndPrefixToObj(
|
|
23
|
+
additionalModifiers({ ...rest, ...classProps, className }),
|
|
24
|
+
block,
|
|
25
|
+
element
|
|
26
|
+
);
|
|
27
|
+
const otherModifiersStr = cx(otherModifiers);
|
|
28
|
+
const { prefix, propsToRemoveFromFinalElement = [] } = options;
|
|
29
|
+
const { cssClassName: classNames } = convertPropToCssClassName(
|
|
30
|
+
block,
|
|
31
|
+
null,
|
|
32
|
+
{ ...classProps },
|
|
33
|
+
{ prefix, element }
|
|
34
|
+
);
|
|
35
|
+
const cleanedPropsPassedDown = { ...props, ...rest };
|
|
36
|
+
propsToRemoveFromFinalElement.forEach((propKey) => {
|
|
37
|
+
delete cleanedPropsPassedDown[propKey];
|
|
38
|
+
});
|
|
39
|
+
if (isNativeHTMLElement(block)) {
|
|
40
|
+
Object.keys(cleanedPropsPassedDown).forEach((key) => {
|
|
41
|
+
if (!isValidNativeAttribute(key))
|
|
42
|
+
delete cleanedPropsPassedDown[key];
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
return React2.createElement(
|
|
46
|
+
as || type,
|
|
47
|
+
{
|
|
48
|
+
ref: innerRef || ref,
|
|
49
|
+
className: [classNames, otherModifiersStr, className].join(" "),
|
|
50
|
+
...cleanedPropsPassedDown
|
|
51
|
+
},
|
|
52
|
+
children
|
|
53
|
+
);
|
|
54
|
+
});
|
|
55
|
+
var aggregatedClasses_default = aggregatedClasses;
|
|
56
|
+
export {
|
|
57
|
+
cssPrefix,
|
|
58
|
+
aggregatedClasses_default as default
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=aggregatedClasses.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/aggregatedClasses.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable prettier/prettier */\n/* eslint-disable max-params */\n/* eslint-disable react/prop-types */\nimport React from 'react';\nimport cx from 'obj-str';\nimport { convertPropToCssClassName } from './classNameManager.js';\nimport { dimsumConfig } from './dimsum.config.js';\nimport {\n isValidNativeAttribute,\n isNativeHTMLElement,\n} from './validateNativeProps.js';\n\nexport const cssPrefix = dimsumConfig.classNamePrefix;\n\ntype AggregatedClassesT<T = unknown> = (\n type: any,\n props?: any,\n) => (\n block: string,\n element?: string | null,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n additionalModifiers?: { [key: string]: unknown } | ((arg: any) => { [key: string]: unknown }),\n options?: { [key: string]: unknown },\n) => React.ForwardRefExoticComponent<React.RefAttributes<T>>;\n\nconst generateClassNameWithModifier = (block, element, modifier) =>\n `${cssPrefix}-${block}${element ? `__${element}` : ''}--${modifier}`;\n\nconst appendBlockAndPrefixToObj = (obj, block, element) =>\n obj\n ? Object.keys(obj).reduce(\n (acc, key) => ({\n ...acc,\n [`${generateClassNameWithModifier(block, element, key)}`]: obj[key],\n }),\n {},\n )\n : [];\n\nconst aggregatedClasses: AggregatedClassesT=\n (type, props) =>\n (block, element, additionalModifiers, options = {}) =>\n React.forwardRef(({ innerRef, children, classProps, useComponent, className, as, ...rest }, ref) => {\n // get the additional classNames either from a function or an object\n let otherModifiers = appendBlockAndPrefixToObj(additionalModifiers, block, element);\n if (typeof additionalModifiers === 'function')\n otherModifiers = appendBlockAndPrefixToObj(\n additionalModifiers({ ...rest, ...classProps, className }),\n block,\n element,\n );\n\n const otherModifiersStr = cx(otherModifiers);\n const { prefix, propsToRemoveFromFinalElement = [] } = options;\n const { cssClassName: classNames } = convertPropToCssClassName(\n block,\n null,\n { ...classProps },\n { prefix, element },\n );\n const cleanedPropsPassedDown = { ...props, ...rest };\n propsToRemoveFromFinalElement.forEach((propKey) => {\n delete cleanedPropsPassedDown[propKey];\n });\n\n if (isNativeHTMLElement(block)) {\n Object.keys(cleanedPropsPassedDown).forEach((key) => {\n if (!isValidNativeAttribute(key)) delete cleanedPropsPassedDown[key];\n });\n }\n\n return React.createElement(\n as || type,\n {\n ref: innerRef || ref,\n className: [classNames, otherModifiersStr, className].join(' '),\n ...cleanedPropsPassedDown,\n },\n children,\n );\n });\n\nexport default aggregatedClasses;\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACIvB,OAAOA,YAAW;AAClB,OAAO,QAAQ;AACf,SAAS,iCAAiC;AAC1C,SAAS,oBAAoB;AAC7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEA,MAAM,YAAY,aAAa;AAatC,MAAM,gCAAgC,CAAC,OAAO,SAAS,aACrD,GAAG,aAAa,QAAQ,UAAU,KAAK,YAAY,OAAO;AAE5D,MAAM,4BAA4B,CAAC,KAAK,OAAO,YAC7C,MACI,OAAO,KAAK,GAAG,EAAE;AAAA,EACjB,CAAC,KAAK,SAAS;AAAA,IACb,GAAG;AAAA,IACH,CAAC,GAAG,8BAA8B,OAAO,SAAS,GAAG,GAAG,GAAG,IAAI,GAAG;AAAA,EACpE;AAAA,EACA,CAAC;AACH,IACE,CAAC;AAEP,MAAM,oBACJ,CAAC,MAAM,UACL,CAAC,OAAO,SAAS,qBAAqB,UAAU,CAAC,MAC/CA,OAAM,WAAW,CAAC,EAAE,UAAU,UAAU,YAAY,cAAc,WAAW,IAAI,GAAG,KAAK,GAAG,QAAQ;AAElG,MAAI,iBAAiB,0BAA0B,qBAAqB,OAAO,OAAO;AAClF,MAAI,OAAO,wBAAwB;AACjC,qBAAiB;AAAA,MACf,oBAAoB,EAAE,GAAG,MAAM,GAAG,YAAY,UAAU,CAAC;AAAA,MACzD;AAAA,MACA;AAAA,IACF;AAEF,QAAM,oBAAoB,GAAG,cAAc;AAC3C,QAAM,EAAE,QAAQ,gCAAgC,CAAC,EAAE,IAAI;AACvD,QAAM,EAAE,cAAc,WAAW,IAAI;AAAA,IACnC;AAAA,IACA;AAAA,IACA,EAAE,GAAG,WAAW;AAAA,IAChB,EAAE,QAAQ,QAAQ;AAAA,EACpB;AACA,QAAM,yBAAyB,EAAE,GAAG,OAAO,GAAG,KAAK;AACnD,gCAA8B,QAAQ,CAAC,YAAY;AACjD,WAAO,uBAAuB,OAAO;AAAA,EACvC,CAAC;AAED,MAAI,oBAAoB,KAAK,GAAG;AAC9B,WAAO,KAAK,sBAAsB,EAAE,QAAQ,CAAC,QAAQ;AACnD,UAAI,CAAC,uBAAuB,GAAG;AAAG,eAAO,uBAAuB,GAAG;AAAA,IACrE,CAAC;AAAA,EACH;AAEA,SAAOA,OAAM;AAAA,IACX,MAAM;AAAA,IACN;AAAA,MACE,KAAK,YAAY;AAAA,MACjB,WAAW,CAAC,YAAY,mBAAmB,SAAS,EAAE,KAAK,GAAG;AAAA,MAC9D,GAAG;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF,CAAC;AAEP,IAAO,4BAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|