Skip to content

Commit

Permalink
Merge pull request #702 from contember/react19
Browse files Browse the repository at this point in the history
allow react 19, remove EE, update deps
  • Loading branch information
matej21 authored May 20, 2024
2 parents 98f7097 + aed352d commit a0a58bb
Show file tree
Hide file tree
Showing 145 changed files with 1,925 additions and 6,449 deletions.
3 changes: 0 additions & 3 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
node_modules
ee/*/dist
ee/*/node_modules
ee/*/temp
packages/*/dist
packages/*/node_modules
packages/*/temp
3 changes: 0 additions & 3 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,5 @@
/packages/*/dist
/packages/*/temp
/packages/*/node_modules
/ee/*/dist
/ee/*/temp
/ee/*/node_modules
/packages/playground/api/client
/packages/client-content/tests/client
41 changes: 0 additions & 41 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -221,44 +221,3 @@ jobs:
fi
# Use the extracted npm-tag in the npm publish command
yarn workspaces foreach -pt --no-private npm publish --tag $NPM_TAG --access public
publish-docker:
if: (github.event_name == 'push' && github.ref_type == 'tag') || github.event_name == 'workflow_dispatch'
needs: [test]
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: docker/setup-qemu-action@v1
- uses: docker/setup-buildx-action@v1

- name: Login to GitHub Container Registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Release Tag
if: github.event_name == 'push' && github.ref_type == 'tag'
run: 'echo "TAG=${GITHUB_REF:11}" >> $GITHUB_ENV'

- name: Canary Tag
if: github.event_name == 'workflow_dispatch'
run: 'echo "TAG=canary-${GITHUB_SHA:0:10}" >> $GITHUB_ENV'

