@devtron-labs/devtron-fe-common-lib 0.0.41-beta-6 → 0.0.41-beta-7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/Common/Helper.d.ts +0 -7
  2. package/dist/Common/Types.d.ts +135 -0
  3. package/dist/Common/index.d.ts +0 -1
  4. package/dist/index.js +160 -2888
  5. package/package.json +1 -4
  6. package/src/Common/Helper.tsx +0 -17
  7. package/src/Common/Types.ts +148 -0
  8. package/src/Common/index.ts +0 -1
  9. package/dist/Common/RJSF/Form.d.ts +0 -4
  10. package/dist/Common/RJSF/common/FieldRow.d.ts +0 -6
  11. package/dist/Common/RJSF/common/types.d.ts +0 -8
  12. package/dist/Common/RJSF/config.d.ts +0 -4
  13. package/dist/Common/RJSF/constants.d.ts +0 -7
  14. package/dist/Common/RJSF/index.d.ts +0 -3
  15. package/dist/Common/RJSF/templates/ArrayFieldItemTemplate.d.ts +0 -3
  16. package/dist/Common/RJSF/templates/ArrayFieldTemplate.d.ts +0 -3
  17. package/dist/Common/RJSF/templates/BaseInput.d.ts +0 -3
  18. package/dist/Common/RJSF/templates/ButtonTemplates/AddButton.d.ts +0 -3
  19. package/dist/Common/RJSF/templates/ButtonTemplates/RemoveButton.d.ts +0 -3
  20. package/dist/Common/RJSF/templates/ButtonTemplates/SubmitButton.d.ts +0 -3
  21. package/dist/Common/RJSF/templates/ButtonTemplates/index.d.ts +0 -3
  22. package/dist/Common/RJSF/templates/Description.d.ts +0 -3
  23. package/dist/Common/RJSF/templates/Field.d.ts +0 -3
  24. package/dist/Common/RJSF/templates/FieldErrorTemplate.d.ts +0 -3
  25. package/dist/Common/RJSF/templates/ObjectFieldTemplate.d.ts +0 -3
  26. package/dist/Common/RJSF/templates/TitleField.d.ts +0 -3
  27. package/dist/Common/RJSF/templates/WrapIfAdditionalTemplate.d.ts +0 -3
  28. package/dist/Common/RJSF/templates/index.d.ts +0 -10
  29. package/dist/Common/RJSF/types.d.ts +0 -3
  30. package/dist/Common/RJSF/utils.d.ts +0 -25
  31. package/dist/Common/RJSF/widgets/Checkbox.d.ts +0 -3
  32. package/dist/Common/RJSF/widgets/Select.d.ts +0 -3
  33. package/dist/Common/RJSF/widgets/index.d.ts +0 -2
  34. package/src/Assets/Icon/ic-chevron-down.svg +0 -5
  35. package/src/Common/RJSF/Form.tsx +0 -29
  36. package/src/Common/RJSF/common/FieldRow.tsx +0 -35
  37. package/src/Common/RJSF/common/types.ts +0 -9
  38. package/src/Common/RJSF/config.ts +0 -37
  39. package/src/Common/RJSF/constants.ts +0 -10
  40. package/src/Common/RJSF/index.ts +0 -3
  41. package/src/Common/RJSF/rjsfForm.scss +0 -18
  42. package/src/Common/RJSF/templates/ArrayFieldItemTemplate.tsx +0 -31
  43. package/src/Common/RJSF/templates/ArrayFieldTemplate.tsx +0 -78
  44. package/src/Common/RJSF/templates/BaseInput.tsx +0 -16
  45. package/src/Common/RJSF/templates/ButtonTemplates/AddButton.tsx +0 -18
  46. package/src/Common/RJSF/templates/ButtonTemplates/RemoveButton.tsx +0 -10
  47. package/src/Common/RJSF/templates/ButtonTemplates/SubmitButton.tsx +0 -18
  48. package/src/Common/RJSF/templates/ButtonTemplates/index.ts +0 -3
  49. package/src/Common/RJSF/templates/Description.tsx +0 -12
  50. package/src/Common/RJSF/templates/Field.tsx +0 -30
  51. package/src/Common/RJSF/templates/FieldErrorTemplate.tsx +0 -25
  52. package/src/Common/RJSF/templates/ObjectFieldTemplate.tsx +0 -105
  53. package/src/Common/RJSF/templates/TitleField.tsx +0 -9
  54. package/src/Common/RJSF/templates/WrapIfAdditionalTemplate.tsx +0 -51
  55. package/src/Common/RJSF/templates/index.ts +0 -10
  56. package/src/Common/RJSF/types.ts +0 -4
  57. package/src/Common/RJSF/utils.ts +0 -110
  58. package/src/Common/RJSF/widgets/Checkbox.tsx +0 -44
  59. package/src/Common/RJSF/widgets/Select.tsx +0 -77
  60. package/src/Common/RJSF/widgets/index.ts +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devtron-labs/devtron-fe-common-lib",
