Coder Social home page Coder Social logo

Pop-up Variable Editors about web-components HOT 24 OPEN

dselman avatar dselman commented on June 12, 2024
Pop-up Variable Editors

from web-components.

Comments (24)

jeromesimeon avatar jeromesimeon commented on June 12, 2024 5

@jeromesimeon pinging you on this, we should think of another way to display the Tech WG call details so it isn't just in Slack.

It's also in the AP google calendar which you can find in the Tech WG page

Screenshot 2021-03-18 at 4 51 57 PM

Ultimately Slack is definitely the main place where things are announced. Did you have some suggestion for what else to do?

from web-components.

dselman avatar dselman commented on June 12, 2024 4

I have updated the description to include a couple of links to code that could be a useful starting point for investigation.

from web-components.

irmerk avatar irmerk commented on June 12, 2024 2

Ah no, I was mainly thinking of something like the Tech WG page, just didn't realize it was there.

from web-components.

irmerk avatar irmerk commented on June 12, 2024 1

@irmerk Can we use material-ui modal component?

We are already using semantic-ui-react, would there be a reason to add material-ui?

from web-components.

dselman avatar dselman commented on June 12, 2024 1

@irmerk
Why dont we start by showing a modal once user press/click on a variable , That modal will allow the user to edit the variable value?
How does that sound to you?

It's the "editing the variable value" part where the complexity lies! :-) Templates contain variables, and each variable has a Concerto type. The primitive types are fairly straightforward (see the list in the description) but there are also complex types, and enumerations etc. We already have technology to build web forms for Concerto types in the Concerto-Ui project, and we are keen not to replicate all that here, so ideally we'd embed (part of?) Concerto-Ui form generation into the variable editing modal. If you can attend one of the Weekly Working Group calls we could schedule some time to discuss.

from web-components.

irmerk avatar irmerk commented on June 12, 2024 1

@jeromesimeon pinging you on this, we should think of another way to display the Tech WG call details so it isn't just in Slack.

@K-Kumar-01 yes absolutely.

from web-components.

jeromesimeon avatar jeromesimeon commented on June 12, 2024

I'm wondering how much of this could leverage the form generation for Concerto in https://github.com/accordproject/concerto-ui

It would be great to be able to reuse as much of it as possible.

from web-components.

Michael-Grover avatar Michael-Grover commented on June 12, 2024

Here are some relevant mockups. I like @jeromesimeon 's idea of using the existing form generation so we don't have to reinvent anything. Maybe to start we stick the forms into a modal that appears upon clicking the variable, and improve from there?

image

image

image

from web-components.

Michael-Grover avatar Michael-Grover commented on June 12, 2024

Add format option at bottom of monetary amount form, date time form, to choose what format you want the form to render itself as in the template instantiation

from web-components.

irmerk avatar irmerk commented on June 12, 2024

Related to accordproject/cicero-ui#225

from web-components.

rogdevil avatar rogdevil commented on June 12, 2024

Hey, I would like to look into this issue. As it is included in GSoC too so it would be a good start

from web-components.

Hanaffi avatar Hanaffi commented on June 12, 2024

@dselman @irmerk @DianaLease Can you assign this to me?

from web-components.

irmerk avatar irmerk commented on June 12, 2024

@Hanaffi this is a very large Issue, I think it be best to agree on an approach in the Issue before assigning to any specific person.

from web-components.

Hanaffi avatar Hanaffi commented on June 12, 2024

@irmerk I dont see it very large tbh.
As Mr. Michael said, I will start by sticking the forms into a modal that appears upon clicking the variable.

Do you have another approach?

from web-components.

Vrishabhsk avatar Vrishabhsk commented on June 12, 2024

i would like to work on this issue.
if i could have some guidance on what has to be done i would be able to dish it out much quicker

from web-components.

Hanaffi avatar Hanaffi commented on June 12, 2024

@irmerk Can we use material-ui modal component?

from web-components.

priyanshu-kun avatar priyanshu-kun commented on June 12, 2024

@irmerk I would like to work on this issue, I have some great designing skills and I know JS or react very well.
If I get some kind of guidance I will definitely complete this issue :D

from web-components.