- name: Build & Publish Docker Image
env:
DOCKER_USER: ${{ secrets.DOCKER_USER }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
run: |
docker login --username "$DOCKER_USER" --password "$DOCKER_PASSWORD"
docker buildx build \
--platform linux/amd64,linux/arm64 \
--file ee/admin-server/Dockerfile \
--cache-from type=registry,ref=ghcr.io/contember/admin \
--cache-to type=registry,ref=ghcr.io/contember/admin,mode=max \
--tag "contember/admin:$TAG" \
--push \
.
4 changes: 0 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,11 @@
!.yarn/versions

# node_modules
/ee/**/node_modules
/packages/**/node_modules
/node_modules

# build
/dist
/ee/**/dist
/ee/**/LICENSE
/ee/**/temp
/packages/**/dist
/packages/**/temp

Expand Down
7 changes: 3 additions & 4 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
Copyright (c) 2022 Contember Limited
Copyright (c) 2024 Contember Limited

Portions of this software are licensed as follows:

* All content that resides under the "EE/" directory of this repository, if that directory exists, is licensed under the license defined in "EE/LICENSE".
* All third party components incorporated into the Contember/Admin are licensed under the original license provided by the owner of the applicable component.
* Content outside of the above mentioned directories or restrictions above is available under the Apache License, Version 2.0 (the "License") as defined below.
* All third party components incorporated into the software are licensed under the original license provided by the owner of the applicable component.
* Content outside of the above mentioned restrictions is available under the Apache License, Version 2.0 (the "License") as defined below.

-------------------------------------------------------------------------
Apache License
Expand Down
28 changes: 17 additions & 11 deletions build/api/admin.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@ export const AnyFileRepeater: <AcceptArtifacts = unknown, SFExtraProps extends {
export type AnyFileRepeaterProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = PublicSingleKindFileRepeaterProps<AcceptArtifacts, SFExtraProps>;

// @public (undocumented)
export const AnyFiles: <AcceptArtifacts = unknown>(props: AnyFilesProps<AcceptArtifacts, {}>) => ReactElement | null;
export const AnyFiles: <AcceptArtifacts = unknown>(props: AnyFilesProps<AcceptArtifacts>) => ReactElement | null;

// @public (undocumented)
export type AnyFilesProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = StockAnyFileKindProps<AcceptArtifacts> & SelectFileInputSelectionComponentProps<SFExtraProps> & {
Expand Down Expand Up @@ -361,7 +361,7 @@ export const AudioFileRepeater: <AcceptArtifacts = unknown, SFExtraProps extends
export type AudioFileRepeaterProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = PublicSingleKindFileRepeaterProps<AcceptArtifacts, SFExtraProps> & AudioFileDataExtractorProps;

// @public (undocumented)
export const AudioFiles: <AcceptArtifacts = unknown>(props: AudioFilesProps<AcceptArtifacts, {}>) => ReactElement | null;
export const AudioFiles: <AcceptArtifacts = unknown>(props: AudioFilesProps<AcceptArtifacts>) => ReactElement | null;

// @public (undocumented)
export type AudioFilesProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = StockAudioFileKindProps<AcceptArtifacts> & SelectFileInputSelectionComponentProps<SFExtraProps> & {
Expand Down Expand Up @@ -619,20 +619,20 @@ export const ContemberEditor: {
at?: Location_2 | undefined;
} | undefined) => NodeEntry<Editor | EditorElement> | undefined;
ejectElement: <E_5 extends Editor>(editor: E_5, path: Path) => void;
elementToSpecifics: <Element_1 extends EditorElement = EditorElement>(element: Element_1) => Partial<Element_1>;
getElementDataAttributes: <Element_2 extends EditorElement = EditorElement>(element: Element_2, attributeNamePrefix?: string) => ElementDataAttributes;
elementToSpecifics: <Element extends EditorElement = EditorElement>(element: Element) => Partial<Element>;
getElementDataAttributes: <Element_1 extends EditorElement = EditorElement>(element: Element_1, attributeNamePrefix?: string) => ElementDataAttributes;
getPreviousSibling: <E_6 extends Editor = Editor, CurrentNode extends Node_2 = Node_2, PreviousNode extends Node_2 = CurrentNode>(editor: E_6, node: CurrentNode, nodePath: Path) => NodeEntry<PreviousNode> | undefined;
hasMarks: <T_2 extends EditorText, E_7 extends Editor>(editor: E_7, marks: TextSpecifics<T_2>, options?: {
from?: Path | undefined;
to?: Path | undefined;
}) => boolean;
hasParentOfType: <Editor extends Editor, Element_3 extends EditorElement>(editor: Editor, nodeEntry: NodeEntry<Node_2>, type: Element_3["type"], suchThat?: Partial<Element_3> | undefined) => boolean;
isElementType: <Element_4 extends EditorElement>(element: Node_2, type: Element_4["type"], suchThat?: Partial<Element_4> | undefined) => boolean;
hasParentOfType: <Editor extends Editor, Element_2 extends EditorElement>(editor: Editor, nodeEntry: NodeEntry<Node_2>, type: Element_2["type"], suchThat?: Partial<Element_2> | undefined) => boolean;
isElementType: <Element_3 extends EditorElement>(element: Node_2, type: Element_3["type"], suchThat?: Partial<Element_3> | undefined) => boolean;
permissivelyDeserializeNodes: <E_8 extends Editor>(editor: E_8, serializedElement: string, errorMessage?: string | undefined) => (EditorText | EditorElement)[];
removeMarks: <T_3 extends EditorText, E_9 extends Editor>(editor: E_9, marks: TextSpecifics<T_3>) => void;
serializeNodes: <E_10 extends Editor>(editor: E_10, elements: (EditorText | EditorElement)[], errorMessage?: string | undefined) => string;
strictlyDeserializeNodes: <E_11 extends Editor>(editor: E_11, serializedElement: string, errorMessage?: string | undefined) => (EditorText | EditorElement)[];
textToSpecifics: <Text_1 extends EditorText = EditorText>(textNode: Text_1) => TextSpecifics<Text_1>;
textToSpecifics: <Text extends EditorText = EditorText>(textNode: Text) => TextSpecifics<Text>;
toLatestFormat: <E_12 extends Editor>(editor: E_12, potentiallyOldNode: SerializableEditorNode) => SerializableEditorNode;
topLevelNodes: <E_13 extends Editor>(editor: E_13) => Generator<NodeEntry<Node_2>, void, undefined>;
};
Expand Down Expand Up @@ -3563,7 +3563,7 @@ export const useFetchMe: () => () => Promise<{
}>;

// @public (undocumented)
export const useForm: <V>(initialValues: V, handler?: FormHandler<V> | undefined) => FormMethods<V>;
export const useForm: <V>(initialValues: V, handler?: FormHandler<V>) => FormMethods<V>;

// @public (undocumented)
export const useHandleIDPResponse: ({ onLogin, onError }: UseHandleIDPResponseProps) => IDPResponseState;
Expand Down Expand Up @@ -3680,13 +3680,19 @@ export const useRedirectToBacklink: () => void;
export const useRedirectToBacklinkCallback: () => () => void;

// @public (undocumented)
export const useRemoveCurrentProjectMembership: () => [(identityId: string) => Promise<UpdateMembershipResult>, MutationRequestState<UpdateMembershipResult>];
export const useRemoveCurrentProjectMembership: () => [
(identityId: string) => Promise<UpdateMembershipResult>,
MutationRequestState<UpdateMembershipResult>
];

// @public (undocumented)
export const useRemoveMemberIntent: (project: string, onRemove?: () => void | Promise<void>) => (id: string) => Promise<void>;

// @public (undocumented)
export const useRemoveProjectMembership: () => [(project: string, identityId: string) => Promise<UpdateMembershipResult>, MutationRequestState<UpdateMembershipResult>];
export const useRemoveProjectMembership: () => [
(project: string, identityId: string) => Promise<UpdateMembershipResult>,
MutationRequestState<UpdateMembershipResult>
];

// @public (undocumented)
export const useResetPassword: () => TenantMutationExecutor<GQLVariableValues< {
Expand Down Expand Up @@ -3828,7 +3834,7 @@ export const VideoFileRepeater: <AcceptArtifacts = unknown, SFExtraProps extends
export type VideoFileRepeaterProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = PublicSingleKindFileRepeaterProps<AcceptArtifacts, SFExtraProps> & VideoFileDataExtractorProps;

// @public (undocumented)
export const VideoFiles: <AcceptArtifacts = unknown>(props: VideoFilesProps<AcceptArtifacts, {}>) => ReactElement | null;
export const VideoFiles: <AcceptArtifacts = unknown>(props: VideoFilesProps<AcceptArtifacts>) => ReactElement | null;

// @public (undocumented)
export type VideoFilesProps<AcceptArtifacts = unknown, SFExtraProps extends {} = {}> = StockVideoFileKindProps<AcceptArtifacts> & SelectFileInputSelectionComponentProps<SFExtraProps> & {
Expand Down
2 changes: 1 addition & 1 deletion build/api/binding.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -665,7 +665,7 @@ export namespace Environment {
// (undocumented)
export type Value = string | number | boolean | undefined | GraphQlLiteral | Filter | ReactElementLike;
const // (undocumented)
createExtension: <S, R>(create: (state: S | undefined, environment: Environment) => R, otherMethods?: Omit<Extension<S, R>, "create"> | undefined) => Extension<S, R>;
createExtension: <S, R>(create: Extension<S, R>['create'], otherMethods?: Omit<Extension<S, R>, 'create'>) => Extension<S, R>;
// (undocumented)
export interface ValuesMapWithFactory {
// (undocumented)
Expand Down
2 changes: 1 addition & 1 deletion build/api/interface.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ export const RedirectOnPersist: ({ to }: {

// @public (undocumented)
export const useIsApplicationOutdated: ({ checkIntervalMs }?: {
checkIntervalMs?: number | undefined;
checkIntervalMs?: number;
}) => boolean;


Expand Down
10 changes: 5 additions & 5 deletions build/api/react-binding.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -694,7 +694,7 @@ export const useEntityListSubTree: (qualifiedEntityList: Alias | SugaredQualifie
]) => EntityListAccessor;

// @public (undocumented)
export const useEntityListSubTreeLoader: <State>(entities: SugaredQualifiedEntityList | undefined, children: ReactNode, state?: State | undefined) => [UseEntityListSubTreeLoaderResult<State>, EntityListSubTreeLoaderState];
export const useEntityListSubTreeLoader: <State>(entities: SugaredQualifiedEntityList | undefined, children: ReactNode, state?: State) => [UseEntityListSubTreeLoaderResult<State>, EntityListSubTreeLoaderState];

// @public (undocumented)
export type UseEntityListSubTreeLoaderResult<State> = {
Expand Down Expand Up @@ -747,12 +747,12 @@ export function useField<Value extends FieldValue = FieldValue>(sugaredRelativeS
export const useGetEntityByKey: () => GetEntityByKey;

// @public (undocumented)
export const useGetEntityListSubTree: () => (parametersOrAlias: Alias | SugaredQualifiedEntityList | SugaredUnconstrainedQualifiedEntityList, ...treeId: [TreeRootId | undefined] | [
]) => EntityListAccessor;
export const useGetEntityListSubTree: () => ((parametersOrAlias: Alias | SugaredQualifiedEntityList | SugaredUnconstrainedQualifiedEntityList, ...treeId: [TreeRootId | undefined] | [
]) => EntityListAccessor);

// @public (undocumented)
export const useGetEntitySubTree: () => (parametersOrAlias: Alias | SugaredQualifiedSingleEntity | SugaredUnconstrainedQualifiedSingleEntity, ...treeId: [TreeRootId | undefined] | [
]) => EntityAccessor;
export const useGetEntitySubTree: () => ((parametersOrAlias: Alias | SugaredQualifiedSingleEntity | SugaredUnconstrainedQualifiedSingleEntity, ...treeId: [TreeRootId | undefined] | [
]) => EntityAccessor);

// @public (undocumented)
export const useGetTreeFilters: () => (() => TreeFilter[]);
Expand Down
2 changes: 1 addition & 1 deletion build/api/react-choice-field.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ export const useStaticSingleChoiceField: (props: StaticSingleChoiceFieldProps) =

// Warnings were encountered during analysis:
//
// src/ChoiceField.tsx:15:31 - (ae-forgotten-export) The symbol "AllDynamicSingleChoiceFieldRenderer" needs to be exported by the entry point index.d.ts
// src/ChoiceField.tsx:16:2 - (ae-forgotten-export) The symbol "AllDynamicSingleChoiceFieldRenderer" needs to be exported by the entry point index.d.ts

// (No @packageDocumentation comment for this package)

Expand Down
10 changes: 5 additions & 5 deletions build/api/react-client-tenant.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ import { ModelType } from 'graphql-ts-client-api';
export { ModelType }

// @public (undocumented)
export const useTenantApi: () => <TData extends object, TVariables extends object>(fetcher: Fetcher<"Query" | "Mutation", TData, TVariables>, options?: {
readonly variables?: TVariables | undefined;
readonly headers?: Record<string, string> | undefined;
readonly apiToken?: string | undefined;
} | undefined) => Promise<TData>;
export const useTenantApi: () => <TData extends object, TVariables extends object>(fetcher: Fetcher<'Query' | 'Mutation', TData, TVariables>, options?: {
readonly variables?: TVariables;
readonly headers?: Record<string, string>;
readonly apiToken?: string;
}) => Promise<TData>;

// (No @packageDocumentation comment for this package)

Expand Down
8 changes: 4 additions & 4 deletions build/api/react-datagrid-ui.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -333,11 +333,11 @@ export type DataGridTilesPublicProps = {
};

// @public
export const DateCell: FunctionComponent<DateCellRendererProps & DataGridColumnCommonProps & {
export const DateCell: FunctionComponent<DateCellRendererProps & DataGridColumnCommonProps & ({
disableOrder?: boolean | undefined;
initialOrder?: DataViewSortingDirection | undefined;
initialFilter?: DateRangeFilterArtifacts | undefined;
} & DataGridCellPublicProps & DataGridHeaderCellPublicProps & DateCellValueRendererProps>;
} & (DataGridCellPublicProps & DataGridHeaderCellPublicProps & DateCellValueRendererProps))>;

// @public (undocumented)
export type DateCellValueRendererProps = DateCellRendererProps & DateFieldViewFormattingProps & FieldFallbackViewPublicProps;
Expand Down Expand Up @@ -385,10 +385,10 @@ children: ReactNode;
export const HasManyAbsentCellFilter: ({ filter, setFilter }: FilterRendererProps<boolean>) => JSX_2.Element;

// @public
export const HasManySelectCell: FunctionComponent<HasManySelectProps & DataGridCellPublicProps & DataGridHeaderCellPublicProps & FieldFallbackViewProps>;
export const HasManySelectCell: FunctionComponent<(HasManySelectProps & DataGridCellPublicProps) & DataGridHeaderCellPublicProps & FieldFallbackViewProps>;

// @public
export const HasOneSelectCell: FunctionComponent<HasOneSelectProps & DataGridCellPublicProps & DataGridHeaderCellPublicProps & FieldFallbackViewProps>;
export const HasOneSelectCell: FunctionComponent<(HasOneSelectProps & DataGridCellPublicProps) & DataGridHeaderCellPublicProps & FieldFallbackViewProps>;

// @public (undocumented)
export type NullConditionArtifacts = {
Expand Down
Loading

0 comments on commit a0a58bb

Please sign in to comment.