3
- "version": "0.0.41-beta-6",
3
+ "version": "0.0.41-beta-7",
4
4
  "description": "Supporting common component library",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -41,9 +41,6 @@
41
41
  "@sentry/browser": "^7.31.1"
42
42
  },
43
43
  "peerDependencies": {
44
- "@rjsf/core": "^5.13.3",
45
- "@rjsf/utils": "^5.13.3",
46
- "@rjsf/validator-ajv8": "^5.13.3",
47
44
  "react": "^17.0.2",
48
45
  "react-dom": "^17.0.2",
49
46
  "react-router": "^5.3.0",
@@ -495,20 +495,3 @@ export const processDeployedTime = (lastDeployed, isArgoInstalled) => {
495
495
  return isArgoInstalled ? '' : 'Not deployed'
496
496
  }
497
497
  }
498
-
499
- /**
500
- * Appends search parameters to the url as a query string
501
- *
502
- * @param url URL to which the search params needs to be added
503
- * @param params Object for the search parameters
504
- */
505
- export const getUrlWithSearchParams = (url: string, params: Record<string | number, any>) => {
506
- const searchParams = new URLSearchParams()
507
- Object.keys(params).forEach((key) => {
508
- if (params[key]) {
509
- searchParams.append(key, params[key])
510
- }
511
- })
512
- const queryString = searchParams.toString()
513
- return url + (queryString ? `?${queryString}` : '')
514
- }
@@ -1,6 +1,8 @@
1
1
  import React, { ReactNode, CSSProperties } from 'react'
2
2
  import { Placement } from 'tippy.js'
3
3
  import { ImageComment, ReleaseTag } from './ImageTags.Types'
4
+ import { DockerConfigOverrideType, TaskErrorObj } from '.'
5
+
4
6
  export interface ResponseType {
5
7
  code: number
6
8
  status: string
@@ -474,3 +476,149 @@ export interface AsyncState<T> {
474
476
  export interface AsyncOptions {
475
477
  resetOnChange: boolean
476
478
  }
479
+
480
+ export interface AppEnvironment {
481
+ environmentId: number
482
+ environmentName: string
483
+ appMetrics: boolean
484
+ infraMetrics: boolean
485
+ prod: boolean
486
+ chartRefId?: number
487
+ lastDeployed?: string
488
+ lastDeployedBy?: string
489
+ lastDeployedImage?: string
490
+ appStatus?: string
491
+ deploymentAppDeleteRequest?: boolean
492
+ isVirtualEnvironment?: boolean
493
+ isProtected?: boolean
494
+ pipelineId?: number
495
+ latestCdWorkflowRunnerId?: number
496
+ }
497
+
498
+ export interface Strategy {
499
+ deploymentTemplate: string
500
+ config: any
501
+ default?: boolean
502
+ }
503
+
504
+ export interface CDStage {
505
+ status: string
506
+ name: string
507
+ triggerType: 'AUTOMATIC' | 'MANUAL'
508
+ config: string
509
+ }
510
+
511
+ export interface CDStageConfigMapSecretNames {
512
+ configMaps: any[]
513
+ secrets: any[]
514
+ }
515
+
516
+ export interface PrePostDeployStageType {
517
+ isValid: boolean
518
+ steps: TaskErrorObj[]
519
+ triggerType: string
520
+ name: string
521
+ status: string
522
+ }
523
+
524
+ export interface CdPipeline {
525
+ id: number
526
+ environmentId: number
527
+ environmentName?: string
528
+ description?: string
529
+ ciPipelineId: number
530
+ triggerType: 'AUTOMATIC' | 'MANUAL'
531
+ name: string
532
+ strategies?: Strategy[]
533
+ namespace?: string
534
+ appWorkflowId?: number
535
+ deploymentTemplate?: string
536
+ preStage?: CDStage
537
+ postStage?: CDStage
538
+ preStageConfigMapSecretNames?: CDStageConfigMapSecretNames
539
+ postStageConfigMapSecretNames?: CDStageConfigMapSecretNames
540
+ runPreStageInEnv?: boolean
541
+ runPostStageInEnv?: boolean
542
+ isClusterCdActive?: boolean
543
+ parentPipelineId?: number
544
+ parentPipelineType?: string
545
+ deploymentAppDeleteRequest?: boolean
546
+ deploymentAppCreated?: boolean
547
+ userApprovalConfig?: UserApprovalConfigType
548
+ isVirtualEnvironment?: boolean
549
+ deploymentAppType: DeploymentAppTypes
550
+ helmPackageName?: string
551
+ preDeployStage?: PrePostDeployStageType
552
+ postDeployStage?: PrePostDeployStageType
553
+ isProdEnv?: boolean
554
+ }
555
+
556
+ export interface ExternalCiConfig {
557
+ id: number
558
+ webhookUrl: string
559
+ payload: string
560
+ accessKey: string
561
+ }
562
+
563
+ export interface Source {
564
+ type: string
565
+ value?: string
566
+ regex?: string
567
+ }
568
+
569
+ export interface CiMaterial {
570
+ source: Source
571
+ gitMaterialId: number
572
+ id: number
573
+ gitMaterialName: string
574
+ isRegex?: boolean
575
+ }
576
+
577
+ export interface Task {
578
+ name?: string
579
+ type?: string
580
+ cmd?: string
581
+ args?: Array<string>
582
+ }
583
+
584
+ export interface CiScript {
585
+ id: number
586
+ index: number
587
+ name: string
588
+ script: string
589
+ outputLocation?: string
590
+ }
591
+
592
+ export interface CiPipeline {
593
+ isManual: boolean
594
+ dockerArgs?: Map<string, string>
595
+ isExternal: boolean
596
+ parentCiPipeline: number
597
+ parentAppId: number
598
+ externalCiConfig: ExternalCiConfig
599
+ ciMaterial?: CiMaterial[]
600
+ name?: string
601
+ id?: number
602
+ active?: boolean
603
+ linkedCount: number
604
+ scanEnabled: boolean
605
+ deleted?: boolean
606
+ version?: string
607
+ beforeDockerBuild?: Array<Task>
608
+ afterDockerBuild?: Array<Task>
609
+ appWorkflowId?: number
610
+ beforeDockerBuildScripts?: Array<CiScript>
611
+ afterDockerBuildScripts?: Array<CiScript>
612
+ isDockerConfigOverridden?: boolean
613
+ dockerConfigOverride?: DockerConfigOverrideType
614
+ appName?: string
615
+ appId?: string
616
+ componentId?: number
617
+ isCITriggerBlocked?: boolean
618
+ ciBlockState?: {
619
+ action: any
620
+ metadataField: string
621
+ }
622
+ isOffendingMandatoryPlugin?: boolean
623
+ pipelineType?: string
624
+ }
@@ -40,4 +40,3 @@ export { default as Grid } from './Grid/Grid'
40
40
  export { default as ClipboardButton } from './ClipboardButton/ClipboardButton'
41
41
  export * from './Hooks'
42
42
  export { AppStatus } from './AppStatus'
43
- export * from './RJSF'
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- import { FormProps } from './types';
3
- import './rjsfForm.scss';
4
- export declare const RJSFForm: (props: FormProps) => JSX.Element;
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- import { FieldRowProps } from './types';
3
- import { DO_NOT_SHOW_LABEL } from '../constants';
4
- export declare const FieldRowWithLabel: ({ showLabel, label, required, children, id, shouldAlignCenter, }: Omit<FieldRowProps, "label"> & {
5
- label: FieldRowProps['label'] | typeof DO_NOT_SHOW_LABEL;
6
- }) => JSX.Element;
@@ -1,8 +0,0 @@
1
- import { FieldTemplateProps } from '@rjsf/utils';
2
- export interface FieldRowProps extends Pick<FieldTemplateProps, 'children' | 'label' | 'required' | 'id'> {
3
- showLabel?: boolean;
4
- /**
5
- * @default true
6
- */
7
- shouldAlignCenter?: boolean;
8
- }
@@ -1,4 +0,0 @@
1
- import { RegistryWidgetsType } from '@rjsf/utils';
2
- import { FormProps } from './types';
3
- export declare const widgets: RegistryWidgetsType;
4
- export declare const templates: FormProps['templates'];
@@ -1,7 +0,0 @@
1
- export declare const PLACEHOLDERS: {
2
- SELECT: string;
3
- INPUT: string;
4
- OBJECT_KEY: string;
5
- };
6
- export declare const DEFAULT_FIELD_TITLE = "Key not available";
7
- export declare const DO_NOT_SHOW_LABEL: unique symbol;
@@ -1,3 +0,0 @@
1
- export { RJSFForm } from './Form';
2
- export * from './types';
3
- export { getInferredTypeFromValueType, getRedirectionProps } from './utils';
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { ArrayFieldTemplateItemType } from '@rjsf/utils';
3
- export declare const ArrayFieldItemTemplate: ({ children, className, disabled, hasToolbar, hasRemove, index, onDropIndexClick, readonly, registry, uiSchema, }: ArrayFieldTemplateItemType) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { ArrayFieldTemplateProps } from '@rjsf/utils';
3
- export declare const ArrayFieldTemplate: ({ canAdd, className, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, title, }: ArrayFieldTemplateProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { BaseInputTemplateProps } from '@rjsf/utils';
3
- export declare const BaseInput: ({ placeholder, ...props }: BaseInputTemplateProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { IconButtonProps } from '@rjsf/utils';
3
- export declare const AddButton: ({ icon, iconType, registry, uiSchema, ...props }: IconButtonProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { IconButtonProps } from '@rjsf/utils';
3
- export declare const RemoveButton: ({ icon, iconType, registry, uiSchema, ...props }: IconButtonProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { SubmitButtonProps } from '@rjsf/utils';
3
- export declare const SubmitButton: ({ uiSchema }: SubmitButtonProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- export { AddButton } from './AddButton';
2
- export { RemoveButton } from './RemoveButton';
3
- export { SubmitButton } from './SubmitButton';
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { DescriptionFieldProps } from '@rjsf/utils';
3
- export declare const Description: ({ id, description }: DescriptionFieldProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { FieldTemplateProps } from '@rjsf/utils';
3
- export declare const Field: (props: FieldTemplateProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { FieldErrorProps } from '@rjsf/utils';
3
- export declare const FieldErrorTemplate: ({ errors, idSchema }: FieldErrorProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { ObjectFieldTemplateProps } from '@rjsf/utils';
3
- export declare const ObjectFieldTemplate: (props: ObjectFieldTemplateProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { TitleFieldProps } from '@rjsf/utils';
3
- export declare const TitleField: ({ id, title, required }: TitleFieldProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { WrapIfAdditionalTemplateProps } from '@rjsf/utils';
3
- export declare const WrapIfAdditionalTemplate: ({ id, disabled, label, onKeyChange, onDropPropertyClick, readonly, schema, children, uiSchema, registry, }: WrapIfAdditionalTemplateProps) => JSX.Element;
@@ -1,10 +0,0 @@
1
- export { ArrayFieldTemplate } from './ArrayFieldTemplate';
2
- export { ArrayFieldItemTemplate } from './ArrayFieldItemTemplate';
3
- export { BaseInput as BaseInputTemplate } from './BaseInput';
4
- export * from './ButtonTemplates';
5
- export { Description as DescriptionFieldTemplate } from './Description';
6
- export { Field as FieldTemplate } from './Field';
7
- export { FieldErrorTemplate } from './FieldErrorTemplate';
8
- export { ObjectFieldTemplate } from './ObjectFieldTemplate';
9
- export { TitleField as TitleFieldTemplate } from './TitleField';
10
- export { WrapIfAdditionalTemplate } from './WrapIfAdditionalTemplate';
@@ -1,3 +0,0 @@
1
- import { ComponentProps } from 'react';
2
- import RJSFForm from '@rjsf/core';
3
- export type FormProps = Omit<ComponentProps<typeof RJSFForm>, 'validator'>;
@@ -1,25 +0,0 @@
1
- /// <reference types="react" />
2
- import { TranslatableString } from '@rjsf/utils';
3
- /**
4
- * Override for the TranslatableString from RJSF
5
- */
6
- export declare const translateString: (stringToTranslate: TranslatableString, params?: string[]) => string;
7
- export declare const getCommonSelectStyle: (styleOverrides?: {}) => {
8
- menuList: (base: any) => any;
9
- control: (base: any, state: any) => any;
10
- option: (base: any, state: any) => any;
11
- dropdownIndicator: (base: any, state: any) => any;
12
- valueContainer: (base: any) => any;
13
- loadingMessage: (base: any) => any;
14
- noOptionsMessage: (base: any) => any;
15
- };
16
- /**
17
- * Returns the redirection props for a url
18
- */
19
- export declare const getRedirectionProps: (url: string) => import("react").AnchorHTMLAttributes<HTMLAnchorElement> & {
20
- url: string;
21
- };
22
- /**
23
- * Infers the type for json schema from value type
24
- */
25
- export declare const getInferredTypeFromValueType: (value: any) => "string" | "number" | "boolean" | "object" | "array" | "null";
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { WidgetProps } from '@rjsf/utils';
3
- export declare const Checkbox: ({ id, onChange, value, required, disabled, readonly, autofocus, onBlur, onFocus, }: WidgetProps) => JSX.Element;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- import { WidgetProps } from '@rjsf/utils';
3
- export declare const Select: (props: WidgetProps) => JSX.Element;
@@ -1,2 +0,0 @@
1
- export { Checkbox as CheckboxWidget } from './Checkbox';
2
- export { Select as SelectWidget } from './Select';
@@ -1,5 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
- <g fill="none" fill-rule="evenodd">
3
- <path fill="#999" class="fill-color" fill-rule="nonzero" d="M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6z"/>
4
- </g>
5
- </svg>
@@ -1,29 +0,0 @@
1
- import React from 'react'
2
- import RJSF from '@rjsf/core'
3
- import RJSFValidator from '@rjsf/validator-ajv8'
4
-
5
- import { templates, widgets } from './config'
6
- import { FormProps } from './types'
7
- import { translateString } from './utils'
8
- import './rjsfForm.scss'
9
-
10
- // Need to use this way because the default import was not working as expected
11
- // The default import resolves to an object intead of a function
12
- const Form = (RJSF as any).default as typeof RJSF
13
- const validator = (RJSFValidator as any).default as typeof RJSFValidator
14
-
15
- export const RJSFForm = (props: FormProps) => (
16
- <Form
17
- noHtml5Validate
18
- showErrorList={false}
19
- autoComplete="off"
20
- {...props}
21
- validator={validator}
22
- templates={{
23
- ...templates,
24
- ...props.templates,
25
- }}
26
- widgets={{ ...widgets, ...props.widgets }}
27
- translateString={translateString}
28
- />
29
- )
@@ -1,35 +0,0 @@
1
- import React from 'react'
2
- import { FieldRowProps } from './types'
3
- import { DEFAULT_FIELD_TITLE, DO_NOT_SHOW_LABEL } from '../constants'
4
-
5
- export const FieldRowWithLabel = ({
6
- showLabel,
7
- label,
8
- required,
9
- children,
10
- id,
11
- shouldAlignCenter = true,
12
- }: Omit<FieldRowProps, 'label'> & {
13
- label: FieldRowProps['label'] | typeof DO_NOT_SHOW_LABEL
14
- }) => (
15
- <div
16
- className={
17
- showLabel
18
- ? `display-grid dc__gap-12 rjsf-form-template__field ${shouldAlignCenter ? 'flex-align-center' : ''}`
19
- : ''
20
- }
21
- >
22
- {showLabel && (
23
- <label className="cn-7 fs-13 lh-32 fw-4 flexbox mb-0" htmlFor={id}>
24
- {/* The check is added here intentionally for proper layout for array type field */}
25
- {label !== DO_NOT_SHOW_LABEL && (
26
- <>
27
- <span className="dc__ellipsis-right">{label || DEFAULT_FIELD_TITLE}</span>
28
- {required && <span className="cr-5">&nbsp;*</span>}
29
- </>
30
- )}
31
- </label>
32
- )}
33
- {children}
34
- </div>
35
- )
@@ -1,9 +0,0 @@
1
- import { FieldTemplateProps } from '@rjsf/utils'
2
-
3
- export interface FieldRowProps extends Pick<FieldTemplateProps, 'children' | 'label' | 'required' | 'id'> {
4
- showLabel?: boolean
5
- /**
6
- * @default true
7
- */
8
- shouldAlignCenter?: boolean
9
- }
@@ -1,37 +0,0 @@
1
- import React from 'react'
2
- import { RegistryWidgetsType } from '@rjsf/utils'
3
-
4
- import {
5
- AddButton,
6
- ArrayFieldItemTemplate,
7
- ArrayFieldTemplate,
8
- BaseInputTemplate,
9
- DescriptionFieldTemplate,
10
- FieldTemplate,
11
- FieldErrorTemplate,
12
- ObjectFieldTemplate,
13
- RemoveButton,
14
- SubmitButton,
15
- TitleFieldTemplate,
16
- WrapIfAdditionalTemplate,
17
- } from './templates'
18
- import { CheckboxWidget, SelectWidget } from './widgets'
19
- import { FormProps } from './types'
20
-
21
- export const widgets: RegistryWidgetsType = {
22
- CheckboxWidget,
23
- SelectWidget,
24
- }
25
-
26
- export const templates: FormProps['templates'] = {
27
- ArrayFieldItemTemplate,
28
- ArrayFieldTemplate,
29
- BaseInputTemplate,
30
- ButtonTemplates: { AddButton, RemoveButton, SubmitButton },
31
- DescriptionFieldTemplate,
32
- FieldTemplate,
33
- FieldErrorTemplate,
34
- ObjectFieldTemplate,
35
- TitleFieldTemplate,
36
- WrapIfAdditionalTemplate,
37
- }
@@ -1,10 +0,0 @@
1
- export const PLACEHOLDERS = {
2
- SELECT: 'Please select an option',
3
- INPUT: 'Please enter an input',
4
- OBJECT_KEY: 'Please enter a value for the key',
5
- }
6
-
7
- export const DEFAULT_FIELD_TITLE = 'Key not available'
8
-
9
- // Using symbol to ensure uniqueness across the fields
10
- export const DO_NOT_SHOW_LABEL = Symbol('Do not show label')
@@ -1,3 +0,0 @@
1
- export { RJSFForm } from './Form'
2
- export * from './types'
3
- export { getInferredTypeFromValueType, getRedirectionProps } from './utils'
@@ -1,18 +0,0 @@
1
- .rjsf-form-template {
2
- &__field {
3
- grid-template-columns: 250px 1fr;
4
- }
5
-
6
- &__additional-fields {
7
- grid-template-columns: 1fr 1fr minmax(20px, auto);
8
- }
9
-
10
- &__array-field-item {
11
- grid-template-columns: 1fr auto;
12
-
13
- & > :first-child {
14
- // This is added as the array field itself has a margin bottom
15
- margin: 0;
16
- }
17
- }
18
- }
@@ -1,31 +0,0 @@
1
- import React, { CSSProperties } from 'react'
2
- import { ArrayFieldTemplateItemType } from '@rjsf/utils'
3
-
4
- export const ArrayFieldItemTemplate = ({
5
- children,
6
- className,
7
- disabled,
8
- hasToolbar,
9
- hasRemove,
10
- index,
11
- onDropIndexClick,
12
- readonly,
13
- registry,
14
- uiSchema,
15
- }: ArrayFieldTemplateItemType) => {
16
- const { RemoveButton } = registry.templates.ButtonTemplates
17
-
18
- return (
19
- <div className="display-grid rjsf-form-template__array-field-item flex-align-center dc__gap-8 mb-12">
20
- {children}
21
- {hasToolbar && hasRemove && (
22
- <RemoveButton
23
- disabled={disabled || readonly}
24
- onClick={onDropIndexClick(index)}
25
- uiSchema={uiSchema}
26
- registry={registry}
27
- />
28
- )}
29
- </div>
30
- )
31
- }
@@ -1,78 +0,0 @@
1
- import React from 'react'
2
- import { getTemplate, getUiOptions, ArrayFieldTemplateProps, ArrayFieldTemplateItemType } from '@rjsf/utils'
3
- import { FieldRowWithLabel } from '../common/FieldRow'
4
- import { DO_NOT_SHOW_LABEL } from '../constants'
5
-
6
- const ActionButton = ({ canAdd, onAddClick, disabled, readonly, uiSchema, registry }) => {
7
- const {
8
- ButtonTemplates: { AddButton },
9
- } = registry.templates
10
-
11
- return (
12
- canAdd && (
13
- <AddButton onClick={onAddClick} disabled={disabled || readonly} uiSchema={uiSchema} registry={registry} />
14
- )
15
- )
16
- }
17
-
18
- export const ArrayFieldTemplate = ({
19
- canAdd,
20
- className,
21
- disabled,
22
- idSchema,
23
- uiSchema,
24
- items,
25
- onAddClick,
26
- readonly,
27
- registry,
28
- required,
29
- title,
30
- }: ArrayFieldTemplateProps) => {
31
- const uiOptions = getUiOptions(uiSchema)
32
- const ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate'>('ArrayFieldItemTemplate', registry, uiOptions)
33
- const label = uiOptions.title || title
34
-
35
- return (
36
- <fieldset className={className} id={idSchema.$id}>
37
- {/* Show the label here in case there are no items, otherwise handled by Field Template */}
38
- {items.length ? (
39
- <>
40
- {items.map(({ key, ...itemProps }: ArrayFieldTemplateItemType, index) => {
41
- // Show the title as the label for the first field
42
- const children = {
43
- ...itemProps.children,
44
- props: {
45
- ...itemProps.children.props,
46
- name: index === 0 ? label : DO_NOT_SHOW_LABEL,
47
- },
48
- }
49
- return (
50
- <ArrayFieldItemTemplate key={key} {...itemProps}>
51
- {children}
52
- </ArrayFieldItemTemplate>
53
- )
54
- })}
55
- <ActionButton
56
- canAdd={canAdd}
57
- onAddClick={onAddClick}
58
- disabled={disabled}
59
- readonly={readonly}
60
- uiSchema={uiSchema}
61
- registry={registry}
62
- />
63
- </>
64
- ) : (
65
- <FieldRowWithLabel label={label} required={required} showLabel id={idSchema.$id}>
66
- <ActionButton
67
- canAdd={canAdd}
68
- onAddClick={onAddClick}
69
- disabled={disabled}
70
- readonly={readonly}
71
- uiSchema={uiSchema}
72
- registry={registry}
73
- />
74
- </FieldRowWithLabel>
75
- )}
76
- </fieldset>
77
- )
78
- }
@@ -1,16 +0,0 @@
1
- import React from 'react'
2
- import { getDefaultRegistry } from '@rjsf/core'
3
- import { BaseInputTemplateProps } from '@rjsf/utils'
4
- import { PLACEHOLDERS } from '../constants'
5
-
6
- const {
7
- templates: { BaseInputTemplate },
8
- } = getDefaultRegistry()
9
-
10
- export const BaseInput = ({ placeholder, ...props }: BaseInputTemplateProps) => (
11
- <BaseInputTemplate
12
- placeholder={placeholder || PLACEHOLDERS.INPUT}
13
- {...props}
14
- className="form__input cn-9 fs-13 lh-20 fw-4"
15
- />
16
- )