irmerk avatar irmerk commented on June 12, 2024

I don't plan on assigning this Issue to someone without a pretty thorough plan. As I've said, it's a very large Issue that requires more preparation.

from web-components.

Hanaffi avatar Hanaffi commented on June 12, 2024

@irmerk
Why dont we start by showing a modal once user press/click on a variable , That modal will allow the user to edit the variable value?
How does that sound to you?

from web-components.

K-Kumar-01 avatar K-Kumar-01 commented on June 12, 2024

@irmerk
Why dont we start by showing a modal once user press/click on a variable , That modal will allow the user to edit the variable value?
How does that sound to you?

It's the "editing the variable value" part where the complexity lies! :-) Templates contain variables, and each variable has a Concerto type. The primitive types are fairly straightforward (see the list in the description) but there are also complex types, and enumerations etc. We already have technology to build web forms for Concerto types in the Concerto-Ui project, and we are keen not to replicate all that here, so ideally we'd embed (part of?) Concerto-Ui form generation into the variable editing modal. If you can attend one of the Weekly Working Group calls we could schedule some time to discuss.

@dselman
Can anyone who is interested in the topic attend the weekly call, as I also have some ideas and also some implementations for the issue?

from web-components.

Aniruddha-Shriwant avatar Aniruddha-Shriwant commented on June 12, 2024

@dselman @irmerk Yes, I can attend.
Can you send me an invitation to [email protected] please?

@Hanaffi for attending weekly calls join #technology-wg channel in Accords slack

from web-components.

sliu-UIUC avatar sliu-UIUC commented on June 12, 2024

Providing a modal pop-up to edit variables would be useful as it would constrain users from entering bad data. The variables could be rendered as links in the contract text, and clicking on a variable should open the appropriate pop-up. See designs from @Michael-Grover.

  • String variable: unconstrained text input
  • String variable with regex in model: constrain text input based on a regex
  • Integer/Long variable: whole numbers only (including negative numbers)
  • Float/Double variable: floating point numbers only (including negative numbers)
  • Numeric variable with range validation: constrain numeric variable based on upper and lower range
  • DataTime variable: calendar pop up (allowing user to enter Date, Time or DateTime), along with a timezone
  • Monetary Amount
  • Temporal Duration
  • Temporal Period
  • Boolean variable: a drop down with true/false (or similar)
  • Anything else : unconstrained text input

Describe the solution you'd like

We should ensure that we don't duplicate the logic in the concerto-ui React form component, which can create React forms for Concerto types. The pop-ups will want to delegate to concerto-ui to ensure consistency.

Note that the concept of Variable is defined by the Contract Editor via a plugin, here:
https://github.com/accordproject/web-components/blob/master/packages/ui-contract-editor/src/components/Variable/index.js

When variables are clicked we should open a modal to edit them. Conceptually this is similar to how links are handled in the base markdown editor, so that can be used as a reference. We will want any code that handles variables to be in the contract-editor.
https://github.com/accordproject/web-components/blob/master/packages/ui-markdown-editor/src/FormattingToolbar/index.js#L51

Hi Dan, can you elaborate on "we don't duplicate the logic in the concerto-ui React form component" part?

from web-components.

irmerk avatar irmerk commented on June 12, 2024

@sliu-UIUC yes this is referring to needing to utilize existing concerto and ui-concerto functionality for type checking and validation.

from web-components.

TC5022 avatar TC5022 commented on June 12, 2024

@irmerk
Why dont we start by showing a modal once user press/click on a variable , That modal will allow the user to edit the variable value?
How does that sound to you?

It's the "editing the variable value" part where the complexity lies! :-) Templates contain variables, and each variable has a Concerto type. The primitive types are fairly straightforward (see the list in the description) but there are also complex types, and enumerations etc. We already have technology to build web forms for Concerto types in the Concerto-Ui project, and we are keen not to replicate all that here, so ideally we'd embed (part of?) Concerto-Ui form generation into the variable editing modal. If you can attend one of the Weekly Working Group calls we could schedule some time to discuss.

@dselman as you said that each variable has a Concerto type. Can you please guide me as to where these types are defined or how to access them?

from web-components.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.