When creating a new folder, the parent folder ID for nesting (null = top level).
Use ProjectSaved.
The same emitter under the old binding name, so a template still binding (projectSaved) keeps working. Must stay AFTER ProjectSaved: class fields initialise in order, and the other way round this captures undefined.
If specified, this provider will be used for communication and for all metadata purposes. By default, if not provided, the Metadata and RunView classes are used for this and the default GraphQLDataProvider is used which is connected to the same back-end MJAPI instance as the Metadata and RunView classes. If you want to have this component connect to a different MJAPI back-end, create an instance of a ProviderBase sub-class like GraphQLDataProvider/etc, and configure it as appropriate to connect to the MJAPI back-end you want to use, and then pass it in here.
StaticɵdirStaticɵfacUse AvailableColors.
Use AvailableIcons.
Use ChipBackground.
Translucent tint of the selected color, used behind the preview/icon glyph.
Use CurrentUser.
Use DialogRef.
Use EnvironmentId.
Use FormData.
Use IsEditMode.
Use ParentId.
Use Project.
Returns either the default Metadata provider or the one specified in the Provider property, if it was specified
Returns either the default RunQuery provider or the one specified in the Provider property, if it was specified
Returns either the default RunView provider or the one specified in the Provider property, if it was specified
Use ShowNameError.
True when this dialog is editing a folder that is currently SHARED — in which case visibility is shown as a statement rather than a control.
Sharing is one-way by design, and the reason is in the data model rather than the UI.
NULL-means-shared conflates "shared" with "unowned": the moment a folder is shared its
OwnerUserID goes to NULL and there is no column anywhere recording who created it
(Project has __mj_CreatedAt, but no created-by). So OwnerUserID = currentUser.ID
on a shared folder is indistinguishable from any other user claiming it — the system
cannot tell reclaiming from appropriating, which makes "take it back" an affordance
that was never really there.
What that would cost on day one is the deciding argument. Every folder that exists today carries NULL, so without this the whole team's folder structure — subfolders included — is one radio button away from belonging to whichever person opens its settings first. A confirm does not fix that; it only narrates it.
Personal -> shared stays available, because it only ever adds. Someone who wants a private copy makes a private folder. If personal folders later grow features that need a stable creator (sharing with named users, transfer, recovering a departed employee's folders), the fix is a separate IsShared flag so ownership stops being erased by sharing — a bigger change, and deliberately not this one.
A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.
Use OnSave.
Base class for all Angular components in the MemberJunction system.