@payloadcms/ui 3.0.0-beta.110 → 3.0.0-beta.111

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 (27) hide show
  1. package/dist/elements/Dropzone/index.d.ts +2 -1
  2. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  3. package/dist/elements/Dropzone/index.js +3 -2
  4. package/dist/elements/Dropzone/index.js.map +1 -1
  5. package/dist/elements/FieldSelect/index.js +2 -2
  6. package/dist/elements/FieldSelect/index.js.map +1 -1
  7. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  8. package/dist/elements/ListDrawer/DrawerContent.js +156 -154
  9. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  10. package/dist/elements/ListDrawer/types.d.ts +2 -1
  11. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  12. package/dist/elements/ListDrawer/types.js.map +1 -1
  13. package/dist/exports/client/{CodeEditor-FARZ6UIX.js → CodeEditor-4A6256PR.js} +1 -1
  14. package/dist/exports/client/{CodeEditor-FARZ6UIX.js.map → CodeEditor-4A6256PR.js.map} +1 -1
  15. package/dist/exports/client/{DatePicker-NBYDOP2X.js → DatePicker-HNJMUG32.js} +2 -2
  16. package/dist/exports/client/{chunk-6MRITTMD.js → chunk-IHJK2MAT.js} +1 -1
  17. package/dist/exports/client/{chunk-6MRITTMD.js.map → chunk-IHJK2MAT.js.map} +1 -1
  18. package/dist/exports/client/index.js +19 -19
  19. package/dist/exports/client/index.js.map +4 -4
  20. package/dist/fields/Upload/HasOne/index.js +1 -1
  21. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  22. package/dist/fields/Upload/Input.d.ts +0 -1
  23. package/dist/fields/Upload/Input.d.ts.map +1 -1
  24. package/dist/fields/Upload/Input.js +61 -53
  25. package/dist/fields/Upload/Input.js.map +1 -1
  26. package/package.json +8 -8
  27. /package/dist/exports/client/{DatePicker-NBYDOP2X.js.map → DatePicker-HNJMUG32.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useReducer","useRef","useState","SelectMany","FieldLabel","usePayloadAPI","useThrottledEffect","XIcon","useAuth","useConfig","RenderComponent","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","t0","$","collectionSlugs","customHeader","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","selectedCollection","i18n","t","permissions","getPreference","setPreference","closeModal","isModalOpen","limit","setLimit","previousLimit","sort","setSort","page","setPage","setWhere","search","setSearch","showLoadingOverlay","setShowLoadingOverlay","hasInitialised","params","config","t1","collections","routes","t2","serverURL","api","t3","t4","t5","slug","includes","filter","enabledCollectionConfigs","find","slug_0","selectedCollectionConfig","setSelectedCollectionConfig","List","admin","components","views","list","Component","label","labels","singular","value","undefined","selectedOption","setSelectedOption","t6","selectedConfig","t7","slug_1","preferencesKey","t8","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t9","documentDrawerSlug","t10","t11","Array","isArray","t12","slug_2","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","_temp","t13","initialParams","depth","t14","t15","data","isError","isLoading","isLoadingList","setParams","moreThanOneAvailableCollection","length","t16","slug_3","t17","versions","listSearchableFields","useAsTitle","params_0","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","current","drafts","draft","t18","t19","newPreferences","t20","t21","getInitialPref","existingPreferences","t22","t23","t24","t25","t26","t27","t28","t29","doc","docID","id","onCreateNew","_jsx","t30","plural","t31","className","children","t32","t33","description","Description","t34","t35","rowColl","rowData","_jsxs","_Fragment","beforeActions","onClick","collectionConfig","disableBulkDelete","disableBulkEdit","Header","type","field","onChange","options","coll","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","preferenceKey","cellProps","link","mappedComponent","onSave","state"],"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useReducer, useRef, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { ListInfoProvider } from '../../providers/ListInfo/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { type Option, ReactSelect } from '../ReactSelect/index.js'\nimport { TableColumnsProvider } from '../TableColumns/index.js'\nimport { ViewDescription } from '../ViewDescription/index.js'\nimport { baseClass } from './index.js'\n\nexport const hoistQueryParamsToAnd = (where: Where, queryParams: Where) => {\n if ('and' in where) {\n where.and.push(queryParams)\n } else if ('or' in where) {\n where = {\n and: [where, queryParams],\n }\n } else {\n where = {\n and: [where, queryParams],\n }\n }\n\n return where\n}\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n collectionSlugs,\n customHeader,\n drawerSlug,\n enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getPreference, setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n // Track the page limit so we can reset the page number when it changes\n const previousLimit = useRef<number>(limit || null)\n const [sort, setSort] = useState<string>(null)\n const [page, setPage] = useState<number>(1)\n const [where, setWhere] = useState<Where>(null)\n const [search, setSearch] = useState<string>('')\n const [showLoadingOverlay, setShowLoadingOverlay] = useState<boolean>(true)\n const hasInitialised = useRef(false)\n\n const params = {\n limit,\n page,\n search,\n sort,\n where,\n }\n\n const {\n config: {\n collections,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const enabledCollectionConfigs = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedCollectionConfig, setSelectedCollectionConfig] = useState<ClientCollectionConfig>(\n () => {\n return (\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n )\n },\n )\n\n const List = selectedCollectionConfig?.admin?.components.views.list.Component\n\n const [selectedOption, setSelectedOption] = useState<Option | Option[]>(() =>\n selectedCollectionConfig\n ? {\n label: getTranslation(selectedCollectionConfig.labels.singular, i18n),\n value: selectedCollectionConfig.slug,\n }\n : undefined,\n )\n\n // allow external control of selected collection, same as the initial state logic above\n useEffect(() => {\n if (selectedCollection) {\n // if passed a selection, find it and check if it's enabled\n const selectedConfig =\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n setSelectedCollectionConfig(selectedConfig)\n }\n }, [selectedCollection, enabledCollectionConfigs, onSelect, t])\n\n const preferencesKey = `${selectedCollectionConfig.slug}-list`\n\n // this is the 'create new' drawer\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedCollectionConfig.slug,\n })\n\n useEffect(() => {\n if (selectedOption && !Array.isArray(selectedOption)) {\n setSelectedCollectionConfig(\n enabledCollectionConfigs.find(({ slug }) => selectedOption.value === slug),\n )\n }\n }, [selectedOption, enabledCollectionConfigs])\n\n const collectionPermissions = permissions?.collections?.[selectedCollectionConfig?.slug]\n const hasCreatePermission = collectionPermissions?.create?.permission\n\n // If modal is open, get active page of upload gallery\n const isOpen = isModalOpen(drawerSlug)\n const apiURL = isOpen ? `${serverURL}${api}/${selectedCollectionConfig.slug}` : null\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0) // used to force a re-fetch even when apiURL is unchanged\n const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {\n initialParams: {\n depth: 0,\n },\n })\n const moreThanOneAvailableCollection = enabledCollectionConfigs.length > 1\n\n useEffect(() => {\n const {\n slug,\n admin: { listSearchableFields, useAsTitle } = {},\n versions,\n } = selectedCollectionConfig\n\n const params: {\n cacheBust?: number\n depth?: number\n draft?: string\n limit?: number\n page?: number\n search?: string\n sort?: string\n where?: unknown\n } = {\n depth: 0,\n }\n\n let copyOfWhere = { ...(where || {}) }\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, filterOption)\n }\n\n if (search) {\n const searchAsConditions = (listSearchableFields || [useAsTitle]).map((fieldName) => {\n return {\n [fieldName]: {\n like: search,\n },\n }\n }, [])\n\n if (searchAsConditions.length > 0) {\n const searchFilter: Where = {\n or: [...searchAsConditions],\n }\n\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, searchFilter)\n }\n }\n\n if (page) {\n params.page = page\n }\n if (sort) {\n params.sort = sort\n }\n if (cacheBust) {\n params.cacheBust = cacheBust\n }\n if (limit) {\n params.limit = limit\n\n if (limit !== previousLimit.current) {\n previousLimit.current = limit\n\n // Reset page if limit changes\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setPage(1)\n }\n }\n if (copyOfWhere) {\n params.where = copyOfWhere\n }\n if (versions?.drafts) {\n params.draft = 'true'\n }\n\n setParams(params)\n }, [\n page,\n sort,\n where,\n search,\n limit,\n cacheBust,\n filterOptions,\n selectedCollectionConfig,\n t,\n setParams,\n ])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n if (limit || sort) {\n void setPreference(preferencesKey, newPreferences, true)\n }\n }, [sort, limit, setPreference, preferencesKey])\n\n // Get existing preferences if they exist\n useEffect(() => {\n if (preferencesKey && !limit) {\n const getInitialPref = async () => {\n const existingPreferences = await getPreference<{ limit?: number }>(preferencesKey)\n\n if (existingPreferences?.limit) {\n setLimit(existingPreferences?.limit)\n }\n }\n void getInitialPref()\n }\n }, [getPreference, limit, preferencesKey])\n\n useThrottledEffect(\n () => {\n if (isLoadingList) {\n setShowLoadingOverlay(true)\n }\n },\n 1750,\n [isLoadingList, setShowLoadingOverlay],\n )\n\n useEffect(() => {\n if (isOpen) {\n hasInitialised.current = true\n } else {\n hasInitialised.current = false\n }\n }, [isOpen])\n\n useEffect(() => {\n if (!isLoadingList && showLoadingOverlay) {\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setShowLoadingOverlay(false)\n }\n }, [isLoadingList, showLoadingOverlay])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedCollectionConfig.slug,\n docID: doc.id,\n })\n }\n dispatchCacheBust()\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedCollectionConfig],\n )\n\n if (!selectedCollectionConfig || isError) {\n return null\n }\n\n return (\n <>\n {showLoadingOverlay && <LoadingOverlay />}\n <ListInfoProvider\n beforeActions={\n enableRowSelections\n ? [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : undefined\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n disableBulkDelete\n disableBulkEdit\n hasCreatePermission={hasCreatePermission}\n Header={\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h2 className={`${baseClass}__header-text`}>\n {!customHeader\n ? getTranslation(selectedCollectionConfig?.labels?.plural, i18n)\n : customHeader}\n </h2>\n {hasCreatePermission && (\n <DocumentDrawerToggler className={`${baseClass}__create-new-button`}>\n <Pill>{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )}\n </div>\n <button\n aria-label={t('general:close')}\n className={`${baseClass}__header-close`}\n onClick={() => {\n closeModal(drawerSlug)\n }}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {(selectedCollectionConfig?.admin?.description ||\n selectedCollectionConfig?.admin?.components?.Description) && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription\n Description={selectedCollectionConfig.admin?.components?.Description}\n description={selectedCollectionConfig.admin?.description}\n />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel field={null} label={t('upload:selectCollectionToBrowse')} />\n <ReactSelect\n className={`${baseClass}__select-collection`}\n onChange={setSelectedOption} // this is only changing the options which is not rerunning my effect\n options={enabledCollectionConfigs.map((coll) => ({\n label: getTranslation(coll.labels.singular, i18n),\n value: coll.slug,\n }))}\n value={selectedOption}\n />\n </div>\n )}\n </header>\n }\n newDocumentURL={null}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || selectedCollectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n handlePageChange={setPage}\n handlePerPageChange={setLimit}\n handleSearchChange={setSearch}\n handleSortChange={setSort}\n handleWhereChange={setWhere}\n modifySearchParams={false}\n // @ts-expect-error todo: fix types\n params={params}\n preferenceKey={preferencesKey}\n >\n <TableColumnsProvider\n cellProps={[\n {\n className: `${baseClass}__first-cell`,\n link: false,\n onClick: ({ collectionSlug: rowColl, rowData }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: rowColl,\n docID: rowData.id as string,\n })\n }\n },\n },\n ]}\n collectionSlug={selectedCollectionConfig.slug}\n enableRowSelections={enableRowSelections}\n preferenceKey={preferencesKey}\n >\n <RenderComponent mappedComponent={List} />\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerContent.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useReducer","useRef","useState","SelectMany","FieldLabel","usePayloadAPI","useThrottledEffect","XIcon","useAuth","useConfig","RenderComponent","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","t0","$","allowCreate","t1","collectionSlugs","customHeader","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","selectedCollection","undefined","i18n","t","permissions","getPreference","setPreference","closeModal","isModalOpen","limit","setLimit","previousLimit","sort","setSort","page","setPage","setWhere","search","setSearch","showLoadingOverlay","setShowLoadingOverlay","hasInitialised","params","config","t2","collections","routes","t3","serverURL","api","t4","t5","t6","slug","includes","filter","enabledCollectionConfigs","find","slug_0","selectedCollectionConfig","setSelectedCollectionConfig","List","admin","components","views","list","Component","label","labels","singular","value","selectedOption","setSelectedOption","t7","selectedConfig","t8","slug_1","preferencesKey","t9","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t10","documentDrawerSlug","t11","t12","Array","isArray","t13","slug_2","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","_temp","t14","initialParams","depth","t15","t16","data","isError","isLoading","isLoadingList","setParams","moreThanOneAvailableCollection","length","t17","slug_3","t18","versions","listSearchableFields","useAsTitle","params_0","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","current","drafts","draft","t19","t20","newPreferences","t21","t22","getInitialPref","existingPreferences","t23","t24","t25","t26","t27","t28","t29","t30","doc","docID","id","onCreateNew","_jsx","t31","plural","t32","className","children","t33","t34","description","Description","t35","t36","rowColl","rowData","_jsxs","_Fragment","beforeActions","onClick","collectionConfig","disableBulkDelete","disableBulkEdit","Header","type","field","onChange","options","coll","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","preferenceKey","cellProps","link","mappedComponent","onSave","state"],"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useReducer, useRef, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { ListInfoProvider } from '../../providers/ListInfo/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { type Option, ReactSelect } from '../ReactSelect/index.js'\nimport { TableColumnsProvider } from '../TableColumns/index.js'\nimport { ViewDescription } from '../ViewDescription/index.js'\nimport { baseClass } from './index.js'\n\nexport const hoistQueryParamsToAnd = (where: Where, queryParams: Where) => {\n if ('and' in where) {\n where.and.push(queryParams)\n } else if ('or' in where) {\n where = {\n and: [where, queryParams],\n }\n } else {\n where = {\n and: [where, queryParams],\n }\n }\n\n return where\n}\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n allowCreate = true,\n collectionSlugs,\n customHeader,\n drawerSlug,\n enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getPreference, setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n // Track the page limit so we can reset the page number when it changes\n const previousLimit = useRef<number>(limit || null)\n const [sort, setSort] = useState<string>(null)\n const [page, setPage] = useState<number>(1)\n const [where, setWhere] = useState<Where>(null)\n const [search, setSearch] = useState<string>('')\n const [showLoadingOverlay, setShowLoadingOverlay] = useState<boolean>(true)\n const hasInitialised = useRef(false)\n\n const params = {\n limit,\n page,\n search,\n sort,\n where,\n }\n\n const {\n config: {\n collections,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const enabledCollectionConfigs = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedCollectionConfig, setSelectedCollectionConfig] = useState<ClientCollectionConfig>(\n () => {\n return (\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n )\n },\n )\n\n const List = selectedCollectionConfig?.admin?.components.views.list.Component\n\n const [selectedOption, setSelectedOption] = useState<Option | Option[]>(() =>\n selectedCollectionConfig\n ? {\n label: getTranslation(selectedCollectionConfig.labels.singular, i18n),\n value: selectedCollectionConfig.slug,\n }\n : undefined,\n )\n\n // allow external control of selected collection, same as the initial state logic above\n useEffect(() => {\n if (selectedCollection) {\n // if passed a selection, find it and check if it's enabled\n const selectedConfig =\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n setSelectedCollectionConfig(selectedConfig)\n }\n }, [selectedCollection, enabledCollectionConfigs, onSelect, t])\n\n const preferencesKey = `${selectedCollectionConfig.slug}-list`\n\n // this is the 'create new' drawer\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedCollectionConfig.slug,\n })\n\n useEffect(() => {\n if (selectedOption && !Array.isArray(selectedOption)) {\n setSelectedCollectionConfig(\n enabledCollectionConfigs.find(({ slug }) => selectedOption.value === slug),\n )\n }\n }, [selectedOption, enabledCollectionConfigs])\n\n const collectionPermissions = permissions?.collections?.[selectedCollectionConfig?.slug]\n const hasCreatePermission = collectionPermissions?.create?.permission && allowCreate\n\n // If modal is open, get active page of upload gallery\n const isOpen = isModalOpen(drawerSlug)\n const apiURL = isOpen ? `${serverURL}${api}/${selectedCollectionConfig.slug}` : null\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0) // used to force a re-fetch even when apiURL is unchanged\n const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {\n initialParams: {\n depth: 0,\n },\n })\n const moreThanOneAvailableCollection = enabledCollectionConfigs.length > 1\n\n useEffect(() => {\n const {\n slug,\n admin: { listSearchableFields, useAsTitle } = {},\n versions,\n } = selectedCollectionConfig\n\n const params: {\n cacheBust?: number\n depth?: number\n draft?: string\n limit?: number\n page?: number\n search?: string\n sort?: string\n where?: unknown\n } = {\n depth: 0,\n }\n\n let copyOfWhere = { ...(where || {}) }\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, filterOption)\n }\n\n if (search) {\n const searchAsConditions = (listSearchableFields || [useAsTitle]).map((fieldName) => {\n return {\n [fieldName]: {\n like: search,\n },\n }\n }, [])\n\n if (searchAsConditions.length > 0) {\n const searchFilter: Where = {\n or: [...searchAsConditions],\n }\n\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, searchFilter)\n }\n }\n\n if (page) {\n params.page = page\n }\n if (sort) {\n params.sort = sort\n }\n if (cacheBust) {\n params.cacheBust = cacheBust\n }\n if (limit) {\n params.limit = limit\n\n if (limit !== previousLimit.current) {\n previousLimit.current = limit\n\n // Reset page if limit changes\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setPage(1)\n }\n }\n if (copyOfWhere) {\n params.where = copyOfWhere\n }\n if (versions?.drafts) {\n params.draft = 'true'\n }\n\n setParams(params)\n }, [\n page,\n sort,\n where,\n search,\n limit,\n cacheBust,\n filterOptions,\n selectedCollectionConfig,\n t,\n setParams,\n ])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n if (limit || sort) {\n void setPreference(preferencesKey, newPreferences, true)\n }\n }, [sort, limit, setPreference, preferencesKey])\n\n // Get existing preferences if they exist\n useEffect(() => {\n if (preferencesKey && !limit) {\n const getInitialPref = async () => {\n const existingPreferences = await getPreference<{ limit?: number }>(preferencesKey)\n\n if (existingPreferences?.limit) {\n setLimit(existingPreferences?.limit)\n }\n }\n void getInitialPref()\n }\n }, [getPreference, limit, preferencesKey])\n\n useThrottledEffect(\n () => {\n if (isLoadingList) {\n setShowLoadingOverlay(true)\n }\n },\n 1750,\n [isLoadingList, setShowLoadingOverlay],\n )\n\n useEffect(() => {\n if (isOpen) {\n hasInitialised.current = true\n } else {\n hasInitialised.current = false\n }\n }, [isOpen])\n\n useEffect(() => {\n if (!isLoadingList && showLoadingOverlay) {\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setShowLoadingOverlay(false)\n }\n }, [isLoadingList, showLoadingOverlay])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedCollectionConfig.slug,\n docID: doc.id,\n })\n }\n dispatchCacheBust()\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedCollectionConfig],\n )\n\n if (!selectedCollectionConfig || isError) {\n return null\n }\n\n return (\n <>\n {showLoadingOverlay && <LoadingOverlay />}\n <ListInfoProvider\n beforeActions={\n enableRowSelections\n ? [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : undefined\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n disableBulkDelete\n disableBulkEdit\n hasCreatePermission={hasCreatePermission}\n Header={\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h2 className={`${baseClass}__header-text`}>\n {!customHeader\n ? getTranslation(selectedCollectionConfig?.labels?.plural, i18n)\n : customHeader}\n </h2>\n {hasCreatePermission && (\n <DocumentDrawerToggler className={`${baseClass}__create-new-button`}>\n <Pill>{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )}\n </div>\n <button\n aria-label={t('general:close')}\n className={`${baseClass}__header-close`}\n onClick={() => {\n closeModal(drawerSlug)\n }}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {(selectedCollectionConfig?.admin?.description ||\n selectedCollectionConfig?.admin?.components?.Description) && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription\n Description={selectedCollectionConfig.admin?.components?.Description}\n description={selectedCollectionConfig.admin?.description}\n />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel field={null} label={t('upload:selectCollectionToBrowse')} />\n <ReactSelect\n className={`${baseClass}__select-collection`}\n onChange={setSelectedOption} // this is only changing the options which is not rerunning my effect\n options={enabledCollectionConfigs.map((coll) => ({\n label: getTranslation(coll.labels.singular, i18n),\n value: coll.slug,\n }))}\n value={selectedOption}\n />\n </div>\n )}\n </header>\n }\n newDocumentURL={null}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || selectedCollectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n handlePageChange={setPage}\n handlePerPageChange={setLimit}\n handleSearchChange={setSearch}\n handleSortChange={setSort}\n handleWhereChange={setWhere}\n modifySearchParams={false}\n // @ts-expect-error todo: fix types\n params={params}\n preferenceKey={preferencesKey}\n >\n <TableColumnsProvider\n cellProps={[\n {\n className: `${baseClass}__first-cell`,\n link: false,\n onClick: ({ collectionSlug: rowColl, rowData }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: rowColl,\n docID: rowData.id as string,\n })\n }\n },\n },\n ]}\n collectionSlug={selectedCollectionConfig.slug}\n enableRowSelections={enableRowSelections}\n preferenceKey={preferencesKey}\n >\n <RenderComponent mappedComponent={List} />\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import type React from 'react';
