Skip to content

Conversation

@ssoleman
Copy link

@ssoleman ssoleman commented May 8, 2017

Updated nodes to Firebase 3.x:
Mostly changed the firebase_config node, firebase_on and firebase_once:

-database reference
-argument getters are read only (changes made to all firebase nodes other than config node)
-authentication code mostly updated except for JSON web tokens option
-"custom token generated with secret" login option changed by adding Admin SDK
-new authentication state monitor
-JSON web token login option
-adding API Key to all logins
-adding field to insert the cert for custom token generated login option
-adding the close() method back to config node

Changes were also made to the firebase_on and firebase_once node to add the features of passing queries using typed input.

features added:
-JSON web token login option
-API keys for all logins
-added field to insert cert for custom lostin
-added close method
-bug fixes
-Created typed input for queries
-Executing queries
-Added passing values to queries (msg.)
-TODO: need to add passing flow. and global.
@ssoleman ssoleman force-pushed the master branch 2 times, most recently from b1a39ae to c17326b Compare May 8, 2017 20:22
ssoleman added 2 commits May 8, 2017 16:26
-added default orderby query search
-added querying with input from flow. and global.
-added query code to .once node with minor differences
@deldrid1
Copy link
Owner

@ssoleman - your last commit seems to have reverted package.json to an earlier version requiring firebase v2 instead of v3.

Please make sure the test the create user nodes with the latest Firebase SDK. Also, I'd suggest removing your node_modules folder and doing a fresh npm install to ensure everything is working correctly. There may be some dependencies we no longer need as well...

ssoleman added 2 commits May 10, 2017 14:54
Updated code to work with firebase 3.x and changed the package.json to
add the createUser node
Added str,msg,flow and global input types for childpath in .on and .once
nodes.
ssoleman added 10 commits June 1, 2017 11:57
Fixed bug where last typedInput that was selected is shown rather than
the default one for childpath and eventtype

Did NOT fix for query.

EventType still has bugs and unusable
-set dropdown of TypedInputs to last selected for all typedinputs
(childpath,eventyype,queries)
-fixed some eventtype bugs for .on nodes (allow input parameters,
interface, storing eventtypes ect.. )

TODO:
- havent tested jsonata, RE options for .on
-more eventtype bugs
-typedinput doesnt resize correctly
-Started extending admin,debug,expires and notBefore for JWT custom
tokens.

-Needs work and testing
-Fixed JWT manual entering of additional claims
-Tested JWT additional claims
-fixed some eventtype problems for .once
- Added name field to config node to allow for clearer naming
-Fixed other eventtype bug in .once
-Fixed resize bug for typedInput in eventtype
-Fixed query typedinputs (JSONATA,JSON) and bugs associated
-Added queriestypes functionality to all query types
-Fixed more found bugs
-Added custom inputs not allowed since they are reserved by firebase
-Changed "no file selected" button for privatekey selection

TODO:
-typedinput query bug still there
-token apparently only expires after an hour, but once logged in, user
stays authenticated. This needs to be checked.
Added Administrator authentication type and took out input privatekey
file update (had bugs)
Updated Package for dependencies and fixed UI bugs
@deldrid1
Copy link
Owner

@ssoleman - I'm beginning to review this pull request. I'll begin posting my feedback/bugs that I find.

@deldrid1
Copy link
Owner

Looks like node-red v0.17 was just released. I've added a few new issues (#20, #21, #22) that should be added as a piece of this PR

@deldrid1
Copy link
Owner

On the Auth node - I'm not sure that you've got all of your authentication handling in the config node setup quite right...

One of the things that I've noticed is that clicking the button on the auth node results in a null payload... We need to take a closer look here to make sure everything is working the way that it should.

@deldrid1
Copy link
Owner

deldrid1 commented Jun 30, 2017

For the on node - it looks like if the value at a path is null, there is not an emitted payload?

EDIT: actually , it doesn't look like its working at all for me...

@deldrid1
Copy link
Owner

Config node labels still aren't working correctly... (for email auth type, the label should show the email address)

ssoleman added 2 commits July 4, 2017 14:21
if the value at a path is null, there is not an emitted payload has been
fixed.
deldrid1#2 Auth node no longer emits empty payloads when inject button is
pressed, but it emits the auth data.
deldrid1#3 .on fixed for working without using injects
deldrid1#4 Modified config node such that label shows auth type (had to repeat
data for now due to node-red bug as stated:  "Node-Red doesn't provide
credentials as early as it provides defaults... Need to file a bug
request so that we don't need to store data twice ")
@ssoleman
Copy link
Author

ssoleman commented Jul 6, 2017

@deldrid1 Please take a look at 8065f03. These should take care of the bugs mentioned in the comments above.

First update to the node help tab. Need to look over.
ssoleman added 4 commits July 14, 2017 10:26
For modify and ondisconnect nodes
-had to make the event value required = false
-modify and disconnect node added typed input to the priority hidden
option
-Cleaned up code and information tab
ssoleman added 4 commits July 17, 2017 12:14
-Added typedinput for:
eventtype in .on and .once
method in .modify .disconnect

-Added utils file to reduce code bloat

Fixes:
-ondisconnect doesnt have push method
-changed when input shows for ondiconnect and on nodes
@deldrid1 deldrid1 mentioned this pull request Aug 20, 2017
-hid query input for operators that do not take them (orderbyXXX)
-fixed error messages
-fixed queries that require numerical input
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants