DataProvider from @plasmicapp/host stops working

Hi team, thank you for your amazing work.
Recently, I have noticed a very critical issue in the latest version of plasmic, DataProvider no longer works.
You can use the following Code Component to test

import { ComponentMeta, DataProvider } from '@plasmicapp/host';
import { ReactNode } from 'react';

export const CTTestMeta: ComponentMeta<{ children: ReactNode }> = {
    name: 'CTTest',
    displayName: 'CT Test',
    importPath: '@ct/ui/lib/@ct/CTTest',
    isDefaultExport: true,
    providesData: true,
    props: {
        children: {
            type: 'slot',
            defaultValue: [
                {
                    type: 'text',
                    value: 'Text content',
                },
            ],
        },
    },
};

export default function CTTest(props: { children: ReactNode }) {
    return (
        <DataProvider name="justData" data={{ name: 'Jack Vo' }}>
            {props.children}
        </DataProvider>
    );
}

In browser’s Plasmic app, when I tried to set Dynamic value for the children’s Text node’s content, the $ctx data that normally would allow me to pick the data value is not showing up in the Data Picker tab.

In the generated codegen, the $ctx provided by ph.DataCtxReader is undefined

<CtTest
    data-plasmic-name={'ctTest'}
    data-plasmic-override={overrides.ctTest}
    className={classNames('__wab_instance', sty.ctTest)}
>
    <ph.DataCtxReader>
        {($ctx) => ( // THIS IS UNDEFINED
            <div
                data-plasmic-name={'text'}
                data-plasmic-override={overrides.text}
                className={classNames(
                    projectcss.all,
                    projectcss.__wab_text,
                    sty.text,
                )}
            >
                {'Hyperlink'}
            </div>
        )}
    </ph.DataCtxReader>
</CtTest>

This is quite a critical issue as it stopped a lot of my Code Component from working so it will be great if the team can help us to address this issue.

Thank you

Hi Jack, thanks for reporting this. However I can’t seem to reproduce this issue. Are you able to recreate it starting from a brand new create-plasmic-app?

Hi @yang,
As usual, thank you so much for your lightning reply.

I can confirm that it’s working if you create a new plasmic app!
It took me nearly 45’ to move my old codebase to a new one but at least it’s working! I think there is new plasmic code update during the setup that is not backward compatible with projects created 3 months ago.

Again, thank you for your great support!

Sorry that you encountered that - my guess is it’s something to do with differing versions of some plasmicapp packages that got mixed up at some point…

Yes, please remove @plasmicapp/host from your package.json; @plasmicapp/react-web should now be all you need, and it’ll pull in the necessary dependencies.