Showing
23 changed files
with
0 additions
and
4862 deletions
Too many changes to show.
To preserve performance only 23 of 99 files are displayed.
es/atom.css
deleted
100644 → 0
| 1 | -.fr-container { | ||
| 2 | - /* Resets */ | ||
| 3 | - /* | ||
| 4 | - This will set table to full width and then | ||
| 5 | - all cells will be equal width | ||
| 6 | - */ | ||
| 7 | - /* 1. Fix for Chrome 44 bug. | ||
| 8 | - * https://code.google.com/p/chromium/issues/detail?id=506893 */ | ||
| 9 | - /* Height Percentages - Based off of height of parent */ | ||
| 10 | - /* Screen Height Percentage */ | ||
| 11 | - /* String Properties */ | ||
| 12 | - /* Max Width Percentages */ | ||
| 13 | - /* Max Width Scale */ | ||
| 14 | - /* Max Width String Properties */ | ||
| 15 | -} | ||
| 16 | -.fr-container .outline { | ||
| 17 | - outline: 1px solid; | ||
| 18 | -} | ||
| 19 | -.fr-container .outline-transparent { | ||
| 20 | - outline: 1px solid transparent; | ||
| 21 | -} | ||
| 22 | -.fr-container .outline-0 { | ||
| 23 | - outline: 0; | ||
| 24 | -} | ||
| 25 | -.fr-container .ba { | ||
| 26 | - border-style: solid; | ||
| 27 | - border-width: 1px; | ||
| 28 | -} | ||
| 29 | -.fr-container .bt { | ||
| 30 | - border-top-style: solid; | ||
| 31 | - border-top-width: 1px; | ||
| 32 | -} | ||
| 33 | -.fr-container .br { | ||
| 34 | - border-right-style: solid; | ||
| 35 | - border-right-width: 1px; | ||
| 36 | -} | ||
| 37 | -.fr-container .bb { | ||
| 38 | - border-bottom-style: solid; | ||
| 39 | - border-bottom-width: 1px; | ||
| 40 | -} | ||
| 41 | -.fr-container .bl { | ||
| 42 | - border-left-style: solid; | ||
| 43 | - border-left-width: 1px; | ||
| 44 | -} | ||
| 45 | -.fr-container .bn { | ||
| 46 | - border-style: none; | ||
| 47 | - border-width: 0; | ||
| 48 | -} | ||
| 49 | -.fr-container .br0 { | ||
| 50 | - border-radius: 0; | ||
| 51 | -} | ||
| 52 | -.fr-container .br1 { | ||
| 53 | - border-radius: 0.125rem; | ||
| 54 | -} | ||
| 55 | -.fr-container .br2 { | ||
| 56 | - border-radius: 0.25rem; | ||
| 57 | -} | ||
| 58 | -.fr-container .br3 { | ||
| 59 | - border-radius: 0.5rem; | ||
| 60 | -} | ||
| 61 | -.fr-container .br4 { | ||
| 62 | - border-radius: 1rem; | ||
| 63 | -} | ||
| 64 | -.fr-container .br-100 { | ||
| 65 | - border-radius: 100%; | ||
| 66 | -} | ||
| 67 | -.fr-container .br-pill { | ||
| 68 | - border-radius: 9999px; | ||
| 69 | -} | ||
| 70 | -.fr-container .br--bottom { | ||
| 71 | - border-top-left-radius: 0; | ||
| 72 | - border-top-right-radius: 0; | ||
| 73 | -} | ||
| 74 | -.fr-container .br--top { | ||
| 75 | - border-bottom-left-radius: 0; | ||
| 76 | - border-bottom-right-radius: 0; | ||
| 77 | -} | ||
| 78 | -.fr-container .br--right { | ||
| 79 | - border-top-left-radius: 0; | ||
| 80 | - border-bottom-left-radius: 0; | ||
| 81 | -} | ||
| 82 | -.fr-container .br--left { | ||
| 83 | - border-top-right-radius: 0; | ||
| 84 | - border-bottom-right-radius: 0; | ||
| 85 | -} | ||
| 86 | -.fr-container .b--dotted { | ||
| 87 | - border-style: dotted; | ||
| 88 | -} | ||
| 89 | -.fr-container .b--dashed { | ||
| 90 | - border-style: dashed; | ||
| 91 | -} | ||
| 92 | -.fr-container .b--solid { | ||
| 93 | - border-style: solid; | ||
| 94 | -} | ||
| 95 | -.fr-container .b--none { | ||
| 96 | - border-style: none; | ||
| 97 | -} | ||
| 98 | -.fr-container .b--black-10 { | ||
| 99 | - border-color: rgba(0, 0, 0, 0.1); | ||
| 100 | -} | ||
| 101 | -.fr-container .b--black-20 { | ||
| 102 | - border-color: rgba(0, 0, 0, 0.2); | ||
| 103 | -} | ||
| 104 | -.fr-container .b--black-30 { | ||
| 105 | - border-color: rgba(0, 0, 0, 0.3); | ||
| 106 | -} | ||
| 107 | -.fr-container .bw0 { | ||
| 108 | - border-width: 0; | ||
| 109 | -} | ||
| 110 | -.fr-container .bw1 { | ||
| 111 | - border-width: 0.125rem; | ||
| 112 | -} | ||
| 113 | -.fr-container .bw2 { | ||
| 114 | - border-width: 0.25rem; | ||
| 115 | -} | ||
| 116 | -.fr-container .bw3 { | ||
| 117 | - border-width: 0.5rem; | ||
| 118 | -} | ||
| 119 | -.fr-container .bw4 { | ||
| 120 | - border-width: 1rem; | ||
| 121 | -} | ||
| 122 | -.fr-container .bw5 { | ||
| 123 | - border-width: 2rem; | ||
| 124 | -} | ||
| 125 | -.fr-container .bt-0 { | ||
| 126 | - border-top-width: 0; | ||
| 127 | -} | ||
| 128 | -.fr-container .br-0 { | ||
| 129 | - border-right-width: 0; | ||
| 130 | -} | ||
| 131 | -.fr-container .bb-0 { | ||
| 132 | - border-bottom-width: 0; | ||
| 133 | -} | ||
| 134 | -.fr-container .bl-0 { | ||
| 135 | - border-left-width: 0; | ||
| 136 | -} | ||
| 137 | -.fr-container .shadow-1 { | ||
| 138 | - box-shadow: 0 0 4px 2px rgba(0, 0, 0, 0.2); | ||
| 139 | -} | ||
| 140 | -.fr-container .shadow-2 { | ||
| 141 | - box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.2); | ||
| 142 | -} | ||
| 143 | -.fr-container .shadow-3 { | ||
| 144 | - box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, 0.2); | ||
| 145 | -} | ||
| 146 | -.fr-container .shadow-4 { | ||
| 147 | - box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.2); | ||
| 148 | -} | ||
| 149 | -.fr-container .shadow-5 { | ||
| 150 | - box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.2); | ||
| 151 | -} | ||
| 152 | -.fr-container .top-0 { | ||
| 153 | - top: 0; | ||
| 154 | -} | ||
| 155 | -.fr-container .right-0 { | ||
| 156 | - right: 0; | ||
| 157 | -} | ||
| 158 | -.fr-container .bottom-0 { | ||
| 159 | - bottom: 0; | ||
| 160 | -} | ||
| 161 | -.fr-container .left-0 { | ||
| 162 | - left: 0; | ||
| 163 | -} | ||
| 164 | -.fr-container .top-1 { | ||
| 165 | - top: 1rem; | ||
| 166 | -} | ||
| 167 | -.fr-container .right-1 { | ||
| 168 | - right: 1rem; | ||
| 169 | -} | ||
| 170 | -.fr-container .bottom-1 { | ||
| 171 | - bottom: 1rem; | ||
| 172 | -} | ||
| 173 | -.fr-container .left-1 { | ||
| 174 | - left: 1rem; | ||
| 175 | -} | ||
| 176 | -.fr-container .top-2 { | ||
| 177 | - top: 2rem; | ||
| 178 | -} | ||
| 179 | -.fr-container .right-2 { | ||
| 180 | - right: 2rem; | ||
| 181 | -} | ||
| 182 | -.fr-container .bottom-2 { | ||
| 183 | - bottom: 2rem; | ||
| 184 | -} | ||
| 185 | -.fr-container .left-2 { | ||
| 186 | - left: 2rem; | ||
| 187 | -} | ||
| 188 | -.fr-container .top--1 { | ||
| 189 | - top: -1rem; | ||
| 190 | -} | ||
| 191 | -.fr-container .right--1 { | ||
| 192 | - right: -1rem; | ||
| 193 | -} | ||
| 194 | -.fr-container .bottom--1 { | ||
| 195 | - bottom: -1rem; | ||
| 196 | -} | ||
| 197 | -.fr-container .left--1 { | ||
| 198 | - left: -1rem; | ||
| 199 | -} | ||
| 200 | -.fr-container .top--2 { | ||
| 201 | - top: -2rem; | ||
| 202 | -} | ||
| 203 | -.fr-container .right--2 { | ||
| 204 | - right: -2rem; | ||
| 205 | -} | ||
| 206 | -.fr-container .bottom--2 { | ||
| 207 | - bottom: -2rem; | ||
| 208 | -} | ||
| 209 | -.fr-container .left--2 { | ||
| 210 | - left: -2rem; | ||
| 211 | -} | ||
| 212 | -.fr-container .absolute--fill { | ||
| 213 | - top: 0; | ||
| 214 | - right: 0; | ||
| 215 | - bottom: 0; | ||
| 216 | - left: 0; | ||
| 217 | -} | ||
| 218 | -.fr-container .dn { | ||
| 219 | - display: none; | ||
| 220 | -} | ||
| 221 | -.fr-container .di { | ||
| 222 | - display: inline; | ||
| 223 | -} | ||
| 224 | -.fr-container .db { | ||
| 225 | - display: block; | ||
| 226 | -} | ||
| 227 | -.fr-container .dib { | ||
| 228 | - display: inline-block; | ||
| 229 | -} | ||
| 230 | -.fr-container .dit { | ||
| 231 | - display: inline-table; | ||
| 232 | -} | ||
| 233 | -.fr-container .dt { | ||
| 234 | - display: table; | ||
| 235 | -} | ||
| 236 | -.fr-container .dtc { | ||
| 237 | - display: table-cell; | ||
| 238 | -} | ||
| 239 | -.fr-container .dt-row { | ||
| 240 | - display: table-row; | ||
| 241 | -} | ||
| 242 | -.fr-container .dt-row-group { | ||
| 243 | - display: table-row-group; | ||
| 244 | -} | ||
| 245 | -.fr-container .dt-column { | ||
| 246 | - display: table-column; | ||
| 247 | -} | ||
| 248 | -.fr-container .dt-column-group { | ||
| 249 | - display: table-column-group; | ||
| 250 | -} | ||
| 251 | -.fr-container .dt--fixed { | ||
| 252 | - table-layout: fixed; | ||
| 253 | - width: 100%; | ||
| 254 | -} | ||
| 255 | -.fr-container .flex { | ||
| 256 | - display: flex; | ||
| 257 | -} | ||
| 258 | -.fr-container .inline-flex { | ||
| 259 | - display: inline-flex; | ||
| 260 | -} | ||
| 261 | -.fr-container .flex-auto { | ||
| 262 | - flex: 1 1 auto; | ||
| 263 | - min-width: 0; | ||
| 264 | - /* 1 */ | ||
| 265 | - min-height: 0; | ||
| 266 | - /* 1 */ | ||
| 267 | -} | ||
| 268 | -.fr-container .flex-none { | ||
| 269 | - flex: none; | ||
| 270 | -} | ||
| 271 | -.fr-container .flex-column { | ||
| 272 | - flex-direction: column; | ||
| 273 | -} | ||
| 274 | -.fr-container .flex-row { | ||
| 275 | - flex-direction: row; | ||
| 276 | -} | ||
| 277 | -.fr-container .flex-wrap { | ||
| 278 | - flex-wrap: wrap; | ||
| 279 | -} | ||
| 280 | -.fr-container .flex-nowrap { | ||
| 281 | - flex-wrap: nowrap; | ||
| 282 | -} | ||
| 283 | -.fr-container .flex-wrap-reverse { | ||
| 284 | - flex-wrap: wrap-reverse; | ||
| 285 | -} | ||
| 286 | -.fr-container .flex-column-reverse { | ||
| 287 | - flex-direction: column-reverse; | ||
| 288 | -} | ||
| 289 | -.fr-container .flex-row-reverse { | ||
| 290 | - flex-direction: row-reverse; | ||
| 291 | -} | ||
| 292 | -.fr-container .items-start { | ||
| 293 | - align-items: flex-start; | ||
| 294 | -} | ||
| 295 | -.fr-container .items-end { | ||
| 296 | - align-items: flex-end; | ||
| 297 | -} | ||
| 298 | -.fr-container .items-center { | ||
| 299 | - align-items: center; | ||
| 300 | -} | ||
| 301 | -.fr-container .items-baseline { | ||
| 302 | - align-items: baseline; | ||
| 303 | -} | ||
| 304 | -.fr-container .items-stretch { | ||
| 305 | - align-items: stretch; | ||
| 306 | -} | ||
| 307 | -.fr-container .self-start { | ||
| 308 | - align-self: flex-start; | ||
| 309 | -} | ||
| 310 | -.fr-container .self-end { | ||
| 311 | - align-self: flex-end; | ||
| 312 | -} | ||
| 313 | -.fr-container .self-center { | ||
| 314 | - align-self: center; | ||
| 315 | -} | ||
| 316 | -.fr-container .self-baseline { | ||
| 317 | - align-self: baseline; | ||
| 318 | -} | ||
| 319 | -.fr-container .self-stretch { | ||
| 320 | - align-self: stretch; | ||
| 321 | -} | ||
| 322 | -.fr-container .justify-start { | ||
| 323 | - justify-content: flex-start; | ||
| 324 | -} | ||
| 325 | -.fr-container .justify-end { | ||
| 326 | - justify-content: flex-end; | ||
| 327 | -} | ||
| 328 | -.fr-container .justify-center { | ||
| 329 | - justify-content: center; | ||
| 330 | -} | ||
| 331 | -.fr-container .justify-between { | ||
| 332 | - justify-content: space-between; | ||
| 333 | -} | ||
| 334 | -.fr-container .justify-around { | ||
| 335 | - justify-content: space-around; | ||
| 336 | -} | ||
| 337 | -.fr-container .content-start { | ||
| 338 | - align-content: flex-start; | ||
| 339 | -} | ||
| 340 | -.fr-container .content-end { | ||
| 341 | - align-content: flex-end; | ||
| 342 | -} | ||
| 343 | -.fr-container .content-center { | ||
| 344 | - align-content: center; | ||
| 345 | -} | ||
| 346 | -.fr-container .content-between { | ||
| 347 | - align-content: space-between; | ||
| 348 | -} | ||
| 349 | -.fr-container .content-around { | ||
| 350 | - align-content: space-around; | ||
| 351 | -} | ||
| 352 | -.fr-container .content-stretch { | ||
| 353 | - align-content: stretch; | ||
| 354 | -} | ||
| 355 | -.fr-container .order-0 { | ||
| 356 | - order: 0; | ||
| 357 | -} | ||
| 358 | -.fr-container .order-1 { | ||
| 359 | - order: 1; | ||
| 360 | -} | ||
| 361 | -.fr-container .order-2 { | ||
| 362 | - order: 2; | ||
| 363 | -} | ||
| 364 | -.fr-container .order-3 { | ||
| 365 | - order: 3; | ||
| 366 | -} | ||
| 367 | -.fr-container .order-4 { | ||
| 368 | - order: 4; | ||
| 369 | -} | ||
| 370 | -.fr-container .order-5 { | ||
| 371 | - order: 5; | ||
| 372 | -} | ||
| 373 | -.fr-container .order-6 { | ||
| 374 | - order: 6; | ||
| 375 | -} | ||
| 376 | -.fr-container .order-7 { | ||
| 377 | - order: 7; | ||
| 378 | -} | ||
| 379 | -.fr-container .order-8 { | ||
| 380 | - order: 8; | ||
| 381 | -} | ||
| 382 | -.fr-container .order-last { | ||
| 383 | - order: 99999; | ||
| 384 | -} | ||
| 385 | -.fr-container .flex-grow-0 { | ||
| 386 | - flex-grow: 0; | ||
| 387 | -} | ||
| 388 | -.fr-container .flex-grow-1 { | ||
| 389 | - flex-grow: 1; | ||
| 390 | -} | ||
| 391 | -.fr-container .flex-shrink-0 { | ||
| 392 | - flex-shrink: 0; | ||
| 393 | -} | ||
| 394 | -.fr-container .flex-shrink-1 { | ||
| 395 | - flex-shrink: 1; | ||
| 396 | -} | ||
| 397 | -.fr-container .fw1 { | ||
| 398 | - font-weight: 100; | ||
| 399 | -} | ||
| 400 | -.fr-container .fw2 { | ||
| 401 | - font-weight: 200; | ||
| 402 | -} | ||
| 403 | -.fr-container .fw3 { | ||
| 404 | - font-weight: 300; | ||
| 405 | -} | ||
| 406 | -.fr-container .fw4 { | ||
| 407 | - font-weight: 400; | ||
| 408 | -} | ||
| 409 | -.fr-container .fw5 { | ||
| 410 | - font-weight: 500; | ||
| 411 | -} | ||
| 412 | -.fr-container .fw6 { | ||
| 413 | - font-weight: 600; | ||
| 414 | -} | ||
| 415 | -.fr-container .fw7 { | ||
| 416 | - font-weight: 700; | ||
| 417 | -} | ||
| 418 | -.fr-container .fw8 { | ||
| 419 | - font-weight: 800; | ||
| 420 | -} | ||
| 421 | -.fr-container .fw9 { | ||
| 422 | - font-weight: 900; | ||
| 423 | -} | ||
| 424 | -.fr-container .h1 { | ||
| 425 | - height: 1rem; | ||
| 426 | -} | ||
| 427 | -.fr-container .h2 { | ||
| 428 | - height: 2rem; | ||
| 429 | -} | ||
| 430 | -.fr-container .h3 { | ||
| 431 | - height: 4rem; | ||
| 432 | -} | ||
| 433 | -.fr-container .h4 { | ||
| 434 | - height: 8rem; | ||
| 435 | -} | ||
| 436 | -.fr-container .h5 { | ||
| 437 | - height: 16rem; | ||
| 438 | -} | ||
| 439 | -.fr-container .h-25 { | ||
| 440 | - height: 25%; | ||
| 441 | -} | ||
| 442 | -.fr-container .h-50 { | ||
| 443 | - height: 50%; | ||
| 444 | -} | ||
| 445 | -.fr-container .h-75 { | ||
| 446 | - height: 75%; | ||
| 447 | -} | ||
| 448 | -.fr-container .h-100 { | ||
| 449 | - height: 100%; | ||
| 450 | -} | ||
| 451 | -.fr-container .min-h-100 { | ||
| 452 | - min-height: 100%; | ||
| 453 | -} | ||
| 454 | -.fr-container .vh-25 { | ||
| 455 | - height: 25vh; | ||
| 456 | -} | ||
| 457 | -.fr-container .vh-50 { | ||
| 458 | - height: 50vh; | ||
| 459 | -} | ||
| 460 | -.fr-container .vh-75 { | ||
| 461 | - height: 75vh; | ||
| 462 | -} | ||
| 463 | -.fr-container .vh-100 { | ||
| 464 | - height: 100vh; | ||
| 465 | -} | ||
| 466 | -.fr-container .min-vh-100 { | ||
| 467 | - min-height: 100vh; | ||
| 468 | -} | ||
| 469 | -.fr-container .h-auto { | ||
| 470 | - height: auto; | ||
| 471 | -} | ||
| 472 | -.fr-container .h-inherit { | ||
| 473 | - height: inherit; | ||
| 474 | -} | ||
| 475 | -.fr-container .tracked { | ||
| 476 | - letter-spacing: 0.1em; | ||
| 477 | -} | ||
| 478 | -.fr-container .tracked-tight { | ||
| 479 | - letter-spacing: -0.05em; | ||
| 480 | -} | ||
| 481 | -.fr-container .tracked-mega { | ||
| 482 | - letter-spacing: 0.25em; | ||
| 483 | -} | ||
| 484 | -.fr-container .lh-solid { | ||
| 485 | - line-height: 1; | ||
| 486 | -} | ||
| 487 | -.fr-container .lh-title { | ||
| 488 | - line-height: 1.25; | ||
| 489 | -} | ||
| 490 | -.fr-container .lh-copy { | ||
| 491 | - line-height: 1.5; | ||
| 492 | -} | ||
| 493 | -.fr-container .mw-100 { | ||
| 494 | - max-width: 100%; | ||
| 495 | -} | ||
| 496 | -.fr-container .mw1 { | ||
| 497 | - max-width: 1rem; | ||
| 498 | -} | ||
| 499 | -.fr-container .mw2 { | ||
| 500 | - max-width: 2rem; | ||
| 501 | -} | ||
| 502 | -.fr-container .mw3 { | ||
| 503 | - max-width: 4rem; | ||
| 504 | -} | ||
| 505 | -.fr-container .mw4 { | ||
| 506 | - max-width: 8rem; | ||
| 507 | -} | ||
| 508 | -.fr-container .mw5 { | ||
| 509 | - max-width: 16rem; | ||
| 510 | -} | ||
| 511 | -.fr-container .mw6 { | ||
| 512 | - max-width: 32rem; | ||
| 513 | -} | ||
| 514 | -.fr-container .mw7 { | ||
| 515 | - max-width: 48rem; | ||
| 516 | -} | ||
| 517 | -.fr-container .mw8 { | ||
| 518 | - max-width: 64rem; | ||
| 519 | -} | ||
| 520 | -.fr-container .mw9 { | ||
| 521 | - max-width: 96rem; | ||
| 522 | -} | ||
| 523 | -.fr-container .mw-none { | ||
| 524 | - max-width: none; | ||
| 525 | -} | ||
| 526 | -.fr-container .w1 { | ||
| 527 | - width: 1rem; | ||
| 528 | -} | ||
| 529 | -.fr-container .w2 { | ||
| 530 | - width: 2rem; | ||
| 531 | -} | ||
| 532 | -.fr-container .w3 { | ||
| 533 | - width: 4rem; | ||
| 534 | -} | ||
| 535 | -.fr-container .w4 { | ||
| 536 | - width: 8rem; | ||
| 537 | -} | ||
| 538 | -.fr-container .w5 { | ||
| 539 | - width: 16rem; | ||
| 540 | -} | ||
| 541 | -.fr-container .w-10 { | ||
| 542 | - width: 10%; | ||
| 543 | -} | ||
| 544 | -.fr-container .w-20 { | ||
| 545 | - width: 20%; | ||
| 546 | -} | ||
| 547 | -.fr-container .w-25 { | ||
| 548 | - width: 25%; | ||
| 549 | -} | ||
| 550 | -.fr-container .w-30 { | ||
| 551 | - width: 30%; | ||
| 552 | -} | ||
| 553 | -.fr-container .w-33 { | ||
| 554 | - width: 33%; | ||
| 555 | -} | ||
| 556 | -.fr-container .w-34 { | ||
| 557 | - width: 34%; | ||
| 558 | -} | ||
| 559 | -.fr-container .w-40 { | ||
| 560 | - width: 40%; | ||
| 561 | -} | ||
| 562 | -.fr-container .w-50 { | ||
| 563 | - width: 50%; | ||
| 564 | -} | ||
| 565 | -.fr-container .w-60 { | ||
| 566 | - width: 60%; | ||
| 567 | -} | ||
| 568 | -.fr-container .w-70 { | ||
| 569 | - width: 70%; | ||
| 570 | -} | ||
| 571 | -.fr-container .w-75 { | ||
| 572 | - width: 75%; | ||
| 573 | -} | ||
| 574 | -.fr-container .w-80 { | ||
| 575 | - width: 80%; | ||
| 576 | -} | ||
| 577 | -.fr-container .w-90 { | ||
| 578 | - width: 90%; | ||
| 579 | -} | ||
| 580 | -.fr-container .w-100 { | ||
| 581 | - width: 100%; | ||
| 582 | -} | ||
| 583 | -.fr-container .w-third { | ||
| 584 | - width: calc(100% / 3); | ||
| 585 | -} | ||
| 586 | -.fr-container .w-two-thirds { | ||
| 587 | - width: calc(100% / 1.5); | ||
| 588 | -} | ||
| 589 | -.fr-container .w-auto { | ||
| 590 | - width: auto; | ||
| 591 | -} | ||
| 592 | -.fr-container .tl { | ||
| 593 | - text-align: left; | ||
| 594 | -} | ||
| 595 | -.fr-container .tr { | ||
| 596 | - text-align: right; | ||
| 597 | -} | ||
| 598 | -.fr-container .tc { | ||
| 599 | - text-align: center; | ||
| 600 | -} | ||
| 601 | -.fr-container .tj { | ||
| 602 | - text-align: justify; | ||
| 603 | -} | ||
| 604 | -.fr-container .overflow-visible { | ||
| 605 | - overflow: visible; | ||
| 606 | -} | ||
| 607 | -.fr-container .overflow-hidden { | ||
| 608 | - overflow: hidden; | ||
| 609 | -} | ||
| 610 | -.fr-container .overflow-scroll { | ||
| 611 | - overflow: scroll; | ||
| 612 | -} | ||
| 613 | -.fr-container .overflow-auto { | ||
| 614 | - overflow: auto; | ||
| 615 | -} | ||
| 616 | -.fr-container .overflow-x-visible { | ||
| 617 | - overflow-x: visible; | ||
| 618 | -} | ||
| 619 | -.fr-container .overflow-x-hidden { | ||
| 620 | - overflow-x: hidden; | ||
| 621 | -} | ||
| 622 | -.fr-container .overflow-x-scroll { | ||
| 623 | - overflow-x: scroll; | ||
| 624 | -} | ||
| 625 | -.fr-container .overflow-x-auto { | ||
| 626 | - overflow-x: auto; | ||
| 627 | -} | ||
| 628 | -.fr-container .overflow-y-visible { | ||
| 629 | - overflow-y: visible; | ||
| 630 | -} | ||
| 631 | -.fr-container .overflow-y-hidden { | ||
| 632 | - overflow-y: hidden; | ||
| 633 | -} | ||
| 634 | -.fr-container .overflow-y-scroll { | ||
| 635 | - overflow-y: scroll; | ||
| 636 | -} | ||
| 637 | -.fr-container .overflow-y-auto { | ||
| 638 | - overflow-y: auto; | ||
| 639 | -} | ||
| 640 | -.fr-container .static { | ||
| 641 | - position: static; | ||
| 642 | -} | ||
| 643 | -.fr-container .relative { | ||
| 644 | - position: relative; | ||
| 645 | -} | ||
| 646 | -.fr-container .absolute { | ||
| 647 | - position: absolute; | ||
| 648 | -} | ||
| 649 | -.fr-container .fixed { | ||
| 650 | - position: fixed; | ||
| 651 | -} | ||
| 652 | -.fr-container .o-100 { | ||
| 653 | - opacity: 1; | ||
| 654 | -} | ||
| 655 | -.fr-container .o-90 { | ||
| 656 | - opacity: 0.9; | ||
| 657 | -} | ||
| 658 | -.fr-container .o-80 { | ||
| 659 | - opacity: 0.8; | ||
| 660 | -} | ||
| 661 | -.fr-container .o-70 { | ||
| 662 | - opacity: 0.7; | ||
| 663 | -} | ||
| 664 | -.fr-container .o-60 { | ||
| 665 | - opacity: 0.6; | ||
| 666 | -} | ||
| 667 | -.fr-container .o-50 { | ||
| 668 | - opacity: 0.5; | ||
| 669 | -} | ||
| 670 | -.fr-container .o-40 { | ||
| 671 | - opacity: 0.4; | ||
| 672 | -} | ||
| 673 | -.fr-container .o-30 { | ||
| 674 | - opacity: 0.3; | ||
| 675 | -} | ||
| 676 | -.fr-container .o-20 { | ||
| 677 | - opacity: 0.2; | ||
| 678 | -} | ||
| 679 | -.fr-container .o-10 { | ||
| 680 | - opacity: 0.1; | ||
| 681 | -} | ||
| 682 | -.fr-container .o-05 { | ||
| 683 | - opacity: 0.05; | ||
| 684 | -} | ||
| 685 | -.fr-container .o-025 { | ||
| 686 | - opacity: 0.025; | ||
| 687 | -} | ||
| 688 | -.fr-container .o-0 { | ||
| 689 | - opacity: 0; | ||
| 690 | -} | ||
| 691 | -.fr-container .pa0 { | ||
| 692 | - padding: 0; | ||
| 693 | -} | ||
| 694 | -.fr-container .pa1 { | ||
| 695 | - padding: 0.25rem; | ||
| 696 | -} | ||
| 697 | -.fr-container .pa2 { | ||
| 698 | - padding: 0.5rem; | ||
| 699 | -} | ||
| 700 | -.fr-container .pa3 { | ||
| 701 | - padding: 1rem; | ||
| 702 | -} | ||
| 703 | -.fr-container .pa4 { | ||
| 704 | - padding: 2rem; | ||
| 705 | -} | ||
| 706 | -.fr-container .pa5 { | ||
| 707 | - padding: 4rem; | ||
| 708 | -} | ||
| 709 | -.fr-container .pa6 { | ||
| 710 | - padding: 8rem; | ||
| 711 | -} | ||
| 712 | -.fr-container .pa7 { | ||
| 713 | - padding: 16rem; | ||
| 714 | -} | ||
| 715 | -.fr-container .pl0 { | ||
| 716 | - padding-left: 0; | ||
| 717 | -} | ||
| 718 | -.fr-container .pl1 { | ||
| 719 | - padding-left: 0.25rem; | ||
| 720 | -} | ||
| 721 | -.fr-container .pl2 { | ||
| 722 | - padding-left: 0.5rem; | ||
| 723 | -} | ||
| 724 | -.fr-container .pl3 { | ||
| 725 | - padding-left: 1rem; | ||
| 726 | -} | ||
| 727 | -.fr-container .pl4 { | ||
| 728 | - padding-left: 2rem; | ||
| 729 | -} | ||
| 730 | -.fr-container .pl5 { | ||
| 731 | - padding-left: 4rem; | ||
| 732 | -} | ||
| 733 | -.fr-container .pl6 { | ||
| 734 | - padding-left: 8rem; | ||
| 735 | -} | ||
| 736 | -.fr-container .pl7 { | ||
| 737 | - padding-left: 16rem; | ||
| 738 | -} | ||
| 739 | -.fr-container .pr0 { | ||
| 740 | - padding-right: 0; | ||
| 741 | -} | ||
| 742 | -.fr-container .pr1 { | ||
| 743 | - padding-right: 0.25rem; | ||
| 744 | -} | ||
| 745 | -.fr-container .pr2 { | ||
| 746 | - padding-right: 0.5rem; | ||
| 747 | -} | ||
| 748 | -.fr-container .pr3 { | ||
| 749 | - padding-right: 1rem; | ||
| 750 | -} | ||
| 751 | -.fr-container .pr4 { | ||
| 752 | - padding-right: 2rem; | ||
| 753 | -} | ||
| 754 | -.fr-container .pr5 { | ||
| 755 | - padding-right: 4rem; | ||
| 756 | -} | ||
| 757 | -.fr-container .pr6 { | ||
| 758 | - padding-right: 8rem; | ||
| 759 | -} | ||
| 760 | -.fr-container .pr7 { | ||
| 761 | - padding-right: 16rem; | ||
| 762 | -} | ||
| 763 | -.fr-container .pb0 { | ||
| 764 | - padding-bottom: 0; | ||
| 765 | -} | ||
| 766 | -.fr-container .pb1 { | ||
| 767 | - padding-bottom: 0.25rem; | ||
| 768 | -} | ||
| 769 | -.fr-container .pb2 { | ||
| 770 | - padding-bottom: 0.5rem; | ||
| 771 | -} | ||
| 772 | -.fr-container .pb3 { | ||
| 773 | - padding-bottom: 1rem; | ||
| 774 | -} | ||
| 775 | -.fr-container .pb4 { | ||
| 776 | - padding-bottom: 2rem; | ||
| 777 | -} | ||
| 778 | -.fr-container .pb5 { | ||
| 779 | - padding-bottom: 4rem; | ||
| 780 | -} | ||
| 781 | -.fr-container .pb6 { | ||
| 782 | - padding-bottom: 8rem; | ||
| 783 | -} | ||
| 784 | -.fr-container .pb7 { | ||
| 785 | - padding-bottom: 16rem; | ||
| 786 | -} | ||
| 787 | -.fr-container .pt0 { | ||
| 788 | - padding-top: 0; | ||
| 789 | -} | ||
| 790 | -.fr-container .pt1 { | ||
| 791 | - padding-top: 0.25rem; | ||
| 792 | -} | ||
| 793 | -.fr-container .pt2 { | ||
| 794 | - padding-top: 0.5rem; | ||
| 795 | -} | ||
| 796 | -.fr-container .pt3 { | ||
| 797 | - padding-top: 1rem; | ||
| 798 | -} | ||
| 799 | -.fr-container .pt4 { | ||
| 800 | - padding-top: 2rem; | ||
| 801 | -} | ||
| 802 | -.fr-container .pt5 { | ||
| 803 | - padding-top: 4rem; | ||
| 804 | -} | ||
| 805 | -.fr-container .pt6 { | ||
| 806 | - padding-top: 8rem; | ||
| 807 | -} | ||
| 808 | -.fr-container .pt7 { | ||
| 809 | - padding-top: 16rem; | ||
| 810 | -} | ||
| 811 | -.fr-container .pv0 { | ||
| 812 | - padding-top: 0; | ||
| 813 | - padding-bottom: 0; | ||
| 814 | -} | ||
| 815 | -.fr-container .pv1 { | ||
| 816 | - padding-top: 0.25rem; | ||
| 817 | - padding-bottom: 0.25rem; | ||
| 818 | -} | ||
| 819 | -.fr-container .pv2 { | ||
| 820 | - padding-top: 0.5rem; | ||
| 821 | - padding-bottom: 0.5rem; | ||
| 822 | -} | ||
| 823 | -.fr-container .pv3 { | ||
| 824 | - padding-top: 1rem; | ||
| 825 | - padding-bottom: 1rem; | ||
| 826 | -} | ||
| 827 | -.fr-container .pv4 { | ||
| 828 | - padding-top: 2rem; | ||
| 829 | - padding-bottom: 2rem; | ||
| 830 | -} | ||
| 831 | -.fr-container .pv5 { | ||
| 832 | - padding-top: 4rem; | ||
| 833 | - padding-bottom: 4rem; | ||
| 834 | -} | ||
| 835 | -.fr-container .pv6 { | ||
| 836 | - padding-top: 8rem; | ||
| 837 | - padding-bottom: 8rem; | ||
| 838 | -} | ||
| 839 | -.fr-container .pv7 { | ||
| 840 | - padding-top: 16rem; | ||
| 841 | - padding-bottom: 16rem; | ||
| 842 | -} | ||
| 843 | -.fr-container .ph0 { | ||
| 844 | - padding-left: 0; | ||
| 845 | - padding-right: 0; | ||
| 846 | -} | ||
| 847 | -.fr-container .ph1 { | ||
| 848 | - padding-left: 0.25rem; | ||
| 849 | - padding-right: 0.25rem; | ||
| 850 | -} | ||
| 851 | -.fr-container .ph2 { | ||
| 852 | - padding-left: 0.5rem; | ||
| 853 | - padding-right: 0.5rem; | ||
| 854 | -} | ||
| 855 | -.fr-container .ph3 { | ||
| 856 | - padding-left: 1rem; | ||
| 857 | - padding-right: 1rem; | ||
| 858 | -} | ||
| 859 | -.fr-container .ph4 { | ||
| 860 | - padding-left: 2rem; | ||
| 861 | - padding-right: 2rem; | ||
| 862 | -} | ||
| 863 | -.fr-container .ph5 { | ||
| 864 | - padding-left: 4rem; | ||
| 865 | - padding-right: 4rem; | ||
| 866 | -} | ||
| 867 | -.fr-container .ph6 { | ||
| 868 | - padding-left: 8rem; | ||
| 869 | - padding-right: 8rem; | ||
| 870 | -} | ||
| 871 | -.fr-container .ph7 { | ||
| 872 | - padding-left: 16rem; | ||
| 873 | - padding-right: 16rem; | ||
| 874 | -} | ||
| 875 | -.fr-container .ma1 { | ||
| 876 | - margin: 0.25rem; | ||
| 877 | -} | ||
| 878 | -.fr-container .ma2 { | ||
| 879 | - margin: 0.5rem; | ||
| 880 | -} | ||
| 881 | -.fr-container .ma3 { | ||
| 882 | - margin: 1rem; | ||
| 883 | -} | ||
| 884 | -.fr-container .ma4 { | ||
| 885 | - margin: 2rem; | ||
| 886 | -} | ||
| 887 | -.fr-container .ma5 { | ||
| 888 | - margin: 4rem; | ||
| 889 | -} | ||
| 890 | -.fr-container .ma6 { | ||
| 891 | - margin: 8rem; | ||
| 892 | -} | ||
| 893 | -.fr-container .ma7 { | ||
| 894 | - margin: 16rem; | ||
| 895 | -} | ||
| 896 | -.fr-container .ma0 { | ||
| 897 | - margin: 0; | ||
| 898 | -} | ||
| 899 | -.fr-container .ml1 { | ||
| 900 | - margin-left: 0.25rem; | ||
| 901 | -} | ||
| 902 | -.fr-container .ml2 { | ||
| 903 | - margin-left: 0.5rem; | ||
| 904 | -} | ||
| 905 | -.fr-container .ml3 { | ||
| 906 | - margin-left: 1rem; | ||
| 907 | -} | ||
| 908 | -.fr-container .ml4 { | ||
| 909 | - margin-left: 2rem; | ||
| 910 | -} | ||
| 911 | -.fr-container .ml5 { | ||
| 912 | - margin-left: 4rem; | ||
| 913 | -} | ||
| 914 | -.fr-container .ml6 { | ||
| 915 | - margin-left: 8rem; | ||
| 916 | -} | ||
| 917 | -.fr-container .ml7 { | ||
| 918 | - margin-left: 16rem; | ||
| 919 | -} | ||
| 920 | -.fr-container .ml0 { | ||
| 921 | - margin-left: 0; | ||
| 922 | -} | ||
| 923 | -.fr-container .mr1 { | ||
| 924 | - margin-right: 0.25rem; | ||
| 925 | -} | ||
| 926 | -.fr-container .mr2 { | ||
| 927 | - margin-right: 0.5rem; | ||
| 928 | -} | ||
| 929 | -.fr-container .mr3 { | ||
| 930 | - margin-right: 1rem; | ||
| 931 | -} | ||
| 932 | -.fr-container .mr4 { | ||
| 933 | - margin-right: 2rem; | ||
| 934 | -} | ||
| 935 | -.fr-container .mr5 { | ||
| 936 | - margin-right: 4rem; | ||
| 937 | -} | ||
| 938 | -.fr-container .mr6 { | ||
| 939 | - margin-right: 8rem; | ||
| 940 | -} | ||
| 941 | -.fr-container .mr7 { | ||
| 942 | - margin-right: 16rem; | ||
| 943 | -} | ||
| 944 | -.fr-container .mr0 { | ||
| 945 | - margin-right: 0; | ||
| 946 | -} | ||
| 947 | -.fr-container .mb1 { | ||
| 948 | - margin-bottom: 0.25rem; | ||
| 949 | -} | ||
| 950 | -.fr-container .mb2 { | ||
| 951 | - margin-bottom: 0.5rem; | ||
| 952 | -} | ||
| 953 | -.fr-container .mb3 { | ||
| 954 | - margin-bottom: 1rem; | ||
| 955 | -} | ||
| 956 | -.fr-container .mb4 { | ||
| 957 | - margin-bottom: 2rem; | ||
| 958 | -} | ||
| 959 | -.fr-container .mb5 { | ||
| 960 | - margin-bottom: 4rem; | ||
| 961 | -} | ||
| 962 | -.fr-container .mb6 { | ||
| 963 | - margin-bottom: 8rem; | ||
| 964 | -} | ||
| 965 | -.fr-container .mb7 { | ||
| 966 | - margin-bottom: 16rem; | ||
| 967 | -} | ||
| 968 | -.fr-container .mb0 { | ||
| 969 | - margin-bottom: 0; | ||
| 970 | -} | ||
| 971 | -.fr-container .mt1 { | ||
| 972 | - margin-top: 0.25rem; | ||
| 973 | -} | ||
| 974 | -.fr-container .mt2 { | ||
| 975 | - margin-top: 0.5rem; | ||
| 976 | -} | ||
| 977 | -.fr-container .mt3 { | ||
| 978 | - margin-top: 1rem; | ||
| 979 | -} | ||
| 980 | -.fr-container .mt4 { | ||
| 981 | - margin-top: 2rem; | ||
| 982 | -} | ||
| 983 | -.fr-container .mt5 { | ||
| 984 | - margin-top: 4rem; | ||
| 985 | -} | ||
| 986 | -.fr-container .mt6 { | ||
| 987 | - margin-top: 8rem; | ||
| 988 | -} | ||
| 989 | -.fr-container .mt7 { | ||
| 990 | - margin-top: 16rem; | ||
| 991 | -} | ||
| 992 | -.fr-container .mt0 { | ||
| 993 | - margin-top: 0; | ||
| 994 | -} | ||
| 995 | -.fr-container .mv1 { | ||
| 996 | - margin-top: 0.25rem; | ||
| 997 | - margin-bottom: 0.25rem; | ||
| 998 | -} | ||
| 999 | -.fr-container .mv2 { | ||
| 1000 | - margin-top: 0.5rem; | ||
| 1001 | - margin-bottom: 0.5rem; | ||
| 1002 | -} | ||
| 1003 | -.fr-container .mv3 { | ||
| 1004 | - margin-top: 1rem; | ||
| 1005 | - margin-bottom: 1rem; | ||
| 1006 | -} | ||
| 1007 | -.fr-container .mv4 { | ||
| 1008 | - margin-top: 2rem; | ||
| 1009 | - margin-bottom: 2rem; | ||
| 1010 | -} | ||
| 1011 | -.fr-container .mv5 { | ||
| 1012 | - margin-top: 4rem; | ||
| 1013 | - margin-bottom: 4rem; | ||
| 1014 | -} | ||
| 1015 | -.fr-container .mv6 { | ||
| 1016 | - margin-top: 8rem; | ||
| 1017 | - margin-bottom: 8rem; | ||
| 1018 | -} | ||
| 1019 | -.fr-container .mv7 { | ||
| 1020 | - margin-top: 16rem; | ||
| 1021 | - margin-bottom: 16rem; | ||
| 1022 | -} | ||
| 1023 | -.fr-container .mv0 { | ||
| 1024 | - margin-top: 0; | ||
| 1025 | - margin-bottom: 0; | ||
| 1026 | -} | ||
| 1027 | -.fr-container .mh1 { | ||
| 1028 | - margin-left: 0.25rem; | ||
| 1029 | - margin-right: 0.25rem; | ||
| 1030 | -} | ||
| 1031 | -.fr-container .mh2 { | ||
| 1032 | - margin-left: 0.5rem; | ||
| 1033 | - margin-right: 0.5rem; | ||
| 1034 | -} | ||
| 1035 | -.fr-container .mh3 { | ||
| 1036 | - margin-left: 1rem; | ||
| 1037 | - margin-right: 1rem; | ||
| 1038 | -} | ||
| 1039 | -.fr-container .mh4 { | ||
| 1040 | - margin-left: 2rem; | ||
| 1041 | - margin-right: 2rem; | ||
| 1042 | -} | ||
| 1043 | -.fr-container .mh5 { | ||
| 1044 | - margin-left: 4rem; | ||
| 1045 | - margin-right: 4rem; | ||
| 1046 | -} | ||
| 1047 | -.fr-container .mh6 { | ||
| 1048 | - margin-left: 8rem; | ||
| 1049 | - margin-right: 8rem; | ||
| 1050 | -} | ||
| 1051 | -.fr-container .mh7 { | ||
| 1052 | - margin-left: 16rem; | ||
| 1053 | - margin-right: 16rem; | ||
| 1054 | -} | ||
| 1055 | -.fr-container .mh0 { | ||
| 1056 | - margin-left: 0; | ||
| 1057 | - margin-right: 0; | ||
| 1058 | -} | ||
| 1059 | -.fr-container .debug * { | ||
| 1060 | - outline: 1px solid gold; | ||
| 1061 | -} | ||
| 1062 | -.fr-container .debug-white * { | ||
| 1063 | - outline: 1px solid white; | ||
| 1064 | -} | ||
| 1065 | -.fr-container .debug-black * { | ||
| 1066 | - outline: 1px solid black; | ||
| 1067 | -} | ||
| 1068 | -.fr-container .debug-grid { | ||
| 1069 | - background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAFElEQVR4AWPAC97/9x0eCsAEPgwAVLshdpENIxcAAAAASUVORK5CYII= ) repeat top left; | ||
| 1070 | -} | ||
| 1071 | -.fr-container .truncate { | ||
| 1072 | - white-space: nowrap; | ||
| 1073 | - overflow: hidden; | ||
| 1074 | - text-overflow: ellipsis; | ||
| 1075 | -} | ||
| 1076 | -.fr-container .bg-white { | ||
| 1077 | - background-color: #fff; | ||
| 1078 | -} | ||
| 1079 | -.fr-container .pointer:hover { | ||
| 1080 | - cursor: pointer; | ||
| 1081 | -} | ||
| 1082 | -.fr-container .link { | ||
| 1083 | - color: #1890ff; | ||
| 1084 | - font-size: 14px; | ||
| 1085 | -} | ||
| 1086 | -.fr-container .link:hover { | ||
| 1087 | - color: #40a9ff; | ||
| 1088 | - font-size: 14px; | ||
| 1089 | -} |
es/connectForm.js
deleted
100644 → 0
| 1 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 2 | - | ||
| 3 | -import React, { forwardRef } from 'react'; | ||
| 4 | -import useForm from './useForm'; | ||
| 5 | - | ||
| 6 | -var connectForm = function connectForm(Component) { | ||
| 7 | - return /*#__PURE__*/forwardRef(function (props, ref) { | ||
| 8 | - var form = useForm(); | ||
| 9 | - return /*#__PURE__*/React.createElement(Component, _extends({ | ||
| 10 | - ref: ref | ||
| 11 | - }, props, { | ||
| 12 | - form: form | ||
| 13 | - })); | ||
| 14 | - }); | ||
| 15 | -}; | ||
| 16 | - | ||
| 17 | -export default connectForm; |
es/core/RenderChildren/RenderList/CardList.js
deleted
100644 → 0
| 1 | -import "antd/es/button/style"; | ||
| 2 | -import _Button from "antd/es/button"; | ||
| 3 | -import "antd/es/space/style"; | ||
| 4 | -import _Space from "antd/es/space"; | ||
| 5 | -import _ArrowDownOutlined from "@ant-design/icons/es/icons/ArrowDownOutlined"; | ||
| 6 | -import _ArrowUpOutlined from "@ant-design/icons/es/icons/ArrowUpOutlined"; | ||
| 7 | -import _CopyOutlined from "@ant-design/icons/es/icons/CopyOutlined"; | ||
| 8 | -import "antd/es/popconfirm/style"; | ||
| 9 | -import _Popconfirm from "antd/es/popconfirm"; | ||
| 10 | -import _DeleteOutlined from "@ant-design/icons/es/icons/DeleteOutlined"; | ||
| 11 | - | ||
| 12 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 13 | - | ||
| 14 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 15 | - | ||
| 16 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 17 | - | ||
| 18 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 19 | - | ||
| 20 | -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
| 21 | - | ||
| 22 | -/* eslint-disable jsx-a11y/anchor-is-valid */ | ||
| 23 | -import React from 'react'; | ||
| 24 | -import Core from '../../index'; | ||
| 25 | - | ||
| 26 | -var CardList = function CardList(_ref) { | ||
| 27 | - var _ref$displayList = _ref.displayList, | ||
| 28 | - displayList = _ref$displayList === void 0 ? [] : _ref$displayList, | ||
| 29 | - listData = _ref.listData, | ||
| 30 | - changeList = _ref.changeList, | ||
| 31 | - schema = _ref.schema, | ||
| 32 | - deleteItem = _ref.deleteItem, | ||
| 33 | - copyItem = _ref.copyItem, | ||
| 34 | - addItem = _ref.addItem, | ||
| 35 | - moveItemUp = _ref.moveItemUp, | ||
| 36 | - moveItemDown = _ref.moveItemDown, | ||
| 37 | - displayType = _ref.displayType, | ||
| 38 | - getFieldsProps = _ref.getFieldsProps; | ||
| 39 | - var _schema$props = schema.props, | ||
| 40 | - props = _schema$props === void 0 ? {} : _schema$props, | ||
| 41 | - itemProps = schema.itemProps; | ||
| 42 | - var addBtnProps = { | ||
| 43 | - type: 'dashed', | ||
| 44 | - children: '新增一条' | ||
| 45 | - }; | ||
| 46 | - | ||
| 47 | - if (props.addBtnProps && _typeof(props.addBtnProps) === 'object') { | ||
| 48 | - addBtnProps = _objectSpread(_objectSpread({}, addBtnProps), props.addBtnProps); | ||
| 49 | - } | ||
| 50 | - | ||
| 51 | - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { | ||
| 52 | - className: "fr-card-list" | ||
| 53 | - }, displayList.map(function (item, idx) { | ||
| 54 | - var fieldsProps = getFieldsProps(idx); | ||
| 55 | - fieldsProps.displayType = displayType; | ||
| 56 | - return /*#__PURE__*/React.createElement("div", { | ||
| 57 | - className: "fr-card-item ".concat(displayType === 'row' ? 'fr-card-item-row' : ''), | ||
| 58 | - key: idx | ||
| 59 | - }, /*#__PURE__*/React.createElement("div", { | ||
| 60 | - className: "fr-card-index" | ||
| 61 | - }, idx + 1), /*#__PURE__*/React.createElement(Core, fieldsProps), /*#__PURE__*/React.createElement(_Space, { | ||
| 62 | - direction: "horizontal", | ||
| 63 | - className: "fr-card-toolbar" | ||
| 64 | - }, !props.hideDelete && /*#__PURE__*/React.createElement(_Popconfirm, { | ||
| 65 | - title: "\u786E\u5B9A\u5220\u9664?", | ||
| 66 | - onConfirm: function onConfirm() { | ||
| 67 | - return deleteItem(idx); | ||
| 68 | - }, | ||
| 69 | - okText: "\u786E\u5B9A", | ||
| 70 | - cancelText: "\u53D6\u6D88" | ||
| 71 | - }, /*#__PURE__*/React.createElement(_DeleteOutlined, { | ||
| 72 | - style: { | ||
| 73 | - fontSize: 17, | ||
| 74 | - marginLeft: 8 | ||
| 75 | - } | ||
| 76 | - })), !props.hideAdd && !props.hideCopy && /*#__PURE__*/React.createElement(_CopyOutlined, { | ||
| 77 | - style: { | ||
| 78 | - fontSize: 16, | ||
| 79 | - marginLeft: 8 | ||
| 80 | - }, | ||
| 81 | - onClick: function onClick() { | ||
| 82 | - return copyItem(idx); | ||
| 83 | - } | ||
| 84 | - }), !props.hideMove && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_ArrowUpOutlined, { | ||
| 85 | - style: { | ||
| 86 | - fontSize: 16, | ||
| 87 | - marginLeft: 4 | ||
| 88 | - }, | ||
| 89 | - onClick: function onClick() { | ||
| 90 | - return moveItemUp(idx); | ||
| 91 | - } | ||
| 92 | - }), /*#__PURE__*/React.createElement(_ArrowDownOutlined, { | ||
| 93 | - style: { | ||
| 94 | - fontSize: 16, | ||
| 95 | - marginLeft: 4 | ||
| 96 | - }, | ||
| 97 | - onClick: function onClick() { | ||
| 98 | - return moveItemDown(idx); | ||
| 99 | - } | ||
| 100 | - })))); | ||
| 101 | - })), /*#__PURE__*/React.createElement("div", { | ||
| 102 | - style: { | ||
| 103 | - marginTop: displayList.length > 0 ? 0 : 8 | ||
| 104 | - } | ||
| 105 | - }, !props.hideAdd && /*#__PURE__*/React.createElement(_Button, _extends({ | ||
| 106 | - onClick: addItem | ||
| 107 | - }, addBtnProps)), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { | ||
| 108 | - var callback = item.callback, | ||
| 109 | - text = item.text, | ||
| 110 | - html = item.html; | ||
| 111 | - | ||
| 112 | - var onClick = function onClick() { | ||
| 113 | - console.log({ | ||
| 114 | - value: listData, | ||
| 115 | - onChange: changeList, | ||
| 116 | - schema: schema | ||
| 117 | - }); | ||
| 118 | - }; | ||
| 119 | - | ||
| 120 | - if (typeof window[callback] === 'function') { | ||
| 121 | - onClick = function onClick() { | ||
| 122 | - window[callback]({ | ||
| 123 | - value: listData, | ||
| 124 | - onChange: changeList, | ||
| 125 | - schema: schema | ||
| 126 | - }); | ||
| 127 | - }; | ||
| 128 | - } | ||
| 129 | - | ||
| 130 | - return /*#__PURE__*/React.createElement(_Button, { | ||
| 131 | - key: idx.toString(), | ||
| 132 | - style: { | ||
| 133 | - marginLeft: 8 | ||
| 134 | - }, | ||
| 135 | - type: "dashed", | ||
| 136 | - onClick: onClick | ||
| 137 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 138 | - dangerouslySetInnerHTML: { | ||
| 139 | - __html: html || text | ||
| 140 | - } | ||
| 141 | - })); | ||
| 142 | - }) : null)); | ||
| 143 | -}; | ||
| 144 | - | ||
| 145 | -export default CardList; |
es/core/RenderChildren/RenderList/DrawerList.js
deleted
100644 → 0
| 1 | -import "antd/es/table/style"; | ||
| 2 | -import _Table from "antd/es/table"; | ||
| 3 | -import "antd/es/drawer/style"; | ||
| 4 | -import _Drawer from "antd/es/drawer"; | ||
| 5 | -import "antd/es/button/style"; | ||
| 6 | -import _Button from "antd/es/button"; | ||
| 7 | -import "antd/es/space/style"; | ||
| 8 | -import _Space from "antd/es/space"; | ||
| 9 | -import _ArrowDownOutlined from "@ant-design/icons/es/icons/ArrowDownOutlined"; | ||
| 10 | -import _ArrowUpOutlined from "@ant-design/icons/es/icons/ArrowUpOutlined"; | ||
| 11 | -import "antd/es/popconfirm/style"; | ||
| 12 | -import _Popconfirm from "antd/es/popconfirm"; | ||
| 13 | -var _excluded = ["buttons"], | ||
| 14 | - _excluded2 = ["pagination"]; | ||
| 15 | - | ||
| 16 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 17 | - | ||
| 18 | -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } | ||
| 19 | - | ||
| 20 | -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 21 | - | ||
| 22 | -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
| 23 | - | ||
| 24 | -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
| 25 | - | ||
| 26 | -function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } | ||
| 27 | - | ||
| 28 | -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } | ||
| 29 | - | ||
| 30 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 31 | - | ||
| 32 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 33 | - | ||
| 34 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 35 | - | ||
| 36 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 37 | - | ||
| 38 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 39 | - | ||
| 40 | -/* eslint-disable jsx-a11y/anchor-is-valid */ | ||
| 41 | -import React, { useRef } from 'react'; | ||
| 42 | -import Core from '../../index'; | ||
| 43 | -import { useSet } from '../../../hooks'; | ||
| 44 | -import { getDataPath, getKeyFromPath, getDisplayValue } from '../../../utils'; | ||
| 45 | -import ErrorMessage from '../../RenderField/ErrorMessage'; | ||
| 46 | -var FIELD_LENGTH = 170; | ||
| 47 | - | ||
| 48 | -var DrawerList = function DrawerList(_ref) { | ||
| 49 | - var _extends2; | ||
| 50 | - | ||
| 51 | - var _ref$displayList = _ref.displayList, | ||
| 52 | - displayList = _ref$displayList === void 0 ? [] : _ref$displayList, | ||
| 53 | - dataPath = _ref.dataPath, | ||
| 54 | - children = _ref.children, | ||
| 55 | - deleteItem = _ref.deleteItem, | ||
| 56 | - addItem = _ref.addItem, | ||
| 57 | - moveItemDown = _ref.moveItemDown, | ||
| 58 | - moveItemUp = _ref.moveItemUp, | ||
| 59 | - flatten = _ref.flatten, | ||
| 60 | - errorFields = _ref.errorFields, | ||
| 61 | - getFieldsProps = _ref.getFieldsProps, | ||
| 62 | - schema = _ref.schema, | ||
| 63 | - changeList = _ref.changeList, | ||
| 64 | - listData = _ref.listData; | ||
| 65 | - var _schema$props = schema.props, | ||
| 66 | - props = _schema$props === void 0 ? {} : _schema$props, | ||
| 67 | - _schema$itemProps = schema.itemProps, | ||
| 68 | - itemProps = _schema$itemProps === void 0 ? {} : _schema$itemProps; | ||
| 69 | - | ||
| 70 | - var buttons = itemProps.buttons, | ||
| 71 | - columnProps = _objectWithoutProperties(itemProps, _excluded); | ||
| 72 | - | ||
| 73 | - var _props$pagination = props.pagination, | ||
| 74 | - pagination = _props$pagination === void 0 ? {} : _props$pagination, | ||
| 75 | - rest = _objectWithoutProperties(props, _excluded2); | ||
| 76 | - | ||
| 77 | - var paginationConfig = pagination && _objectSpread({ | ||
| 78 | - size: 'small', | ||
| 79 | - hideOnSinglePage: true | ||
| 80 | - }, pagination); | ||
| 81 | - | ||
| 82 | - var currentIndex = useRef(-1); | ||
| 83 | - | ||
| 84 | - var _useSet = useSet({ | ||
| 85 | - showDrawer: false | ||
| 86 | - }), | ||
| 87 | - _useSet2 = _slicedToArray(_useSet, 2), | ||
| 88 | - state = _useSet2[0], | ||
| 89 | - setState = _useSet2[1]; | ||
| 90 | - | ||
| 91 | - var showDrawer = state.showDrawer; | ||
| 92 | - var dataSource = displayList.map(function (item, index) { | ||
| 93 | - return _objectSpread(_objectSpread({}, item), {}, { | ||
| 94 | - $idx: index | ||
| 95 | - }); | ||
| 96 | - }); | ||
| 97 | - var columns = children.map(function (child) { | ||
| 98 | - var item = flatten[child]; | ||
| 99 | - var schema = item && item.schema || {}; | ||
| 100 | - | ||
| 101 | - var _dataIndex = getKeyFromPath(child); | ||
| 102 | - | ||
| 103 | - return _objectSpread({ | ||
| 104 | - dataIndex: _dataIndex, | ||
| 105 | - title: schema.required ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { | ||
| 106 | - className: "fr-label-required" | ||
| 107 | - }, " *"), /*#__PURE__*/React.createElement("span", null, schema.title)) : schema.title, | ||
| 108 | - width: FIELD_LENGTH, | ||
| 109 | - render: function render(value, record) { | ||
| 110 | - var childPath = getDataPath(child, [record.$idx]); | ||
| 111 | - var errorObj = errorFields.find(function (item) { | ||
| 112 | - return item.name == childPath; | ||
| 113 | - }) || {}; //TODO: 万一error在更深的层,这个办法是find不到的,会展示那一行没有提示。可以整一行加一个红线的方式处理 | ||
| 114 | - | ||
| 115 | - return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", null, getDisplayValue(value, schema)), errorObj.error && /*#__PURE__*/React.createElement(ErrorMessage, { | ||
| 116 | - message: errorObj.error, | ||
| 117 | - schema: schema | ||
| 118 | - })); | ||
| 119 | - } | ||
| 120 | - }, columnProps); | ||
| 121 | - }); | ||
| 122 | - columns.push({ | ||
| 123 | - title: '操作', | ||
| 124 | - key: '$action', | ||
| 125 | - fixed: 'right', | ||
| 126 | - width: 120, | ||
| 127 | - render: function render(value, record, idx) { | ||
| 128 | - var index = value && value.$idx || 0; | ||
| 129 | - return /*#__PURE__*/React.createElement(_Space, null, /*#__PURE__*/React.createElement("a", { | ||
| 130 | - onClick: function onClick() { | ||
| 131 | - return openDrawer(index); | ||
| 132 | - } | ||
| 133 | - }, "\u7F16\u8F91"), !props.hideDelete && /*#__PURE__*/React.createElement(_Popconfirm, { | ||
| 134 | - title: "\u786E\u5B9A\u5220\u9664?", | ||
| 135 | - onConfirm: function onConfirm() { | ||
| 136 | - return deleteItem(index); | ||
| 137 | - }, | ||
| 138 | - okText: "\u786E\u5B9A", | ||
| 139 | - cancelText: "\u53D6\u6D88" | ||
| 140 | - }, /*#__PURE__*/React.createElement("a", null, "\u5220\u9664")), !props.hideMove && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_ArrowUpOutlined, { | ||
| 141 | - style: { | ||
| 142 | - color: '#1890ff', | ||
| 143 | - fontSize: 16, | ||
| 144 | - marginLeft: 4 | ||
| 145 | - }, | ||
| 146 | - onClick: function onClick() { | ||
| 147 | - return moveItemUp(idx); | ||
| 148 | - } | ||
| 149 | - }), /*#__PURE__*/React.createElement(_ArrowDownOutlined, { | ||
| 150 | - style: { | ||
| 151 | - color: '#1890ff', | ||
| 152 | - fontSize: 16, | ||
| 153 | - marginLeft: 4 | ||
| 154 | - }, | ||
| 155 | - onClick: function onClick() { | ||
| 156 | - return moveItemDown(idx); | ||
| 157 | - } | ||
| 158 | - }))); | ||
| 159 | - } | ||
| 160 | - }); | ||
| 161 | - var fieldsProps = getFieldsProps(currentIndex.current); | ||
| 162 | - | ||
| 163 | - var openDrawer = function openDrawer(index) { | ||
| 164 | - currentIndex.current = index; | ||
| 165 | - setState({ | ||
| 166 | - showDrawer: true | ||
| 167 | - }); | ||
| 168 | - }; | ||
| 169 | - | ||
| 170 | - var closeDrawer = function closeDrawer() { | ||
| 171 | - currentIndex.current = -1; | ||
| 172 | - setState({ | ||
| 173 | - showDrawer: false | ||
| 174 | - }); | ||
| 175 | - }; | ||
| 176 | - | ||
| 177 | - var handleAdd = function handleAdd() { | ||
| 178 | - var newIndex = addItem(); | ||
| 179 | - openDrawer(newIndex); | ||
| 180 | - }; | ||
| 181 | - | ||
| 182 | - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { | ||
| 183 | - className: "w-100 mb2 tr" | ||
| 184 | - }, !props.hideAdd && /*#__PURE__*/React.createElement(_Button, { | ||
| 185 | - type: "primary", | ||
| 186 | - size: "small", | ||
| 187 | - onClick: handleAdd | ||
| 188 | - }, "\u65B0\u589E"), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { | ||
| 189 | - var callback = item.callback, | ||
| 190 | - text = item.text, | ||
| 191 | - html = item.html; | ||
| 192 | - | ||
| 193 | - var onClick = function onClick() { | ||
| 194 | - console.log({ | ||
| 195 | - value: listData, | ||
| 196 | - onChange: changeList, | ||
| 197 | - schema: schema | ||
| 198 | - }); | ||
| 199 | - }; | ||
| 200 | - | ||
| 201 | - if (typeof window[callback] === 'function') { | ||
| 202 | - onClick = function onClick() { | ||
| 203 | - window[callback]({ | ||
| 204 | - value: listData, | ||
| 205 | - onChange: changeList, | ||
| 206 | - schema: schema | ||
| 207 | - }); | ||
| 208 | - }; | ||
| 209 | - } | ||
| 210 | - | ||
| 211 | - return /*#__PURE__*/React.createElement(_Button, { | ||
| 212 | - key: idx.toString(), | ||
| 213 | - style: { | ||
| 214 | - marginLeft: 8 | ||
| 215 | - }, | ||
| 216 | - size: "small", | ||
| 217 | - onClick: onClick | ||
| 218 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 219 | - dangerouslySetInnerHTML: { | ||
| 220 | - __html: html || text | ||
| 221 | - } | ||
| 222 | - })); | ||
| 223 | - }) : null), /*#__PURE__*/React.createElement(_Drawer, { | ||
| 224 | - width: "600", | ||
| 225 | - title: "\u7F16\u8F91", | ||
| 226 | - placement: "right", | ||
| 227 | - onClose: closeDrawer, | ||
| 228 | - visible: showDrawer, | ||
| 229 | - destroyOnClose: true // 必须要加,currentIndex不是一个state,Core不会重新渲染就跪了 | ||
| 230 | - | ||
| 231 | - }, /*#__PURE__*/React.createElement("div", { | ||
| 232 | - className: "fr-container" | ||
| 233 | - }, /*#__PURE__*/React.createElement(Core, fieldsProps))), /*#__PURE__*/React.createElement(_Table, _extends((_extends2 = { | ||
| 234 | - size: "small", | ||
| 235 | - scroll: { | ||
| 236 | - x: 'max-content' | ||
| 237 | - }, | ||
| 238 | - columns: columns, | ||
| 239 | - dataSource: dataSource, | ||
| 240 | - rowClassName: function rowClassName(record, idx) { | ||
| 241 | - var index = record && record.$idx; | ||
| 242 | - var hasError = errorFields.find(function (item) { | ||
| 243 | - return item.name.indexOf("".concat(dataPath, "[").concat(index, "]")) > -1; | ||
| 244 | - }); | ||
| 245 | - return hasError ? 'fr-row-error' : ''; | ||
| 246 | - }, | ||
| 247 | - rowKey: "$idx" | ||
| 248 | - }, _defineProperty(_extends2, "size", "small"), _defineProperty(_extends2, "pagination", paginationConfig), _extends2), rest))); | ||
| 249 | -}; | ||
| 250 | - | ||
| 251 | -export default DrawerList; |
es/core/RenderChildren/RenderList/SimpleList.js
deleted
100644 → 0
| 1 | -import "antd/es/button/style"; | ||
| 2 | -import _Button from "antd/es/button"; | ||
| 3 | -import _ArrowDownOutlined from "@ant-design/icons/es/icons/ArrowDownOutlined"; | ||
| 4 | -import _ArrowUpOutlined from "@ant-design/icons/es/icons/ArrowUpOutlined"; | ||
| 5 | -import _CopyOutlined from "@ant-design/icons/es/icons/CopyOutlined"; | ||
| 6 | -import "antd/es/popconfirm/style"; | ||
| 7 | -import _Popconfirm from "antd/es/popconfirm"; | ||
| 8 | -import _DeleteOutlined from "@ant-design/icons/es/icons/DeleteOutlined"; | ||
| 9 | - | ||
| 10 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 11 | - | ||
| 12 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 13 | - | ||
| 14 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 15 | - | ||
| 16 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 17 | - | ||
| 18 | -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
| 19 | - | ||
| 20 | -import React from 'react'; | ||
| 21 | -import Core from '../../index'; | ||
| 22 | - | ||
| 23 | -var SimpleList = function SimpleList(_ref) { | ||
| 24 | - var schema = _ref.schema, | ||
| 25 | - _ref$displayList = _ref.displayList, | ||
| 26 | - displayList = _ref$displayList === void 0 ? [] : _ref$displayList, | ||
| 27 | - listData = _ref.listData, | ||
| 28 | - changeList = _ref.changeList, | ||
| 29 | - deleteItem = _ref.deleteItem, | ||
| 30 | - addItem = _ref.addItem, | ||
| 31 | - copyItem = _ref.copyItem, | ||
| 32 | - moveItemUp = _ref.moveItemUp, | ||
| 33 | - moveItemDown = _ref.moveItemDown, | ||
| 34 | - getFieldsProps = _ref.getFieldsProps; | ||
| 35 | - var _schema$props = schema.props, | ||
| 36 | - props = _schema$props === void 0 ? {} : _schema$props, | ||
| 37 | - itemProps = schema.itemProps; | ||
| 38 | - var addBtnProps = { | ||
| 39 | - type: 'dashed', | ||
| 40 | - children: '新增一条' | ||
| 41 | - }; | ||
| 42 | - | ||
| 43 | - if (props.addBtnProps && _typeof(props.addBtnProps) === 'object') { | ||
| 44 | - addBtnProps = _objectSpread(_objectSpread({}, addBtnProps), props.addBtnProps); | ||
| 45 | - } | ||
| 46 | - | ||
| 47 | - return /*#__PURE__*/React.createElement("div", { | ||
| 48 | - className: "fr-list-1" | ||
| 49 | - }, displayList.map(function (item, idx) { | ||
| 50 | - var fieldsProps = getFieldsProps(idx); | ||
| 51 | - fieldsProps.displayType = 'inline'; | ||
| 52 | - | ||
| 53 | - if (props.hideTitle) { | ||
| 54 | - fieldsProps.hideTitle = true; | ||
| 55 | - } | ||
| 56 | - | ||
| 57 | - return /*#__PURE__*/React.createElement("div", { | ||
| 58 | - key: idx, | ||
| 59 | - style: { | ||
| 60 | - display: 'flex' | ||
| 61 | - } | ||
| 62 | - }, /*#__PURE__*/React.createElement(Core, fieldsProps), /*#__PURE__*/React.createElement("div", { | ||
| 63 | - style: { | ||
| 64 | - marginTop: 6 | ||
| 65 | - } | ||
| 66 | - }, !props.hideDelete && /*#__PURE__*/React.createElement(_Popconfirm, { | ||
| 67 | - title: "\u786E\u5B9A\u5220\u9664?", | ||
| 68 | - onConfirm: function onConfirm() { | ||
| 69 | - return deleteItem(idx); | ||
| 70 | - }, | ||
| 71 | - okText: "\u786E\u5B9A", | ||
| 72 | - cancelText: "\u53D6\u6D88" | ||
| 73 | - }, /*#__PURE__*/React.createElement(_DeleteOutlined, { | ||
| 74 | - style: { | ||
| 75 | - fontSize: 17, | ||
| 76 | - marginLeft: 8 | ||
| 77 | - } | ||
| 78 | - })), !props.hideAdd && !props.hideCopy && /*#__PURE__*/React.createElement(_CopyOutlined, { | ||
| 79 | - style: { | ||
| 80 | - fontSize: 15, | ||
| 81 | - marginLeft: 8 | ||
| 82 | - }, | ||
| 83 | - onClick: function onClick() { | ||
| 84 | - return copyItem(idx); | ||
| 85 | - } | ||
| 86 | - }), !props.hideMove && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_ArrowUpOutlined, { | ||
| 87 | - style: { | ||
| 88 | - fontSize: 16, | ||
| 89 | - marginLeft: 8 | ||
| 90 | - }, | ||
| 91 | - onClick: function onClick() { | ||
| 92 | - return moveItemUp(idx); | ||
| 93 | - } | ||
| 94 | - }), /*#__PURE__*/React.createElement(_ArrowDownOutlined, { | ||
| 95 | - style: { | ||
| 96 | - fontSize: 16, | ||
| 97 | - marginLeft: 8 | ||
| 98 | - }, | ||
| 99 | - onClick: function onClick() { | ||
| 100 | - return moveItemDown(idx); | ||
| 101 | - } | ||
| 102 | - })))); | ||
| 103 | - }), /*#__PURE__*/React.createElement("div", { | ||
| 104 | - style: { | ||
| 105 | - marginTop: displayList.length > 0 ? 0 : 8 | ||
| 106 | - } | ||
| 107 | - }, !props.hideAdd && /*#__PURE__*/React.createElement(_Button, _extends({ | ||
| 108 | - onClick: addItem | ||
| 109 | - }, addBtnProps)), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { | ||
| 110 | - var callback = item.callback, | ||
| 111 | - text = item.text, | ||
| 112 | - html = item.html; | ||
| 113 | - | ||
| 114 | - var onClick = function onClick() { | ||
| 115 | - console.log({ | ||
| 116 | - value: listData, | ||
| 117 | - onChange: changeList, | ||
| 118 | - schema: schema | ||
| 119 | - }); | ||
| 120 | - }; | ||
| 121 | - | ||
| 122 | - if (typeof window[callback] === 'function') { | ||
| 123 | - onClick = function onClick() { | ||
| 124 | - window[callback]({ | ||
| 125 | - value: listData, | ||
| 126 | - onChange: changeList, | ||
| 127 | - schema: schema | ||
| 128 | - }); | ||
| 129 | - }; | ||
| 130 | - } | ||
| 131 | - | ||
| 132 | - return /*#__PURE__*/React.createElement(_Button, { | ||
| 133 | - key: idx.toString(), | ||
| 134 | - style: { | ||
| 135 | - marginLeft: 8 | ||
| 136 | - }, | ||
| 137 | - type: "dashed", | ||
| 138 | - onClick: onClick | ||
| 139 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 140 | - dangerouslySetInnerHTML: { | ||
| 141 | - __html: html || text | ||
| 142 | - } | ||
| 143 | - })); | ||
| 144 | - }) : null)); | ||
| 145 | -}; | ||
| 146 | - | ||
| 147 | -export default SimpleList; |
es/core/RenderChildren/RenderList/TableList.js
deleted
100644 → 0
| 1 | -import "antd/es/table/style"; | ||
| 2 | -import _Table from "antd/es/table"; | ||
| 3 | -import "antd/es/button/style"; | ||
| 4 | -import _Button from "antd/es/button"; | ||
| 5 | -import "antd/es/space/style"; | ||
| 6 | -import _Space from "antd/es/space"; | ||
| 7 | -import _ArrowDownOutlined from "@ant-design/icons/es/icons/ArrowDownOutlined"; | ||
| 8 | -import _ArrowUpOutlined from "@ant-design/icons/es/icons/ArrowUpOutlined"; | ||
| 9 | -import "antd/es/popconfirm/style"; | ||
| 10 | -import _Popconfirm from "antd/es/popconfirm"; | ||
| 11 | -var _excluded = ["buttons"], | ||
| 12 | - _excluded2 = ["pagination"]; | ||
| 13 | - | ||
| 14 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 15 | - | ||
| 16 | -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } | ||
| 17 | - | ||
| 18 | -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 19 | - | ||
| 20 | -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
| 21 | - | ||
| 22 | -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } | ||
| 23 | - | ||
| 24 | -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } | ||
| 25 | - | ||
| 26 | -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
| 27 | - | ||
| 28 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 29 | - | ||
| 30 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 31 | - | ||
| 32 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 33 | - | ||
| 34 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 35 | - | ||
| 36 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 37 | - | ||
| 38 | -/* eslint-disable jsx-a11y/anchor-is-valid */ | ||
| 39 | -import React from 'react'; | ||
| 40 | -import Core from '../../index'; | ||
| 41 | -// import ArrowDown from '../../../components/ArrowDown'; | ||
| 42 | -var FIELD_LENGTH = 170; | ||
| 43 | - | ||
| 44 | -var TableList = function TableList(_ref) { | ||
| 45 | - var _ref$displayList = _ref.displayList, | ||
| 46 | - displayList = _ref$displayList === void 0 ? [] : _ref$displayList, | ||
| 47 | - dataIndex = _ref.dataIndex, | ||
| 48 | - children = _ref.children, | ||
| 49 | - deleteItem = _ref.deleteItem, | ||
| 50 | - copyItem = _ref.copyItem, | ||
| 51 | - addItem = _ref.addItem, | ||
| 52 | - moveItemUp = _ref.moveItemUp, | ||
| 53 | - moveItemDown = _ref.moveItemDown, | ||
| 54 | - flatten = _ref.flatten, | ||
| 55 | - schema = _ref.schema, | ||
| 56 | - listData = _ref.listData, | ||
| 57 | - changeList = _ref.changeList; | ||
| 58 | - var _schema$props = schema.props, | ||
| 59 | - props = _schema$props === void 0 ? {} : _schema$props, | ||
| 60 | - _schema$itemProps = schema.itemProps, | ||
| 61 | - itemProps = _schema$itemProps === void 0 ? {} : _schema$itemProps; | ||
| 62 | - | ||
| 63 | - var buttons = itemProps.buttons, | ||
| 64 | - columnProps = _objectWithoutProperties(itemProps, _excluded); | ||
| 65 | - | ||
| 66 | - var _props$pagination = props.pagination, | ||
| 67 | - pagination = _props$pagination === void 0 ? {} : _props$pagination, | ||
| 68 | - rest = _objectWithoutProperties(props, _excluded2); | ||
| 69 | - | ||
| 70 | - var paginationConfig = pagination && _objectSpread({ | ||
| 71 | - size: 'small', | ||
| 72 | - hideOnSinglePage: true | ||
| 73 | - }, pagination); | ||
| 74 | - | ||
| 75 | - var dataSource = displayList.map(function (item, idx) { | ||
| 76 | - return { | ||
| 77 | - index: idx | ||
| 78 | - }; | ||
| 79 | - }); | ||
| 80 | - var columns = children.map(function (child) { | ||
| 81 | - var item = flatten[child]; | ||
| 82 | - var schema = item && item.schema || {}; | ||
| 83 | - return _objectSpread({ | ||
| 84 | - dataIndex: child, | ||
| 85 | - title: schema.required ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { | ||
| 86 | - className: "fr-label-required" | ||
| 87 | - }, " *"), /*#__PURE__*/React.createElement("span", null, schema.title)) : schema.title, | ||
| 88 | - width: FIELD_LENGTH, | ||
| 89 | - render: function render(value, record, index) { | ||
| 90 | - // Check: record.index 似乎是antd自己会给的,不错哦 | ||
| 91 | - var childIndex = [].concat(_toConsumableArray(dataIndex), [record.index]); | ||
| 92 | - return /*#__PURE__*/React.createElement(Core, { | ||
| 93 | - hideTitle: true, | ||
| 94 | - displayType: "inline", | ||
| 95 | - key: index.toString(), | ||
| 96 | - id: child, | ||
| 97 | - dataIndex: childIndex | ||
| 98 | - }); | ||
| 99 | - } | ||
| 100 | - }, columnProps); | ||
| 101 | - }); | ||
| 102 | - | ||
| 103 | - if (!props.hideDelete || !props.hideAdd || !props.hideCopy || !props.hideMove) { | ||
| 104 | - columns.push({ | ||
| 105 | - title: '操作', | ||
| 106 | - key: '$action', | ||
| 107 | - fixed: 'right', | ||
| 108 | - width: 120, | ||
| 109 | - render: function render(value, record, idx) { | ||
| 110 | - return /*#__PURE__*/React.createElement(_Space, null, !props.hideAdd && !props.hideCopy && /*#__PURE__*/React.createElement("a", { | ||
| 111 | - onClick: function onClick() { | ||
| 112 | - return copyItem(idx); | ||
| 113 | - } | ||
| 114 | - }, "\u590D\u5236"), !props.hideDelete && /*#__PURE__*/React.createElement(_Popconfirm, { | ||
| 115 | - title: "\u786E\u5B9A\u5220\u9664?", | ||
| 116 | - onConfirm: function onConfirm() { | ||
| 117 | - return deleteItem(idx); | ||
| 118 | - }, | ||
| 119 | - okText: "\u786E\u5B9A", | ||
| 120 | - cancelText: "\u53D6\u6D88" | ||
| 121 | - }, /*#__PURE__*/React.createElement("a", null, "\u5220\u9664")), !props.hideMove && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_ArrowUpOutlined, { | ||
| 122 | - style: { | ||
| 123 | - color: '#1890ff', | ||
| 124 | - fontSize: 16, | ||
| 125 | - marginLeft: 4 | ||
| 126 | - }, | ||
| 127 | - onClick: function onClick() { | ||
| 128 | - return moveItemUp(idx); | ||
| 129 | - } | ||
| 130 | - }), /*#__PURE__*/React.createElement(_ArrowDownOutlined, { | ||
| 131 | - style: { | ||
| 132 | - color: '#1890ff', | ||
| 133 | - fontSize: 16, | ||
| 134 | - marginLeft: 4 | ||
| 135 | - }, | ||
| 136 | - onClick: function onClick() { | ||
| 137 | - return moveItemDown(idx); | ||
| 138 | - } | ||
| 139 | - }))); | ||
| 140 | - } | ||
| 141 | - }); | ||
| 142 | - } | ||
| 143 | - | ||
| 144 | - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { | ||
| 145 | - className: "w-100 mb2 tr" | ||
| 146 | - }, !props.hideAdd && /*#__PURE__*/React.createElement(_Button, { | ||
| 147 | - type: "primary", | ||
| 148 | - size: "small", | ||
| 149 | - onClick: addItem | ||
| 150 | - }, "\u65B0\u589E"), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { | ||
| 151 | - var callback = item.callback, | ||
| 152 | - text = item.text, | ||
| 153 | - html = item.html; | ||
| 154 | - | ||
| 155 | - var onClick = function onClick() { | ||
| 156 | - console.log({ | ||
| 157 | - value: listData, | ||
| 158 | - onChange: changeList, | ||
| 159 | - schema: schema | ||
| 160 | - }); | ||
| 161 | - }; | ||
| 162 | - | ||
| 163 | - if (typeof window[callback] === 'function') { | ||
| 164 | - onClick = function onClick() { | ||
| 165 | - window[callback]({ | ||
| 166 | - value: listData, | ||
| 167 | - onChange: changeList, | ||
| 168 | - schema: schema | ||
| 169 | - }); | ||
| 170 | - }; | ||
| 171 | - } | ||
| 172 | - | ||
| 173 | - return /*#__PURE__*/React.createElement(_Button, { | ||
| 174 | - key: idx.toString(), | ||
| 175 | - style: { | ||
| 176 | - marginLeft: 8 | ||
| 177 | - }, | ||
| 178 | - size: "small", | ||
| 179 | - onClick: onClick | ||
| 180 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 181 | - dangerouslySetInnerHTML: { | ||
| 182 | - __html: html || text | ||
| 183 | - } | ||
| 184 | - })); | ||
| 185 | - }) : null), /*#__PURE__*/React.createElement(_Table, _extends({ | ||
| 186 | - scroll: { | ||
| 187 | - x: 'max-content' | ||
| 188 | - }, | ||
| 189 | - columns: columns, | ||
| 190 | - dataSource: dataSource, | ||
| 191 | - rowKey: "index", | ||
| 192 | - size: "small", | ||
| 193 | - pagination: paginationConfig | ||
| 194 | - }, rest))); | ||
| 195 | -}; | ||
| 196 | - | ||
| 197 | -export default TableList; |
es/core/RenderChildren/RenderList/VirtualList.js
deleted
100644 → 0
| 1 | -import "antd/es/table/style"; | ||
| 2 | -import _Table from "antd/es/table"; | ||
| 3 | -import "antd/es/alert/style"; | ||
| 4 | -import _Alert from "antd/es/alert"; | ||
| 5 | -import "antd/es/message/style"; | ||
| 6 | -import _message from "antd/es/message"; | ||
| 7 | -import "antd/es/input/style"; | ||
| 8 | -import _Input from "antd/es/input"; | ||
| 9 | -import _SearchOutlined from "@ant-design/icons/es/icons/SearchOutlined"; | ||
| 10 | -import _PlusCircleOutlined from "@ant-design/icons/es/icons/PlusCircleOutlined"; | ||
| 11 | -import _SelectOutlined from "@ant-design/icons/es/icons/SelectOutlined"; | ||
| 12 | -import "antd/es/tooltip/style"; | ||
| 13 | -import _Tooltip from "antd/es/tooltip"; | ||
| 14 | -import "antd/es/button/style"; | ||
| 15 | -import _Button from "antd/es/button"; | ||
| 16 | -import _ExclamationCircleOutlined from "@ant-design/icons/es/icons/ExclamationCircleOutlined"; | ||
| 17 | -import _ExpandAltOutlined from "@ant-design/icons/es/icons/ExpandAltOutlined"; | ||
| 18 | -import _EditOutlined from "@ant-design/icons/es/icons/EditOutlined"; | ||
| 19 | -import _EyeOutlined from "@ant-design/icons/es/icons/EyeOutlined"; | ||
| 20 | -import _CopyOutlined from "@ant-design/icons/es/icons/CopyOutlined"; | ||
| 21 | -import _PlusOutlined from "@ant-design/icons/es/icons/PlusOutlined"; | ||
| 22 | -import _DeleteOutlined from "@ant-design/icons/es/icons/DeleteOutlined"; | ||
| 23 | -import _ImportOutlined from "@ant-design/icons/es/icons/ImportOutlined"; | ||
| 24 | -import _ExportOutlined from "@ant-design/icons/es/icons/ExportOutlined"; | ||
| 25 | -import "antd/es/modal/style"; | ||
| 26 | -import _Modal from "antd/es/modal"; | ||
| 27 | -var _excluded = ["scrollY", "summary", "batchKey", "bar", "line", "searchKey", "rowSelection"]; | ||
| 28 | - | ||
| 29 | -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } | ||
| 30 | - | ||
| 31 | -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } | ||
| 32 | - | ||
| 33 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 34 | - | ||
| 35 | -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } | ||
| 36 | - | ||
| 37 | -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 38 | - | ||
| 39 | -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } | ||
| 40 | - | ||
| 41 | -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } | ||
| 42 | - | ||
| 43 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 44 | - | ||
| 45 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 46 | - | ||
| 47 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 48 | - | ||
| 49 | -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } | ||
| 50 | - | ||
| 51 | -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 52 | - | ||
| 53 | -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
| 54 | - | ||
| 55 | -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
| 56 | - | ||
| 57 | -function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } | ||
| 58 | - | ||
| 59 | -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } | ||
| 60 | - | ||
| 61 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 62 | - | ||
| 63 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 64 | - | ||
| 65 | -/* eslint-disable jsx-a11y/anchor-is-valid */ | ||
| 66 | -import React, { useEffect, useMemo, useState } from 'react'; | ||
| 67 | -import Core from '../../index'; | ||
| 68 | -var confirm = _Modal.confirm; | ||
| 69 | -import { useVT } from 'virtualizedtableforantd4'; | ||
| 70 | -var BUTTON_ICONS_MAP = { | ||
| 71 | - ExportOutlined: /*#__PURE__*/React.createElement(_ExportOutlined, null), | ||
| 72 | - ImportOutlined: /*#__PURE__*/React.createElement(_ImportOutlined, null), | ||
| 73 | - DeleteOutlined: /*#__PURE__*/React.createElement(_DeleteOutlined, null), | ||
| 74 | - PlusOutlined: /*#__PURE__*/React.createElement(_PlusOutlined, null), | ||
| 75 | - CopyOutlined: /*#__PURE__*/React.createElement(_CopyOutlined, null), | ||
| 76 | - EyeOutlined: /*#__PURE__*/React.createElement(_EyeOutlined, null), | ||
| 77 | - EditOutlined: /*#__PURE__*/React.createElement(_EditOutlined, null), | ||
| 78 | - remove: /*#__PURE__*/React.createElement(_ExpandAltOutlined, null) | ||
| 79 | -}; | ||
| 80 | -var FIELD_LENGTH = 170; | ||
| 81 | -var EXPORT_STATUS = { | ||
| 82 | - // 执行中 | ||
| 83 | - PROCESSING: 'info', | ||
| 84 | - // 成功 | ||
| 85 | - SUCCESS: 'success', | ||
| 86 | - // 失败 | ||
| 87 | - FAIL: 'error' | ||
| 88 | -}; | ||
| 89 | - | ||
| 90 | -var VirtualList = function VirtualList(_ref) { | ||
| 91 | - var _line$buttons, _props$bar2; | ||
| 92 | - | ||
| 93 | - var _ref$displayList = _ref.displayList, | ||
| 94 | - displayList = _ref$displayList === void 0 ? [] : _ref$displayList, | ||
| 95 | - dataIndex = _ref.dataIndex, | ||
| 96 | - children = _ref.children, | ||
| 97 | - deleteItem = _ref.deleteItem, | ||
| 98 | - batchDelete = _ref.batchDelete, | ||
| 99 | - addItem = _ref.addItem, | ||
| 100 | - moveItemUp = _ref.moveItemUp, | ||
| 101 | - moveItemDown = _ref.moveItemDown, | ||
| 102 | - flatten = _ref.flatten, | ||
| 103 | - schema = _ref.schema, | ||
| 104 | - listData = _ref.listData, | ||
| 105 | - changeList = _ref.changeList, | ||
| 106 | - copyItem = _ref.copyItem; | ||
| 107 | - var _schema$props = schema.props, | ||
| 108 | - props = _schema$props === void 0 ? {} : _schema$props, | ||
| 109 | - _schema$itemProps = schema.itemProps, | ||
| 110 | - itemProps = _schema$itemProps === void 0 ? {} : _schema$itemProps, | ||
| 111 | - fieldName = schema.fieldName, | ||
| 112 | - _schema$qxProps = schema.qxProps, | ||
| 113 | - qxProps = _schema$qxProps === void 0 ? {} : _schema$qxProps; | ||
| 114 | - | ||
| 115 | - var _props$scrollY = props.scrollY, | ||
| 116 | - scrollY = _props$scrollY === void 0 ? 600 : _props$scrollY, | ||
| 117 | - _summary = props.summary, | ||
| 118 | - batchKey = props.batchKey, | ||
| 119 | - _props$bar = props.bar, | ||
| 120 | - bar = _props$bar === void 0 ? {} : _props$bar, | ||
| 121 | - _props$line = props.line, | ||
| 122 | - line = _props$line === void 0 ? {} : _props$line, | ||
| 123 | - searchKey = props.searchKey, | ||
| 124 | - rowSelection = props.rowSelection, | ||
| 125 | - rest = _objectWithoutProperties(props, _excluded); | ||
| 126 | - | ||
| 127 | - var _useVT = useVT(function () { | ||
| 128 | - return { | ||
| 129 | - scroll: { | ||
| 130 | - y: scrollY | ||
| 131 | - } | ||
| 132 | - }; | ||
| 133 | - }, []), | ||
| 134 | - _useVT2 = _slicedToArray(_useVT, 2), | ||
| 135 | - vt = _useVT2[0], | ||
| 136 | - set_components = _useVT2[1]; | ||
| 137 | - | ||
| 138 | - var _useState = useState(''), | ||
| 139 | - _useState2 = _slicedToArray(_useState, 2), | ||
| 140 | - keyWord = _useState2[0], | ||
| 141 | - setKeyWord = _useState2[1]; | ||
| 142 | - | ||
| 143 | - var _useState3 = useState([]), | ||
| 144 | - _useState4 = _slicedToArray(_useState3, 2), | ||
| 145 | - selectedRowKeys = _useState4[0], | ||
| 146 | - setSelectedRowKeys = _useState4[1]; | ||
| 147 | - | ||
| 148 | - var _useState5 = useState(), | ||
| 149 | - _useState6 = _slicedToArray(_useState5, 2), | ||
| 150 | - exportProgressData = _useState6[0], | ||
| 151 | - setProgressData = _useState6[1]; | ||
| 152 | - | ||
| 153 | - var _useState7 = useState(), | ||
| 154 | - _useState8 = _slicedToArray(_useState7, 2), | ||
| 155 | - intervalName = _useState8[0], | ||
| 156 | - setIntervalName = _useState8[1]; | ||
| 157 | - | ||
| 158 | - var newRowSelection = useMemo(function () { | ||
| 159 | - var _bar$buttons; | ||
| 160 | - | ||
| 161 | - var _rowSelection = _.cloneDeep(rowSelection); // 根据是否含有批量操作按钮,渲染表格是否可选择 | ||
| 162 | - | ||
| 163 | - | ||
| 164 | - var selectable = false; | ||
| 165 | - | ||
| 166 | - if (((_bar$buttons = bar.buttons) === null || _bar$buttons === void 0 ? void 0 : _bar$buttons.findIndex(function (item) { | ||
| 167 | - return item.code === 'DELETE'; | ||
| 168 | - })) > -1) { | ||
| 169 | - selectable = true; | ||
| 170 | - } | ||
| 171 | - | ||
| 172 | - if (_rowSelection && selectable) { | ||
| 173 | - _rowSelection.onChange = function (_selectedRowKeys) { | ||
| 174 | - setSelectedRowKeys(_selectedRowKeys); | ||
| 175 | - }; | ||
| 176 | - | ||
| 177 | - _rowSelection.selectedRowKeys = selectedRowKeys; | ||
| 178 | - } | ||
| 179 | - | ||
| 180 | - return _rowSelection; | ||
| 181 | - }, [rowSelection, selectedRowKeys, bar]); | ||
| 182 | - useEffect(function () { | ||
| 183 | - displayList.forEach(function (item, index) { | ||
| 184 | - item._index = index; | ||
| 185 | - }); | ||
| 186 | - }, [displayList]); | ||
| 187 | - | ||
| 188 | - if (props.originWidget === 'relSelector') { | ||
| 189 | - displayList = displayList.map(function (item) { | ||
| 190 | - if (!item.hasOwnProperty('$auth') || item.$auth) { | ||
| 191 | - return item; | ||
| 192 | - } | ||
| 193 | - }); | ||
| 194 | - } | ||
| 195 | - | ||
| 196 | - var dataSource = (keyWord.length ? displayList.filter(function (item) { | ||
| 197 | - var _item$searchKey; | ||
| 198 | - | ||
| 199 | - return ((_item$searchKey = item[searchKey]) === null || _item$searchKey === void 0 ? void 0 : _item$searchKey.indexOf(keyWord)) > -1; | ||
| 200 | - }) : displayList).map(function (item, idx) { | ||
| 201 | - return _objectSpread({ | ||
| 202 | - index: idx | ||
| 203 | - }, item); | ||
| 204 | - }); | ||
| 205 | - var barButtons = useMemo(function () { | ||
| 206 | - var _barButtons = _.cloneDeep(bar.buttons || []); | ||
| 207 | - | ||
| 208 | - var index = _barButtons.findIndex(function (item) { | ||
| 209 | - return item.code === 'ADD'; | ||
| 210 | - }); | ||
| 211 | - | ||
| 212 | - if (index > -1) { | ||
| 213 | - var addBtn = _barButtons.splice(index, 1); | ||
| 214 | - | ||
| 215 | - _barButtons.unshift.apply(_barButtons, _toConsumableArray(addBtn)); | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - if (batchKey) { | ||
| 219 | - _barButtons.push({ | ||
| 220 | - code: 'BATCH_ADD', | ||
| 221 | - batch: true, | ||
| 222 | - action: 'SYS', | ||
| 223 | - name: '批量新增' | ||
| 224 | - }); | ||
| 225 | - } | ||
| 226 | - | ||
| 227 | - return _barButtons; | ||
| 228 | - }, [props]); | ||
| 229 | - var columns = children.map(function (child) { | ||
| 230 | - var item = flatten[child]; | ||
| 231 | - var schema = item && item.schema || {}; | ||
| 232 | - return { | ||
| 233 | - dataIndex: child, | ||
| 234 | - width: schema.width ? Number(schema.width) || FIELD_LENGTH : FIELD_LENGTH, | ||
| 235 | - align: schema.align || 'left', | ||
| 236 | - fixed: schema.fixed, | ||
| 237 | - title: /*#__PURE__*/React.createElement("div", { | ||
| 238 | - style: { | ||
| 239 | - width: (parseInt(schema.width) || FIELD_LENGTH) + "px" | ||
| 240 | - } | ||
| 241 | - }, schema.required ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { | ||
| 242 | - className: "fr-label-required" | ||
| 243 | - }, " *"), /*#__PURE__*/React.createElement("span", null, schema.title)) : schema.title), | ||
| 244 | - render: function render(value, record, index) { | ||
| 245 | - // Check: record.index 似乎是antd自己会给的,不错哦 | ||
| 246 | - var childIndex = [].concat(_toConsumableArray(dataIndex), [record.index]); | ||
| 247 | - return /*#__PURE__*/React.createElement(Core, { | ||
| 248 | - hideTitle: true, | ||
| 249 | - displayType: "inline", | ||
| 250 | - key: index.toString(), | ||
| 251 | - id: child, | ||
| 252 | - dataIndex: childIndex | ||
| 253 | - }); | ||
| 254 | - } | ||
| 255 | - }; | ||
| 256 | - }); | ||
| 257 | - | ||
| 258 | - var handleAuth = function handleAuth(record, code) { | ||
| 259 | - switch (code) { | ||
| 260 | - case 'VIEW': | ||
| 261 | - return !record.VIEW_flag_; | ||
| 262 | - | ||
| 263 | - case 'DELETE': | ||
| 264 | - return !record.DELETE_flag_; | ||
| 265 | - | ||
| 266 | - case 'EDIT': | ||
| 267 | - return !record.EDIT_flag_; | ||
| 268 | - } | ||
| 269 | - }; | ||
| 270 | - | ||
| 271 | - var handleState = function handleState(record, code, originWidget) { | ||
| 272 | - if (!record.hasOwnProperty('$auth')) { | ||
| 273 | - if (originWidget === 'relSelector') { | ||
| 274 | - if (code === 'REMOVE') { | ||
| 275 | - return ''; | ||
| 276 | - } else { | ||
| 277 | - return 'none'; | ||
| 278 | - } | ||
| 279 | - } | ||
| 280 | - } | ||
| 281 | - | ||
| 282 | - return ''; | ||
| 283 | - }; | ||
| 284 | - | ||
| 285 | - if (!props.hideDelete && ((_line$buttons = line.buttons) === null || _line$buttons === void 0 ? void 0 : _line$buttons.length) || Array.isArray(itemProps.buttons) || props.removeable) { | ||
| 286 | - var top = line.top, | ||
| 287 | - _line$style = line.style, | ||
| 288 | - style = _line$style === void 0 ? 'ICON' : _line$style, | ||
| 289 | - fixed = line.fixed, | ||
| 290 | - buttons = line.buttons; | ||
| 291 | - var action = { | ||
| 292 | - title: '操作', | ||
| 293 | - key: '$action', | ||
| 294 | - fixed: fixed ? top ? 'left' : 'right' : props.originWidget === 'subform' ? 'right' : false, | ||
| 295 | - align: 'center', | ||
| 296 | - width: ((buttons || []).length + (props.removeable ? 1 : 0)) * (style === 'ICON' ? 32 : style === 'TEXT' ? 36 : 57) + 16, | ||
| 297 | - render: function render(value, record, idx) { | ||
| 298 | - return /*#__PURE__*/React.createElement(React.Fragment, null, Array.isArray(itemProps.buttons) ? itemProps.buttons.map(function (item, idx) { | ||
| 299 | - var callback = item.callback, | ||
| 300 | - text = item.text, | ||
| 301 | - html = item.html; | ||
| 302 | - | ||
| 303 | - var onClick = function onClick() {}; | ||
| 304 | - | ||
| 305 | - if (typeof window[callback] === 'function') { | ||
| 306 | - onClick = function onClick() { | ||
| 307 | - window[callback]({ | ||
| 308 | - value: listData, | ||
| 309 | - onChange: changeList, | ||
| 310 | - schema: schema | ||
| 311 | - }); | ||
| 312 | - }; | ||
| 313 | - } | ||
| 314 | - | ||
| 315 | - return /*#__PURE__*/React.createElement("a", { | ||
| 316 | - key: idx.toString(), | ||
| 317 | - style: { | ||
| 318 | - marginLeft: 8 | ||
| 319 | - }, | ||
| 320 | - size: "small", | ||
| 321 | - onClick: onClick | ||
| 322 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 323 | - dangerouslySetInnerHTML: { | ||
| 324 | - __html: html || text | ||
| 325 | - } | ||
| 326 | - })); | ||
| 327 | - }) : null, Array.isArray(line.buttons) ? line.buttons.map(function (item) { | ||
| 328 | - var name = item.name, | ||
| 329 | - code = item.code, | ||
| 330 | - needConfirm = item.needConfirm, | ||
| 331 | - confirmContent = item.confirmContent, | ||
| 332 | - icon = item.icon; | ||
| 333 | - return /*#__PURE__*/React.createElement(_Tooltip, { | ||
| 334 | - title: name | ||
| 335 | - }, /*#__PURE__*/React.createElement(_Button, _extends({ | ||
| 336 | - key: code, | ||
| 337 | - style: { | ||
| 338 | - marginLeft: 8, | ||
| 339 | - display: "".concat(handleState(record, code, props.originWidget)) | ||
| 340 | - } | ||
| 341 | - }, item, { | ||
| 342 | - icon: icon && style !== 'TEXT' ? BUTTON_ICONS_MAP[icon] : null, | ||
| 343 | - type: 'link', | ||
| 344 | - size: 'small', | ||
| 345 | - disabled: props.originWidget === 'subform' ? false : handleAuth(record, code), | ||
| 346 | - onClick: function onClick() { | ||
| 347 | - if (needConfirm && confirmContent) { | ||
| 348 | - confirm({ | ||
| 349 | - title: confirmContent, | ||
| 350 | - icon: /*#__PURE__*/React.createElement(_ExclamationCircleOutlined, null), | ||
| 351 | - okText: '确认', | ||
| 352 | - okType: 'danger', | ||
| 353 | - cancelText: '取消', | ||
| 354 | - onOk: function onOk() { | ||
| 355 | - if (code === 'DELETE') { | ||
| 356 | - deleteItem(idx); | ||
| 357 | - } else if (code === 'COPY') { | ||
| 358 | - copyItem(idx); | ||
| 359 | - } else { | ||
| 360 | - props.handleLineBtnClick(code, record, schema.$id); | ||
| 361 | - } | ||
| 362 | - }, | ||
| 363 | - onCancel: function onCancel() {} | ||
| 364 | - }); | ||
| 365 | - } else { | ||
| 366 | - if (code === 'DELETE') { | ||
| 367 | - deleteItem(idx); | ||
| 368 | - } else if (code === 'COPY') { | ||
| 369 | - copyItem(idx); | ||
| 370 | - } else { | ||
| 371 | - props.handleLineBtnClick(code, record, schema.$id); | ||
| 372 | - } | ||
| 373 | - } | ||
| 374 | - } | ||
| 375 | - }), style !== 'ICON' ? name : null)); // } | ||
| 376 | - }) : null, props.removeable ? /*#__PURE__*/React.createElement(_Tooltip, { | ||
| 377 | - title: '移除' | ||
| 378 | - }, /*#__PURE__*/React.createElement(_Button, { | ||
| 379 | - key: 'remove', | ||
| 380 | - style: { | ||
| 381 | - marginLeft: 8 | ||
| 382 | - }, | ||
| 383 | - icon: style !== 'TEXT' ? BUTTON_ICONS_MAP['remove'] : null, | ||
| 384 | - type: 'link', | ||
| 385 | - size: 'small', | ||
| 386 | - onClick: function onClick() { | ||
| 387 | - if (props.removeContent) { | ||
| 388 | - confirm({ | ||
| 389 | - title: props.removeContent, | ||
| 390 | - icon: /*#__PURE__*/React.createElement(_ExclamationCircleOutlined, null), | ||
| 391 | - okText: '确认', | ||
| 392 | - okType: 'danger', | ||
| 393 | - cancelText: '取消', | ||
| 394 | - onOk: function onOk() { | ||
| 395 | - deleteItem(idx); | ||
| 396 | - }, | ||
| 397 | - onCancel: function onCancel() {} | ||
| 398 | - }); | ||
| 399 | - } else { | ||
| 400 | - deleteItem(idx); | ||
| 401 | - } | ||
| 402 | - } | ||
| 403 | - }, style !== 'ICON' ? '移除' : null)) : null); | ||
| 404 | - } | ||
| 405 | - }; | ||
| 406 | - | ||
| 407 | - if (top) { | ||
| 408 | - columns.unshift(action); | ||
| 409 | - } else { | ||
| 410 | - columns.push(action); | ||
| 411 | - } | ||
| 412 | - } | ||
| 413 | - | ||
| 414 | - var handleExportPage = /*#__PURE__*/function () { | ||
| 415 | - var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { | ||
| 416 | - var appCode, funCode, viewCode, fieldName, relId, queryParams, result; | ||
| 417 | - return regeneratorRuntime.wrap(function _callee$(_context) { | ||
| 418 | - while (1) { | ||
| 419 | - switch (_context.prev = _context.next) { | ||
| 420 | - case 0: | ||
| 421 | - setProgressData({ | ||
| 422 | - "percent": 0, | ||
| 423 | - "status": "PROCESSING" | ||
| 424 | - }); | ||
| 425 | - appCode = qxProps.appCode, funCode = qxProps.funCode, viewCode = qxProps.viewCode, fieldName = qxProps.fieldName, relId = qxProps.relId; | ||
| 426 | - queryParams = { | ||
| 427 | - viewCode: viewCode, | ||
| 428 | - dataId: props.dataId, | ||
| 429 | - fieldKey: fieldName, | ||
| 430 | - relId: relId | ||
| 431 | - }; | ||
| 432 | - _context.next = 5; | ||
| 433 | - return props.exportChild(appCode, funCode, viewCode, queryParams); | ||
| 434 | - | ||
| 435 | - case 5: | ||
| 436 | - result = _context.sent; | ||
| 437 | - | ||
| 438 | - if (result.downloadUrl) { | ||
| 439 | - setTimeout(function () { | ||
| 440 | - exportData('EXPORT'); | ||
| 441 | - }, 5000); | ||
| 442 | - } | ||
| 443 | - | ||
| 444 | - case 7: | ||
| 445 | - case "end": | ||
| 446 | - return _context.stop(); | ||
| 447 | - } | ||
| 448 | - } | ||
| 449 | - }, _callee); | ||
| 450 | - })); | ||
| 451 | - | ||
| 452 | - return function handleExportPage() { | ||
| 453 | - return _ref2.apply(this, arguments); | ||
| 454 | - }; | ||
| 455 | - }(); | ||
| 456 | - | ||
| 457 | - var exportData = function exportData(taskType) { | ||
| 458 | - var appCode = qxProps.appCode, | ||
| 459 | - funCode = qxProps.funCode, | ||
| 460 | - viewCode = qxProps.viewCode; // taskType: UPLOAD || EXPORT | ||
| 461 | - | ||
| 462 | - props.exportProgress(appCode, funCode, viewCode, taskType).then(function (res) { | ||
| 463 | - setProgressData(res || null); | ||
| 464 | - }); | ||
| 465 | - }; | ||
| 466 | - | ||
| 467 | - useEffect(function () { | ||
| 468 | - if (exportProgressData) { | ||
| 469 | - if (exportProgressData.status === 'PROCESSING' && !intervalName) { | ||
| 470 | - setIntervalName(setInterval(function () { | ||
| 471 | - return exportData('EXPORT'); | ||
| 472 | - }, 1000 * 10)); | ||
| 473 | - return; | ||
| 474 | - } | ||
| 475 | - | ||
| 476 | - if (exportProgressData.status !== 'PROCESSING' && intervalName) { | ||
| 477 | - clearInterval(intervalName); | ||
| 478 | - return; | ||
| 479 | - } | ||
| 480 | - } | ||
| 481 | - | ||
| 482 | - return function () { | ||
| 483 | - if (intervalName) { | ||
| 484 | - setTimeout(function () { | ||
| 485 | - clearInterval(intervalName); | ||
| 486 | - }, 1000 * 60 * 10); | ||
| 487 | - } | ||
| 488 | - }; | ||
| 489 | - }, [exportProgressData]); | ||
| 490 | - | ||
| 491 | - var handleCloseExport = function handleCloseExport(taskId) { | ||
| 492 | - var appCode = qxProps.appCode, | ||
| 493 | - funCode = qxProps.funCode, | ||
| 494 | - viewCode = qxProps.viewCode; | ||
| 495 | - props.closeExport(appCode, funCode, viewCode, { | ||
| 496 | - taskId: taskId | ||
| 497 | - }).then(function (res) { | ||
| 498 | - setProgressData(null); | ||
| 499 | - | ||
| 500 | - if (intervalName) { | ||
| 501 | - clearInterval(intervalName); | ||
| 502 | - } | ||
| 503 | - }); | ||
| 504 | - }; | ||
| 505 | - | ||
| 506 | - var getExportMessage = function getExportMessage() { | ||
| 507 | - if (exportProgressData.status === 'SUCCESS') { | ||
| 508 | - return /*#__PURE__*/React.createElement("div", null, "\u5BFC\u51FA\u6210\u529F\uFF0C\u70B9\u51FB", /*#__PURE__*/React.createElement(_Button, { | ||
| 509 | - onClick: function onClick() { | ||
| 510 | - return handleDownload(exportProgressData.downloadUrl, '导出文件.xlsx', props.REQUEST); | ||
| 511 | - }, | ||
| 512 | - type: 'link' | ||
| 513 | - }, "\u4E0B\u8F7D\u6587\u4EF6"), /*#__PURE__*/React.createElement(_Button, { | ||
| 514 | - style: { | ||
| 515 | - float: "right" | ||
| 516 | - }, | ||
| 517 | - onClick: function onClick() { | ||
| 518 | - return handleCloseExport(exportProgressData.taskId); | ||
| 519 | - }, | ||
| 520 | - type: 'link' | ||
| 521 | - }, "\u3010\u5173\u95ED\u63D0\u9192\u3011")); | ||
| 522 | - } | ||
| 523 | - | ||
| 524 | - return /*#__PURE__*/React.createElement("div", null, "\u5BFC\u51FA\u8FDB\u884C\u4E2D\uFF0C\u8BF7\u7A0D\u540E......", /*#__PURE__*/React.createElement(_Button, { | ||
| 525 | - onClick: function onClick() { | ||
| 526 | - return exportData('EXPORT'); | ||
| 527 | - }, | ||
| 528 | - type: 'link' | ||
| 529 | - }, "\u5237\u65B0"), /*#__PURE__*/React.createElement(_Button, { | ||
| 530 | - style: { | ||
| 531 | - float: "right" | ||
| 532 | - }, | ||
| 533 | - onClick: function onClick() { | ||
| 534 | - return handleCloseExport(exportProgressData.taskId); | ||
| 535 | - }, | ||
| 536 | - type: 'link' | ||
| 537 | - }, "\u3010\u5173\u95ED\u63D0\u9192\u3011")); | ||
| 538 | - }; | ||
| 539 | - | ||
| 540 | - return /*#__PURE__*/React.createElement(React.Fragment, null, !props.hideAdd && props.originWidget === 'relSelector' && (((_props$bar2 = props.bar) === null || _props$bar2 === void 0 ? void 0 : _props$bar2.buttons) || []).filter(function (item) { | ||
| 541 | - return item.code === 'SELECT' || item.code === 'ADD'; | ||
| 542 | - }).map(function (item) { | ||
| 543 | - var name = item.name, | ||
| 544 | - code = item.code; | ||
| 545 | - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_Button, { | ||
| 546 | - key: code, | ||
| 547 | - style: { | ||
| 548 | - marginLeft: 8 | ||
| 549 | - }, | ||
| 550 | - size: "small", | ||
| 551 | - type: "link", | ||
| 552 | - icon: code === 'SELECT' ? /*#__PURE__*/React.createElement(_SelectOutlined, null) : code === 'ADD' ? /*#__PURE__*/React.createElement(_PlusCircleOutlined, null) : null, | ||
| 553 | - onClick: function onClick() { | ||
| 554 | - if (code === 'SELECT') { | ||
| 555 | - props.openRelSelect(schema.$id); | ||
| 556 | - } else if (code === 'ADD') { | ||
| 557 | - props.handleRelAdd(schema.$id); | ||
| 558 | - } | ||
| 559 | - } | ||
| 560 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 561 | - dangerouslySetInnerHTML: { | ||
| 562 | - __html: name | ||
| 563 | - } | ||
| 564 | - }))); | ||
| 565 | - }), /*#__PURE__*/React.createElement("div", { | ||
| 566 | - className: 'qx-virtual-searchLine' | ||
| 567 | - }, searchKey ? /*#__PURE__*/React.createElement(_Input, { | ||
| 568 | - style: { | ||
| 569 | - width: '200px' | ||
| 570 | - }, | ||
| 571 | - allowClear: true, | ||
| 572 | - size: 'small', | ||
| 573 | - placeholder: "\u8BF7\u8F93\u5165\u641C\u7D22\u6761\u4EF6", | ||
| 574 | - prefix: /*#__PURE__*/React.createElement(_SearchOutlined, { | ||
| 575 | - style: { | ||
| 576 | - color: '#666' | ||
| 577 | - } | ||
| 578 | - }), | ||
| 579 | - onChange: function onChange(e) { | ||
| 580 | - var _e$target; | ||
| 581 | - | ||
| 582 | - setKeyWord(((_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value) || ''); | ||
| 583 | - } | ||
| 584 | - }) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement("div", null, barButtons.filter(function (item) { | ||
| 585 | - return item.code !== 'ADD' && item.code !== 'SELECT'; | ||
| 586 | - }).map(function (item) { | ||
| 587 | - var name = item.name, | ||
| 588 | - code = item.code, | ||
| 589 | - needConfirm = item.needConfirm, | ||
| 590 | - confirmContent = item.confirmContent, | ||
| 591 | - icon = item.icon; | ||
| 592 | - return /*#__PURE__*/React.createElement(_Button, _extends({ | ||
| 593 | - key: code, | ||
| 594 | - style: { | ||
| 595 | - marginLeft: 8 | ||
| 596 | - } | ||
| 597 | - }, item, { | ||
| 598 | - icon: icon ? BUTTON_ICONS_MAP[icon] : null, | ||
| 599 | - onClick: function onClick() { | ||
| 600 | - if (code === 'DELETE') { | ||
| 601 | - if (!selectedRowKeys.length) { | ||
| 602 | - return _message.warning('请选择子表数据'); | ||
| 603 | - } | ||
| 604 | - | ||
| 605 | - if (needConfirm && confirmContent) { | ||
| 606 | - confirm({ | ||
| 607 | - title: '批量删除确认', | ||
| 608 | - icon: /*#__PURE__*/React.createElement(_ExclamationCircleOutlined, null), | ||
| 609 | - content: confirmContent, | ||
| 610 | - okText: '确认', | ||
| 611 | - okType: 'danger', | ||
| 612 | - cancelText: '取消', | ||
| 613 | - onOk: function onOk() { | ||
| 614 | - batchDelete(selectedRowKeys); | ||
| 615 | - setSelectedRowKeys([]); | ||
| 616 | - }, | ||
| 617 | - onCancel: function onCancel() {} | ||
| 618 | - }); | ||
| 619 | - } else { | ||
| 620 | - batchDelete(selectedRowKeys); | ||
| 621 | - setSelectedRowKeys([]); | ||
| 622 | - } | ||
| 623 | - } else if (code === 'EXPORT') { | ||
| 624 | - handleExportPage(); | ||
| 625 | - } else { | ||
| 626 | - props.handleBarBtnClick(code, fieldName, batchKey, selectedRowKeys, schema.$id); | ||
| 627 | - } | ||
| 628 | - } | ||
| 629 | - }), name); // } | ||
| 630 | - })), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { | ||
| 631 | - var callback = item.callback, | ||
| 632 | - text = item.text, | ||
| 633 | - html = item.html; | ||
| 634 | - | ||
| 635 | - var onClick = function onClick() {}; | ||
| 636 | - | ||
| 637 | - if (typeof window[callback] === 'function') { | ||
| 638 | - onClick = function onClick() { | ||
| 639 | - window[callback]({ | ||
| 640 | - value: listData, | ||
| 641 | - onChange: changeList, | ||
| 642 | - schema: schema | ||
| 643 | - }); | ||
| 644 | - }; | ||
| 645 | - } else { | ||
| 646 | - if (typeof callback === 'function') { | ||
| 647 | - callback({ | ||
| 648 | - value: listData, | ||
| 649 | - onChange: changeList, | ||
| 650 | - schema: schema | ||
| 651 | - }); | ||
| 652 | - } | ||
| 653 | - } | ||
| 654 | - | ||
| 655 | - return /*#__PURE__*/React.createElement(_Button, { | ||
| 656 | - key: idx.toString(), | ||
| 657 | - style: { | ||
| 658 | - marginLeft: 8 | ||
| 659 | - }, | ||
| 660 | - size: "small", | ||
| 661 | - onClick: onClick | ||
| 662 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 663 | - dangerouslySetInnerHTML: { | ||
| 664 | - __html: html || text | ||
| 665 | - } | ||
| 666 | - })); | ||
| 667 | - }) : null), exportProgressData ? /*#__PURE__*/React.createElement(_Alert, { | ||
| 668 | - style: { | ||
| 669 | - marginBottom: '12px' | ||
| 670 | - }, | ||
| 671 | - message: getExportMessage(), | ||
| 672 | - type: EXPORT_STATUS[exportProgressData.status] || 'info', | ||
| 673 | - showIcon: true, | ||
| 674 | - onClose: function onClose() { | ||
| 675 | - handleCloseExport(exportProgressData.taskId); | ||
| 676 | - } | ||
| 677 | - }) : null, /*#__PURE__*/React.createElement(_Table, _extends({ | ||
| 678 | - className: 'qx-virtualList', | ||
| 679 | - rowKey: "index", | ||
| 680 | - scroll: { | ||
| 681 | - y: scrollY, | ||
| 682 | - x: '100%' | ||
| 683 | - }, | ||
| 684 | - components: vt, | ||
| 685 | - size: "small", | ||
| 686 | - columns: columns, | ||
| 687 | - dataSource: dataSource, | ||
| 688 | - pagination: false, | ||
| 689 | - style: { | ||
| 690 | - marginBottom: 25 | ||
| 691 | - }, | ||
| 692 | - rowSelection: newRowSelection, | ||
| 693 | - summary: function summary() { | ||
| 694 | - if (!_summary) { | ||
| 695 | - return null; | ||
| 696 | - } | ||
| 697 | - | ||
| 698 | - return _summary(listData); | ||
| 699 | - } | ||
| 700 | - }, rest)), !props.hideAdd && props.originWidget === 'subform' && /*#__PURE__*/React.createElement(_Button, { | ||
| 701 | - type: "link", | ||
| 702 | - icon: /*#__PURE__*/React.createElement(_PlusOutlined, null), | ||
| 703 | - onClick: addItem | ||
| 704 | - }, "\u65B0\u589E")); | ||
| 705 | -}; | ||
| 706 | -/** | ||
| 707 | - * 文件下载。依赖HTML页面 | ||
| 708 | - * | ||
| 709 | - * @param url 下载URL | ||
| 710 | - * @param name 指定的文件名(包括扩展名) | ||
| 711 | - * @param request | ||
| 712 | - */ | ||
| 713 | - | ||
| 714 | - | ||
| 715 | -function handleDownload(_x, _x2, _x3) { | ||
| 716 | - return _handleDownload.apply(this, arguments); | ||
| 717 | -} | ||
| 718 | - | ||
| 719 | -function _handleDownload() { | ||
| 720 | - _handleDownload = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(url, name, request) { | ||
| 721 | - var isDownload, | ||
| 722 | - link, | ||
| 723 | - blob, | ||
| 724 | - downloadUrl, | ||
| 725 | - _args2 = arguments; | ||
| 726 | - return regeneratorRuntime.wrap(function _callee2$(_context2) { | ||
| 727 | - while (1) { | ||
| 728 | - switch (_context2.prev = _context2.next) { | ||
| 729 | - case 0: | ||
| 730 | - // eslint-disable-next-line prefer-rest-params | ||
| 731 | - isDownload = _args2[2]; | ||
| 732 | - | ||
| 733 | - if (isDownload === null || Boolean(isDownload)) { | ||
| 734 | - _message.warning('即将开始下载,请勿重复点击。'); | ||
| 735 | - } | ||
| 736 | - | ||
| 737 | - link = document.createElement('a'); | ||
| 738 | - link.href = url; | ||
| 739 | - link.download = name; | ||
| 740 | - link.target = '_blank'; | ||
| 741 | - document.body.appendChild(link); //TODO 文件过大时,看不到下载进度 | ||
| 742 | - | ||
| 743 | - _context2.next = 9; | ||
| 744 | - return request.get(url, { | ||
| 745 | - autoShowError: true | ||
| 746 | - }); | ||
| 747 | - | ||
| 748 | - case 9: | ||
| 749 | - blob = _context2.sent; | ||
| 750 | - | ||
| 751 | - if (blob !== null) { | ||
| 752 | - downloadUrl = URL.createObjectURL(blob); | ||
| 753 | - link.href = downloadUrl; | ||
| 754 | - link.click(); | ||
| 755 | - document.body.removeChild(link); | ||
| 756 | - URL.revokeObjectURL(downloadUrl); | ||
| 757 | - } | ||
| 758 | - | ||
| 759 | - case 11: | ||
| 760 | - case "end": | ||
| 761 | - return _context2.stop(); | ||
| 762 | - } | ||
| 763 | - } | ||
| 764 | - }, _callee2); | ||
| 765 | - })); | ||
| 766 | - return _handleDownload.apply(this, arguments); | ||
| 767 | -} | ||
| 768 | - | ||
| 769 | -export default VirtualList; |
es/core/RenderChildren/RenderList/index.js
deleted
100644 → 0
| 1 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 2 | - | ||
| 3 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 4 | - | ||
| 5 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 6 | - | ||
| 7 | -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } | ||
| 8 | - | ||
| 9 | -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 10 | - | ||
| 11 | -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
| 12 | - | ||
| 13 | -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } | ||
| 14 | - | ||
| 15 | -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } | ||
| 16 | - | ||
| 17 | -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
| 18 | - | ||
| 19 | -/* eslint-disable jsx-a11y/anchor-is-valid */ | ||
| 20 | -import React from 'react'; | ||
| 21 | -import { get } from 'lodash-es'; | ||
| 22 | -import { useStore, useTools } from '../../../hooks'; | ||
| 23 | -import { getDataPath, getKeyFromPath, getDisplayValue } from '../../../utils'; // import ArrowDown from '../../../components/ArrowDown'; | ||
| 24 | - | ||
| 25 | -import "./list.css"; | ||
| 26 | -import SimpleList from './SimpleList'; | ||
| 27 | -import CardList from './CardList'; | ||
| 28 | -import TableList from './TableList'; | ||
| 29 | -import DrawerList from './DrawerList'; | ||
| 30 | -import VirtualList from './VirtualList'; | ||
| 31 | - | ||
| 32 | -var RenderList = function RenderList(_ref) { | ||
| 33 | - var parentId = _ref.parentId, | ||
| 34 | - _ref$schema = _ref.schema, | ||
| 35 | - schema = _ref$schema === void 0 ? {} : _ref$schema, | ||
| 36 | - _ref$dataIndex = _ref.dataIndex, | ||
| 37 | - dataIndex = _ref$dataIndex === void 0 ? [] : _ref$dataIndex, | ||
| 38 | - _ref$children = _ref.children, | ||
| 39 | - children = _ref$children === void 0 ? [] : _ref$children, | ||
| 40 | - errorFields = _ref.errorFields, | ||
| 41 | - displayType = _ref.displayType; | ||
| 42 | - | ||
| 43 | - var _useStore = useStore(), | ||
| 44 | - formData = _useStore.formData, | ||
| 45 | - flatten = _useStore.flatten; | ||
| 46 | - | ||
| 47 | - var _useTools = useTools(), | ||
| 48 | - onItemChange = _useTools.onItemChange, | ||
| 49 | - removeTouched = _useTools.removeTouched; | ||
| 50 | - | ||
| 51 | - var renderWidget = 'list'; | ||
| 52 | - | ||
| 53 | - try { | ||
| 54 | - renderWidget = schema.widget; | ||
| 55 | - } catch (error) {} // 计算 list对应的formData | ||
| 56 | - | ||
| 57 | - | ||
| 58 | - var dataPath = getDataPath(parentId, dataIndex); | ||
| 59 | - var listData; | ||
| 60 | - | ||
| 61 | - if (typeof dataPath === 'string') { | ||
| 62 | - // TODO: listData会有不少“窟窿”,submit 的时候,listData 需要补齐 or filter | ||
| 63 | - listData = get(formData, dataPath); | ||
| 64 | - } | ||
| 65 | - | ||
| 66 | - var displayList = Array.isArray(listData) ? listData : []; | ||
| 67 | - | ||
| 68 | - var changeList = function changeList(newList) { | ||
| 69 | - onItemChange(dataPath, newList); | ||
| 70 | - }; | ||
| 71 | - | ||
| 72 | - var addItem = function addItem() { | ||
| 73 | - var newList = [].concat(_toConsumableArray(displayList), [{}]); | ||
| 74 | - var newIndex = newList.length - 1; | ||
| 75 | - onItemChange(dataPath, newList); | ||
| 76 | - return newIndex; | ||
| 77 | - }; | ||
| 78 | - | ||
| 79 | - var copyItem = function copyItem(idx) { | ||
| 80 | - var newItem = displayList[idx]; | ||
| 81 | - delete newItem.id; | ||
| 82 | - var newList = [].concat(_toConsumableArray(displayList.slice(0, idx)), [newItem], _toConsumableArray(displayList.slice(idx))); | ||
| 83 | - onItemChange(dataPath, JSON.parse(JSON.stringify(newList))); | ||
| 84 | - }; | ||
| 85 | - | ||
| 86 | - var deleteItem = function deleteItem(idx) { | ||
| 87 | - // TODO: 删除元素的时候,也需要delete相对于的校验信息(errorFields) | ||
| 88 | - // remark: 删除时,不存在的item需要补齐,用null | ||
| 89 | - var newList = displayList.filter(function (item, kdx) { | ||
| 90 | - return kdx !== idx; | ||
| 91 | - }); | ||
| 92 | - onItemChange(dataPath, newList); | ||
| 93 | - removeTouched("".concat(dataPath, "[").concat(idx, "]")); | ||
| 94 | - }; // 批量删除的方法 | ||
| 95 | - | ||
| 96 | - | ||
| 97 | - var batchDelete = function batchDelete(ids) { | ||
| 98 | - var newList = displayList.filter(function (item, kdx) { | ||
| 99 | - return !ids.includes(kdx); | ||
| 100 | - }); | ||
| 101 | - onItemChange(dataPath, newList); | ||
| 102 | - (ids || []).forEach(function (id) { | ||
| 103 | - removeTouched("".concat(dataPath, "[").concat(id, "]")); | ||
| 104 | - }); | ||
| 105 | - }; //TODO1: 上线翻页要正确!!现在是错的 | ||
| 106 | - | ||
| 107 | - | ||
| 108 | - var moveItemUp = function moveItemUp(idx) { | ||
| 109 | - if (idx === 0) return; | ||
| 110 | - var currentItem = displayList[idx]; | ||
| 111 | - var itemAbove = displayList[idx - 1]; | ||
| 112 | - var newList = displayList; | ||
| 113 | - newList[idx] = itemAbove; | ||
| 114 | - newList[idx - 1] = currentItem; | ||
| 115 | - onItemChange(dataPath, newList); // TODO: 这块懒了,之后要处理一下 | ||
| 116 | - | ||
| 117 | - removeTouched("".concat(dataPath, "[").concat(idx, "]")); | ||
| 118 | - }; | ||
| 119 | - | ||
| 120 | - var moveItemDown = function moveItemDown(idx) { | ||
| 121 | - if (idx >= displayList.length - 1) return; | ||
| 122 | - var currentItem = displayList[idx]; | ||
| 123 | - var itemBelow = displayList[idx + 1]; | ||
| 124 | - var newList = displayList; | ||
| 125 | - newList[idx] = itemBelow; | ||
| 126 | - newList[idx + 1] = currentItem; | ||
| 127 | - onItemChange(dataPath, newList); // TODO: 这块懒了,之后要处理一下 | ||
| 128 | - | ||
| 129 | - removeTouched("".concat(dataPath, "[").concat(idx, "]")); | ||
| 130 | - }; | ||
| 131 | - | ||
| 132 | - var itemSchema = { | ||
| 133 | - type: 'object', | ||
| 134 | - // properties: (schema.items && schema.items.properties) || {}, | ||
| 135 | - properties: {}, | ||
| 136 | - props: schema.props || {}, | ||
| 137 | - $id: schema.$id | ||
| 138 | - }; | ||
| 139 | - var itemFlatten = { | ||
| 140 | - schema: itemSchema, | ||
| 141 | - children: children | ||
| 142 | - }; | ||
| 143 | - | ||
| 144 | - var getFieldsProps = function getFieldsProps(idx, extraProps) { | ||
| 145 | - return _objectSpread({ | ||
| 146 | - _item: itemFlatten, | ||
| 147 | - dataIndex: [].concat(_toConsumableArray(dataIndex), [idx]) | ||
| 148 | - }, extraProps); | ||
| 149 | - }; | ||
| 150 | - | ||
| 151 | - var displayProps = { | ||
| 152 | - displayList: displayList, | ||
| 153 | - changeList: changeList, | ||
| 154 | - schema: schema, | ||
| 155 | - dataPath: dataPath, | ||
| 156 | - dataIndex: dataIndex, | ||
| 157 | - children: children, | ||
| 158 | - deleteItem: deleteItem, | ||
| 159 | - batchDelete: batchDelete, | ||
| 160 | - addItem: addItem, | ||
| 161 | - copyItem: copyItem, | ||
| 162 | - moveItemDown: moveItemDown, | ||
| 163 | - moveItemUp: moveItemUp, | ||
| 164 | - listData: listData, | ||
| 165 | - flatten: flatten, | ||
| 166 | - errorFields: errorFields, | ||
| 167 | - displayType: displayType, | ||
| 168 | - getFieldsProps: getFieldsProps | ||
| 169 | - }; | ||
| 170 | - | ||
| 171 | - switch (renderWidget) { | ||
| 172 | - case 'list0': | ||
| 173 | - case 'cardList': | ||
| 174 | - return /*#__PURE__*/React.createElement(CardList, displayProps); | ||
| 175 | - | ||
| 176 | - case 'list1': | ||
| 177 | - case 'simpleList': | ||
| 178 | - return /*#__PURE__*/React.createElement(SimpleList, displayProps); | ||
| 179 | - | ||
| 180 | - case 'list2': | ||
| 181 | - case 'tableList': | ||
| 182 | - return /*#__PURE__*/React.createElement(TableList, displayProps); | ||
| 183 | - | ||
| 184 | - case 'list3': | ||
| 185 | - case 'drawerList': | ||
| 186 | - return /*#__PURE__*/React.createElement(DrawerList, displayProps); | ||
| 187 | - | ||
| 188 | - case 'list4': | ||
| 189 | - case 'virtualList': | ||
| 190 | - return /*#__PURE__*/React.createElement(VirtualList, displayProps); | ||
| 191 | - | ||
| 192 | - default: | ||
| 193 | - return /*#__PURE__*/React.createElement(CardList, displayProps); | ||
| 194 | - } | ||
| 195 | -}; | ||
| 196 | - | ||
| 197 | -export default RenderList; |
es/core/RenderChildren/RenderList/list.css
deleted
100644 → 0
| 1 | -.fr-container .fr-card-item { | ||
| 2 | - border: 1px solid rgba(0, 0, 0, 0.1); | ||
| 3 | - border-radius: 4px; | ||
| 4 | - padding: 10px 12px 4px 12px; | ||
| 5 | - margin-bottom: 8px; | ||
| 6 | - position: relative; | ||
| 7 | - display: flex; | ||
| 8 | -} | ||
| 9 | -.fr-container .fr-card-item-row { | ||
| 10 | - padding-top: 34px; | ||
| 11 | -} | ||
| 12 | -.fr-container .fr-card-index { | ||
| 13 | - position: absolute; | ||
| 14 | - top: 0; | ||
| 15 | - left: 0; | ||
| 16 | - padding-left: 4px; | ||
| 17 | - padding-right: 6px; | ||
| 18 | - border-bottom-right-radius: 8px; | ||
| 19 | - border-top-left-radius: 3px; | ||
| 20 | - background-color: rgba(0, 0, 0, 0.36); | ||
| 21 | - font-size: 8px; | ||
| 22 | - color: #fff; | ||
| 23 | -} | ||
| 24 | -.fr-container .fr-card-toolbar { | ||
| 25 | - position: absolute; | ||
| 26 | - top: 8px; | ||
| 27 | - right: 8px; | ||
| 28 | - display: flex; | ||
| 29 | -} | ||
| 30 | -.qx-virtual-searchLine { | ||
| 31 | - display: flex; | ||
| 32 | - justify-content: space-between; | ||
| 33 | - padding: 8px 10px; | ||
| 34 | -} | ||
| 35 | -.qx-virtual-searchLine .ant-input-affix-wrapper-sm { | ||
| 36 | - padding: 4px 7px; | ||
| 37 | -} | ||
| 38 | -.qx-virtualList .ant-btn-sm { | ||
| 39 | - padding: 0; | ||
| 40 | -} | ||
| 41 | -.qx-virtualList .qx-fr-input--readonly { | ||
| 42 | - background: none; | ||
| 43 | -} | ||
| 44 | -.qx-virtualList .ant-select:not(.ant-select-customize-input) .ant-select-selector { | ||
| 45 | - border: none; | ||
| 46 | -} |
es/core/RenderChildren/RenderObject.js
deleted
100644 → 0
| 1 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 2 | - | ||
| 3 | -import React from 'react'; | ||
| 4 | -import Core from '../index'; | ||
| 5 | - | ||
| 6 | -var RenderObject = function RenderObject(_ref) { | ||
| 7 | - var _ref$children = _ref.children, | ||
| 8 | - children = _ref$children === void 0 ? [] : _ref$children, | ||
| 9 | - _ref$dataIndex = _ref.dataIndex, | ||
| 10 | - dataIndex = _ref$dataIndex === void 0 ? [] : _ref$dataIndex, | ||
| 11 | - displayType = _ref.displayType, | ||
| 12 | - hideTitle = _ref.hideTitle; | ||
| 13 | - return /*#__PURE__*/React.createElement(React.Fragment, null, children.map(function (child, i) { | ||
| 14 | - var FRProps = { | ||
| 15 | - displayType: displayType, | ||
| 16 | - id: child, | ||
| 17 | - dataIndex: dataIndex, | ||
| 18 | - hideTitle: hideTitle | ||
| 19 | - }; | ||
| 20 | - return /*#__PURE__*/React.createElement(Core, _extends({ | ||
| 21 | - key: i.toString() | ||
| 22 | - }, FRProps)); | ||
| 23 | - })); | ||
| 24 | -}; | ||
| 25 | - | ||
| 26 | -export default RenderObject; |
es/core/RenderField/ErrorMessage.css
deleted
100644 → 0
es/core/RenderField/ErrorMessage.js
deleted
100644 → 0
| 1 | -import React from 'react'; | ||
| 2 | -import { translateMessage } from '../../utils'; | ||
| 3 | -import "./ErrorMessage.css"; | ||
| 4 | - | ||
| 5 | -var ErrorMessage = function ErrorMessage(_ref) { | ||
| 6 | - var message = _ref.message, | ||
| 7 | - schema = _ref.schema, | ||
| 8 | - softHidden = _ref.softHidden, | ||
| 9 | - hardHidden = _ref.hardHidden; | ||
| 10 | - var msg = ''; | ||
| 11 | - if (typeof message === 'string') msg = message; | ||
| 12 | - | ||
| 13 | - if (Array.isArray(message)) { | ||
| 14 | - msg = message[0] || ''; | ||
| 15 | - } | ||
| 16 | - | ||
| 17 | - msg = translateMessage(msg, schema); | ||
| 18 | - if (hardHidden) return /*#__PURE__*/React.createElement("div", { | ||
| 19 | - className: "error-message" | ||
| 20 | - }); | ||
| 21 | - return !msg && softHidden ? null : /*#__PURE__*/React.createElement("div", { | ||
| 22 | - className: "error-message" | ||
| 23 | - }, msg); | ||
| 24 | -}; | ||
| 25 | - | ||
| 26 | -export default ErrorMessage; |
es/core/RenderField/ExtendedWidget.js
deleted
100644 → 0
| 1 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 2 | - | ||
| 3 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 4 | - | ||
| 5 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 6 | - | ||
| 7 | -import React, { Suspense } from 'react'; | ||
| 8 | -import { getWidgetName, extraSchemaList } from '../../mapping'; | ||
| 9 | -import { useTools, useStore } from '../../hooks'; | ||
| 10 | -import { transformProps } from '../../createWidget'; | ||
| 11 | -import { isObjType, isListType, isObject } from '../../utils'; | ||
| 12 | - | ||
| 13 | -var ErrorSchema = function ErrorSchema(schema) { | ||
| 14 | - return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", { | ||
| 15 | - style: { | ||
| 16 | - color: 'red' | ||
| 17 | - } | ||
| 18 | - }, "schema\u672A\u5339\u914D\u5230\u5C55\u793A\u7EC4\u4EF6\uFF1A"), /*#__PURE__*/React.createElement("div", null, JSON.stringify(schema))); | ||
| 19 | -}; | ||
| 20 | - | ||
| 21 | -var ExtendedWidget = function ExtendedWidget(_ref) { | ||
| 22 | - var schema = _ref.schema, | ||
| 23 | - onChange = _ref.onChange, | ||
| 24 | - value = _ref.value, | ||
| 25 | - dependValues = _ref.dependValues, | ||
| 26 | - children = _ref.children, | ||
| 27 | - onItemChange = _ref.onItemChange, | ||
| 28 | - formData = _ref.formData, | ||
| 29 | - getValue = _ref.getValue, | ||
| 30 | - readOnly = _ref.readOnly, | ||
| 31 | - dataPath = _ref.dataPath, | ||
| 32 | - disabled = _ref.disabled, | ||
| 33 | - dataIndex = _ref.dataIndex; | ||
| 34 | - | ||
| 35 | - var _useTools = useTools(), | ||
| 36 | - widgets = _useTools.widgets, | ||
| 37 | - mapping = _useTools.mapping, | ||
| 38 | - setValueByPath = _useTools.setValueByPath, | ||
| 39 | - getSchemaByPath = _useTools.getSchemaByPath, | ||
| 40 | - setSchemaByPath = _useTools.setSchemaByPath, | ||
| 41 | - setSchema = _useTools.setSchema, | ||
| 42 | - setValues = _useTools.setValues, | ||
| 43 | - getValues = _useTools.getValues, | ||
| 44 | - resetFields = _useTools.resetFields, | ||
| 45 | - setErrorFields = _useTools.setErrorFields, | ||
| 46 | - removeErrorField = _useTools.removeErrorField; | ||
| 47 | - | ||
| 48 | - var _useStore = useStore(), | ||
| 49 | - globalProps = _useStore.globalProps; // if (isObjType(schema)) { | ||
| 50 | - // return <Map value={value} onChange={onChange} children={children} />; | ||
| 51 | - // } | ||
| 52 | - // if (isListType(schema)) { | ||
| 53 | - // return 'haha'; | ||
| 54 | - // } | ||
| 55 | - // return <Input value={value} onChange={e => onChange(e.target.value)} />; | ||
| 56 | - // TODO: calc widget, better way? | ||
| 57 | - // let widgetName = useMemo(() => getWidgetName(schema, mapping), [ | ||
| 58 | - // JSON.stringify(schema), | ||
| 59 | - // ]); | ||
| 60 | - | ||
| 61 | - | ||
| 62 | - var widgetName = getWidgetName(schema, mapping); | ||
| 63 | - var customName = schema.widget || schema['ui:widget']; | ||
| 64 | - | ||
| 65 | - if (customName && widgets[customName]) { | ||
| 66 | - widgetName = customName; | ||
| 67 | - } | ||
| 68 | - | ||
| 69 | - var readOnlyName = schema.readOnlyWidget || 'html'; | ||
| 70 | - | ||
| 71 | - if (readOnly && !isObjType(schema) && !isListType(schema)) { | ||
| 72 | - widgetName = readOnlyName; | ||
| 73 | - } | ||
| 74 | - | ||
| 75 | - if (!widgetName) { | ||
| 76 | - widgetName = 'input'; | ||
| 77 | - return /*#__PURE__*/React.createElement(ErrorSchema, { | ||
| 78 | - schema: schema | ||
| 79 | - }); | ||
| 80 | - } | ||
| 81 | - | ||
| 82 | - var Widget = widgets[widgetName]; | ||
| 83 | - var extraSchema = extraSchemaList[widgetName]; | ||
| 84 | - | ||
| 85 | - var widgetProps = _objectSpread(_objectSpread({ | ||
| 86 | - schema: _objectSpread(_objectSpread({}, schema), extraSchema), | ||
| 87 | - onChange: onChange, | ||
| 88 | - value: value, | ||
| 89 | - children: children, | ||
| 90 | - disabled: disabled, | ||
| 91 | - readOnly: readOnly | ||
| 92 | - }, schema.props), globalProps); | ||
| 93 | - | ||
| 94 | - if (schema.type === 'string' && typeof schema.max === 'number') { | ||
| 95 | - widgetProps.maxLength = schema.max; | ||
| 96 | - } | ||
| 97 | - | ||
| 98 | - ['title', 'placeholder', 'disabled', 'format'].forEach(function (key) { | ||
| 99 | - if (schema[key]) { | ||
| 100 | - widgetProps[key] = schema[key]; | ||
| 101 | - } | ||
| 102 | - }); | ||
| 103 | - | ||
| 104 | - if (schema.props) { | ||
| 105 | - widgetProps = _objectSpread(_objectSpread({}, widgetProps), schema.props); | ||
| 106 | - } | ||
| 107 | - | ||
| 108 | - Object.keys(schema).forEach(function (key) { | ||
| 109 | - if (typeof key === 'string' && key.toLowerCase().indexOf('props') > -1 && key.length > 5) { | ||
| 110 | - widgetProps[key] = schema[key]; | ||
| 111 | - } | ||
| 112 | - }); // 支持 addonAfter 为自定义组件的情况 | ||
| 113 | - | ||
| 114 | - if (isObject(widgetProps.addonAfter) && widgetProps.addonAfter.widget) { | ||
| 115 | - var AddonAfterWidget = widgets[widgetProps.addonAfter.widget]; | ||
| 116 | - widgetProps.addonAfter = /*#__PURE__*/React.createElement(AddonAfterWidget, schema); | ||
| 117 | - } | ||
| 118 | - | ||
| 119 | - var hideSelf = function hideSelf() { | ||
| 120 | - var hidden = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; | ||
| 121 | - setSchemaByPath(schema.$id, { | ||
| 122 | - hidden: hidden | ||
| 123 | - }); | ||
| 124 | - }; // 避免传组件不接受的props,按情况传多余的props | ||
| 125 | - | ||
| 126 | - | ||
| 127 | - widgetProps.addons = { | ||
| 128 | - dependValues: dependValues, | ||
| 129 | - onItemChange: onItemChange, | ||
| 130 | - getValue: getValue, | ||
| 131 | - formData: formData, | ||
| 132 | - dataPath: dataPath, | ||
| 133 | - dataIndex: dataIndex, | ||
| 134 | - setValueByPath: setValueByPath, | ||
| 135 | - setValue: setValueByPath, | ||
| 136 | - getSchemaByPath: getSchemaByPath, | ||
| 137 | - setSchemaByPath: setSchemaByPath, | ||
| 138 | - setSchema: setSchema, | ||
| 139 | - setValues: setValues, | ||
| 140 | - getValues: getValues, | ||
| 141 | - resetFields: resetFields, | ||
| 142 | - setErrorFields: setErrorFields, | ||
| 143 | - removeErrorField: removeErrorField, | ||
| 144 | - hideSelf: hideSelf | ||
| 145 | - }; | ||
| 146 | - var finalProps = transformProps(widgetProps); | ||
| 147 | - return /*#__PURE__*/React.createElement(Suspense, { | ||
| 148 | - fallback: /*#__PURE__*/React.createElement("div", null) | ||
| 149 | - }, /*#__PURE__*/React.createElement("div", { | ||
| 150 | - className: "fr-item-wrapper" | ||
| 151 | - }, /*#__PURE__*/React.createElement(Widget, finalProps))); | ||
| 152 | -}; | ||
| 153 | - | ||
| 154 | -var areEqual = function areEqual(prev, current) { | ||
| 155 | - if (prev.schema && prev.schema.$id === '#') { | ||
| 156 | - return false; | ||
| 157 | - } | ||
| 158 | - | ||
| 159 | - if (prev.readOnly !== current.readOnly) { | ||
| 160 | - return false; | ||
| 161 | - } | ||
| 162 | - | ||
| 163 | - if (prev.disabled !== current.disabled) { | ||
| 164 | - return false; | ||
| 165 | - } | ||
| 166 | - | ||
| 167 | - if (JSON.stringify(prev.dependValues) !== JSON.stringify(current.dependValues)) { | ||
| 168 | - return false; | ||
| 169 | - } | ||
| 170 | - | ||
| 171 | - if (isObjType(prev.schema) && isObjType(current.schema)) { | ||
| 172 | - return false; | ||
| 173 | - } | ||
| 174 | - | ||
| 175 | - if (JSON.stringify(prev.value) === JSON.stringify(current.value) && JSON.stringify(prev.schema) === JSON.stringify(current.schema)) { | ||
| 176 | - return true; | ||
| 177 | - } | ||
| 178 | - | ||
| 179 | - return false; | ||
| 180 | -}; | ||
| 181 | - | ||
| 182 | -export default /*#__PURE__*/React.memo(ExtendedWidget, areEqual); |
es/core/RenderField/Extra.css
deleted
100644 → 0
es/core/RenderField/Extra.js
deleted
100644 → 0
| 1 | -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
| 2 | - | ||
| 3 | -import React from 'react'; | ||
| 4 | -import { useTools } from '../../hooks'; | ||
| 5 | -import "./Extra.css"; | ||
| 6 | - | ||
| 7 | -var Extra = function Extra(_ref) { | ||
| 8 | - var schema = _ref.schema; | ||
| 9 | - var extra = schema.extra; | ||
| 10 | - | ||
| 11 | - var _useTools = useTools(), | ||
| 12 | - widgets = _useTools.widgets; | ||
| 13 | - | ||
| 14 | - if (!extra) return null; // widget 这个api也可以不对外 | ||
| 15 | - | ||
| 16 | - var widgetName = extra.widget; | ||
| 17 | - var Widget = widgets[widgetName]; | ||
| 18 | - if (Widget) return /*#__PURE__*/React.createElement(Widget, { | ||
| 19 | - schema: schema | ||
| 20 | - }); | ||
| 21 | - var __html = ''; | ||
| 22 | - | ||
| 23 | - if (typeof extra === 'string') { | ||
| 24 | - __html = extra; | ||
| 25 | - } // 内部BU使用的口子,这个api不对外,也没有必要 | ||
| 26 | - | ||
| 27 | - | ||
| 28 | - if (_typeof(extra) === 'object' && extra.text) { | ||
| 29 | - __html = extra.text; | ||
| 30 | - } | ||
| 31 | - | ||
| 32 | - return __html && /*#__PURE__*/React.createElement("div", { | ||
| 33 | - className: "fr-form-item-extra", | ||
| 34 | - dangerouslySetInnerHTML: { | ||
| 35 | - __html: __html | ||
| 36 | - } | ||
| 37 | - }); | ||
| 38 | -}; | ||
| 39 | - | ||
| 40 | -export default Extra; |
es/core/RenderField/Title.js
deleted
100644 → 0
| 1 | -import React from 'react'; | ||
| 2 | -import { useStore2 } from '../../hooks'; | ||
| 3 | -import { isCheckBoxType } from '../../utils'; | ||
| 4 | - | ||
| 5 | -var Description = function Description(_ref) { | ||
| 6 | - var displayType = _ref.displayType, | ||
| 7 | - schema = _ref.schema; | ||
| 8 | - var description = schema.description, | ||
| 9 | - descType = schema.descType; | ||
| 10 | - if (!description) return null; | ||
| 11 | - | ||
| 12 | - switch (displayType) { | ||
| 13 | - case 'row': | ||
| 14 | - return /*#__PURE__*/React.createElement("span", { | ||
| 15 | - className: "fr-tooltip-toggle", | ||
| 16 | - "aria-label": description | ||
| 17 | - }, /*#__PURE__*/React.createElement("i", { | ||
| 18 | - className: "fr-tooltip-icon" | ||
| 19 | - }), /*#__PURE__*/React.createElement("div", { | ||
| 20 | - className: "fr-tooltip-container" | ||
| 21 | - }, /*#__PURE__*/React.createElement("i", { | ||
| 22 | - className: "fr-tooltip-triangle" | ||
| 23 | - }), description)); | ||
| 24 | - | ||
| 25 | - case 'inline': | ||
| 26 | - return null; | ||
| 27 | - | ||
| 28 | - default: | ||
| 29 | - if (descType === 'icon') { | ||
| 30 | - return /*#__PURE__*/React.createElement("span", { | ||
| 31 | - className: "fr-tooltip-toggle", | ||
| 32 | - "aria-label": description | ||
| 33 | - }, /*#__PURE__*/React.createElement("i", { | ||
| 34 | - className: "fr-tooltip-icon" | ||
| 35 | - }), /*#__PURE__*/React.createElement("div", { | ||
| 36 | - className: "fr-tooltip-container" | ||
| 37 | - }, /*#__PURE__*/React.createElement("i", { | ||
| 38 | - className: "fr-tooltip-triangle" | ||
| 39 | - }), description)); | ||
| 40 | - } | ||
| 41 | - | ||
| 42 | - return /*#__PURE__*/React.createElement("span", { | ||
| 43 | - className: "fr-desc ml2" | ||
| 44 | - }, "( ".concat(description, " )")); | ||
| 45 | - } | ||
| 46 | -}; | ||
| 47 | - | ||
| 48 | -var Title = function Title(_ref2) { | ||
| 49 | - var labelClass = _ref2.labelClass, | ||
| 50 | - labelStyle = _ref2.labelStyle, | ||
| 51 | - schema = _ref2.schema, | ||
| 52 | - displayType = _ref2.displayType; | ||
| 53 | - | ||
| 54 | - var _useStore = useStore2(), | ||
| 55 | - globalDisplayType = _useStore.displayType, | ||
| 56 | - readOnly = _useStore.readOnly; | ||
| 57 | - | ||
| 58 | - var title = schema.title, | ||
| 59 | - required = schema.required, | ||
| 60 | - type = schema.type; | ||
| 61 | - var isObjType = type === 'object'; | ||
| 62 | - | ||
| 63 | - var _displayType = schema.displayType || displayType || globalDisplayType || 'column'; | ||
| 64 | - | ||
| 65 | - return /*#__PURE__*/React.createElement("div", { | ||
| 66 | - className: labelClass, | ||
| 67 | - style: labelStyle | ||
| 68 | - }, title ? /*#__PURE__*/React.createElement("label", { | ||
| 69 | - className: "fr-label-title ".concat(isCheckBoxType(schema, readOnly) || _displayType === 'column' ? 'no-colon' : '') // checkbox不带冒号 | ||
| 70 | - , | ||
| 71 | - title: title | ||
| 72 | - }, required === true && /*#__PURE__*/React.createElement("span", { | ||
| 73 | - className: "fr-label-required" | ||
| 74 | - }, " *"), /*#__PURE__*/React.createElement("span", { | ||
| 75 | - className: "".concat(isObjType ? 'b' : '', " ").concat(_displayType === 'column' ? 'flex-none' : '') | ||
| 76 | - }, /*#__PURE__*/React.createElement("span", { | ||
| 77 | - dangerouslySetInnerHTML: { | ||
| 78 | - __html: title | ||
| 79 | - } | ||
| 80 | - })), /*#__PURE__*/React.createElement(Description, { | ||
| 81 | - schema: schema, | ||
| 82 | - displayType: _displayType | ||
| 83 | - })) : null); | ||
| 84 | -}; | ||
| 85 | - | ||
| 86 | -export default Title; |
es/core/RenderField/index.js
deleted
100644 → 0
| 1 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 2 | - | ||
| 3 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 4 | - | ||
| 5 | -import React, { useEffect, useRef } from 'react'; | ||
| 6 | -import { useStore, useStore2, useTools } from '../../hooks'; | ||
| 7 | -import useDebouncedCallback from '../../useDebounce'; | ||
| 8 | -import { getValueByPath, isCheckBoxType, isObjType } from '../../utils'; | ||
| 9 | -import ErrorMessage from './ErrorMessage'; | ||
| 10 | -import Extra from './Extra'; | ||
| 11 | -import FieldTitle from './Title'; | ||
| 12 | -import ExtendedWidget from './ExtendedWidget'; // TODO: 之后不要直接用get,收口到一个内部方法getValue,便于全局 ctrl + f 查找 | ||
| 13 | - | ||
| 14 | -var RenderField = function RenderField(props) { | ||
| 15 | - var $id = props.$id, | ||
| 16 | - dataIndex = props.dataIndex, | ||
| 17 | - dataPath = props.dataPath, | ||
| 18 | - _value = props._value, | ||
| 19 | - dependValues = props.dependValues, | ||
| 20 | - _schema = props._schema, | ||
| 21 | - labelClass = props.labelClass, | ||
| 22 | - labelStyle = props.labelStyle, | ||
| 23 | - _contentClass = props.contentClass, | ||
| 24 | - children = props.children, | ||
| 25 | - _props$errorFields = props.errorFields, | ||
| 26 | - errorFields = _props$errorFields === void 0 ? [] : _props$errorFields, | ||
| 27 | - hideTitle = props.hideTitle, | ||
| 28 | - displayType = props.displayType; | ||
| 29 | - | ||
| 30 | - var _useStore = useStore(), | ||
| 31 | - formData = _useStore.formData; | ||
| 32 | - | ||
| 33 | - var _useStore2 = useStore2(), | ||
| 34 | - debounceInput = _useStore2.debounceInput, | ||
| 35 | - readOnly = _useStore2.readOnly, | ||
| 36 | - disabled = _useStore2.disabled, | ||
| 37 | - showValidate = _useStore2.showValidate; | ||
| 38 | - | ||
| 39 | - var _useTools = useTools(), | ||
| 40 | - onValuesChange = _useTools.onValuesChange, | ||
| 41 | - onItemChange = _useTools.onItemChange, | ||
| 42 | - setEditing = _useTools.setEditing, | ||
| 43 | - touchKey = _useTools.touchKey; | ||
| 44 | - | ||
| 45 | - var formDataRef = useRef(); | ||
| 46 | - formDataRef.current = formData; // console.log('<renderField>', $id); | ||
| 47 | - | ||
| 48 | - var errObj = errorFields.find(function (err) { | ||
| 49 | - return err.name === dataPath; | ||
| 50 | - }); | ||
| 51 | - var errorMessage = errObj && errObj.error; // 是一个list | ||
| 52 | - | ||
| 53 | - var hasError = Array.isArray(errorMessage) && errorMessage.length > 0; // 补上这个class,会自动让下面所有的展示ui变红! | ||
| 54 | - | ||
| 55 | - var contentClass = hasError && showValidate ? _contentClass + ' ant-form-item-has-error' : _contentClass; | ||
| 56 | - var contentStyle = {}; | ||
| 57 | - var debouncedSetEditing = useDebouncedCallback(setEditing, 350); | ||
| 58 | - | ||
| 59 | - var _readOnly = readOnly !== undefined ? readOnly : _schema.readOnly; | ||
| 60 | - | ||
| 61 | - var _disabled = disabled !== undefined ? disabled : _schema.disabled; // TODO: 优化一下,只有touch还是false的时候,setTouched | ||
| 62 | - | ||
| 63 | - | ||
| 64 | - var onChange = function onChange(value) { | ||
| 65 | - // 动过的key,算被touch了, 这里之后要考虑动的来源 | ||
| 66 | - touchKey(dataPath); // 开始编辑,节流 | ||
| 67 | - | ||
| 68 | - if (debounceInput) { | ||
| 69 | - setEditing(true); | ||
| 70 | - debouncedSetEditing(false); | ||
| 71 | - } | ||
| 72 | - | ||
| 73 | - if (typeof dataPath === 'string') { | ||
| 74 | - onItemChange(dataPath, value); | ||
| 75 | - } // 先不暴露给外部,这个api | ||
| 76 | - | ||
| 77 | - | ||
| 78 | - if (typeof onValuesChange === 'function') { | ||
| 79 | - onValuesChange(_defineProperty({}, dataPath, value), formDataRef.current); | ||
| 80 | - } | ||
| 81 | - }; | ||
| 82 | - | ||
| 83 | - var titleProps = { | ||
| 84 | - labelClass: labelClass, | ||
| 85 | - labelStyle: labelStyle, | ||
| 86 | - schema: _schema, | ||
| 87 | - displayType: displayType | ||
| 88 | - }; | ||
| 89 | - var messageProps = { | ||
| 90 | - message: errorMessage, | ||
| 91 | - schema: _schema, | ||
| 92 | - displayType: displayType, | ||
| 93 | - softHidden: displayType === 'inline', | ||
| 94 | - // 这个是如果没有校验信息时,展示与否 | ||
| 95 | - hardHidden: showValidate === false || _readOnly === true // 这个是强制的展示与否 | ||
| 96 | - | ||
| 97 | - }; | ||
| 98 | - var placeholderTitleProps = { | ||
| 99 | - className: labelClass, | ||
| 100 | - style: labelStyle | ||
| 101 | - }; | ||
| 102 | - | ||
| 103 | - var _showTitle = !hideTitle && typeof _schema.title === 'string'; // TODO: 这块最好能判断上一层是list1, | ||
| 104 | - | ||
| 105 | - | ||
| 106 | - if (hideTitle && _schema.title) { | ||
| 107 | - _schema.placeholder = _schema.placeholder || _schema.title; | ||
| 108 | - } | ||
| 109 | - | ||
| 110 | - var _getValue = function _getValue(path) { | ||
| 111 | - return getValueByPath(formData, path); | ||
| 112 | - }; | ||
| 113 | - | ||
| 114 | - var widgetProps = { | ||
| 115 | - $id: $id, | ||
| 116 | - schema: _schema, | ||
| 117 | - readOnly: _readOnly, | ||
| 118 | - disabled: _disabled, | ||
| 119 | - onChange: onChange, | ||
| 120 | - getValue: _getValue, | ||
| 121 | - formData: formData, | ||
| 122 | - value: _value, | ||
| 123 | - dependValues: dependValues, | ||
| 124 | - onItemChange: onItemChange, | ||
| 125 | - dataIndex: dataIndex, | ||
| 126 | - dataPath: dataPath, | ||
| 127 | - children: children | ||
| 128 | - }; // if (_schema && _schema.default !== undefined) { | ||
| 129 | - // widgetProps.value = _schema.default; | ||
| 130 | - // } | ||
| 131 | - // checkbox必须单独处理,布局太不同了 | ||
| 132 | - | ||
| 133 | - if (isCheckBoxType(_schema, _readOnly)) { | ||
| 134 | - return /*#__PURE__*/React.createElement(React.Fragment, null, _showTitle && /*#__PURE__*/React.createElement("div", placeholderTitleProps), /*#__PURE__*/React.createElement("div", { | ||
| 135 | - className: contentClass, | ||
| 136 | - style: contentStyle | ||
| 137 | - }, /*#__PURE__*/React.createElement(ExtendedWidget, widgetProps), /*#__PURE__*/React.createElement(Extra, widgetProps), /*#__PURE__*/React.createElement(ErrorMessage, messageProps))); | ||
| 138 | - } | ||
| 139 | - | ||
| 140 | - var titleElement = /*#__PURE__*/React.createElement(FieldTitle, titleProps); | ||
| 141 | - | ||
| 142 | - if (isObjType(_schema)) { | ||
| 143 | - titleElement = /*#__PURE__*/React.createElement("div", { | ||
| 144 | - style: { | ||
| 145 | - display: 'flex' | ||
| 146 | - } | ||
| 147 | - }, titleElement, /*#__PURE__*/React.createElement(ErrorMessage, messageProps)); | ||
| 148 | - return /*#__PURE__*/React.createElement("div", { | ||
| 149 | - className: contentClass, | ||
| 150 | - style: contentStyle | ||
| 151 | - }, /*#__PURE__*/React.createElement(ExtendedWidget, _extends({}, widgetProps, { | ||
| 152 | - message: errorMessage, | ||
| 153 | - title: _showTitle ? titleElement : undefined | ||
| 154 | - })), /*#__PURE__*/React.createElement(Extra, widgetProps)); | ||
| 155 | - } | ||
| 156 | - | ||
| 157 | - return /*#__PURE__*/React.createElement(React.Fragment, null, _showTitle && titleElement, /*#__PURE__*/React.createElement("div", { | ||
| 158 | - className: "".concat(contentClass, " ").concat(hideTitle ? 'fr-content-no-title' : ''), | ||
| 159 | - style: contentStyle | ||
| 160 | - }, /*#__PURE__*/React.createElement(ExtendedWidget, widgetProps), /*#__PURE__*/React.createElement(Extra, widgetProps), /*#__PURE__*/React.createElement(ErrorMessage, messageProps))); | ||
| 161 | -}; | ||
| 162 | - | ||
| 163 | -export default RenderField; |
es/core/index.js
deleted
100644 → 0
| 1 | -var _excluded = ["id", "_item", "dataIndex", "hideTitle", "hideValidation", "debugCss"], | ||
| 2 | - _excluded2 = ["id", "item", "dataIndex", "dataPath", "hideTitle", "hideValidation", "debugCss", "schema", "_value", "dependValues", "displayType", "column", "labelWidth", "readOnly", "errorFields", "effectiveLabelWidth"]; | ||
| 3 | - | ||
| 4 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 5 | - | ||
| 6 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 7 | - | ||
| 8 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 9 | - | ||
| 10 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 11 | - | ||
| 12 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 13 | - | ||
| 14 | -import React, { useRef } from 'react'; | ||
| 15 | -import RenderList from './RenderChildren/RenderList'; | ||
| 16 | -import RenderObject from './RenderChildren/RenderObject'; | ||
| 17 | -import RenderField from './RenderField'; | ||
| 18 | -import { useStore, useStore2 } from '../hooks'; | ||
| 19 | -import { isLooselyNumber, isCssLength, getParentProps, getParentPath, isListType, isCheckBoxType, isObjType, getValueByPath, getDataPath, parseRootValueInSchema, clone } from '../utils'; | ||
| 20 | - | ||
| 21 | -var Core = function Core(_ref) { | ||
| 22 | - var _ref$id = _ref.id, | ||
| 23 | - id = _ref$id === void 0 ? '#' : _ref$id, | ||
| 24 | - _item = _ref._item, | ||
| 25 | - _ref$dataIndex = _ref.dataIndex, | ||
| 26 | - dataIndex = _ref$dataIndex === void 0 ? [] : _ref$dataIndex, | ||
| 27 | - _ref$hideTitle = _ref.hideTitle, | ||
| 28 | - hideTitle = _ref$hideTitle === void 0 ? false : _ref$hideTitle, | ||
| 29 | - _ref$hideValidation = _ref.hideValidation, | ||
| 30 | - hideValidation = _ref$hideValidation === void 0 ? false : _ref$hideValidation, | ||
| 31 | - debugCss = _ref.debugCss, | ||
| 32 | - rest = _objectWithoutProperties(_ref, _excluded); | ||
| 33 | - | ||
| 34 | - // console.log('<Core>', id); | ||
| 35 | - var snapShot = useRef(); | ||
| 36 | - | ||
| 37 | - var _useStore = useStore(), | ||
| 38 | - flatten = _useStore.flatten, | ||
| 39 | - errorFields = _useStore.errorFields, | ||
| 40 | - isEditing = _useStore.isEditing, | ||
| 41 | - formData = _useStore.formData, | ||
| 42 | - allTouched = _useStore.allTouched; | ||
| 43 | - | ||
| 44 | - var _useStore2 = useStore2(), | ||
| 45 | - displayType = _useStore2.displayType, | ||
| 46 | - column = _useStore2.column, | ||
| 47 | - labelWidth = _useStore2.labelWidth, | ||
| 48 | - readOnly = _useStore2.readOnly; | ||
| 49 | - | ||
| 50 | - var item = _item ? _item : flatten[id]; | ||
| 51 | - if (!item) return null; | ||
| 52 | - var dataPath = getDataPath(id, dataIndex); | ||
| 53 | - var parentPath = getParentPath(dataPath); | ||
| 54 | - | ||
| 55 | - var _value = getValueByPath(formData, dataPath); | ||
| 56 | - | ||
| 57 | - var schema = clone(item.schema); | ||
| 58 | - var dependencies = schema.dependencies; | ||
| 59 | - var dependValues = []; | ||
| 60 | - var rootValue; | ||
| 61 | - | ||
| 62 | - try { | ||
| 63 | - if (Array.isArray(dependencies)) { | ||
| 64 | - dependencies.forEach(function (item) { | ||
| 65 | - var itemPath = getDataPath(item, dataIndex); | ||
| 66 | - var result = getValueByPath(formData, itemPath); | ||
| 67 | - dependValues.push(result); | ||
| 68 | - }); | ||
| 69 | - } | ||
| 70 | - } catch (error) { | ||
| 71 | - console.error("dependencies \u8BA1\u7B97\u62A5\u9519\uFF0C".concat(dependencies)); | ||
| 72 | - } | ||
| 73 | - | ||
| 74 | - try { | ||
| 75 | - rootValue = getValueByPath(formData, parentPath); | ||
| 76 | - } catch (error) {} // 节流部分逻辑,编辑时不执行 | ||
| 77 | - | ||
| 78 | - | ||
| 79 | - if (isEditing && snapShot.current) { | ||
| 80 | - schema = snapShot.current; | ||
| 81 | - } else { | ||
| 82 | - if (JSON.stringify(schema).indexOf('rootValue') > -1) { | ||
| 83 | - schema = parseRootValueInSchema(schema, rootValue); | ||
| 84 | - } | ||
| 85 | - | ||
| 86 | - snapShot.current = schema; | ||
| 87 | - } // 真正有效的label宽度需要从现在所在item开始一直往上回溯(设计成了继承关系),找到的第一个有值的 ui:labelWidth | ||
| 88 | - | ||
| 89 | - | ||
| 90 | - var effectiveLabelWidth = getParentProps('labelWidth', id, flatten) || labelWidth; | ||
| 91 | - | ||
| 92 | - var dataProps = _objectSpread({ | ||
| 93 | - id: id, | ||
| 94 | - item: item, | ||
| 95 | - // 如果直接传了item,就不用id去取item, 暂时是内部属性,不外用 | ||
| 96 | - dataIndex: dataIndex, | ||
| 97 | - // 数据来源是数组的第几个index,上层每有一个list,就push一个index | ||
| 98 | - dataPath: dataPath, | ||
| 99 | - _value: _value, | ||
| 100 | - dependValues: dependValues, | ||
| 101 | - hideTitle: hideTitle, | ||
| 102 | - hideValidation: hideValidation, | ||
| 103 | - debugCss: debugCss, | ||
| 104 | - schema: schema, | ||
| 105 | - displayType: displayType, | ||
| 106 | - column: column, | ||
| 107 | - labelWidth: labelWidth, | ||
| 108 | - readOnly: readOnly, | ||
| 109 | - errorFields: errorFields, | ||
| 110 | - effectiveLabelWidth: effectiveLabelWidth, | ||
| 111 | - allTouched: allTouched | ||
| 112 | - }, rest); | ||
| 113 | - | ||
| 114 | - return /*#__PURE__*/React.createElement(CoreRender, dataProps); | ||
| 115 | -}; | ||
| 116 | - | ||
| 117 | -var CoreRender = function CoreRender(_ref2) { | ||
| 118 | - var id = _ref2.id, | ||
| 119 | - item = _ref2.item, | ||
| 120 | - dataIndex = _ref2.dataIndex, | ||
| 121 | - dataPath = _ref2.dataPath, | ||
| 122 | - hideTitle = _ref2.hideTitle, | ||
| 123 | - hideValidation = _ref2.hideValidation, | ||
| 124 | - debugCss = _ref2.debugCss, | ||
| 125 | - schema = _ref2.schema, | ||
| 126 | - _value = _ref2._value, | ||
| 127 | - dependValues = _ref2.dependValues, | ||
| 128 | - displayType = _ref2.displayType, | ||
| 129 | - column = _ref2.column, | ||
| 130 | - labelWidth = _ref2.labelWidth, | ||
| 131 | - readOnly = _ref2.readOnly, | ||
| 132 | - errorFields = _ref2.errorFields, | ||
| 133 | - effectiveLabelWidth = _ref2.effectiveLabelWidth, | ||
| 134 | - rest = _objectWithoutProperties(_ref2, _excluded2); | ||
| 135 | - | ||
| 136 | - // if (schema.hidden) { | ||
| 137 | - // return null; | ||
| 138 | - // } | ||
| 139 | - // 样式的逻辑全放在这层 | ||
| 140 | - // displayType 一层层网上找值 | ||
| 141 | - var _displayType = schema.displayType || rest.displayType || displayType || 'column'; | ||
| 142 | - | ||
| 143 | - var isList = isListType(schema); | ||
| 144 | - var isObj = isObjType(schema); | ||
| 145 | - var isComplex = isObj || isList; | ||
| 146 | - var isCheckBox = isCheckBoxType(schema, readOnly); | ||
| 147 | - var width = schema.width || schema['ui:width']; | ||
| 148 | - var containerClass = "fr-field ".concat(_displayType === 'inline' ? '' : 'w-100', " flex"); | ||
| 149 | - var labelClass = "fr-label"; | ||
| 150 | - var contentClass = "fr-content"; | ||
| 151 | - | ||
| 152 | - if (typeof schema.className === 'string') { | ||
| 153 | - containerClass += ' ' + schema.className; | ||
| 154 | - } // common classNames dispite row or column | ||
| 155 | - | ||
| 156 | - | ||
| 157 | - switch (schema.type) { | ||
| 158 | - case 'object': | ||
| 159 | - if (isObj) { | ||
| 160 | - if (schema.title) { | ||
| 161 | - labelClass += ' fr-label-object'; | ||
| 162 | - } | ||
| 163 | - | ||
| 164 | - containerClass += ' fr-field-object'; | ||
| 165 | - } | ||
| 166 | - | ||
| 167 | - break; | ||
| 168 | - | ||
| 169 | - case 'array': | ||
| 170 | - // list 有两种展示形式! | ||
| 171 | - if (isList) { | ||
| 172 | - if (schema.title) { | ||
| 173 | - labelClass += ' fr-label-list'; | ||
| 174 | - } | ||
| 175 | - | ||
| 176 | - containerClass += ' fr-field-column'; | ||
| 177 | - } | ||
| 178 | - | ||
| 179 | - break; | ||
| 180 | - | ||
| 181 | - case 'boolean': | ||
| 182 | - if (isCheckBox) { | ||
| 183 | - contentClass += ' fr-content-column'; // checkbox高度短,需要居中对齐 | ||
| 184 | - | ||
| 185 | - containerClass += " flex ".concat(_displayType === 'column' ? 'flex-column' : ''); | ||
| 186 | - } | ||
| 187 | - | ||
| 188 | - break; | ||
| 189 | - | ||
| 190 | - default: | ||
| 191 | - } // column specific className | ||
| 192 | - | ||
| 193 | - | ||
| 194 | - if (!isComplex && !isCheckBox) { | ||
| 195 | - if (_displayType === 'column') { | ||
| 196 | - containerClass += ' flex-column'; | ||
| 197 | - labelClass += ' fr-label-column'; | ||
| 198 | - contentClass += ' fr-content-column'; | ||
| 199 | - | ||
| 200 | - switch (schema.type) { | ||
| 201 | - case 'object': | ||
| 202 | - break; | ||
| 203 | - | ||
| 204 | - case 'array': | ||
| 205 | - if (schema.title && !schema.enum) {// labelClass += ' b mb2'; | ||
| 206 | - } | ||
| 207 | - | ||
| 208 | - break; | ||
| 209 | - | ||
| 210 | - case 'boolean': | ||
| 211 | - break; | ||
| 212 | - | ||
| 213 | - default: | ||
| 214 | - } | ||
| 215 | - } else if (_displayType === 'row') { | ||
| 216 | - // row specific className | ||
| 217 | - containerClass += ''; | ||
| 218 | - labelClass += ' fr-label-row'; | ||
| 219 | - contentClass += ' fr-content-row'; | ||
| 220 | - | ||
| 221 | - if (!isObj && !isCheckBox) { | ||
| 222 | - labelClass += ' flex-shrink-0 fr-label-row'; | ||
| 223 | - contentClass += ' flex-grow-1 relative'; | ||
| 224 | - } | ||
| 225 | - } | ||
| 226 | - } // style part | ||
| 227 | - | ||
| 228 | - | ||
| 229 | - var columnStyle = {}; | ||
| 230 | - | ||
| 231 | - if (schema.hidden) { | ||
| 232 | - columnStyle.display = 'none'; | ||
| 233 | - } // if (!isComplex) { | ||
| 234 | - // } | ||
| 235 | - | ||
| 236 | - | ||
| 237 | - if (!isObj) { | ||
| 238 | - if (width) { | ||
| 239 | - columnStyle.width = width; | ||
| 240 | - columnStyle.paddingRight = 8; | ||
| 241 | - } else if (column > 1) { | ||
| 242 | - columnStyle.width = "calc(100% /".concat(column, ")"); | ||
| 243 | - columnStyle.paddingRight = 8; | ||
| 244 | - } | ||
| 245 | - } | ||
| 246 | - | ||
| 247 | - var _labelWidth = isLooselyNumber(effectiveLabelWidth) ? Number(effectiveLabelWidth) : isCssLength(effectiveLabelWidth) ? effectiveLabelWidth : 110; // 默认是 110px 的长度 | ||
| 248 | - | ||
| 249 | - | ||
| 250 | - var labelStyle = { | ||
| 251 | - width: _labelWidth | ||
| 252 | - }; | ||
| 253 | - | ||
| 254 | - if (isComplex || _displayType === 'column') { | ||
| 255 | - labelStyle = { | ||
| 256 | - flexGrow: 1 | ||
| 257 | - }; | ||
| 258 | - } | ||
| 259 | - | ||
| 260 | - if (_displayType === 'inline') { | ||
| 261 | - labelStyle = { | ||
| 262 | - marginTop: 5, | ||
| 263 | - paddingLeft: 12 | ||
| 264 | - }; | ||
| 265 | - labelClass = ''; | ||
| 266 | - contentClass += ' fr-content-inline'; | ||
| 267 | - | ||
| 268 | - if (containerClass.indexOf('fr-field-object') === -1) { | ||
| 269 | - containerClass += ' fr-field-inline'; | ||
| 270 | - } | ||
| 271 | - } | ||
| 272 | - | ||
| 273 | - var hasChildren = item.children && item.children.length > 0; | ||
| 274 | - var fieldProps = { | ||
| 275 | - $id: id, | ||
| 276 | - dataIndex: dataIndex, | ||
| 277 | - dataPath: dataPath, | ||
| 278 | - _value: _value, | ||
| 279 | - dependValues: dependValues, | ||
| 280 | - _schema: schema, | ||
| 281 | - labelClass: labelClass, | ||
| 282 | - labelStyle: labelStyle, | ||
| 283 | - contentClass: contentClass, | ||
| 284 | - errorFields: errorFields, | ||
| 285 | - // 层级间可使用的字段 | ||
| 286 | - displayType: _displayType, | ||
| 287 | - hideTitle: hideTitle, | ||
| 288 | - hideValidation: hideValidation | ||
| 289 | - }; | ||
| 290 | - var objChildren = /*#__PURE__*/React.createElement("div", { | ||
| 291 | - className: "flex flex-wrap" | ||
| 292 | - }, /*#__PURE__*/React.createElement(RenderObject, { | ||
| 293 | - dataIndex: dataIndex, | ||
| 294 | - errorFields: errorFields, | ||
| 295 | - displayType: _displayType, | ||
| 296 | - hideTitle: hideTitle | ||
| 297 | - }, item.children)); | ||
| 298 | - var listChildren = /*#__PURE__*/React.createElement(RenderList, { | ||
| 299 | - parentId: id, | ||
| 300 | - schema: schema, | ||
| 301 | - dataIndex: dataIndex, | ||
| 302 | - errorFields: errorFields, | ||
| 303 | - displayType: _displayType, | ||
| 304 | - hideTitle: hideTitle | ||
| 305 | - }, item.children); // 计算 children | ||
| 306 | - | ||
| 307 | - var _children = null; | ||
| 308 | - | ||
| 309 | - if (hasChildren) { | ||
| 310 | - if (isObj) { | ||
| 311 | - _children = objChildren; | ||
| 312 | - } else if (isList) { | ||
| 313 | - _children = listChildren; | ||
| 314 | - } | ||
| 315 | - } else if (isCheckBox) { | ||
| 316 | - _children = schema.title; | ||
| 317 | - } | ||
| 318 | - | ||
| 319 | - return /*#__PURE__*/React.createElement("div", { | ||
| 320 | - style: columnStyle, | ||
| 321 | - className: "".concat(containerClass, " ").concat(debugCss ? 'debug' : '') | ||
| 322 | - }, /*#__PURE__*/React.createElement(RenderField, fieldProps, _children)); | ||
| 323 | -}; | ||
| 324 | - | ||
| 325 | -var areEqual = function areEqual(prev, current) { | ||
| 326 | - if (prev.allTouched !== current.allTouched) { | ||
| 327 | - return false; | ||
| 328 | - } | ||
| 329 | - | ||
| 330 | - if (prev.displayType !== current.displayType) { | ||
| 331 | - return false; | ||
| 332 | - } | ||
| 333 | - | ||
| 334 | - if (prev.column !== current.column) { | ||
| 335 | - return false; | ||
| 336 | - } | ||
| 337 | - | ||
| 338 | - if (prev.labelWidth !== current.labelWidth) { | ||
| 339 | - return false; | ||
| 340 | - } | ||
| 341 | - | ||
| 342 | - if (JSON.stringify(prev.dependValues) !== JSON.stringify(current.dependValues)) { | ||
| 343 | - return false; | ||
| 344 | - } | ||
| 345 | - | ||
| 346 | - if (JSON.stringify(prev._value) === JSON.stringify(current._value) && JSON.stringify(prev.schema) === JSON.stringify(current.schema) && JSON.stringify(prev.errorFields) === JSON.stringify(current.errorFields)) { | ||
| 347 | - return true; | ||
| 348 | - } | ||
| 349 | - | ||
| 350 | - return false; | ||
| 351 | -}; | ||
| 352 | - | ||
| 353 | -var MCore = /*#__PURE__*/React.memo(CoreRender, areEqual); | ||
| 354 | -export default Core; |
es/createWidget.js
deleted
100644 → 0
| 1 | -var _excluded = ["schema"], | ||
| 2 | - _excluded2 = ["onChange", "value", "defaultValue", "schema", "readOnly"]; | ||
| 3 | - | ||
| 4 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 5 | - | ||
| 6 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 7 | - | ||
| 8 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 9 | - | ||
| 10 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 11 | - | ||
| 12 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 13 | - | ||
| 14 | -import React from "react"; | ||
| 15 | -import { defaultGetValueFromEvent } from './utils'; | ||
| 16 | -export var createWidget = function createWidget(mapProps, extraSchema) { | ||
| 17 | - return function (Component) { | ||
| 18 | - return function (props) { | ||
| 19 | - var schema = props.schema, | ||
| 20 | - rest = _objectWithoutProperties(props, _excluded); | ||
| 21 | - | ||
| 22 | - var _schema = _objectSpread(_objectSpread({}, schema), extraSchema); | ||
| 23 | - | ||
| 24 | - var propsMap = typeof mapProps === 'function' ? mapProps(_objectSpread({ | ||
| 25 | - schema: _schema | ||
| 26 | - }, rest)) : {}; | ||
| 27 | - | ||
| 28 | - var _props = _objectSpread(_objectSpread({ | ||
| 29 | - schema: _schema | ||
| 30 | - }, rest), propsMap); | ||
| 31 | - | ||
| 32 | - var finalProps = transformProps(_props); | ||
| 33 | - return /*#__PURE__*/React.createElement(Component, finalProps); | ||
| 34 | - }; | ||
| 35 | - }; | ||
| 36 | -}; | ||
| 37 | -export var transformProps = function transformProps(props) { | ||
| 38 | - var onChange = props.onChange, | ||
| 39 | - value = props.value, | ||
| 40 | - defaultValue = props.defaultValue, | ||
| 41 | - ownSchema = props.schema, | ||
| 42 | - readOnly = props.readOnly, | ||
| 43 | - rest = _objectWithoutProperties(props, _excluded2); | ||
| 44 | - | ||
| 45 | - var schema = _objectSpread({}, ownSchema); | ||
| 46 | - | ||
| 47 | - var _ref = schema || {}, | ||
| 48 | - trigger = _ref.trigger, | ||
| 49 | - valuePropName = _ref.valuePropName; | ||
| 50 | - | ||
| 51 | - var controlProps = {}; | ||
| 52 | - var _valuePropName = 'value'; | ||
| 53 | - | ||
| 54 | - var _value = value === undefined ? defaultValue : value; | ||
| 55 | - | ||
| 56 | - if (valuePropName && typeof valuePropName === 'string') { | ||
| 57 | - _valuePropName = valuePropName; | ||
| 58 | - controlProps[valuePropName] = _value; | ||
| 59 | - } else { | ||
| 60 | - controlProps.value = _value; | ||
| 61 | - } | ||
| 62 | - | ||
| 63 | - var _onChange = function _onChange() { | ||
| 64 | - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | ||
| 65 | - args[_key] = arguments[_key]; | ||
| 66 | - } | ||
| 67 | - | ||
| 68 | - var newValue = defaultGetValueFromEvent.apply(void 0, [_valuePropName].concat(args)); | ||
| 69 | - onChange(newValue); | ||
| 70 | - }; | ||
| 71 | - | ||
| 72 | - if (trigger && typeof trigger === 'string') { | ||
| 73 | - controlProps[trigger] = _onChange; | ||
| 74 | - } else { | ||
| 75 | - controlProps.onChange = _onChange; | ||
| 76 | - } | ||
| 77 | - | ||
| 78 | - var usefulPropsFromSchema = { | ||
| 79 | - disabled: schema.disabled || schema['ui:disabled'], | ||
| 80 | - readOnly: schema.readOnly || schema['ui:readonly'] || readOnly, | ||
| 81 | - hidden: schema.hidden || schema['ui:hidden'] | ||
| 82 | - }; | ||
| 83 | - | ||
| 84 | - var _props = _objectSpread(_objectSpread(_objectSpread({}, controlProps), {}, { | ||
| 85 | - schema: schema | ||
| 86 | - }, usefulPropsFromSchema), rest); | ||
| 87 | - | ||
| 88 | - return _props; | ||
| 89 | -}; |
es/hooks.js
deleted
100644 → 0
| 1 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 2 | - | ||
| 3 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 4 | - | ||
| 5 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 6 | - | ||
| 7 | -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } | ||
| 8 | - | ||
| 9 | -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
| 10 | - | ||
| 11 | -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
| 12 | - | ||
| 13 | -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
| 14 | - | ||
| 15 | -function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } | ||
| 16 | - | ||
| 17 | -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } | ||
| 18 | - | ||
| 19 | -import { useReducer, useContext, useRef, useEffect, useState, createContext } from 'react'; | ||
| 20 | -export var Ctx = /*#__PURE__*/createContext(function () {}); | ||
| 21 | -export var StoreCtx = /*#__PURE__*/createContext({}); | ||
| 22 | -export var Store2Ctx = /*#__PURE__*/createContext({}); | ||
| 23 | -export var useTools = function useTools() { | ||
| 24 | - return useContext(Ctx); | ||
| 25 | -}; | ||
| 26 | -export var useStore = function useStore() { | ||
| 27 | - return useContext(StoreCtx); | ||
| 28 | -}; | ||
| 29 | -export var useStore2 = function useStore2() { | ||
| 30 | - return useContext(Store2Ctx); | ||
| 31 | -}; | ||
| 32 | -export var useSet = function useSet(initState) { | ||
| 33 | - var _useReducer = useReducer(function (state, newState) { | ||
| 34 | - var action = newState; | ||
| 35 | - | ||
| 36 | - if (typeof newState === 'function') { | ||
| 37 | - action = action(state); | ||
| 38 | - } | ||
| 39 | - | ||
| 40 | - if (newState.action && newState.payload) { | ||
| 41 | - action = newState.payload; | ||
| 42 | - | ||
| 43 | - if (typeof action === 'function') { | ||
| 44 | - action = action(state); | ||
| 45 | - } | ||
| 46 | - } | ||
| 47 | - | ||
| 48 | - var result = _objectSpread(_objectSpread({}, state), action); // console.group(newState.action || 'action'); // TODO: give it a name | ||
| 49 | - // console.log('%cState:', 'color: #9E9E9E; font-weight: 700;', state); | ||
| 50 | - // console.log('%cAction:', 'color: #00A7F7; font-weight: 700;', action); | ||
| 51 | - // console.log('%cNext:', 'color: #47B04B; font-weight: 700;', result); | ||
| 52 | - // console.groupEnd(); | ||
| 53 | - | ||
| 54 | - | ||
| 55 | - // console.group(newState.action || 'action'); // TODO: give it a name | ||
| 56 | - // console.log('%cState:', 'color: #9E9E9E; font-weight: 700;', state); | ||
| 57 | - // console.log('%cAction:', 'color: #00A7F7; font-weight: 700;', action); | ||
| 58 | - // console.log('%cNext:', 'color: #47B04B; font-weight: 700;', result); | ||
| 59 | - // console.groupEnd(); | ||
| 60 | - return result; | ||
| 61 | - }, initState), | ||
| 62 | - _useReducer2 = _slicedToArray(_useReducer, 2), | ||
| 63 | - state = _useReducer2[0], | ||
| 64 | - setState = _useReducer2[1]; | ||
| 65 | - | ||
| 66 | - return [state, setState]; | ||
| 67 | -}; | ||
| 68 | -export function useInterval(callback, delay, start) { | ||
| 69 | - var savedCallback = useRef(); | ||
| 70 | - useEffect(function () { | ||
| 71 | - savedCallback.current = callback; | ||
| 72 | - }, [callback]); | ||
| 73 | - var id = useRef(); | ||
| 74 | - useEffect(function () { | ||
| 75 | - if (!start) { | ||
| 76 | - return; | ||
| 77 | - } | ||
| 78 | - | ||
| 79 | - function tick() { | ||
| 80 | - savedCallback && savedCallback.current && savedCallback.current(); | ||
| 81 | - } | ||
| 82 | - | ||
| 83 | - tick(); | ||
| 84 | - | ||
| 85 | - if (delay !== null) { | ||
| 86 | - id.current = setInterval(tick, delay); | ||
| 87 | - return function () { | ||
| 88 | - return clearInterval(id.current); | ||
| 89 | - }; | ||
| 90 | - } | ||
| 91 | - }, [delay, start]); | ||
| 92 | - return function () { | ||
| 93 | - return clearInterval(id.current); | ||
| 94 | - }; | ||
| 95 | -} | ||
| 96 | -export function usePrevious(value) { | ||
| 97 | - // The ref object is a generic container whose current property is mutable ... | ||
| 98 | - // ... and can hold any value, similar to an instance property on a class | ||
| 99 | - var ref = useRef(); // Store current value in ref | ||
| 100 | - | ||
| 101 | - useEffect(function () { | ||
| 102 | - ref.current = value; | ||
| 103 | - }, [value]); // Only re-run if value changes | ||
| 104 | - // Return previous value (happens before update in useEffect above) | ||
| 105 | - | ||
| 106 | - return ref.current; | ||
| 107 | -} | ||
| 108 | -export var useShowOnce = function useShowOnce(localKey) { | ||
| 109 | - // 从 localStorage 读取 key 值 | ||
| 110 | - var _useState = useState(false), | ||
| 111 | - _useState2 = _slicedToArray(_useState, 2), | ||
| 112 | - show = _useState2[0], | ||
| 113 | - setShow = _useState2[1]; | ||
| 114 | - | ||
| 115 | - var localStr; | ||
| 116 | - | ||
| 117 | - try { | ||
| 118 | - localStr = localStorage.getItem(localKey); | ||
| 119 | - } catch (error) {} | ||
| 120 | - | ||
| 121 | - if (!localStr) { | ||
| 122 | - setShow(true); | ||
| 123 | - localStorage.setItem(localKey, JSON.stringify(true)); | ||
| 124 | - } | ||
| 125 | - | ||
| 126 | - return show; | ||
| 127 | -}; | ||
| 128 | -export var useModal = function useModal() { | ||
| 129 | - var _useState3 = useState(false), | ||
| 130 | - _useState4 = _slicedToArray(_useState3, 2), | ||
| 131 | - show = _useState4[0], | ||
| 132 | - setShow = _useState4[1]; | ||
| 133 | - | ||
| 134 | - var toggle = function toggle() { | ||
| 135 | - return setShow(!show); | ||
| 136 | - }; | ||
| 137 | - | ||
| 138 | - return [show, toggle]; | ||
| 139 | -}; | ||
| 140 | -export var useWindowState = function useWindowState(initState) { | ||
| 141 | - var _useState5 = useState(initState), | ||
| 142 | - _useState6 = _slicedToArray(_useState5, 2), | ||
| 143 | - state = _useState6[0], | ||
| 144 | - setState = _useState6[1]; | ||
| 145 | - | ||
| 146 | - return [state, setState]; | ||
| 147 | -}; | ||
| 148 | -export var useStorageState = function useStorageState() { | ||
| 149 | - var initState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
| 150 | - var searchKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'SAVES'; | ||
| 151 | - | ||
| 152 | - var readSearchFromStorage = function readSearchFromStorage() { | ||
| 153 | - var searchStr = localStorage.getItem(searchKey); | ||
| 154 | - | ||
| 155 | - if (searchStr) { | ||
| 156 | - try { | ||
| 157 | - return JSON.parse(searchStr); | ||
| 158 | - } catch (error) { | ||
| 159 | - return initState; | ||
| 160 | - } | ||
| 161 | - } | ||
| 162 | - | ||
| 163 | - return initState; | ||
| 164 | - }; | ||
| 165 | - | ||
| 166 | - var _useState7 = useState(readSearchFromStorage()), | ||
| 167 | - _useState8 = _slicedToArray(_useState7, 2), | ||
| 168 | - data = _useState8[0], | ||
| 169 | - setData = _useState8[1]; | ||
| 170 | - | ||
| 171 | - var setSearchWithStorage = function setSearchWithStorage(search) { | ||
| 172 | - setData(search); | ||
| 173 | - localStorage.setItem(searchKey, JSON.stringify(search)); | ||
| 174 | - }; | ||
| 175 | - | ||
| 176 | - return [data, setSearchWithStorage]; | ||
| 177 | -}; |
es/index.css
deleted
100644 → 0
| 1 | -/* | ||
| 2 | - 用于原有样式的覆盖 | ||
| 3 | - */ | ||
| 4 | -.fr-container { | ||
| 5 | - /* Row */ | ||
| 6 | - /* 自定义类 */ | ||
| 7 | - /* 组件内部样式*/ | ||
| 8 | - /* 其他样式 */ | ||
| 9 | -} | ||
| 10 | -.fr-container .fr-field { | ||
| 11 | - font-size: 14px; | ||
| 12 | - padding: 0; | ||
| 13 | - color: rgba(0, 0, 0, 0.85); | ||
| 14 | - line-height: 1.5715; | ||
| 15 | - margin-bottom: 0; | ||
| 16 | -} | ||
| 17 | -.fr-container .fr-field-column { | ||
| 18 | - flex-direction: column; | ||
| 19 | -} | ||
| 20 | -.fr-container .fr-field-object { | ||
| 21 | - flex-direction: column; | ||
| 22 | -} | ||
| 23 | -.fr-container .fr-field-inline { | ||
| 24 | - margin-bottom: 12px; | ||
| 25 | -} | ||
| 26 | -.fr-container .fr-item-wrapper { | ||
| 27 | - position: relative; | ||
| 28 | - display: flex; | ||
| 29 | - align-items: center; | ||
| 30 | - min-height: 32px; | ||
| 31 | -} | ||
| 32 | -.fr-container .ant-table-cell .fr-field { | ||
| 33 | - margin-bottom: 0; | ||
| 34 | -} | ||
| 35 | -.fr-container .fr-collapse-object { | ||
| 36 | - margin-bottom: 8px; | ||
| 37 | - overflow: hidden; | ||
| 38 | - background: #f7f7f7; | ||
| 39 | - border-radius: 2px; | ||
| 40 | -} | ||
| 41 | -.fr-container .fr-collapse-object .ant-collapse-header { | ||
| 42 | - padding-bottom: 4px !important; | ||
| 43 | - padding-top: 4px !important; | ||
| 44 | -} | ||
| 45 | -.fr-container .fr-collapse-object .ant-collapse-content-box { | ||
| 46 | - padding: 8px 8px 4px 8px !important; | ||
| 47 | -} | ||
| 48 | -.fr-container .fr-collapse-object .ant-collapse-arrow { | ||
| 49 | - padding-top: 5px !important; | ||
| 50 | -} | ||
| 51 | -.fr-container .fr-label { | ||
| 52 | - display: block; | ||
| 53 | -} | ||
| 54 | -.fr-container .fr-label-row { | ||
| 55 | - text-align: right; | ||
| 56 | - flex-shrink: 0; | ||
| 57 | - margin-top: 5px; | ||
| 58 | -} | ||
| 59 | -.fr-container .fr-label-column { | ||
| 60 | - margin-bottom: 4px; | ||
| 61 | -} | ||
| 62 | -.fr-container .fr-label-title { | ||
| 63 | - display: inline-flex; | ||
| 64 | - color: #333; | ||
| 65 | - font-size: 14px; | ||
| 66 | - min-height: 22px; | ||
| 67 | - /* ""的标签页占位 */ | ||
| 68 | - line-height: 22px; | ||
| 69 | -} | ||
| 70 | -.fr-container .fr-label-required { | ||
| 71 | - margin: 1px 4px 0 0; | ||
| 72 | - color: #f5222d; | ||
| 73 | - font-size: 14px; | ||
| 74 | - font-family: SimSun, sans-serif; | ||
| 75 | -} | ||
| 76 | -.fr-container .fr-label-title::after { | ||
| 77 | - content: ':'; | ||
| 78 | - position: relative; | ||
| 79 | - top: -0.5px; | ||
| 80 | - margin: 0 10px 0 2px; | ||
| 81 | -} | ||
| 82 | -.fr-container .fr-label-title.no-colon::after { | ||
| 83 | - content: ''; | ||
| 84 | - margin: 0; | ||
| 85 | -} | ||
| 86 | -.fr-container .fr-label-object .fr-label-title { | ||
| 87 | - font-size: 16px; | ||
| 88 | - color: #222; | ||
| 89 | -} | ||
| 90 | -.fr-container .fr-label-list { | ||
| 91 | - margin-bottom: 5px; | ||
| 92 | -} | ||
| 93 | -.fr-container .fr-content { | ||
| 94 | - width: 100%; | ||
| 95 | -} | ||
| 96 | -.fr-container .fr-list-1 .fr-content { | ||
| 97 | - min-width: 140px; | ||
| 98 | -} | ||
| 99 | -.fr-container .fr-list-1 .fr-content-row { | ||
| 100 | - flex: 1; | ||
| 101 | - position: relative; | ||
| 102 | -} | ||
| 103 | -.fr-container .fr-list-1 .fr-content.fr-content-inline { | ||
| 104 | - width: unset; | ||
| 105 | -} | ||
| 106 | -.fr-container .fr-list-1 .fr-content.fr-content-inline.fr-content-no-title { | ||
| 107 | - margin-right: 8px; | ||
| 108 | -} | ||
| 109 | -.fr-container .fr-desc { | ||
| 110 | - /* margin-top: 3px; */ | ||
| 111 | - font-size: 12px; | ||
| 112 | - word-break: break-all; | ||
| 113 | - color: #888; | ||
| 114 | -} | ||
| 115 | -.fr-container .fr-validate { | ||
| 116 | - margin-left: 12px; | ||
| 117 | - font-size: 12px; | ||
| 118 | - word-break: break-all; | ||
| 119 | - color: #f5222d; | ||
| 120 | -} | ||
| 121 | -.fr-container .fr-validate-row { | ||
| 122 | - margin: 3px 0 0 0; | ||
| 123 | -} | ||
| 124 | -.fr-container .fr-field-row .fr-tooltip-icon { | ||
| 125 | - margin: 3px 2px 0 0; | ||
| 126 | -} | ||
| 127 | -.fr-container .hover-b--black-20:hover { | ||
| 128 | - border-color: rgba(0, 0, 0, 0.3); | ||
| 129 | -} | ||
| 130 | -.fr-container .pt44 { | ||
| 131 | - padding-top: 46px; | ||
| 132 | -} | ||
| 133 | -.fr-container .pv12 { | ||
| 134 | - padding-top: 12px; | ||
| 135 | - padding-bottom: 12px; | ||
| 136 | -} | ||
| 137 | -.fr-container .fr-move-icon { | ||
| 138 | - position: absolute; | ||
| 139 | - top: 0; | ||
| 140 | - right: 0; | ||
| 141 | - padding-top: 2px; | ||
| 142 | - padding-right: 10px; | ||
| 143 | - font-size: 24px; | ||
| 144 | - font-weight: 300; | ||
| 145 | -} | ||
| 146 | -.fr-container .fr-move-icon:hover { | ||
| 147 | - cursor: move; | ||
| 148 | -} | ||
| 149 | -.fr-container .fr-color-picker { | ||
| 150 | - width: 100%; | ||
| 151 | - display: flex; | ||
| 152 | - flex-direction: row; | ||
| 153 | - align-items: center; | ||
| 154 | - color: #666; | ||
| 155 | -} | ||
| 156 | -.fr-container .fr-color-picker .rc-color-picker-trigger { | ||
| 157 | - margin-right: 12px; | ||
| 158 | - height: 32px; | ||
| 159 | - width: 60px; | ||
| 160 | - border: 1px solid #e5e5e5; | ||
| 161 | -} | ||
| 162 | -.fr-container .fr-color-picker > p { | ||
| 163 | - margin: 0; | ||
| 164 | - font-size: 14px; | ||
| 165 | - line-height: 28px; | ||
| 166 | -} | ||
| 167 | -.fr-container .fr-color-picker .rc-color-picker-wrap { | ||
| 168 | - display: flex; | ||
| 169 | -} | ||
| 170 | -.fr-container .next-input, | ||
| 171 | -.fr-container .next-number-picker { | ||
| 172 | - width: 100%; | ||
| 173 | -} | ||
| 174 | -.fr-container .upload-img { | ||
| 175 | - max-width: 200px; | ||
| 176 | - max-height: 200px; | ||
| 177 | - margin-right: 24px; | ||
| 178 | -} | ||
| 179 | -.fr-container .fr-preview-image { | ||
| 180 | - width: 160px; | ||
| 181 | -} | ||
| 182 | -.fr-container .fr-preview { | ||
| 183 | - position: relative; | ||
| 184 | - cursor: pointer; | ||
| 185 | -} | ||
| 186 | -.fr-container .fr-upload-mod, | ||
| 187 | -.fr-container .fr-upload-file { | ||
| 188 | - display: flex; | ||
| 189 | -} | ||
| 190 | -.fr-container .fr-upload-mod { | ||
| 191 | - align-items: center; | ||
| 192 | -} | ||
| 193 | -.fr-container .fr-upload-mod .fr-upload-preview { | ||
| 194 | - margin: 0 12px; | ||
| 195 | -} | ||
| 196 | -.fr-container .fr-upload-file .ant-upload-list-item { | ||
| 197 | - margin: 5px 0 0 8px; | ||
| 198 | -} | ||
| 199 | -.fr-container .fr-upload-file .ant-upload-list-item-name { | ||
| 200 | - margin-right: 6px; | ||
| 201 | -} | ||
| 202 | -.fr-container .fr-upload-file .ant-upload-list-item-info { | ||
| 203 | - cursor: pointer; | ||
| 204 | -} | ||
| 205 | -.fr-container .fr-upload-file .next-upload-list-text .next-upload-list-item-done, | ||
| 206 | -.fr-container .fr-upload-file .next-upload-list-text .next-upload-list-item .next-icon { | ||
| 207 | - height: 28px; | ||
| 208 | - line-height: 28px; | ||
| 209 | - margin-left: 12px; | ||
| 210 | -} | ||
| 211 | -.fr-container .fr-upload-file .next-upload-list-item-name-wrap { | ||
| 212 | - margin-top: -4px; | ||
| 213 | -} | ||
| 214 | -.fr-container .fr-sort-help-class { | ||
| 215 | - background: #fff; | ||
| 216 | -} | ||
| 217 | -.fr-container .fold-icon.fold-icon-active { | ||
| 218 | - transform: rotate(0deg); | ||
| 219 | -} | ||
| 220 | -.fr-container .fold-icon { | ||
| 221 | - transform: rotate(-90deg); | ||
| 222 | - transition: transform 0.24s; | ||
| 223 | - cursor: pointer; | ||
| 224 | - position: relative; | ||
| 225 | -} | ||
| 226 | -.fr-container .fold-icon::after { | ||
| 227 | - content: ''; | ||
| 228 | - position: absolute; | ||
| 229 | - top: -20px; | ||
| 230 | - right: -10px; | ||
| 231 | - bottom: -5px; | ||
| 232 | - left: -20px; | ||
| 233 | -} | ||
| 234 | -.fr-container .fr-tooltip-toggle { | ||
| 235 | - cursor: pointer; | ||
| 236 | - position: relative; | ||
| 237 | -} | ||
| 238 | -.fr-container .fr-tooltip-toggle:hover .fr-tooltip-container { | ||
| 239 | - opacity: 1; | ||
| 240 | - visibility: visible; | ||
| 241 | -} | ||
| 242 | -.fr-container .fr-tooltip-icon { | ||
| 243 | - height: 14px; | ||
| 244 | - width: 14px; | ||
| 245 | - background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAEnUlEQVR42u1bS0iUURT+zd4Y9KDosSihNhYUaBE9YKpFDKKOOmOLahtJ2SoxA2fUdUoQJK5qU0ib6LlxUYJpkY0LE3tQZkU7y7A0e1jnA4Of8pz//5373/+BF44Oc+/c853v3nOf5xpup0QiMZ9kD8mxeDzeTHKXPveSvKXP3+j/GP1/h++QhzIoW1ZWthu/NYKYysvLN5EhKZJ7ZMQEye8ZyjjJfZIk6vS10YWFhcvI4FoC2wfwLkkf6aiBLt8YHovFNhCoFnRlgNQkY9BJbrLeS9uzqFueYAzXJV9ITgKLVsvBPCnuAAifSIe23kBd7zApHHUI8D3JBfptFUlialbYSJIDweep7+Iog7L4jUMdn4HNzeksmxRcdgColyRZWlq6NQOd21AH6rKrFxiBVanxxcXFS6jSdpsAHtLYUODC1FqAum0S0Q7Mqlp+ESlO2zD8DUmJBhcsgS4bJDwBdhUKb1ko+kll6qLR6AJDU4IuuAZ0W2C7kWnrJy1a/QONvjsNjxLp32VjsEzO1OcOkoJJoeJuGuBWGB4nYCCcD4RGmiSJOm35PIup7kokEplr+CQBCzAJeEeJqC22V3jE2IBQWVd+fv48w2cJmAhbp4C7H7bZaf1KoZJBbET8vCEDRgF/pdXGZim1/ifGl344WtTIJJ//B+ggts+K6t4BrAwBH2GjNKo2CuxVqzJeGLDqFemoFnQ0sq0vDHyP4D+KwI1ILqZqpyqsGmFjznStX8tNIzQlbjYUJasVnCo9wAzsjE1npyPgFQPqJvKDRYC8ioWt/200BFD7FRMwIu0nFBNwgNMFm80Fz0mAFIOqVz4IyoS/ZvQ1mQv1MYBqkO8GCSDXTDRjvAoCznAHrH/X0qu4FqE99Voj2AkErOPsg+3w/wqmwDMjHAkkPGdsPITMBqb7t4SFANjCjTkgoI0ZJY+Hwnp5f9MGdtIMOxF35n1ZXDrG38fYmDa48zWcs4eFANxesUtv+jPMZC4PCwE4NWL0DRvcehkHjyEhACdGCxl9vwBwggEyxw0wXhCAOANG34TsAi4k37kA/RliMnND1ANyGX1DGAMe89Og+uSjaRDSAwKucgeIYSEAcQzc8T4ISDGZrSFygVaml6dAQILJfBEiAl4yy/0KZK6WtsMBJwD+v0bcDk/tlp4yveB0cAmQj8hhs7lQE1NoIAQEPGdsazZ3k+3SoahOAvQfisoDBeR2QAmArjvcsbi2i5FMQ+Ay0Jvn6GIE10VWV2MBIiALmKWrMfFylJsRgkIAsAp1NojX47hCZn74HdfjficAAzp3PY6rf9g4GyBhw3/6Axoi0yW48IDtcQwBRVIUOHaQfguSAiYpvB42Od1Cxiz8s5tkpdfGAwOwSFhhy0xXUnV+DpSEbmCwwFiXKcPXbYTKpnSHykIndFsYf01JsDRJTxCDpUGU7nB5SKcfwuWLiooWK38wQXLJwcOFtIoHE/Bh5v6SE2DMdvNN4BE3nszQ93szfTJDclTbU7lAP5pSGIxY5eWzOdL/lXrkKW6Fp7M3XPTi4SR0zz6dnX087fOEq2k8hTc/nydJm57Pj3v5fP4PSqRR6oYkTaUAAAAASUVORK5CYII='); | ||
| 246 | - background-size: cover; | ||
| 247 | - display: block; | ||
| 248 | - margin: 4px 0 0 4px; | ||
| 249 | -} | ||
| 250 | -.fr-container .fr-tooltip-container { | ||
| 251 | - position: absolute; | ||
| 252 | - width: 160px; | ||
| 253 | - white-space: initial !important; | ||
| 254 | - top: -4px; | ||
| 255 | - left: 0; | ||
| 256 | - bottom: unset; | ||
| 257 | - transform: translateY(-100%); | ||
| 258 | - text-align: left; | ||
| 259 | - background: #2b222a; | ||
| 260 | - padding: 4px; | ||
| 261 | - margin-left: -69px; | ||
| 262 | - border-radius: 4px; | ||
| 263 | - color: #efefef; | ||
| 264 | - font-size: 13px; | ||
| 265 | - cursor: auto; | ||
| 266 | - z-index: 99999; | ||
| 267 | - transition: all 0.5s ease; | ||
| 268 | - opacity: 0; | ||
| 269 | - visibility: hidden; | ||
| 270 | - word-wrap: break-word; | ||
| 271 | -} | ||
| 272 | -.fr-container .fr-tooltip-triangle { | ||
| 273 | - position: absolute; | ||
| 274 | - left: 50%; | ||
| 275 | - border-left: 5px solid transparent; | ||
| 276 | - border-right: 5px solid transparent; | ||
| 277 | - border-top: 5px solid #2b222a; | ||
| 278 | - transition: all 0.5s ease; | ||
| 279 | - content: ' '; | ||
| 280 | - font-size: 0; | ||
| 281 | - line-height: 0; | ||
| 282 | - margin-left: -5px; | ||
| 283 | - width: 0; | ||
| 284 | - bottom: -5px; | ||
| 285 | -} | ||
| 286 | -.fr-container .fr-tooltip-toggle::before, | ||
| 287 | -.fr-container .fr-tooltip-toggle::after { | ||
| 288 | - color: #efefef; | ||
| 289 | - font-size: 13px; | ||
| 290 | - opacity: 0; | ||
| 291 | - pointer-events: none; | ||
| 292 | - text-align: center; | ||
| 293 | -} | ||
| 294 | -.fr-container .fr-tooltip-toggle:focus::before, | ||
| 295 | -.fr-container .fr-tooltip-toggle:focus::after, | ||
| 296 | -.fr-container .fr-tooltip-toggle:hover::before, | ||
| 297 | -.fr-container .fr-tooltip-toggle:hover::after { | ||
| 298 | - opacity: 1; | ||
| 299 | - transition: all 0.75s ease; | ||
| 300 | -} | ||
| 301 | -.fr-container .fr-slider { | ||
| 302 | - display: flex; | ||
| 303 | - width: 100%; | ||
| 304 | - align-items: center; | ||
| 305 | -} | ||
| 306 | -.fr-container .fr-map { | ||
| 307 | - display: flex; | ||
| 308 | - flex-wrap: wrap; | ||
| 309 | -} | ||
| 310 | -.fr-container .fr-arrow-icon { | ||
| 311 | - cursor: pointer; | ||
| 312 | -} | ||
| 313 | -.fr-container .fr-row-error { | ||
| 314 | - background-color: rgba(255, 77, 79, 0.2); | ||
| 315 | -} | ||
| 316 | -.fr-container .fr-theme-card-wrap { | ||
| 317 | - background-color: #fff; | ||
| 318 | - padding: 36px 40px; | ||
| 319 | - margin-bottom: 24px; | ||
| 320 | - border-radius: 4px; | ||
| 321 | - display: flex; | ||
| 322 | - justify-content: space-between; | ||
| 323 | -} | ||
| 324 | -.fr-container .fr-theme-card-wrap .fr-theme-card-title { | ||
| 325 | - font-size: 16px; | ||
| 326 | - margin-bottom: 16px; | ||
| 327 | -} |
es/index.d.ts
deleted
100644 → 0
| 1 | -import * as React from 'react'; | ||
| 2 | -export interface Error { | ||
| 3 | - /** 错误的数据路径 */ | ||
| 4 | - name: string; | ||
| 5 | - /** 错误的内容 */ | ||
| 6 | - error: string[]; | ||
| 7 | -} | ||
| 8 | -export interface FormParams { | ||
| 9 | - formData?: any; | ||
| 10 | - onChange?: (data: any) => void; | ||
| 11 | - onValidate?: (valid: any) => void; | ||
| 12 | - showValidate?: boolean; | ||
| 13 | - /** 数据分析接口,表单展示完成渲染时触发 */ | ||
| 14 | - logOnMount?: (stats: any) => void; | ||
| 15 | - /** 数据分析接口,表单提交成功时触发,获得本次表单填写的总时长 */ | ||
| 16 | - logOnSubmit?: (stats: any) => void; | ||
| 17 | -} | ||
| 18 | - | ||
| 19 | -export interface ValidateParams { | ||
| 20 | - formData: any; | ||
| 21 | - schema: any; | ||
| 22 | - error: Error[]; | ||
| 23 | - [k: string]: any; | ||
| 24 | -} | ||
| 25 | -export interface FormInstance { | ||
| 26 | - formData: any; | ||
| 27 | - schema: any; | ||
| 28 | - flatten: any; | ||
| 29 | - touchedKeys: string[]; | ||
| 30 | - touchKey: (key: string) => void; | ||
| 31 | - onItemChange: (path: string, value: any) => void; | ||
| 32 | - setValueByPath: (path: string, value: any) => void; | ||
| 33 | - getSchemaByPath: (path: string) => object; | ||
| 34 | - setSchemaByPath: (path: string, value: any) => void; | ||
| 35 | - setSchema: (settings: any) => void; | ||
| 36 | - setValues: (formData: any) => void; | ||
| 37 | - getValues: () => any; | ||
| 38 | - resetFields: () => void; | ||
| 39 | - submit: () => Promise<void> | Promise<any[]>; | ||
| 40 | - submitData: any; | ||
| 41 | - errorFields: Error[]; | ||
| 42 | - isValidating: boolean; | ||
| 43 | - outsideValidating: boolean; | ||
| 44 | - isSubmitting: boolean; | ||
| 45 | - endValidating: () => void; | ||
| 46 | - endSubmitting: () => void; | ||
| 47 | - setErrorFields: (error: Error[]) => void; | ||
| 48 | - removeErrorField: (path: string) => void; | ||
| 49 | - removeTouched: (path: string) => void; | ||
| 50 | - changeTouchedKeys: (pathArray: string[]) => void; | ||
| 51 | - isEditing: boolean; | ||
| 52 | - setEditing: (status: boolean) => void; | ||
| 53 | - syncStuff: (args: any) => void; | ||
| 54 | - /** 折中升级方案中使用到,正常用不到 */ | ||
| 55 | - init: () => void; | ||
| 56 | - /** 数据分析接口,表单展示完成渲染时触发 */ | ||
| 57 | - logOnMount?: (any) => void; | ||
| 58 | - /** 数据分析接口,表单提交成功时触发,获得本次表单填写的总时长 */ | ||
| 59 | - logOnSubmit?: (any) => void; | ||
| 60 | -} | ||
| 61 | - | ||
| 62 | -export type WatchProperties = { | ||
| 63 | - [path: string]: | ||
| 64 | - | { | ||
| 65 | - handler: (value: any) => void; | ||
| 66 | - immediate?: boolean; | ||
| 67 | - } | ||
| 68 | - | ((value: any) => void); | ||
| 69 | -}; | ||
| 70 | - | ||
| 71 | -export interface FRProps { | ||
| 72 | - /** 表单 id */ | ||
| 73 | - id?: string | number; | ||
| 74 | - /** 表单顶层的className */ | ||
| 75 | - className?: string; | ||
| 76 | - /** 表单顶层的样式 */ | ||
| 77 | - style?: any; | ||
| 78 | - /** 表单 schema */ | ||
| 79 | - schema: any; | ||
| 80 | - /** form单例 */ | ||
| 81 | - form: FormInstance; | ||
| 82 | - /** 组件和schema的映射规则 */ | ||
| 83 | - mapping?: any; | ||
| 84 | - /** 自定义组件 */ | ||
| 85 | - widgets?: any; | ||
| 86 | - /** 表单提交前钩子 */ | ||
| 87 | - displayType?: string; | ||
| 88 | - /** 只读模式 */ | ||
| 89 | - readOnly?: boolean; | ||
| 90 | - /** 禁用模式 */ | ||
| 91 | - disabled?: boolean; | ||
| 92 | - /** 标签宽度 */ | ||
| 93 | - labelWidth?: string | number; | ||
| 94 | - /** antd的全局config */ | ||
| 95 | - configProvider?: any; | ||
| 96 | - theme?: string | number; | ||
| 97 | - /** 覆盖默认的校验信息 */ | ||
| 98 | - validateMessages?: any; | ||
| 99 | - /** 显示当前表单内部状态 */ | ||
| 100 | - debug?: boolean; | ||
| 101 | - /** 显示css布局提示线 */ | ||
| 102 | - debugCss?: boolean; | ||
| 103 | - locale?: string; | ||
| 104 | - column?: number; | ||
| 105 | - debounceInput?: boolean; | ||
| 106 | - size?: string; | ||
| 107 | - // 数据会作为 beforeFinish 的第四个参数传入 | ||
| 108 | - config?: any; | ||
| 109 | - // 类似于 vuejs 的 watch 的用法,监控值的变化,触发 callback | ||
| 110 | - watch?: WatchProperties; | ||
| 111 | - /** 对象组件是否折叠(全局的控制) */ | ||
| 112 | - allCollapsed?: boolean; | ||
| 113 | - /** 表单的全局共享属性 */ | ||
| 114 | - globalProps?: any; | ||
| 115 | - /** 表单首次加载钩子 */ | ||
| 116 | - onMount?: () => void; | ||
| 117 | - /** 表单提交前钩子 */ | ||
| 118 | - beforeFinish?: (params: ValidateParams) => Error[] | Promise<Error[]>; | ||
| 119 | - /** 表单提交后钩子 */ | ||
| 120 | - onFinish?: (formData: any, error: Error[]) => void; | ||
| 121 | - /** 时时与外部更新同步的钩子 */ | ||
| 122 | - onValuesChange?: (changedValues: any, formData: any) => void; | ||
| 123 | - /** 隐藏的数据是否去掉,默认不去掉(false) */ | ||
| 124 | - removeHiddenData?: boolean; | ||
| 125 | -} | ||
| 126 | - | ||
| 127 | -declare const FR: React.FC<FRProps>; | ||
| 128 | - | ||
| 129 | -export declare function useForm(params?: FormParams): FormInstance; | ||
| 130 | - | ||
| 131 | -export type ConnectedForm<T> = T & { | ||
| 132 | - form: FormInstance; | ||
| 133 | -}; | ||
| 134 | - | ||
| 135 | -export declare function connectForm<T extends {} = any>( | ||
| 136 | - component: React.ComponentType<ConnectedForm<T>> | ||
| 137 | -): React.ComponentType<T>; | ||
| 138 | - | ||
| 139 | -export default FR; |
es/index.js
deleted
100644 → 0
| 1 | -import "antd/es/config-provider/style"; | ||
| 2 | -import _ConfigProvider from "antd/es/config-provider"; | ||
| 3 | -var _excluded = ["id", "widgets", "mapping", "form", "className", "style", "beforeFinish", "onFinish", "displayType", "schema", "debug", "debugCss", "locale", "debounceInput", "size", "configProvider", "theme", "validateMessages", "watch", "config", "onMount", "labelWidth", "readOnly", "disabled", "allCollapsed", "onValuesChange", "column", "removeHiddenData", "globalProps"], | ||
| 4 | - _excluded2 = ["onItemChange", "setEditing", "touchKey", "setValueByPath", "getSchemaByPath", "setSchemaByPath", "setSchema", "setValues", "getValues", "resetFields", "submit", "endValidating", "endSubmitting", "setErrorFields", "removeErrorField", "removeTouched", "changeTouchedKeys", "syncStuff", "logOnMount", "logOnSubmit", "setFirstMount"], | ||
| 5 | - _excluded3 = ["isOldVersion", "schema"]; | ||
| 6 | - | ||
| 7 | -function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
| 8 | - | ||
| 9 | -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
| 10 | - | ||
| 11 | -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
| 12 | - | ||
| 13 | -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
| 14 | - | ||
| 15 | -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
| 16 | - | ||
| 17 | -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
| 18 | - | ||
| 19 | -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
| 20 | - | ||
| 21 | -/* eslint-disable react-hooks/exhaustive-deps */ | ||
| 22 | -import React, { useEffect, useMemo, useRef } from 'react'; | ||
| 23 | -import { updateSchemaToNewVersion, getValueByPath, msToTime, yymmdd } from './utils'; | ||
| 24 | -import Core from './core'; | ||
| 25 | -import { Ctx, StoreCtx, Store2Ctx } from './hooks'; | ||
| 26 | -import { widgets as defaultWidgets } from './widgets/antd'; | ||
| 27 | -import { mapping as defaultMapping } from './mapping'; | ||
| 28 | -import zhCN from 'antd/lib/locale/zh_CN'; | ||
| 29 | -import "./atom.css"; | ||
| 30 | -import "./index.css"; | ||
| 31 | - | ||
| 32 | -var defaultFinish = function defaultFinish(data, errors) { | ||
| 33 | - console.log('onFinish:', { | ||
| 34 | - data: data, | ||
| 35 | - errors: errors | ||
| 36 | - }); | ||
| 37 | -}; | ||
| 38 | - | ||
| 39 | -export { defaultWidgets as widgets, defaultMapping as mapping }; | ||
| 40 | -export { default as useForm } from './useForm'; | ||
| 41 | -export { default as connectForm } from './connectForm'; | ||
| 42 | - | ||
| 43 | -function App(_ref) { | ||
| 44 | - var id = _ref.id, | ||
| 45 | - widgets = _ref.widgets, | ||
| 46 | - mapping = _ref.mapping, | ||
| 47 | - form = _ref.form, | ||
| 48 | - className = _ref.className, | ||
| 49 | - style = _ref.style, | ||
| 50 | - beforeFinish = _ref.beforeFinish, | ||
| 51 | - _ref$onFinish = _ref.onFinish, | ||
| 52 | - onFinish = _ref$onFinish === void 0 ? defaultFinish : _ref$onFinish, | ||
| 53 | - _ref$displayType = _ref.displayType, | ||
| 54 | - displayType = _ref$displayType === void 0 ? 'column' : _ref$displayType, | ||
| 55 | - schema = _ref.schema, | ||
| 56 | - debug = _ref.debug, | ||
| 57 | - debugCss = _ref.debugCss, | ||
| 58 | - _ref$locale = _ref.locale, | ||
| 59 | - locale = _ref$locale === void 0 ? 'cn' : _ref$locale, | ||
| 60 | - _ref$debounceInput = _ref.debounceInput, | ||
| 61 | - debounceInput = _ref$debounceInput === void 0 ? false : _ref$debounceInput, | ||
| 62 | - size = _ref.size, | ||
| 63 | - configProvider = _ref.configProvider, | ||
| 64 | - theme = _ref.theme, | ||
| 65 | - validateMessages = _ref.validateMessages, | ||
| 66 | - _ref$watch = _ref.watch, | ||
| 67 | - watch = _ref$watch === void 0 ? {} : _ref$watch, | ||
| 68 | - config = _ref.config, | ||
| 69 | - onMount = _ref.onMount, | ||
| 70 | - labelWidth = _ref.labelWidth, | ||
| 71 | - readOnly = _ref.readOnly, | ||
| 72 | - disabled = _ref.disabled, | ||
| 73 | - _ref$allCollapsed = _ref.allCollapsed, | ||
| 74 | - allCollapsed = _ref$allCollapsed === void 0 ? false : _ref$allCollapsed, | ||
| 75 | - onValuesChange = _ref.onValuesChange, | ||
| 76 | - column = _ref.column, | ||
| 77 | - _ref$removeHiddenData = _ref.removeHiddenData, | ||
| 78 | - removeHiddenData = _ref$removeHiddenData === void 0 ? false : _ref$removeHiddenData, | ||
| 79 | - _ref$globalProps = _ref.globalProps, | ||
| 80 | - globalProps = _ref$globalProps === void 0 ? {} : _ref$globalProps, | ||
| 81 | - rest = _objectWithoutProperties(_ref, _excluded); | ||
| 82 | - | ||
| 83 | - try { | ||
| 84 | - var _ = form.submit; | ||
| 85 | - } catch (error) { | ||
| 86 | - console.error('form 为必填 props,<FormRender /> 没有接收到 form 属性!'); | ||
| 87 | - } | ||
| 88 | - | ||
| 89 | - var _column = schema && schema.column || column; | ||
| 90 | - | ||
| 91 | - var onItemChange = form.onItemChange, | ||
| 92 | - setEditing = form.setEditing, | ||
| 93 | - touchKey = form.touchKey, | ||
| 94 | - setValueByPath = form.setValueByPath, | ||
| 95 | - getSchemaByPath = form.getSchemaByPath, | ||
| 96 | - setSchemaByPath = form.setSchemaByPath, | ||
| 97 | - setSchema = form.setSchema, | ||
| 98 | - setValues = form.setValues, | ||
| 99 | - getValues = form.getValues, | ||
| 100 | - resetFields = form.resetFields, | ||
| 101 | - submit = form.submit, | ||
| 102 | - endValidating = form.endValidating, | ||
| 103 | - endSubmitting = form.endSubmitting, | ||
| 104 | - setErrorFields = form.setErrorFields, | ||
| 105 | - removeErrorField = form.removeErrorField, | ||
| 106 | - removeTouched = form.removeTouched, | ||
| 107 | - changeTouchedKeys = form.changeTouchedKeys, | ||
| 108 | - syncStuff = form.syncStuff, | ||
| 109 | - logOnMount = form.logOnMount, | ||
| 110 | - logOnSubmit = form.logOnSubmit, | ||
| 111 | - setFirstMount = form.setFirstMount, | ||
| 112 | - valuesThatWillChange = _objectWithoutProperties(form, _excluded2); | ||
| 113 | - | ||
| 114 | - var submitData = valuesThatWillChange.submitData, | ||
| 115 | - errorFields = valuesThatWillChange.errorFields, | ||
| 116 | - isValidating = valuesThatWillChange.isValidating, | ||
| 117 | - outsideValidating = valuesThatWillChange.outsideValidating, | ||
| 118 | - isSubmitting = valuesThatWillChange.isSubmitting, | ||
| 119 | - formData = valuesThatWillChange.formData, | ||
| 120 | - flatten = valuesThatWillChange.flatten, | ||
| 121 | - showValidate = valuesThatWillChange.showValidate, | ||
| 122 | - firstMount = valuesThatWillChange.firstMount; | ||
| 123 | - useEffect(function () { | ||
| 124 | - // Schema最外层的type是object来判断,没有的话,认为schema没有传 | ||
| 125 | - if (schema && schema.type) { | ||
| 126 | - setFirstMount(true); | ||
| 127 | - syncStuff({ | ||
| 128 | - schema: schema, | ||
| 129 | - locale: locale, | ||
| 130 | - validateMessages: validateMessages, | ||
| 131 | - beforeFinish: beforeFinish, | ||
| 132 | - onMount: onMount, | ||
| 133 | - removeHiddenData: removeHiddenData | ||
| 134 | - }); | ||
| 135 | - } else {} | ||
| 136 | - }, [JSON.stringify(schema)]); | ||
| 137 | - useEffect(function () { | ||
| 138 | - if (!firstMount && schema && schema.type) { | ||
| 139 | - if (typeof onMount === 'function') { | ||
| 140 | - // 等一下 useForm 里接到第一份schema时,计算第一份data的骨架 | ||
| 141 | - setTimeout(function () { | ||
| 142 | - onMount(); | ||
| 143 | - }, 0); | ||
| 144 | - } | ||
| 145 | - | ||
| 146 | - setTimeout(onMountLogger, 0); | ||
| 147 | - } | ||
| 148 | - }, [JSON.stringify(schema), firstMount]); | ||
| 149 | - | ||
| 150 | - var onMountLogger = function onMountLogger() { | ||
| 151 | - var start = new Date().getTime(); | ||
| 152 | - | ||
| 153 | - if (typeof logOnMount === 'function' || typeof logOnSubmit === 'function') { | ||
| 154 | - sessionStorage.setItem('FORM_MOUNT_TIME', start); | ||
| 155 | - sessionStorage.setItem('FORM_START', start); | ||
| 156 | - } | ||
| 157 | - | ||
| 158 | - if (typeof logOnMount === 'function') { | ||
| 159 | - var logParams = { | ||
| 160 | - schema: schema, | ||
| 161 | - url: location.href, | ||
| 162 | - formData: JSON.stringify(form.getValues()), | ||
| 163 | - formMount: yymmdd(start) | ||
| 164 | - }; | ||
| 165 | - | ||
| 166 | - if (id) { | ||
| 167 | - logParams.id = id; | ||
| 168 | - } | ||
| 169 | - | ||
| 170 | - logOnMount(logParams); | ||
| 171 | - } // 如果是要计算时间,在 onMount 时存一个时间戳 | ||
| 172 | - | ||
| 173 | - | ||
| 174 | - if (typeof logOnSubmit === 'function') { | ||
| 175 | - sessionStorage.setItem('NUMBER_OF_SUBMITS', 0); | ||
| 176 | - sessionStorage.setItem('FAILED_ATTEMPTS', 0); | ||
| 177 | - } | ||
| 178 | - }; // 组件destroy的时候,destroy form,因为useForm可能在上层,所以不一定会跟着destroy | ||
| 179 | - | ||
| 180 | - | ||
| 181 | - useEffect(function () { | ||
| 182 | - return function () { | ||
| 183 | - form.resetFields(); | ||
| 184 | - }; | ||
| 185 | - }, []); | ||
| 186 | - var store = useMemo(function () { | ||
| 187 | - return _objectSpread(_objectSpread({}, valuesThatWillChange), {}, { | ||
| 188 | - globalProps: globalProps | ||
| 189 | - }, rest); | ||
| 190 | - }, [JSON.stringify(flatten), JSON.stringify(formData), JSON.stringify(errorFields), JSON.stringify(globalProps)]); // 不常用的context单独放一个地方 | ||
| 191 | - | ||
| 192 | - var store2 = useMemo(function () { | ||
| 193 | - return { | ||
| 194 | - displayType: displayType, | ||
| 195 | - theme: theme, | ||
| 196 | - column: _column, | ||
| 197 | - debounceInput: debounceInput, | ||
| 198 | - debug: debug, | ||
| 199 | - labelWidth: labelWidth, | ||
| 200 | - locale: locale, | ||
| 201 | - readOnly: readOnly, | ||
| 202 | - disabled: disabled, | ||
| 203 | - allCollapsed: allCollapsed, | ||
| 204 | - showValidate: showValidate | ||
| 205 | - }; | ||
| 206 | - }, [displayType, theme, _column, debounceInput, debug, labelWidth, locale, readOnly, disabled, allCollapsed, showValidate]); | ||
| 207 | - var tools = useMemo(function () { | ||
| 208 | - return _objectSpread({ | ||
| 209 | - widgets: _objectSpread(_objectSpread({}, defaultWidgets), widgets), | ||
| 210 | - mapping: _objectSpread(_objectSpread({}, defaultMapping), mapping), | ||
| 211 | - onValuesChange: onValuesChange | ||
| 212 | - }, form); | ||
| 213 | - }, []); | ||
| 214 | - useEffect(function () { | ||
| 215 | - // 需要外部校验的情况,此时 submitting 还是 false | ||
| 216 | - if (outsideValidating === true) { | ||
| 217 | - Promise.resolve(beforeFinish(_objectSpread({ | ||
| 218 | - data: submitData, | ||
| 219 | - schema: schema, | ||
| 220 | - errors: errorFields | ||
| 221 | - }, config))).then(function (error) { | ||
| 222 | - if (error) { | ||
| 223 | - setErrorFields(error); | ||
| 224 | - } | ||
| 225 | - | ||
| 226 | - endValidating(); | ||
| 227 | - }); | ||
| 228 | - return; | ||
| 229 | - } // 如果validation结束,submitting开始 | ||
| 230 | - | ||
| 231 | - | ||
| 232 | - if (isValidating === false && isSubmitting === true) { | ||
| 233 | - endSubmitting(); | ||
| 234 | - onFinish(submitData, errorFields); | ||
| 235 | - | ||
| 236 | - if (typeof logOnSubmit === 'function') { | ||
| 237 | - var start = sessionStorage.getItem('FORM_START'); | ||
| 238 | - var mount = sessionStorage.getItem('FORM_MOUNT_TIME'); | ||
| 239 | - var numberOfSubmits = Number(sessionStorage.getItem('NUMBER_OF_SUBMITS')) + 1; | ||
| 240 | - var end = new Date().getTime(); | ||
| 241 | - var failedAttempts = Number(sessionStorage.getItem('FAILED_ATTEMPTS')); | ||
| 242 | - | ||
| 243 | - if (errorFields.length > 0) { | ||
| 244 | - failedAttempts = failedAttempts + 1; | ||
| 245 | - } | ||
| 246 | - | ||
| 247 | - var logParams = { | ||
| 248 | - formMount: yymmdd(mount), | ||
| 249 | - ms: end - start, | ||
| 250 | - duration: msToTime(end - start), | ||
| 251 | - numberOfSubmits: numberOfSubmits, | ||
| 252 | - failedAttempts: failedAttempts, | ||
| 253 | - url: location.href, | ||
| 254 | - formData: JSON.stringify(submitData), | ||
| 255 | - errors: JSON.stringify(errorFields), | ||
| 256 | - schema: JSON.stringify(schema) | ||
| 257 | - }; | ||
| 258 | - | ||
| 259 | - if (id) { | ||
| 260 | - logParams.id = id; | ||
| 261 | - } | ||
| 262 | - | ||
| 263 | - logOnSubmit(logParams); | ||
| 264 | - sessionStorage.setItem('FORM_START', end); | ||
| 265 | - sessionStorage.setItem('NUMBER_OF_SUBMITS', numberOfSubmits); | ||
| 266 | - sessionStorage.setItem('FAILED_ATTEMPTS', failedAttempts); | ||
| 267 | - } | ||
| 268 | - } | ||
| 269 | - }, [isValidating, isSubmitting, outsideValidating]); // TODO: fk doesn't work | ||
| 270 | - | ||
| 271 | - var sizeCls = ''; | ||
| 272 | - | ||
| 273 | - if (size === 'small') { | ||
| 274 | - sizeCls = 'fr-form-small'; | ||
| 275 | - } else if (size === 'large') { | ||
| 276 | - sizeCls = 'fr-form-large'; | ||
| 277 | - } | ||
| 278 | - | ||
| 279 | - var rootProps = { | ||
| 280 | - className: "fr-container ".concat(sizeCls, " ").concat(className || '') | ||
| 281 | - }; | ||
| 282 | - | ||
| 283 | - if (style && _typeof(style) === 'object') { | ||
| 284 | - rootProps.style = style; | ||
| 285 | - } | ||
| 286 | - | ||
| 287 | - if (id && ['number', 'string'].indexOf(_typeof(id)) > -1) { | ||
| 288 | - rootProps.id = id; | ||
| 289 | - } | ||
| 290 | - | ||
| 291 | - var watchList = Object.keys(watch); | ||
| 292 | - return /*#__PURE__*/React.createElement(_ConfigProvider, _extends({ | ||
| 293 | - locale: zhCN | ||
| 294 | - }, configProvider), /*#__PURE__*/React.createElement(StoreCtx.Provider, { | ||
| 295 | - value: store | ||
| 296 | - }, /*#__PURE__*/React.createElement(Store2Ctx.Provider, { | ||
| 297 | - value: store2 | ||
| 298 | - }, /*#__PURE__*/React.createElement(Ctx.Provider, { | ||
| 299 | - value: tools | ||
| 300 | - }, /*#__PURE__*/React.createElement("div", rootProps, debug ? /*#__PURE__*/React.createElement("div", { | ||
| 301 | - className: "mv2 bg-black-05 pa2 br2" | ||
| 302 | - }, /*#__PURE__*/React.createElement("div", { | ||
| 303 | - style: { | ||
| 304 | - display: 'flex' | ||
| 305 | - } | ||
| 306 | - }, /*#__PURE__*/React.createElement("span", null, "formData:"), /*#__PURE__*/React.createElement("span", { | ||
| 307 | - style: { | ||
| 308 | - display: 'inline-block', | ||
| 309 | - wordBreak: 'break-all', | ||
| 310 | - maxWidth: 600 | ||
| 311 | - } | ||
| 312 | - }, JSON.stringify(form.formData))), /*#__PURE__*/React.createElement("div", null, 'errorFields:' + JSON.stringify(form.errorFields)), /*#__PURE__*/React.createElement("div", null, 'touchedKeys:' + JSON.stringify(form.touchedKeys)), /*#__PURE__*/React.createElement("div", null, 'allTouched:' + JSON.stringify(form.allTouched)), /*#__PURE__*/React.createElement("div", null, 'descriptor:' + JSON.stringify(window.descriptor))) : null, watchList.length > 0 ? watchList.map(function (item, idx) { | ||
| 313 | - return /*#__PURE__*/React.createElement(Watcher, { | ||
| 314 | - key: idx.toString(), | ||
| 315 | - watchKey: item, | ||
| 316 | - watch: watch, | ||
| 317 | - formData: formData, | ||
| 318 | - firstMount: firstMount | ||
| 319 | - }); | ||
| 320 | - }) : null, /*#__PURE__*/React.createElement(Core, { | ||
| 321 | - debugCss: debugCss | ||
| 322 | - })))))); | ||
| 323 | -} | ||
| 324 | - | ||
| 325 | -export { createWidget } from './createWidget'; | ||
| 326 | - | ||
| 327 | -var Wrapper = function Wrapper(props) { | ||
| 328 | - var _props$isOldVersion = props.isOldVersion, | ||
| 329 | - isOldVersion = _props$isOldVersion === void 0 ? true : _props$isOldVersion, | ||
| 330 | - schema = props.schema, | ||
| 331 | - rest = _objectWithoutProperties(props, _excluded3); | ||
| 332 | - | ||
| 333 | - var _schema = useRef(schema); | ||
| 334 | - | ||
| 335 | - if (isOldVersion) { | ||
| 336 | - _schema.current = updateSchemaToNewVersion(schema); | ||
| 337 | - } | ||
| 338 | - | ||
| 339 | - return /*#__PURE__*/React.createElement(App, _extends({ | ||
| 340 | - schema: _schema.current | ||
| 341 | - }, rest)); | ||
| 342 | -}; | ||
| 343 | - | ||
| 344 | -export default Wrapper; | ||
| 345 | - | ||
| 346 | -var Watcher = function Watcher(_ref2) { | ||
| 347 | - var watchKey = _ref2.watchKey, | ||
| 348 | - watch = _ref2.watch, | ||
| 349 | - formData = _ref2.formData, | ||
| 350 | - firstMount = _ref2.firstMount; | ||
| 351 | - var value = getValueByPath(formData, watchKey); | ||
| 352 | - var watchObj = watch[watchKey]; | ||
| 353 | - useEffect(function () { | ||
| 354 | - var runWatcher = function runWatcher() { | ||
| 355 | - if (typeof watchObj === 'function') { | ||
| 356 | - try { | ||
| 357 | - watchObj(value); | ||
| 358 | - } catch (error) { | ||
| 359 | - console.log("".concat(watchKey, "\u5BF9\u5E94\u7684watch\u51FD\u6570\u6267\u884C\u62A5\u9519\uFF1A"), error); | ||
| 360 | - } | ||
| 361 | - } else if (watchObj && typeof watchObj.handler === 'function') { | ||
| 362 | - try { | ||
| 363 | - watchObj.handler(value); | ||
| 364 | - } catch (error) { | ||
| 365 | - console.log("".concat(watchKey, "\u5BF9\u5E94\u7684watch\u51FD\u6570\u6267\u884C\u62A5\u9519\uFF1A"), error); | ||
| 366 | - } | ||
| 367 | - } | ||
| 368 | - }; | ||
| 369 | - | ||
| 370 | - if (firstMount) { | ||
| 371 | - var immediate = watchObj && watchObj.immediate; | ||
| 372 | - | ||
| 373 | - if (immediate) { | ||
| 374 | - runWatcher(); | ||
| 375 | - } | ||
| 376 | - } else { | ||
| 377 | - runWatcher(); | ||
| 378 | - } | ||
| 379 | - }, [JSON.stringify(value), firstMount]); | ||
| 380 | - return null; | ||
| 381 | -}; |