3
3
  import type { HTMLAttributes } from 'react';
4
4
  import type { useSelection } from '../../providers/Selection/index.js';
5
5
  export type ListDrawerProps = {
6
+ readonly allowCreate?: boolean;
6
7
  readonly collectionSlugs: string[];
7
8
  readonly customHeader?: React.ReactNode;
8
9
  readonly drawerSlug?: string;
@@ -27,7 +28,7 @@ export type UseListDrawer = (args: {
27
28
  selectedCollection?: string;
28
29
  uploads?: boolean;
29
30
  }) => [
30
- React.FC<Pick<ListDrawerProps, 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>,
31
+ React.FC<Pick<ListDrawerProps, 'allowCreate' | 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>,
31
32
  React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>,
32
33
  {
33
34
  closeDrawer: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAEtE,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IACvF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QACzB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QACjD,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAA;AAErC,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,KAAK;IACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,qBAAqB,GAAG,cAAc,GAAG,UAAU,CAAC,CAAC;IACpF,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IACvE;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,eAAe,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;QACpD,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7F,YAAY,EAAE,MAAM,IAAI,CAAA;KACzB;CACF,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAEtE,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IACvF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QACzB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QACjD,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAA;AAErC,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,KAAK;IACJ,KAAK,CAAC,EAAE,CACN,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,qBAAqB,GAAG,cAAc,GAAG,UAAU,CAAC,CAC3F;IACD,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IACvE;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,eAAe,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;QACpD,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7F,YAAY,EAAE,MAAM,IAAI,CAAA;KACzB;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\n\nexport type ListDrawerProps = {\n readonly collectionSlugs: string[]\n readonly customHeader?: React.ReactNode\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\n readonly onSelect?: (args: {\n collectionSlug: SanitizedCollectionConfig['slug']\n docID: string\n }) => void\n readonly selectedCollection?: string\n}\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: string[]\n filterOptions?: FilterOptionsResult\n selectedCollection?: string\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<Pick<ListDrawerProps, 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>, // toggler\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"mappings":"AA2BA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\n\nexport type ListDrawerProps = {\n readonly allowCreate?: boolean\n readonly collectionSlugs: string[]\n readonly customHeader?: React.ReactNode\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\n readonly onSelect?: (args: {\n collectionSlug: SanitizedCollectionConfig['slug']\n docID: string\n }) => void\n readonly selectedCollection?: string\n}\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: string[]\n filterOptions?: FilterOptionsResult\n selectedCollection?: string\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<\n Pick<ListDrawerProps, 'allowCreate' | 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>\n >, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>, // toggler\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"mappings":"AA4BA","ignoreList":[]}
@@ -23,4 +23,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
23
23
  `},ye=ve(ut)(we),lt={config:at},Oe=lt;var st=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},je=st;function Me(e,t){return Object.keys(t).forEach(function(r){t[r]instanceof Object&&e[r]&&Object.assign(t[r],Me(e[r],t[r]))}),ee(ee({},e),t)}var Se=Me;var ft={type:"cancelation",msg:"operation is manually canceled"};function dt(e){var t=!1,r=new Promise(function(n,o){e.then(function(i){return t?o(ft):n(i)}),e.catch(o)});return r.cancel=function(){return t=!0},r}var K=dt;var pt=ge.create({config:he,isInitialized:!1,resolve:null,reject:null,monaco:null}),Pe=de(pt,2),_=Pe[0],G=Pe[1];function mt(e){var t=Oe.config(e),r=t.monaco,n=fe(t,["monaco"]);G(function(o){return{config:Se(o.config,n),monaco:r}})}function gt(){var e=_(function(t){var r=t.monaco,n=t.isInitialized,o=t.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!e.isInitialized){if(G({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),K(te);if(window.monaco&&window.monaco.editor)return Ee(window.monaco),e.resolve(window.monaco),K(te);je(ht,bt)(yt)}return K(te)}function ht(e){return document.body.appendChild(e)}function vt(e){var t=document.createElement("script");return e&&(t.src=e),t}function bt(e){var t=_(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=vt("".concat(t.config.paths.vs,"/loader.js"));return r.onload=function(){return e()},r.onerror=t.reject,r}function yt(){var e=_(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),t=window.require;t.config(e.config),t(["vs/editor/editor.main"],function(r){Ee(r),e.resolve(r)},function(r){e.reject(r)})}function Ee(e){_().monaco||G({monaco:e})}function wt(){return _(function(e){var t=e.monaco;return t})}var te=new Promise(function(e,t){return G({resolve:e,reject:t})}),Ot={config:mt,init:gt,__getMonacoInstance:wt},L=Ot;import{memo as jt}from"react";import Mt,{useState as Ie,useRef as R,useCallback as Ce,useEffect as Te}from"react";import{memo as St}from"react";import re from"react";import Et from"react";import{useEffect as Dt}from"react";import{useEffect as Wt,useRef as Nt}from"react";import{useState as Hr}from"react";import{memo as qt}from"react";import Bt,{useState as xe,useEffect as Y,useRef as M,useCallback as Ft}from"react";import{useEffect as kt,useRef as Kt}from"react";var Pt={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ne=Pt,It={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},Ct=It;function Tt({children:e}){return Et.createElement("div",{style:Ct.container},e)}var xt=Tt,Lt=xt;function At({width:e,height:t,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return re.createElement("section",{style:{...ne.wrapper,width:e,height:t},...a},!r&&re.createElement(Lt,null,n),re.createElement("div",{ref:o,style:{...ne.fullWidth,...!r&&ne.hide},className:i}))}var Rt=At,Le=St(Rt);function Vt(e){Dt(e,[])}var Ae=Vt;function zt(e,t,r=!0){let n=Nt(!0);Wt(n.current||!r?()=>{n.current=!1}:e,t)}var w=zt;function $(){}function D(e,t,r,n){return Ht(e,n)||Ut(e,t,r,n)}function Ht(e,t){return e.editor.getModel(Re(e,t))}function Ut(e,t,r,n){return e.editor.createModel(t,r,n?Re(e,n):void 0)}function Re(e,t){return e.Uri.parse(t)}function _t({original:e,modified:t,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:l=!1,keepCurrentModifiedModel:s=!1,theme:d="light",loading:O="Loading...",options:h={},height:T="100%",width:S="100%",className:P,wrapperProps:E={},beforeMount:j=$,onMount:x=$}){let[y,V]=Ie(!1),[W,p]=Ie(!0),m=R(null),f=R(null),N=R(null),v=R(x),c=R(j),A=R(!1);Ae(()=>{let u=L.init();return u.then(g=>(f.current=g)&&p(!1)).catch(g=>g?.type!=="cancelation"&&console.error("Monaco initialization: error:",g)),()=>m.current?z():u.cancel()}),w(()=>{if(m.current&&f.current){let u=m.current.getOriginalEditor(),g=D(f.current,e||"",n||r||"text",i||"");g!==u.getModel()&&u.setModel(g)}},[i],y),w(()=>{if(m.current&&f.current){let u=m.current.getModifiedEditor(),g=D(f.current,t||"",o||r||"text",a||"");g!==u.getModel()&&u.setModel(g)}},[a],y),w(()=>{let u=m.current.getModifiedEditor();u.getOption(f.current.editor.EditorOption.readOnly)?u.setValue(t||""):t!==u.getValue()&&(u.executeEdits("",[{range:u.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),u.pushUndoStop())},[t],y),w(()=>{m.current?.getModel()?.original.setValue(e||"")},[e],y),w(()=>{let{original:u,modified:g}=m.current.getModel();f.current.editor.setModelLanguage(u,n||r||"text"),f.current.editor.setModelLanguage(g,o||r||"text")},[r,n,o],y),w(()=>{f.current?.editor.setTheme(d)},[d],y),w(()=>{m.current?.updateOptions(h)},[h],y);let q=Ce(()=>{if(!f.current)return;c.current(f.current);let u=D(f.current,e||"",n||r||"text",i||""),g=D(f.current,t||"",o||r||"text",a||"");m.current?.setModel({original:u,modified:g})},[r,t,o,e,n,i,a]),B=Ce(()=>{!A.current&&N.current&&(m.current=f.current.editor.createDiffEditor(N.current,{automaticLayout:!0,...h}),q(),f.current?.editor.setTheme(d),V(!0),A.current=!0)},[h,d,q]);Te(()=>{y&&v.current(m.current,f.current)},[y]),Te(()=>{!W&&!y&&B()},[W,y,B]);function z(){let u=m.current?.getModel();l||u?.original?.dispose(),s||u?.modified?.dispose(),m.current?.dispose()}return Mt.createElement(Le,{width:S,height:T,isEditorReady:y,loading:O,_ref:N,className:P,wrapperProps:E})}var $t=_t,Nr=jt($t);function Gt(e){let t=Kt();return kt(()=>{t.current=e},[e]),t.current}var Yt=Gt,J=new Map;function Jt({defaultValue:e,defaultLanguage:t,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:l,loading:s="Loading...",options:d={},overrideServices:O={},saveViewState:h=!0,keepCurrentModel:T=!1,width:S="100%",height:P="100%",className:E,wrapperProps:j={},beforeMount:x=$,onMount:y=$,onChange:V,onValidate:W=$}){let[p,m]=xe(!1),[f,N]=xe(!0),v=M(null),c=M(null),A=M(null),q=M(y),B=M(x),z=M(),u=M(n),g=Yt(i),ie=M(!1),Q=M(!1);Ae(()=>{let b=L.init();return b.then(I=>(v.current=I)&&N(!1)).catch(I=>I?.type!=="cancelation"&&console.error("Monaco initialization: error:",I)),()=>c.current?Ve():b.cancel()}),w(()=>{let b=D(v.current,e||n||"",t||o||"",i||r||"");b!==c.current?.getModel()&&(h&&J.set(g,c.current?.saveViewState()),c.current?.setModel(b),h&&c.current?.restoreViewState(J.get(i)))},[i],p),w(()=>{c.current?.updateOptions(d)},[d],p),w(()=>{!c.current||n===void 0||(c.current.getOption(v.current.editor.EditorOption.readOnly)?c.current.setValue(n):n!==c.current.getValue()&&(Q.current=!0,c.current.executeEdits("",[{range:c.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),c.current.pushUndoStop(),Q.current=!1))},[n],p),w(()=>{let b=c.current?.getModel();b&&o&&v.current?.editor.setModelLanguage(b,o)},[o],p),w(()=>{l!==void 0&&c.current?.revealLine(l)},[l],p),w(()=>{v.current?.editor.setTheme(a)},[a],p);let ae=Ft(()=>{if(!(!A.current||!v.current)&&!ie.current){B.current(v.current);let b=i||r,I=D(v.current,n||e||"",t||o||"",b||"");c.current=v.current?.editor.create(A.current,{model:I,automaticLayout:!0,...d},O),h&&c.current.restoreViewState(J.get(b)),v.current.editor.setTheme(a),l!==void 0&&c.current.revealLine(l),m(!0),ie.current=!0}},[e,t,r,n,o,i,d,O,h,a,l]);Y(()=>{p&&q.current(c.current,v.current)},[p]),Y(()=>{!f&&!p&&ae()},[f,p,ae]),u.current=n,Y(()=>{p&&V&&(z.current?.dispose(),z.current=c.current?.onDidChangeModelContent(b=>{Q.current||V(c.current.getValue(),b)}))},[p,V]),Y(()=>{if(p){let b=v.current.editor.onDidChangeMarkers(I=>{let X=c.current.getModel()?.uri;if(X&&I.find(Z=>Z.path===X.path)){let Z=v.current.editor.getModelMarkers({resource:X});W?.(Z)}});return()=>{b?.dispose()}}return()=>{}},[p,W]);function Ve(){z.current?.dispose(),T?h&&J.set(i,c.current.saveViewState()):c.current.getModel()?.dispose(),c.current.dispose()}return Bt.createElement(Le,{width:S,height:P,isEditorReady:p,loading:s,_ref:A,className:E,wrapperProps:j})}var Qt=Jt,Xt=qt(Qt),oe=Xt;import{useState as er}from"react";var tr=oe.default||oe,rr="code-editor",nr=e=>{let t=Zt(20),r,n,o,i;t[0]!==e?({className:o,options:i,readOnly:n,...r}=e,t[0]=e,t[1]=r,t[2]=n,t[3]=o,t[4]=i):(r=t[1],n=t[2],o=t[3],i=t[4]);let[a,l]=er(20),{theme:s}=ue(),d=r?.defaultLanguage?`language--${r.defaultLanguage}`:"",O=n&&"read-only",h;t[5]!==o||t[6]!==d||t[7]!==O?(h=[rr,o,d,O].filter(Boolean),t[5]=o,t[6]=d,t[7]=O,t[8]=h):h=t[8];let T=h.join(" "),S;if(t[9]!==a||t[10]!==n||t[11]!==i||t[12]!==s||t[13]!==r||t[14]!==T){let P;t[16]!==r.onChange?(P=(j,x)=>{r.onChange?.(j,x),l(j.split(`
24
24
  `).length*18+2)},t[16]=r.onChange,t[17]=P):P=t[17];let E;t[18]!==r.onMount?(E=(j,x)=>{r.onMount?.(j,x),l(j.getValue().split(`
25
25
  `).length*18+2)},t[18]=r.onMount,t[19]=E):E=t[19],S=De(tr,{className:T,loading:De(ce,{height:a}),options:{detectIndentation:!0,hideCursorInOverviewRuler:!0,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!!n,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,tabSize:2,wordWrap:"on",...i},theme:s==="dark"?"vs-dark":"vs",...r,height:a,onChange:P,onMount:E}),t[9]=a,t[10]=n,t[11]=i,t[12]=s,t[13]=r,t[14]=T,t[15]=S}else S=t[15];return S},Zr=nr;export{Zr as default};
26
- //# sourceMappingURL=CodeEditor-FARZ6UIX.js.map
26
+ //# sourceMappingURL=CodeEditor-4A6256PR.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  {
3
3
  "version": 3,
4
- "sources": ["../../../src/elements/CodeEditor/CodeEditor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../../../../node_modules/.pnpm/state-local@1.0.7/node_modules/state-local/lib/es/state-local.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/DiffEditor/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/DiffEditor/DiffEditor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/MonacoContainer/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/MonacoContainer/MonacoContainer.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/MonacoContainer/styles.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/Loading/Loading.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/Loading/styles.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/Loading/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/hooks/useMount/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/hooks/useUpdate/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/utils/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/hooks/useMonaco/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/Editor/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/Editor/Editor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-5dcb0097-20240918_react@1_lxsgcz4dufik2t3zvzny2keaya/node_modules/@monaco-editor/react/src/hooks/usePrevious/index.ts"],
4
+ "sources": ["../../../src/elements/CodeEditor/CodeEditor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../../../../node_modules/.pnpm/state-local@1.0.7/node_modules/state-local/lib/es/state-local.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../../../../node_modules/.pnpm/@monaco-editor+loader@1.4.0_monaco-editor@0.38.0/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/DiffEditor/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/DiffEditor/DiffEditor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/MonacoContainer/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/MonacoContainer/MonacoContainer.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/MonacoContainer/styles.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/Loading/Loading.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/Loading/styles.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/Loading/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/hooks/useMount/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/hooks/useUpdate/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/utils/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/hooks/useMonaco/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/Editor/index.ts", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/Editor/Editor.tsx", "../../../../../node_modules/.pnpm/@monaco-editor+react@4.6.0_monaco-editor@0.38.0_react-dom@19.0.0-rc-3edc000d-20240926_react@1_vwq4ozizad3rt5zbveemcz32e4/node_modules/@monaco-editor/react/src/hooks/usePrevious/index.ts"],
5
5
  "sourcesContent": ["'use client'\nimport EditorImport from '@monaco-editor/react'\nimport React, { useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useTheme } from '../../providers/Theme/index.js'\nimport { ShimmerEffect } from '../ShimmerEffect/index.js'\nimport './index.scss'\n\nconst Editor = (EditorImport.default || EditorImport) as unknown as typeof EditorImport.default\n\nconst baseClass = 'code-editor'\n\nconst CodeEditor: React.FC<Props> = (props) => {\n const { className, options, readOnly, ...rest } = props\n const [dynamicHeight, setDynamicHeight] = useState(20)\n const { theme } = useTheme()\n\n const classes = [\n baseClass,\n className,\n rest?.defaultLanguage ? `language--${rest.defaultLanguage}` : '',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <Editor\n className={classes}\n loading={<ShimmerEffect height={dynamicHeight} />}\n options={{\n detectIndentation: true,\n hideCursorInOverviewRuler: true,\n minimap: {\n enabled: false,\n },\n overviewRulerBorder: false,\n readOnly: Boolean(readOnly),\n scrollbar: {\n alwaysConsumeMouseWheel: false,\n },\n scrollBeyondLastLine: false,\n tabSize: 2,\n wordWrap: 'on',\n ...options,\n }}\n theme={theme === 'dark' ? 'vs-dark' : 'vs'}\n {...rest}\n // Since we are not building an IDE and the container\n // can already have scrolling, we want the height of the\n // editor to fit its content.\n // See: https://github.com/microsoft/monaco-editor/discussions/3677\n height={dynamicHeight}\n onChange={(value, ev) => {\n rest.onChange?.(value, ev)\n setDynamicHeight(value.split('\\n').length * 18 + 2)\n }}\n onMount={(editor, monaco) => {\n rest.onMount?.(editor, monaco)\n setDynamicHeight(editor.getValue().split('\\n').length * 18 + 2)\n }}\n />\n )\n}\n\n// eslint-disable-next-line no-restricted-exports\nexport default CodeEditor\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "import loader from '@monaco-editor/loader';\nexport { loader };\n\nimport DiffEditor from './DiffEditor';\nexport * from './DiffEditor/types';\nexport { DiffEditor };\n\nimport useMonaco from './hooks/useMonaco';\nexport { useMonaco };\n\nimport Editor from './Editor';\nexport * from './Editor/types';\nexport { Editor };\nexport default Editor;\n\n// Monaco\nimport type * as monaco from 'monaco-editor/esm/vs/editor/editor.api';\nexport type Monaco = typeof monaco;\n\n// Default themes\nexport type Theme = 'vs-dark' | 'light';\n", "import { memo } from 'react';\n\nimport DiffEditor from './DiffEditor';\n\nexport * from './types';\n\nexport default memo(DiffEditor);\n", "'use client';\n\nimport React, { useState, useRef, useCallback, useEffect } from 'react';\nimport loader from '@monaco-editor/loader';\n\nimport MonacoContainer from '../MonacoContainer';\nimport useMount from '../hooks/useMount';\nimport useUpdate from '../hooks/useUpdate';\nimport { noop, getOrCreateModel } from '../utils';\nimport { type DiffEditorProps, type MonacoDiffEditor } from './types';\nimport { type Monaco } from '..';\n\nfunction DiffEditor({\n original,\n modified,\n language,\n originalLanguage,\n modifiedLanguage,\n originalModelPath,\n modifiedModelPath,\n keepCurrentOriginalModel = false,\n keepCurrentModifiedModel = false,\n theme = 'light',\n loading = 'Loading...',\n options = {},\n height = '100%',\n width = '100%',\n className,\n wrapperProps = {},\n beforeMount = noop,\n onMount = noop,\n}: DiffEditorProps) {\n const [isEditorReady, setIsEditorReady] = useState(false);\n const [isMonacoMounting, setIsMonacoMounting] = useState(true);\n const editorRef = useRef<MonacoDiffEditor | null>(null);\n const monacoRef = useRef<Monaco | null>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const onMountRef = useRef(onMount);\n const beforeMountRef = useRef(beforeMount);\n const preventCreation = useRef(false);\n\n useMount(() => {\n const cancelable = loader.init();\n\n cancelable\n .then((monaco) => (monacoRef.current = monaco) && setIsMonacoMounting(false))\n .catch(\n (error) =>\n error?.type !== 'cancelation' && console.error('Monaco initialization: error:', error),\n );\n\n return () => (editorRef.current ? disposeEditor() : cancelable.cancel());\n });\n\n useUpdate(\n () => {\n if (editorRef.current && monacoRef.current) {\n const originalEditor = editorRef.current.getOriginalEditor();\n const model = getOrCreateModel(\n monacoRef.current,\n original || '',\n originalLanguage || language || 'text',\n originalModelPath || '',\n );\n\n if (model !== originalEditor.getModel()) {\n originalEditor.setModel(model);\n }\n }\n },\n [originalModelPath],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n if (editorRef.current && monacoRef.current) {\n const modifiedEditor = editorRef.current.getModifiedEditor();\n const model = getOrCreateModel(\n monacoRef.current,\n modified || '',\n modifiedLanguage || language || 'text',\n modifiedModelPath || '',\n );\n\n if (model !== modifiedEditor.getModel()) {\n modifiedEditor.setModel(model);\n }\n }\n },\n [modifiedModelPath],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n const modifiedEditor = editorRef.current!.getModifiedEditor();\n if (modifiedEditor.getOption(monacoRef.current!.editor.EditorOption.readOnly)) {\n modifiedEditor.setValue(modified || '');\n } else {\n if (modified !== modifiedEditor.getValue()) {\n modifiedEditor.executeEdits('', [\n {\n range: modifiedEditor.getModel()!.getFullModelRange(),\n text: modified || '',\n forceMoveMarkers: true,\n },\n ]);\n\n modifiedEditor.pushUndoStop();\n }\n }\n },\n [modified],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n editorRef.current?.getModel()?.original.setValue(original || '');\n },\n [original],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n const { original, modified } = editorRef.current!.getModel()!;\n\n monacoRef.current!.editor.setModelLanguage(original, originalLanguage || language || 'text');\n monacoRef.current!.editor.setModelLanguage(modified, modifiedLanguage || language || 'text');\n },\n [language, originalLanguage, modifiedLanguage],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n monacoRef.current?.editor.setTheme(theme);\n },\n [theme],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n editorRef.current?.updateOptions(options);\n },\n [options],\n isEditorReady,\n );\n\n const setModels = useCallback(() => {\n if (!monacoRef.current) return;\n beforeMountRef.current(monacoRef.current);\n const originalModel = getOrCreateModel(\n monacoRef.current,\n original || '',\n originalLanguage || language || 'text',\n originalModelPath || '',\n );\n\n const modifiedModel = getOrCreateModel(\n monacoRef.current,\n modified || '',\n modifiedLanguage || language || 'text',\n modifiedModelPath || '',\n );\n\n editorRef.current?.setModel({\n original: originalModel,\n modified: modifiedModel,\n });\n }, [\n language,\n modified,\n modifiedLanguage,\n original,\n originalLanguage,\n originalModelPath,\n modifiedModelPath,\n ]);\n\n const createEditor = useCallback(() => {\n if (!preventCreation.current && containerRef.current) {\n editorRef.current = monacoRef.current!.editor.createDiffEditor(containerRef.current, {\n automaticLayout: true,\n ...options,\n });\n\n setModels();\n\n monacoRef.current?.editor.setTheme(theme);\n\n setIsEditorReady(true);\n preventCreation.current = true;\n }\n }, [options, theme, setModels]);\n\n useEffect(() => {\n if (isEditorReady) {\n onMountRef.current(editorRef.current!, monacoRef.current!);\n }\n }, [isEditorReady]);\n\n useEffect(() => {\n !isMonacoMounting && !isEditorReady && createEditor();\n }, [isMonacoMounting, isEditorReady, createEditor]);\n\n function disposeEditor() {\n const models = editorRef.current?.getModel();\n\n if (!keepCurrentOriginalModel) {\n models?.original?.dispose();\n }\n\n if (!keepCurrentModifiedModel) {\n models?.modified?.dispose();\n }\n\n editorRef.current?.dispose();\n }\n\n return (\n <MonacoContainer\n width={width}\n height={height}\n isEditorReady={isEditorReady}\n loading={loading}\n _ref={containerRef}\n className={className}\n wrapperProps={wrapperProps}\n />\n );\n}\n\nexport default DiffEditor;\n", "import { memo } from 'react';\n\nimport MonacoContainer from './MonacoContainer';\n\nexport default memo(MonacoContainer);\n", "import React from 'react';\n\nimport styles from './styles';\nimport Loading from '../Loading';\nimport { type ContainerProps } from './types';\n\n// ** forwardref render functions do not support proptypes or defaultprops **\n// one of the reasons why we use a separate prop for passing ref instead of using forwardref\n\nfunction MonacoContainer({\n width,\n height,\n isEditorReady,\n loading,\n _ref,\n className,\n wrapperProps,\n}: ContainerProps) {\n return (\n <section style={{ ...styles.wrapper, width, height }} {...wrapperProps}>\n {!isEditorReady && <Loading>{loading}</Loading>}\n <div\n ref={_ref}\n style={{ ...styles.fullWidth, ...(!isEditorReady && styles.hide) }}\n className={className}\n />\n </section>\n );\n}\n\nexport default MonacoContainer;\n", "import { type CSSProperties } from 'react';\n\nconst styles: Record<string, CSSProperties> = {\n wrapper: {\n display: 'flex',\n position: 'relative',\n textAlign: 'initial',\n },\n fullWidth: {\n width: '100%',\n },\n hide: {\n display: 'none',\n },\n};\n\nexport default styles;\n", "import React, { type PropsWithChildren } from 'react';\n\nimport styles from './styles';\n\nfunction Loading({ children }: PropsWithChildren) {\n return <div style={styles.container}>{children}</div>;\n}\n\nexport default Loading;\n", "import { type CSSProperties } from 'react';\n\nconst styles: Record<string, CSSProperties> = {\n container: {\n display: 'flex',\n height: '100%',\n width: '100%',\n justifyContent: 'center',\n alignItems: 'center',\n },\n};\n\nexport default styles;\n", "import Loading from './Loading';\n\nexport default Loading;\n", "import { useEffect, type EffectCallback } from 'react';\n\nfunction useMount(effect: EffectCallback) {\n useEffect(effect, []);\n}\n\nexport default useMount;\n", "import { useEffect, useRef, type DependencyList, type EffectCallback } from 'react';\n\nfunction useUpdate(effect: EffectCallback, deps: DependencyList, applyChanges = true) {\n const isInitialMount = useRef(true);\n\n useEffect(\n isInitialMount.current || !applyChanges\n ? () => {\n isInitialMount.current = false;\n }\n : effect,\n deps,\n );\n}\n\nexport default useUpdate;\n", "import { type Monaco } from '..';\n\n/**\n * noop is a helper function that does nothing\n * @returns undefined\n */\nfunction noop() {\n /** no-op */\n}\n\n/**\n * getOrCreateModel is a helper function that will return a model if it exists\n * or create a new model if it does not exist.\n * This is useful for when you want to create a model for a file that may or may not exist yet.\n * @param monaco The monaco instance\n * @param value The value of the model\n * @param language The language of the model\n * @param path The path of the model\n * @returns The model that was found or created\n */\nfunction getOrCreateModel(monaco: Monaco, value: string, language: string, path: string) {\n return getModel(monaco, path) || createModel(monaco, value, language, path);\n}\n\n/**\n * getModel is a helper function that will return a model if it exists\n * or return undefined if it does not exist.\n * @param monaco The monaco instance\n * @param path The path of the model\n * @returns The model that was found or undefined\n */\nfunction getModel(monaco: Monaco, path: string) {\n return monaco.editor.getModel(createModelUri(monaco, path));\n}\n\n/**\n * createModel is a helper function that will create a new model\n * @param monaco The monaco instance\n * @param value The value of the model\n * @param language The language of the model\n * @param path The path of the model\n * @returns The model that was created\n */\nfunction createModel(monaco: Monaco, value: string, language?: string, path?: string) {\n return monaco.editor.createModel(\n value,\n language,\n path ? createModelUri(monaco, path) : undefined,\n );\n}\n\n/**\n * createModelUri is a helper function that will create a new model uri\n * @param monaco The monaco instance\n * @param path The path of the model\n * @returns The model uri that was created\n */\nfunction createModelUri(monaco: Monaco, path: string) {\n return monaco.Uri.parse(path);\n}\n\nexport { noop, getOrCreateModel };\n", "import { useState } from 'react';\nimport loader from '@monaco-editor/loader';\n\nimport useMount from '../useMount';\n\nfunction useMonaco() {\n const [monaco, setMonaco] = useState(loader.__getMonacoInstance());\n\n useMount(() => {\n let cancelable: ReturnType<typeof loader.init>;\n\n if (!monaco) {\n cancelable = loader.init();\n\n cancelable.then((monaco) => {\n setMonaco(monaco);\n });\n }\n\n return () => cancelable?.cancel();\n });\n\n return monaco;\n}\n\nexport default useMonaco;\n", "import { memo } from 'react';\n\nimport Editor from './Editor';\n\nexport * from './types';\n\nexport default memo(Editor);\n", "'use client';\n\nimport React, { useState, useEffect, useRef, useCallback } from 'react';\nimport loader from '@monaco-editor/loader';\nimport useMount from '../hooks/useMount';\nimport useUpdate from '../hooks/useUpdate';\nimport usePrevious from '../hooks/usePrevious';\nimport { type IDisposable, type editor } from 'monaco-editor';\nimport { noop, getOrCreateModel } from '../utils';\nimport { type EditorProps } from './types';\nimport { type Monaco } from '..';\nimport MonacoContainer from '../MonacoContainer';\n\nconst viewStates = new Map();\n\nfunction Editor({\n defaultValue,\n defaultLanguage,\n defaultPath,\n value,\n language,\n path,\n /* === */\n theme = 'light',\n line,\n loading = 'Loading...',\n options = {},\n overrideServices = {},\n saveViewState = true,\n keepCurrentModel = false,\n /* === */\n width = '100%',\n height = '100%',\n className,\n wrapperProps = {},\n /* === */\n beforeMount = noop,\n onMount = noop,\n onChange,\n onValidate = noop,\n}: EditorProps) {\n const [isEditorReady, setIsEditorReady] = useState(false);\n const [isMonacoMounting, setIsMonacoMounting] = useState(true);\n const monacoRef = useRef<Monaco | null>(null);\n const editorRef = useRef<editor.IStandaloneCodeEditor | null>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const onMountRef = useRef(onMount);\n const beforeMountRef = useRef(beforeMount);\n const subscriptionRef = useRef<IDisposable>();\n const valueRef = useRef(value);\n const previousPath = usePrevious(path);\n const preventCreation = useRef(false);\n const preventTriggerChangeEvent = useRef<boolean>(false);\n\n useMount(() => {\n const cancelable = loader.init();\n\n cancelable\n .then((monaco) => (monacoRef.current = monaco) && setIsMonacoMounting(false))\n .catch(\n (error) =>\n error?.type !== 'cancelation' && console.error('Monaco initialization: error:', error),\n );\n\n return () => (editorRef.current ? disposeEditor() : cancelable.cancel());\n });\n\n useUpdate(\n () => {\n const model = getOrCreateModel(\n monacoRef.current!,\n defaultValue || value || '',\n defaultLanguage || language || '',\n path || defaultPath || '',\n );\n\n if (model !== editorRef.current?.getModel()) {\n if (saveViewState) viewStates.set(previousPath, editorRef.current?.saveViewState());\n editorRef.current?.setModel(model);\n if (saveViewState) editorRef.current?.restoreViewState(viewStates.get(path));\n }\n },\n [path],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n editorRef.current?.updateOptions(options);\n },\n [options],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n if (!editorRef.current || value === undefined) return;\n if (editorRef.current.getOption(monacoRef.current!.editor.EditorOption.readOnly)) {\n editorRef.current.setValue(value);\n } else if (value !== editorRef.current.getValue()) {\n preventTriggerChangeEvent.current = true;\n editorRef.current.executeEdits('', [\n {\n range: editorRef.current.getModel()!.getFullModelRange(),\n text: value,\n forceMoveMarkers: true,\n },\n ]);\n\n editorRef.current.pushUndoStop();\n preventTriggerChangeEvent.current = false;\n }\n },\n [value],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n const model = editorRef.current?.getModel();\n if (model && language) monacoRef.current?.editor.setModelLanguage(model, language);\n },\n [language],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n // reason for undefined check: https://github.com/suren-atoyan/monaco-react/pull/188\n if (line !== undefined) {\n editorRef.current?.revealLine(line);\n }\n },\n [line],\n isEditorReady,\n );\n\n useUpdate(\n () => {\n monacoRef.current?.editor.setTheme(theme);\n },\n [theme],\n isEditorReady,\n );\n\n const createEditor = useCallback(() => {\n if (!containerRef.current || !monacoRef.current) return;\n if (!preventCreation.current) {\n beforeMountRef.current(monacoRef.current);\n const autoCreatedModelPath = path || defaultPath;\n\n const defaultModel = getOrCreateModel(\n monacoRef.current,\n value || defaultValue || '',\n defaultLanguage || language || '',\n autoCreatedModelPath || '',\n );\n\n editorRef.current = monacoRef.current?.editor.create(\n containerRef.current,\n {\n model: defaultModel,\n automaticLayout: true,\n ...options,\n },\n overrideServices,\n );\n\n saveViewState && editorRef.current.restoreViewState(viewStates.get(autoCreatedModelPath));\n\n monacoRef.current.editor.setTheme(theme);\n\n if (line !== undefined) {\n editorRef.current.revealLine(line);\n }\n\n setIsEditorReady(true);\n preventCreation.current = true;\n }\n }, [\n defaultValue,\n defaultLanguage,\n defaultPath,\n value,\n language,\n path,\n options,\n overrideServices,\n saveViewState,\n theme,\n line,\n ]);\n\n useEffect(() => {\n if (isEditorReady) {\n onMountRef.current(editorRef.current!, monacoRef.current!);\n }\n }, [isEditorReady]);\n\n useEffect(() => {\n !isMonacoMounting && !isEditorReady && createEditor();\n }, [isMonacoMounting, isEditorReady, createEditor]);\n\n // subscription\n // to avoid unnecessary updates (attach - dispose listener) in subscription\n valueRef.current = value;\n\n // onChange\n useEffect(() => {\n if (isEditorReady && onChange) {\n subscriptionRef.current?.dispose();\n subscriptionRef.current = editorRef.current?.onDidChangeModelContent((event) => {\n if (!preventTriggerChangeEvent.current) {\n onChange(editorRef.current!.getValue(), event);\n }\n });\n }\n }, [isEditorReady, onChange]);\n\n // onValidate\n useEffect(() => {\n if (isEditorReady) {\n const changeMarkersListener = monacoRef.current!.editor.onDidChangeMarkers((uris) => {\n const editorUri = editorRef.current!.getModel()?.uri;\n\n if (editorUri) {\n const currentEditorHasMarkerChanges = uris.find((uri) => uri.path === editorUri.path);\n if (currentEditorHasMarkerChanges) {\n const markers = monacoRef.current!.editor.getModelMarkers({\n resource: editorUri,\n });\n onValidate?.(markers);\n }\n }\n });\n\n return () => {\n changeMarkersListener?.dispose();\n };\n }\n return () => {\n // eslint happy\n };\n }, [isEditorReady, onValidate]);\n\n function disposeEditor() {\n subscriptionRef.current?.dispose();\n\n if (keepCurrentModel) {\n saveViewState && viewStates.set(path, editorRef.current!.saveViewState());\n } else {\n editorRef.current!.getModel()?.dispose();\n }\n\n editorRef.current!.dispose();\n }\n\n return (\n <MonacoContainer\n width={width}\n height={height}\n isEditorReady={isEditorReady}\n loading={loading}\n _ref={containerRef}\n className={className}\n wrapperProps={wrapperProps}\n />\n );\n}\n\nexport default Editor;\n", "import { useEffect, useRef } from 'react';\n\nfunction usePrevious<T>(value: T) {\n const ref = useRef<T>();\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n}\n\nexport default usePrevious;\n"],
6
6
  "mappings": "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",
7
7
  "names": ["c", "_c", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "_objectWithoutPropertiesLoose", "excluded", "sourceKeys", "_objectWithoutProperties", "sourceSymbolKeys", "_slicedToArray", "arr", "_arrayWithHoles", "_iterableToArrayLimit", "_unsupportedIterableToArray", "_nonIterableRest", "_arr", "_n", "_d", "_e", "_i", "_s", "err", "o", "minLen", "_arrayLikeToArray", "n", "len", "arr2", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "compose", "_len", "fns", "_key", "x", "y", "f", "curry", "fn", "curried", "_this", "_len2", "args", "_key2", "_len3", "nextArgs", "_key3", "isObject", "isEmpty", "isFunction", "hasOwnProperty", "property", "validateChanges", "initial", "changes", "errorHandler", "field", "validateSelector", "selector", "validateHandler", "handler", "_handler", "validateInitial", "throwError", "errorMessages", "type", "validators", "create", "state", "didUpdate", "didStateUpdate", "update", "updateState", "validate", "getChanges", "extractChanges", "getState", "setState", "causedChanges", "_handler$field", "index", "state_local_default", "config", "config_default", "curry", "fn", "curried", "_this", "_len", "args", "_key", "_len2", "nextArgs", "_key2", "curry_default", "isObject", "value", "isObject_default", "validateConfig", "config", "errorHandler", "isObject_default", "informAboutDeprecation", "errorMessages", "throwError", "type", "curry_default", "validators", "validators_default", "compose", "_len", "fns", "_key", "x", "y", "f", "compose_default", "merge", "target", "source", "key", "_objectSpread2", "deepMerge_default", "CANCELATION_MESSAGE", "makeCancelable", "promise", "hasCanceled_", "wrappedPromise", "resolve", "reject", "val", "makeCancelable_default", "_state$create", "state_local_default", "config_default", "_state$create2", "_slicedToArray", "getState", "setState", "config", "globalConfig", "_validators$config", "validators_default", "monaco", "_objectWithoutProperties", "state", "deepMerge_default", "init", "_ref", "isInitialized", "resolve", "makeCancelable_default", "wrapperPromise", "storeMonacoInstance", "compose_default", "injectScripts", "getMonacoLoaderScript", "configureLoader", "script", "createScript", "src", "_ref2", "reject", "loaderScript", "_ref3", "require", "error", "__getMonacoInstance", "_ref4", "loader", "loader_default", "memo", "React", "useState", "useRef", "useCallback", "useEffect", "memo", "React", "useEffect", "useRef", "useState", "memo", "React", "useState", "useEffect", "useRef", "useCallback", "useEffect", "useRef", "styles", "styles_default", "Loading", "children", "React", "Loading_default", "MonacoContainer", "width", "height", "isEditorReady", "loading", "_ref", "className", "wrapperProps", "MonacoContainer_default", "memo", "useMount", "effect", "useMount_default", "useUpdate", "deps", "applyChanges", "isInitialMount", "useUpdate_default", "noop", "getOrCreateModel", "monaco", "value", "language", "path", "getModel", "createModel", "createModelUri", "DiffEditor", "original", "modified", "originalLanguage", "modifiedLanguage", "originalModelPath", "modifiedModelPath", "keepCurrentOriginalModel", "keepCurrentModifiedModel", "theme", "options", "beforeMount", "onMount", "setIsEditorReady", "useState", "isMonacoMounting", "setIsMonacoMounting", "editorRef", "monacoRef", "containerRef", "onMountRef", "beforeMountRef", "preventCreation", "cancelable", "loader", "error", "disposeEditor", "originalEditor", "model", "modifiedEditor", "setModels", "useCallback", "originalModel", "modifiedModel", "createEditor", "models", "DiffEditor_default", "usePrevious", "value", "ref", "useRef", "useEffect", "usePrevious_default", "viewStates", "Editor", "defaultValue", "defaultLanguage", "defaultPath", "language", "path", "theme", "line", "loading", "options", "overrideServices", "saveViewState", "keepCurrentModel", "width", "height", "className", "wrapperProps", "beforeMount", "noop", "onMount", "onChange", "onValidate", "isEditorReady", "setIsEditorReady", "useState", "isMonacoMounting", "setIsMonacoMounting", "monacoRef", "editorRef", "containerRef", "onMountRef", "beforeMountRef", "subscriptionRef", "valueRef", "previousPath", "preventCreation", "preventTriggerChangeEvent", "useMount_default", "cancelable", "loader", "monaco", "error", "disposeEditor", "useUpdate_default", "model", "getOrCreateModel", "createEditor", "useCallback", "autoCreatedModelPath", "defaultModel", "event", "changeMarkersListener", "uris", "editorUri", "uri", "markers", "React", "MonacoContainer_default", "Editor_default", "memo", "src_default", "useState", "Editor", "Ft", "EditorImport", "baseClass", "props", "CodeEditor", "rest", "readOnly", "className", "options", "$", "dynamicHeight", "setDynamicHeight", "useState", "theme", "useTheme", "t0", "defaultLanguage", "t2", "t1", "classes", "t3", "t4", "value", "onChange", "ev", "t5", "editor", "monaco", "_jsx", "loading", "Boolean", "scrollbar", "scrollBeyondLastLine", "tabSize", "wordWrap", "height", "CodeEditor_default"]
@@ -10,5 +10,5 @@ function require(m) {
10
10
  }
11
11
  // Workaround end
12
12
 
13
- import{n as a}from"./chunk-6MRITTMD.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
- //# sourceMappingURL=DatePicker-NBYDOP2X.js.map
13
+ import{n as a}from"./chunk-IHJK2MAT.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
+ //# sourceMappingURL=DatePicker-HNJMUG32.js.map
@@ -27,4 +27,4 @@ react-datepicker/dist/react-datepicker.min.js:
27
27
  Released under the MIT License.
28
28
  *)
29
29
  */
30
- //# sourceMappingURL=chunk-6MRITTMD.js.map
30
+ //# sourceMappingURL=chunk-IHJK2MAT.js.map